Home Gallery Resources The Team Rules chat Login Register
  Show Posts
Pages: [1]
1  Super Smash Bros. Brawl Hacking / Programming / Re: The Brawl Expansion Project on: February 22, 2015, 05:02:22 PM
Sweet! Thanks a bunch!

So can I only have one track for each stage? Or can I put the code in more then once

Eg. Could I do this:
28708ceb 00000040
4A000000 90180F06
14000076 FF0027F0
E0000000 80008000

28708ceb 00000040
4A000000 90180F06
14000076 FF0027F1
E0000000 80008000

I feel like if I tried this it would only load one song, as I wouldn't be able to adjust the appearance rate in the 'My Music' menu, so it would only ever load the first song. I could be completely wrong though.


Contrary to what's been said, yes, it is possible to have an entire tracklist for your custom stage. There are some restrictions, but other than that, it works. You need to use the Tracklist Modifier Code for that. To explain, let's take the code and disect the important parts.

Code:
[This part just sets up a different reading location for the tracklist]
0610F9BC 00000014
60000000 60000000
3C80811A 7C601B78
608447E7 00000000
4A000000 81000000
301A46F8 6D755072
1417DF44 7CE03B78
1417DF4C 7C0400AE

[This line defines how many bytes are written for the tracklist]
161A47E8 000000LL

LL is the amount of bytes (the amount of lines multiplied by eight, minus the amount of 00 at the end that aren't used, in hexadecimal)

For example, if there are eight lines of data, then the amount of bytes written is 8 * 8 = 64 bytes, which is 40 in hexadecimal.

[This is the tracklist data that's being written]
00000102 03040607
08090A0B 0C0D0E0E
0E0E0E0F 10111213
14151515 16171819
1A1B1C1D 1E1F2D2D
2D202122 23242526
2728290A 2D2D2D2D
2D2D2D2D 2D2D2D2D
X1X2X3X4 X5X6X7X8
-------- --------

In this case, we're going to add one stage, and give it the tracklist of Temple. So, we'll delete the last two lines (the X1X2... and --- line) and replace it with:

20000000 00000000

This would make the tracklist be nine lines high, which means 8 * 9 = 72 bytes. However, since we padded it at the end with 00 and aren't going to use Battlefield for these non-existent stages, we can simply substract seven from the amount of bytes, making it 65 bytes, or 41, thus LL becomes 41.

[The end of the code]
E0000000 80008000

[Full code]
0610F9BC 00000014
60000000 60000000
3C80811A 7C601B78
608447E7 00000000
4A000000 81000000
301A46F8 6D755072
1417DF44 7CE03B78
1417DF4C 7C0400AE
161A47E8 00000041
00000102 03040607
08090A0B 0C0D0E0E
0E0E0E0F 10111213
14151515 16171819
1A1B1C1D 1E1F2D2D
2D202122 23242526
2728290A 2D2D2D2D
2D2D2D2D 2D2D2D2D
20000000 00000000
E0000000 80008000


Next, we'll need to set the song to be replaced per song. Let's say we took the tracklist of the example, Temple, which has two songs, Great Temple / Temple (2735) and Temple (Melee) (2816). What we now want to do is replace each song with a different one, let's say, 286C and 286D, which I assume are IDs that aren't used, and can be used with the Custom Sound Engine.

Anyway, let's pick the original code, and make some changes:

Code:
[This checks if it's on a certain stage]
28708ceb 00000040

[If that's the case, let's go to a certain location for the music]
4A000000 90180F06

What we're going to do now is make a conditional check for each song. If it's a certain song ID, replace it with another.

38000078 00002735
16000078 0000286C
E2000000 00000000


38000078 00002816
16000078 0000286D
E2000000 00000000

[Ends the code]
E0000000 80008000

[Full code]
4A000000 90180F06
38000078 00002735
16000078 0000286C
E2000000 00000000
38000078 00002816
16000078 0000286D
E2000000 00000000
E0000000 80008000

By the way, a more elegant code would be this:

Code:
[Full code]
4A000000 90180F06
38000078 00002735
16000078 0000286C
38000079 00002816
16000078 0000286D
E2000000 00000000
E0000000 80008000

Here we can see we skipped the E2000000 00000000. This part basically is an endif part, it ends a conditional branch. We then added one to the 78 of the following line. This basically is an elseif, meaning, it closes the previoius conditional branch and adds a new one.

So yeah, that's how you can make an entire tracklist with new songs. The only downside is that the tracklist will be tied to the original stage that holds said tracklist, meaning all My Music settings will apply on other stages using this tracklist.
2  Super Smash Bros. Brawl Hacking / Programming / Re: SDHC Extension 1.1[Reinsertion support] on: October 23, 2014, 03:05:15 PM
Did you put the SDHC code as the very first code? Putting it first fixed it for me.
3  Super Smash Bros. Brawl Hacking / Programming / Re: The BrawlEx Clone Engine on: May 26, 2014, 12:15:37 PM
Well after days of trying and trying, i guess 4gb really doesn't work with brawl. dang
Have you tried using the SDHC code first, then the File Patch Code? By moving the SDHC Extension code to the top, I managed to get 4 GB to work.

EDIT: To clarify, I had the exact same issue. Apparently it first executes the FPC code first when loading stuff, but, as it's an SDHC SD card, it can't read anything. So, it never gets to the SDHC code before that.
4  Super Smash Bros. Brawl Hacking / Programming / Re: The BrawlEx Clone Engine on: April 25, 2014, 03:38:29 AM
I myself don't use the Project M launcher at all, and the SDHC code, when placed as the first code, works just fine.
5  Super Smash Bros. Brawl Hacking / Portraits, Menus, (etc...) / Area91 Brawl Grafficks on: July 11, 2013, 03:24:37 PM
So, after quite some time working on purely MUGEN and RPG Maker VX Ace stuff on my Area91 site, I've decided to also do Brawl modding / hacking. However, since I'm fairly lazy, and so far only had made one thing (a stage based on the SMB3 castles), I've decided to just start with CSPs. So, here are my graphical stuff for SSBB.

I do have to say, out of all the sites, mine must probably the worst looking. I think.

(By the way, I've only listed CSPs here, but in the future it might change a bit.)

CSP



How It Was Made
If you're wondering what the data means for the poses, they basically are a way to find out how I made these images. Basically I picked a stage that was mostly neutral (no spikes in black or white) and a pose (from which I would take one frame and replace the idle animations with). Then I put the models over the character I wanted to make CSPs of. Next, I go through each model mostly twice, unless I already have a silhouette of it. Basically I apply a code that would make the character completely black, later white, then make a screenshot of it using an extrenal application (to avoid any artifacts, since both Brawl and Dolphin add some form of artifacts). Next, I'll take regular screenshots of the models. After I'm done, I go through a image editing software (I use GimpShop since I'm broke), and apply the silhouette as a mask onto the character. That's a short version of this.

I've modified the online training stage so that all elements are invisible, which gives me a black background without actually a floor. I'm not sure using the result screen would render a black floor, possibly cutting off part of the character models clipping with the floor, so I didn't want to take that risk. Not that it would matter, mind you, I never moved the camera making the screenshots.

Anyway, all of my earliest CSPs (the ones made as of writing this) were done with the regular online training room, so that I had to use some color corrections on the mask silhouette. This does have some problems.

If anybody wants the code to use:

06288F3E 00000006
RRGGBBAA 01010000

Or, when using Cheat Engine, just search for the string RSBE01, look for the one that updates frequently, and set the address at +1288F3E (or 19435326 bytes from that position) to always write an array of six bytes with the values RRGGBBAA0101.

RR is red, GG is green, BB is blue, AA is alpha (the visibility of the color).

Requests

While I do accept requests to be posted, don't expect me to do them immediately, as I have a lot of things to do.

Also, if you have a specific pose you want, I'm not good at replicating poses, so if you have an actual pose, post the CHR0 file, preferably with just one frame to make it very easy for me. Also post if you are fine with me hosting it on my site (with credits of course). Also, if you have custom lighting settings you want these poses to have, please post them here as well. I always use the online training stage, as it's a fairly neutral stage with no lighting changes during the course of the game.
6  Super Smash Bros. Brawl Hacking / Programming / Re: cBliss v1.5 [16?] on: July 05, 2013, 05:31:18 PM
I think I get where you're going at. It would definitely be too much work for possibly nothing.

Thanks for the pointers by the way, now I can do this all by myself Tongue

By the way, care to tell us what's up with bit number 16? I assume it isn't because Brawl reads the values as signed or something.
7  Super Smash Bros. Brawl Hacking / Programming / Re: cBliss v1.5 [16?] on: July 05, 2013, 09:24:15 AM
Well, that mostly was because something made my Wii and Dolphin crash, so I wasn't sure if it had to do with overwriting junk code or not. Tried it again later when trying to give each character their own costume data and junk, and no problems there.

Anyway, here's a question. What would happen if we were to give Toon Link more than ten costumes?

I know, I know, it would overwrite some portrait images of Wol-

Oh, wait, never mind, it's totally possible.


So that means that both Toon Link and Wolf are able to carry more than ten costumes, most likely even Dark and Fake skins potentially. I didn't try it on Sonic though.

Also, I think it's possible to give Wario one extra costume, or actually two extra costumes, but since I don't like to overwrite his dark costume, it could be potentially possible to give him a thirteenth costume that would overwrite a potential Fake costume. I also haven't yet tried that, though.

Heck, it *might* even be possible to give him an additional two, but from what I heard it might not be possible to go beyond the fourteen costumes in existence (twelve original with his existing Dark costume and his non-existing Fake costume).

By the way, Fake just means the shadow bug versions that Peach, Zelda, Samus and Diddy had.

EDIT: By the way, remember seeing that in the "Characters have 10 Costumes" code, most had 13FF, some had 33FF and one had 1FFF? I finally got it. I mean, it's not hard to get this code, but the one that stood out for me was the 33FF part. I just figured out that the 3 just had that one extra bit, it being the 14th bit, that represented whether the character had a Fake costume or not.

(For those who don't get this mumbo jumbo, when turning each of the previous hexadecimal values into binary values, each one represents a "this costume is enabled on this character, yo")
8  Super Smash Bros. Brawl Hacking / Programming / Re: cBliss v1.5 [16?] on: July 03, 2013, 05:28:19 PM
Okay, I've got a modification that's only for the truly adventurous types of people, as this will use the addresses of Wario's new offset, keeping Wario's at its original place. Like the original author already stated, if these addresses are going to be overwritten at some point by another code, it could make cBliss not work at all, so be very sure none of the addresses are going to be overwritten, or just use the original, since if these addresses are going to be used, at least it would only be Wario who would be getting the boot.

Code:
Costume Color offset FIX [ASF1nk]
07200D34 00000060
00000501 03020103
08040205 02060007
03080109 0C000000
03000001 05020103
08040205 02060007
03080109 0C000000
01000001 03020503
08040205 02060007
03080109 0C000000
05000001 03020103
08040205 02060007
03080109 0C000000
This will store four sets of costume data.

Code:
All Roster has Costume Offset FIX. v2 [ASF1nk]
04455460 81200D34
04455470 81200D7C
04455480 81200D4C
04455490 81200D7C
044554A0 81200D7C
044554B0 81200D4C
044554C0 81200D7C
044554D0 81200D7C
044554E0 81200D7C
044554F0 81200D4C
04455500 81200D7C
04455510 81200D34
04455520 81200D4C
04455530 81200D7C
04455540 81200D7C
04455550 81200D7C
04455560 81200D7C
04455570 81200D7C
04455580 81200D7C
04455590 81200D7C
044555A0 81200D7C
044555B0 80455334
044555C0 81200D7C
044555D0 81200D7C
044555E0 81200D7C
044555F0 81200D7C
04455600 81200D34
04455610 81200D7C
04455620 81200D7C
04455630 81200D7C
04455640 81200D7C
04455650 81200D34
04455660 81200D64
04455670 81200D7C
04455680 81200D34
04455690 81200D7C
044556A0 81200D4C
044556B0 81200D7C
044556C0 81200D7C
044556D0 81200D64
This will write the new offsets to the costume data.

What it does is simple. It uses the original set of data described in the original code, meaning, FitChar01 is red, FitChar02 is green and FitChar03 is blue.

However, in the cases where the main color, as in, FitChar00, is any of the team colors, it would pick that instead, in Mario's case, his primary costume would be the red team costume.

Again, it's not advisable to use this code if you're not sure any of the codes will write to this location.

Also, I'm going to do some more tests, to see if I can extend this any further.

Anyway, I tested it, and it does work with at least Mario.

EDIT: If you're going to use Alternative Stage Loader, don't use this.
9  Super Smash Bros. Brawl Hacking / Programming / Re: cBliss v1.5 [16?] on: July 02, 2013, 08:10:15 PM
Okay, this has bothered the heck out of me.

What's stopping everybody from just, you know, overwriting Mario's costume offset? I mean, if we're not going to use every subsequent costume offset anyway, we might as well just consider the rest as junk. Seriously, after any occurrance of 0C000000 aligned on four bytes it just stops reading the costume data, kind of like how strings mostly should be \0 terminated.

And before you ask, yes, I did test it out. There literally is nothing to stop us from using any of the other costume offsets. Heck, right now I'm in the process of just doing this (since I'm not going to get over 10000 lines or whatever amount of lines is the maximum):

Code:
Mario Extended
4E000001 00000000
66200003 00000000
00000906 01030204
08050302 04010607
07080809 0C000000
4C000000 804551E8
E0000000 80008000
10  Welcome / Rules / Feedback / Brawl Vault / Re: Brawl Vault Problems, Updates, and Suggestions on: December 07, 2011, 04:54:39 AM
I just generally have a problem with the way reports currently are handled.

Far too many times I've seen people reporting stuff on the vault when they shouldn't. For example, they report something because "one of the images is down" or "because it doesn't work with the SSS code because I'm too [censored] stupid to alter the hex of the supplied rel file".

Now it shouldn't be a problem for stuff to be reported, because the resource is still up for download, however, when I see a red background on something, I am less likely to actually check it out, seeing as, hey, something is wrong with it, so let's just skip that one.

Instead of showing the red background immediately at the first report, there should be a report queue instead. If somebody posts a report and it has been backed up by at least two other people, *perhaps* then it should show as red. Although, even then the reports could be unjust, so there should be someone to actually verify these reports, because, I mean, why do we even report these things at all? How are we sure these things don't actually work (anymore)?

Right now I'm not even going to post something on here because of people who use the report button as a comment section.
Pages: [1]