Home Gallery Resources The Team Rules chat Login Register
  Show Posts
Pages:  1 [2] 3 4 5 ... 59
16  Super Smash Bros. Brawl Hacking / Programming / Re: BrawlBox v0.77. See page 64 - v0.78 coming soon on: March 06, 2017, 07:21:24 PM
On an unrelated note, when could we expect a hotfix update to v0.78? It would also be nice to see the moveset editor from v0.68b make a comeback in a separate branch version with added features.
I'll probably make a "final" version of 0.78 later this week, with just one change (an Edit All dialog fix.)

I wasn't working on BrawlBox until v0.72 so I'd have to go back and try to figure out where the bone flags went (unless BJ96 is around and knows.)

I'd like to fix the CSTM and FSTM stuff since I was the one who added that, but that will probably have to wait for later.

Post Merge: March 07, 2017, 07:17:11 AM
For each of the bone flags, there is another way to toggle it:
  • NoTransform: I think it turns this one on if you set scale to (1,1,1) and translation and rotation to (0,0,0)
  • FixedTranslation: Set translation to (0,0,0)
  • FixedRotation: Set rotation to (0,0,0)
  • FixedScale: Set scale to (1,1,1)
  • ScaleEqual: Set scale to the same number in all 3 directions
  • SegScaleCompApply: has its own toggle setting
  • SegScaleCompParent: has its own toggle setting
  • ClassicScaleOff: has its own toggle setting
  • Visible: has its own toggle setting
  • HasGeometry: there is at least one node user (Users.Count > 0) or at least one object rigged only to this bone (SingleBindObjects.Length > 0). Not quite sure what this means exactly.
  • HasBillboardParent: set BillboardRefBone to something that is not null
17  Super Smash Bros. Brawl Hacking / Programming / Re: BrawlBox v0.77. See page 64 - v0.78 coming soon on: March 06, 2017, 07:01:04 AM
I have bug to report on BrawlBox. It has not been fixed in 0.78 RC1 either.

The BFSTM framework for BrawlBox is not developed properly. Whenever you play a BFSTM in BrawlBox, there is always a clicking noise in the stream. Do you want to know what causes it? It's because it's using an incorrect hex value to indicate on moving to the next sample. So what happens is the next sample that is played is using an extra byte in playing back, but at the same time, missing the end of the sample that is supposed to be played as a sound sample.

It may sound like there's a clicking noise every 0.5 seconds, but that's because it plays too quickly for it to be heard until 0.5 seconds later. But what really is happening, is it's playing a clicking noise on every single sample in the stream.

Next up, multiple streams in BCSTM are not supported in BrawlBox yet, therefore bringing up an error saying that multi-stream files are not supported. But in reality, it's actually because BrawlBox got it's header values in the wrong position when reading the file format.

BCSTMs and BFSTMs are completely different format, you can't just expect them to be identical to BRSTMs. Their coding may be similar in that it's made using NintendoWare, but there are huge differences in their header positions in NW4C and NW4F formats.

Please fix them. Otherwise I may have to do some trial and error in trying to fix those bugs myself. ^^'
Do you have a link to some sort of specification for the header formats?

I assume vgmstream doesn't have this problem, right?
18  Super Smash Bros. Brawl Hacking / Programming / BrawlBox plugins (v0.78) - updated 2017-03-23 on: February 24, 2017, 01:36:36 PM
This is a thread for BrawlBox plugin scripts. v0.78 has a system that lets you write plugins in Python.

Just copy the text into Notepad and save it as a file with a .py extension in the Plugins folder alongside BrawlBox. Then you'll see it in BrawlBox under Plugins in the menu bar.

Batch convert files (pac <-> pcs)

To .pcs
Code:
from BrawlBox.API import bboxapi
from BrawlLib.SSBB.ResourceNodes import *

import os

dir = bboxapi.OpenFolderDialog()
if dir is not "":
include_subfolders = bboxapi.ShowYesNoPrompt("Include subfolders?", "Batch conversion")

from_ext = ".pac"
to_ext = ".pcs"

if not from_ext.startswith("."):
from_ext = "." + from_ext;

if not to_ext.startswith("."):
to_ext = "." + to_ext;

for root, dirs, files in os.walk(dir):
for file in files:
if file.lower().endswith(from_ext):
no_ext, ext = os.path.splitext(file)
node = NodeFactory.FromFile(None, os.path.join(root, file))
try:
node.Export(os.path.join(root, no_ext + to_ext))
node.Dispose()
except:
bboxapi.ShowMessage("Cannot export " + file + " as format " + to_ext, "Error")
if not include_subfolders:
break
To .pac
Code:
from BrawlBox.API import bboxapi
from BrawlLib.SSBB.ResourceNodes import *

import os

dir = bboxapi.OpenFolderDialog()
if dir is not "":
include_subfolders = bboxapi.ShowYesNoPrompt("Include subfolders?", "Batch conversion")

from_ext = ".pcs"
to_ext = ".pac"

if not from_ext.startswith("."):
from_ext = "." + from_ext;

if not to_ext.startswith("."):
to_ext = "." + to_ext;

for root, dirs, files in os.walk(dir):
for file in files:
if file.lower().endswith(from_ext):
no_ext, ext = os.path.splitext(file)
node = NodeFactory.FromFile(None, os.path.join(root, file))
try:
node.Compression = "None"
node.Export(os.path.join(root, no_ext + to_ext))
node.Dispose()
except:
bboxapi.ShowMessage("Cannot export " + file + " as format " + to_ext, "Error")
if not include_subfolders:
break

LZ77 to ExtendedLZ77 (2017-3-23 - now supports subnodes)
Code:
from BrawlBox.API import bboxapi
from BrawlLib.SSBB.ResourceNodes import *

import os
import shutil

def haslz77(node):
if node.Compression == "LZ77":
return True
if node.GetType().Name == "ARCNode":
for child in node.Children:
if haslz77(child):
return True
return False

def modifylz77(node):
if node.Compression == "LZ77":
node.Compression = "ExtendedLZ77"
if node.GetType().Name == "ARCNode":
for child in node.Children:
modifylz77(child)
return

dir = bboxapi.OpenFolderDialog()
if dir is not "":
include_subfolders = bboxapi.ShowYesNoPrompt("Include subfolders?", "Batch conversion")

ignore_ext = ".original-lz77"

for root, dirs, files in os.walk(dir):
for file in files:
if not file.lower().endswith(ignore_ext):
try:
node = NodeFactory.FromFile(None, os.path.join(root, file))
if node is None:
continue

if haslz77(node):
shutil.copyfile(os.path.join(root, file), os.path.join(root, file + ignore_ext))
node.Dispose()

node = NodeFactory.FromFile(None, os.path.join(root, file + ignore_ext));
modifylz77(node)
node.Export(os.path.join(root, file))
node.Dispose()
except:
bboxapi.ShowMessage("Cannot export " + file, "Error")
if not include_subfolders:
break
19  Super Smash Bros. Brawl Hacking / Programming / Re: BrawlBox v0.77. See page 64 - v0.78 coming soon on: February 24, 2017, 01:32:01 PM
Awesome, thanks! Ok, quick question then: You said "Fixed weight editor bugs"; which bugs specifically, out of curiosity? Grin
This stuff (I don't really know what it means): https://github.com/libertyernie/brawltools/commit/6a3691c41cd205ce38058f17d3995745f96e9db1
20  Super Smash Bros. Brawl Hacking / Programming / Re: BrawlBox v0.77. See page 64 - v0.78 coming soon on: February 24, 2017, 07:48:57 AM
Changelog: https://github.com/libertyernie/brawltools/blob/26ec2e90b7a4f3c877619092f86d42d7085484ad/BrawlBox/Changelog.txt

I personally know very little about any of the 3D model related components in Brawl or BrawlBox, so I won't be able to fix any of those bugs.
21  Super Smash Bros. Brawl Hacking / Programming / Re: BrawlBox v0.77. See page 64 - v0.78 coming soon on: February 23, 2017, 01:04:48 PM
This next issue has effected me since v0.77. Whenever I attempt to import a texture, the BrawlBox windows get small, and the text changes format.

Before attempting a texture import with v0.77 onward

How the texture import window should look (taken from v0.76b)

Texture import window with v0.77 onward

After attempting a texture import with v0.77 onward

Just like the previous issue, this is something that's still present in v0.78.


This only happens on high-DPI monitors. I think I tried once to fix it and couldn't come up with anything. I'll look again if I have time.

Quote
Edit: There seems to be an issue with v0.78's Edit All function for animations. It'll only edit and save animations that don't have keyframes for the bones in question. Otherwise, it'll display the changes, but revert said changes upon saving.

Edit 2: You can force the edits to save by making a minor edit to the affected animations.

Edit 3: I remember this same issue effecting the Clean function for animations as well. Changes wouldn't be saved, unless the animation was altered aside from being cleaned.


Sounds like it's not marking IsDirty as true on the CHR0 entry node. This should be an easy fix.
22  Super Smash Bros. Brawl Hacking / Programming / Re: BrawlBox v0.77 on: February 23, 2017, 10:40:29 AM
BrawlBox v0.78 release candidate 1

You might notice that this version is in a bigger .zip file and has a new directory structure. This is because it now supports python plugins! I have a couple I'm going to make and post in another thread.

Please test this version out and post here if there are any regressions from v0.77.

https://github.com/libertyernie/brawltools/releases/download/v0.78_rc1/BrawlBox.v0.78.rc1.zip
23  Super Smash Bros. Brawl Hacking / Programming / Re: File limit on codes? on: December 28, 2016, 12:22:58 PM
I think there might be a way with gameconfig.txt to let you use a bigger code set, but I don't remember exactly how that works.
24  Super Smash Bros. Brawl Hacking / General Hacking Discussion / Re: Classic Exp. Pack for Brawl - 8.0s on: December 13, 2016, 03:19:15 PM
Sorry that I was not clear.

2nd try:

I noticed that the ASRL Flat Zone 2 .rel issue was solved in secretchaos1's Smash Bros. Infinite.
The value for Flat Zone 2's ASCII identifier is 0x47570E50 in "ASRL - Stages" and 0x47570E52 in "ASRL - Modules"
To my knowledge, this is the only stage that has different ASCII identifiers for the same stage within the ASRL.
Oh, that makes sense! GW.P (.pac) versus GW.R (.rel).
25  Super Smash Bros. Brawl Hacking / Programming / Re: BrawlBox v0.77 on: December 08, 2016, 07:57:13 AM
Hey, does BrawlBox v0.77 work well on 32-bit systems? Everytime I preview a model, it throws an error:

Unable to find an entry point named 'glGetUniformLocation' in DLL 'opengl32.dll'.

This might have something to do with your video driver.
I know BrawlBox works on 32-bit - it actually doesn't work on 64-bit (lots of code that assumes you can cast pointers to ints) and so we always build it as a 32-bit program.
26  Super Smash Bros. Brawl Hacking / Stages / libertyernie's 38 stage pack on: December 02, 2016, 10:43:50 AM
Here's a pack of stages that I've made at one time or another. There's no stage expansion code or anything like that - just replacing almost every Brawl stage with something else.

Stage and music list at: http://www.lakora.us/brawl/cep/libertyernie-1.0/

Downloads:
With regular quality audio (288 MB)
With low quality (mono 22050Hz) audio (98 MB)
27  Super Smash Bros. Brawl Hacking / General Hacking Discussion / Re: Classic Exp. Pack for Brawl - 8.0s on: December 02, 2016, 10:38:06 AM
I noticed that the ASRL Flat Zone 2 .rel issue was solved in secretchaos1's Smash Bros. Infinite. Unlike the other stages, the values expected for the "ASRL - Stages" (0x47570E50) and "ASRL Modules" (0x47570E52) codes are not the same.
Neat! What are those two values? I assume one is 0x18 and the other isn't?
28  Super Smash Bros. Brawl Hacking / Programming / Re: libertyernie: Looping Audio Converter 1.3.3 rc1 with uncompressed BRSTM support on: November 04, 2016, 01:54:43 PM
I've just posted a release candidate for version 1.3.3:
https://github.com/libertyernie/LoopingAudioConverter/releases/tag/v1.3.3-rc1

This version has support for uncompressed 16-bit PCM audio in BRSTMs. 16-bit PCM is what most WAV files use; this means that you can now make BRSTMs that have the same audio quality as WAV files (and the same large filesizes - they're about 3-4 times the size of a regular ADPCM-compressed BRSTM.)
29  Super Smash Bros. Brawl Hacking / Programming / Re: Custom Classic mode? on: November 04, 2016, 12:08:18 PM
This data is in common2.pac in MiscData[8]. I figured out how to change the stages back in 2011 (http://forums.kc-mm.com/index.php?topic=27607.0#msg566893) but I don't know what the structure of the data is actually like.
30  Super Smash Bros. Brawl Hacking / General Hacking Discussion / Re: Classic Exp. Pack for Brawl - 8.0s on: November 04, 2016, 12:06:53 PM
Ooh, wow! If I ever make another version of this pack I'll keep that in mind.
Pages:  1 [2] 3 4 5 ... 59