Home Gallery Resources The Team Rules chat Login Register
  Show Topics
Pages: [1]
1  Super Smash Bros. Brawl Hacking / Programming / Sammi Husky's misc toolbox || PSA v1.3a & BX clone tool update on: August 12, 2014, 05:54:48 PM
In addition to working on Brawlbox and my SSE research, there are various programs that i create to work on whatever peaks my interest. This thread may be of use to some people, if not only for the development of PSA (which i continue to program in my spare time). For those who wish to keep up on development or to contribute, the public repo is hosted on Github

Project Smash Attacks v1.3a:
The biggest additions to this version of PSA are the ability to edit Kirby hat files, as well as the item param files. Common items of course need to be exported from the ItemCommonParam.pac file or from the ItemCommonParam from common3.pac, and (hopefully) fixing random file bloating. Other then that, the rest of the changes are self explanatory and are in the changelog.
 
Download Link


====================================
|************ Change Log ************|
 ====================================
 - v1.3a- (8/12/2014)
   . Replaced 'Remove' button with 'Nop selected' button, as nopping is currently more efficient.
   . Fixed random file bloating (hopefully)
   . Fixed bug where after repack the saved file would still be open
   . Fixed opening DDD. (Credit to Dantarion)
   . Allowed parsing exit actions as well as blanks actions.
   . Copy button also copies selected events to clipboard as text
   . Added right click menu to attributes grid to view specific attributes as either int or float.
   . Added "Data Explorer" to select data from the file to edit. In the future this will support articles, floating points, and "Nodes"
   . Kirby hats are now supported*
   . Items are now support*

   *The Kirby hats and items must have "irby" present in the filenames for the program to recognize this file as a kirby hat
   *The item files must have either "Itm", "itm", or "Item" present within the filename to recognize it as an item file.



BrawlEx Clone Tool v0.75a:
This update introduces a few great features, one of which i feel is pretty useful in that it compresses the filesize of your cosmetic files by a significant margin by compressing each cosmetic slot to extended lz77 as well as recompresses ALL csp files to cmpr to halve the size of your sc_selcharacter.pac. The other feature that saves time is the "patch module" button. It simply opens the section editor for you to patch, and asks for the name of the clone. It will automatically name and copy your module file over for your. The rest of the update is all fixes for some fatal bugs that would crash the program. Download Link


- v0.75a- (8/12/2014)
   Bugs:
      . Fixed bug loading clones when the number of configs differ between folder
      . Fixed bug Where adding clones to the roster doesn't save CSSRoster.dat
      . Fixed bug where clones with no cosmetics would severely confuse the tool causing mismatched fighter data
      . Fixed bug where cosmetic form's small name entry overlapped with the CSS name
      . Tool will no longer display characters whose configs are below 3F to prevent errors

   Features and Improvements:
      . Roster editor now has option to create new roster file.
      . Added "Patch Module" to Tools menu. open module file, edit slot, then close and save
      . "Reduce Filesize" button now asks to re-encode all CSP's in the sc_selcaharacter as cmpr. Quite literally halving the filesize (thats alot!)

   ==========Notes==========
   . New and experimental modules will be supported when the stable release of BrawlEx v2 is released
2  Super Smash Bros. Brawl Hacking / Programming / [8/1/14] The New File Research Thread | New video series on SSE files! on: March 18, 2014, 07:24:13 PM
Hello all, In the past there have been a few Threads about unknown Brawl files,  but most of them are long forgotten and died out before things could really be finished. Alot of information was discovered in those threads, but sadly there isn't one central point to keep this information, or to continue research. So, that's where this thread comes in. While most of brawl's files have been parsed and are now editable, i feel there is still potential in the files that remain mostly un-touched.One of the mostly untouched areas in Brawl modding is SSE. Some files have been partially decoded as of now, but with full knowledge over the files, we may be able to write a completely new SSE. From that, someone would be able to write a tool to edit the files. That's just one possibility of uncovering the unknown files, just think of the other files that are still unknown.

This thread is going to serve as a place for people to help with parsing Brawl files and figuring out exactly what they do. I'll post some of the information from the previous threads here as well to try and keep everything centralized. Hence why this post will borrow almost copy paste from previous threads. Thank you to all who helped uncover these files and wrote these out.



Tutorials

    Intro to Hexing
For those completely new to hexing, let's do a quick little exercise. Open Brawlbox, select File --> New --> BRRES. Right-Click the BRRES and select New --> Character Animation. Finally, Right-Click the animation and create a new bone animation. You should end up with this:

Now you should have a basic animation file, 1 frame without any animation data. Right-Click and export the NEWCHR animation (CHR0) so it can be hexed. Open up the animation CHR0 in your hex editor, any hex editor will work, I'll be using Notepad++ but the results will be the same. Assuming you didn't rename the CHR0, it should look more or less like this, depending on your view settings:

So you might be thinking "i could never read what these random numbers mean!" but let's get into that right now. Since there aren't any animations in this file, it's pretty much empty. Open the animation in Brawlbox and change the Translation X keyframe value to 1, export the CHR0 and open it in hex again.

You can see some changes here and there, but how do we find out what they mean? Thanks to Brawlbox, we know that this animation file has a single keyframe with a value of 1. That number (keyframe value, not amount of keyframes) was translated into a 8-digit value called a Float value, which can be translated with this webpage. Tools like these are a hexer's best friend.

Using that webpage, you can see that 1.0 in hexidecimal is 3F 80 00 00. You should be able to find that number in your hex editor: if not, then It's highlighted in the previous image. Any single number, even 99999 or 3.14, will be displayed as an 8-digit float value. If you change the keyframe value in Brawlbox, then the only difference will be that float value: everything else remains the same.

Now let's do something cool with your hex editor: Click on the beginning of the float value and type 44 a7 20 00, save and open in Brawlbox. You just hexed the keyframe value from 1 to 1337. Pretty neat, right?

This is what Brawl hackers do to change simple number values that aren't editable in Brawlbox, as well as hacking computer files in general. Try using your new knowledge of float values and hexing to change numbers in other Brawl files, or add more keyframes with numbers and see where each number ends up.

In the meantime, I'll set up the next tutorial about identifying file structures.

Videos *Update
Proofs of concept / teasers



Introductory video to new SSE series.



Download links:
HXD, a commonly-used hex editor.
Notepad++, a handy program based off of Notepad with a Hex Plugin.
Hexidecimal Number Converter (website, not a download)

File Structures:

General / stage related:

    BLOC
Varies. commonly found in miscdata[5]
The BLOC format is an archive that can hold many different types of files, similar to BRRES and ARC files.

0x00(4) - BLOC
0x04(4) - # of Files in Archive
0x08(4) - unknown/always 80
0x0C(4) - Nulls?
0x10  - offset table begins
   ADSJ
Adventure_Common under 'jump'
=======================================================================
ADSJ:      
The jumps from doors to different stages, can be used to add new stages up to 999999e
=======================================================================

Header:
0x00(4): ADSJ
0x04(4): Number of Entries in the offset section
0x08(4): Nulls
0x0C(4): Nulls

Offset section:
The offset section comes right after the header in most files, and contains offsets to each jump data within the file.

Jump Data:
0x00(4) - Possibly File ID of door to 'jump' to. (decimal) 4th byte denotes door Index
0x04(4) - Possibly flags for the jump
0x08(4) - possibly File ID of door jumping from (hex) 4th byte denotes door Index
0x12 -String name of stepjump bone
   GDOR
In BLOC files, most often miscdata[5]
=======================================================================
GDOR
Controls the doors inside each stage, including where each door leads to.
Needs appropriate info in adventure common.
=======================================================================

Header:
0x00 - GDOR
0x04 - Number of entries
0x08 - Offset section begins

Door Data:
0x24 - Unknown Float
0x28 - Unknown Float
0x2C - unknown Float
0x30 - Stage File ID
0x33 - Door Index
0x34 - Unknown
0x38 - StepJump "to" bone x-translation
0x3C - StepJump "to" bone z-translation

   GNDV
Inside BLOC files

=======================================================================
GNDV:
Seems to have to do with animations, possibly ground based VIS0 animations. also controls the sound that is played upon activation
Found in Skyworlds collapsing clouds
=======================================================================

Header:
size- 0x08
0x00 -GNDV
0x04-Number of entries in the file

Offset section:
The offset section comes right after the header in most files, and contains offsets to each Ground data entry in the file

Ground data:
Entry size -0x30

0x00 - string of entry / bone that triggers the animation

after the string entry The next data you will see will be the hexadecimal representation of the Infoindex for the sound that is played when the animation is triggered. In this example it is '22 9F'

Example:
00 00 00 00 | 53 74 65 70 | 43 6F 6C 6C | 61 70 73 65 |    ....StepCollapse0
30 38 00 00 | 00 00 00 00 | 00 00 00 00 | 00 00 00 00 |   8..............
00 00 00 00 | 00 00 22 9F | 00 67 00 02 | 00 D0 01 00 |   ......"Ÿ.g...Ð..

   SCLA
Miscdata[30] in *most* stages
=======================================================================
SCLA
Possibly Data table for stages
Seems to be tied to the collision data in miscdata[2]
=======================================================================

All stages have a SCLA file, most have an index of MiscData[30]. Possibly Data table for stages
Seems to be tied to the collision data in miscdata[2]. This file is almost completely untouched, aside from the ground data that i uncovered recently. There are likely MANY more data types within this file, its all a matter of finding out what they do.

Here's the ones that have a different index:

STGJUNGLE.pac       MiscData[100]
STGPICTCHAT_xx.pac  MiscData[8]
STGDXBIGBLUE.pac    MiscData[70]
STGEDIT_0.pac       MiscData[903]
STGEDIT_1.pac       MiscData[1903]
STGEDIT_2.pac       MiscData[2903]
STGTARGETLV1.pac    MiscData[50]
STGTARGETLV2.pac    MiscData[50]
STGTARGETLv3.pac    MiscData[50]
STGTARGETLv4.pac    MiscData[50]
STGTARGETLv5.pac    MiscData[50]

*STGCHARAROLL_xx.pac doesn't have any.

There's also a SCLA in adventure_common_en.pac (MiscData[0]).

Header:
size -0x0F
0x04 - Number of entries in offset section


Offset section:
The offset section comes directly after the header in all files i've found. The File's values seem to be static between files.
The offsets values here are 4 bytes long and point to offsets later in the file that contain data.

Notable Offsets:
Offsets to these data tables change depending on the collision data in miscdata[2] it seems, so these will be descriptions of offsets that i know are contained in this file

-ground Collision data. Contains step + landing sounds, ground traction(Float value), and somewhat controls gfx played when dashing on ground

Ground DATA:
Size of entry - 0x54
0x00 - Numeric ID of the entry
0x04 - Float value for ground traction. 0 = never ending slide. 10 = immediate stop with no slide.

Example of ground data:
                                                           00 00 00 17
3F 80 00 00 00 00 00 00 01 01 00 00 00 00 00 00
00 00 00 DD 00 00 00 DD 00 00 00 DD 00 00 00 DD
01 01 00 00 00 00 00 00 00 00 00 E0 00 00 00 E0
00 00 00 E0 00 00 00 E0 01 01 00 00 00 00 00 00
00 00 00 E0 00 00 00 E0 00 00 00 E0 00 00 00 E0
   GSND
Miscdata[8] in some single room battle stages

===================================================================
GSND
Sounds played on stage. found in single room battle stages
(rooms like level 1, Mario vs Kirby) Labled as miscdata[8]
Always contained within BLOC files.
===================================================================

Header:
size -0x08

0x00 - GSND
0X04 - Number of entries in the file
0x08 Offset section begins

Data:
each offset in the offset section is relative to the beginning of the GSND file.
The data the offsets point to are the Info index of sounds in smashbros_sound.brsar
represented as hex. Convert these numbers to decimal to find the sound that gets played.

0x00 - Info index of sound represented in Hex
ox04 - String beginning flag? always followed by 16 null bytes
0x14 - unknown float value.
0x18 - nulls
0x1C - string of stage?
0x3C - Trigger ID?
   BGMG
Adventure_Common labeled miscdata[4]

===================================================================
BGMG
Music properties for SSE Stages/Boss Battles/Classic Mode (final stage)
===================================================================

Header (0x10)

0x00(4)   BGMG
0x04(4)   # of entries (0x10F)
0x08(4)   Nulls
0x0C(4)   Nulls
0x10 - offset section begins

Entry (0x10)

0x00(4)   Stage/file ID
0x04(4)   Song ID
0x08(4)   Volume(?) (Always 0x64 (100))
0x0C(4)   Nulls

Stage ID list:
01 00 01 00 Midair Stadium
03 00 01 00 Midair Stadium
03 01 01 00 Midair Stadium (Vs. Petey Pirahna)

04 00 01 00 Sky World
04 01 01 00 Sky World
04 02 01 00 Sky World
04 02 01 01 Sky World

05 00 01 00 Sea of Clouds
05 01 02 00 Sea of Clouds
05 01 02 01 Sea of Clouds
05 01 03 00 Sea of Clouds

06 00 01 00 The Jungle
06 00 02 00 The Jungle
06 00 02 01 The Jungle
06 00 03 00 The Jungle
06 00 04 00 The Jungle
06 00 04 01 The Jungle

07 00 01 00 The Plain
07 00 01 01 The Plain
07 00 02 00 The Plain

08 00 01 00 The Lake (Vs. Rayquaza)
08 01 01 00 The Lake
08 01 02 00 The Lake
08 01 03 00 The Lake
08 01 03 01 The Lake
08 01 03 02 The Lake
08 01 04 00 The Lake
08 01 04 01 The Lake
08 01 04 02 The Lake
08 01 05 00 The Lake
08 01 05 01 The Lake
08 02 01 00 The Lake
08 03 01 00 The Lake

09 00 01 00 The Ruined Zoo
09 01 01 00 The Ruined Zoo (Vs. Porky)
09 02 01 00 The Ruined Zoo
09 02 02 00 The Ruined Zoo
09 02 03 00 The Ruined Zoo
09 02 03 01 The Ruined Zoo

0A 00 01 00 The Battlefield Fortress
0A 00 01 01 The Battlefield Fortress
0A 00 02 00 The Battlefield Fortress
0A 01 01 00 The Battlefield Fortress
0A 02 01 00 The Battlefield Fortress
0A 02 02 00 The Battlefield Fortress
0A 02 02 01 The Battlefield Fortress
0A 02 03 00 The Battlefield Fortress
0A 02 05 00 The Battlefield Fortress

0C 00 01 00 The Forest
0C 00 01 01 The Forest
0C 00 02 00 The Forest
0C 00 03 00 The Forest

0E 00 01 00 The Research Facility
0E 00 05 00 The Research Facility
0E 01 01 00 The Research Facility
0E 01 02 00 The Research Facility
0E 01 03 00 The Research Facility
0E 01 04 00 The Research Facility
0E 01 05 00 The Research Facility
0E 01 06 00 The Research Facility

10 00 01 00 The Lake Shore
10 00 02 00 The Lake Shore
10 01 01 00 The Lake Shore
10 01 02 00 The Lake Shore
10 02 01 00 The Lake Shore
10 02 02 00 The Lake Shore
10 03 01 00 The Lake Shore
10 03 01 01 The Lake Shore
10 03 01 02 The Lake Shore
10 03 01 03 The Lake Shore

12 00 01 00 The Path to the Ruins
12 00 01 01 The Path to the Ruins
12 00 02 00 The Path to the Ruins
12 00 03 00 The Path to the Ruins
12 01 01 00 The Path to the Ruins

14 00 01 00 The Cave
14 00 01 01 The Cave
14 00 02 00 The Cave
14 00 03 00 The Cave
14 00 03 01 The Cave

16 00 01 00 The Ruins
16 00 02 00 The Ruins
16 00 02 01 The Ruins
16 00 03 00 The Ruins
16 00 03 01 The Ruins
16 01 01 00 The Ruins

18 00 01 00 The Wilds
18 00 01 01 The Wilds
18 00 02 00 The Wilds
18 00 02 01 The Wilds
18 00 02 02 The Wilds
18 01 01 00 The Wilds (Vs. Galleom)

19 00 01 00 The Ruined Hall (Vs. Galleom)

1A 00 01 00 The Wilds
1A 00 01 01 The Wilds
1A 00 02 00 The Wilds

1B 00 01 00 The Swamp
1B 00 02 00 The Swamp
1B 00 02 01 The Swamp
1B 01 01 00 The Swamp
1B 02 01 00 The Swamp
1B 02 02 00 The Swamp
1B 02 02 01 The Swamp
1B 02 03 00 The Swamp

1C 00 02 00 The Research Facility
1C 00 02 01 The Research Facility
1C 00 03 00 The Research Facility
1C 01 01 00 The Research Facility
1C 02 01 00 The Research Facility
1C 02 02 00 The Research Facility
1C 02 02 01 The Research Facility
1C 02 03 00 The Research Facility
1C 02 04 00 The Research Facility
1C 03 01 00 The Research Facility (Vs. Ridley)

1D 00 01 00 Outside the Ancient Ruins
1D 00 01 01 Outside the Ancient Ruins
1D 00 01 02 Outside the Ancient Ruins

1E 00 01 00

1F 00 01 00 The Glacial Peak
1F 00 02 00 The Glacial Peak
1F 00 03 00 The Glacial Peak
1F 00 03 01 The Glacial Peak
1F 00 03 02 The Glacial Peak
1F 01 01 00 The Glacial Peak

20 00 01 00 The Canyon

21 00 01 00 Battleship Halberd Interior
21 00 02 00 Battleship Halberd Interior
21 00 02 01 Battleship Halberd Interior
21 01 01 00 Battleship Halberd Interior
21 01 01 01 Battleship Halberd Interior
21 01 02 00 Battleship Halberd Interior
21 01 03 00 Battleship Halberd Interior
21 01 04 00 Battleship Halberd Interior
21 02 01 00 Battleship Halberd Interior

22 00 01 00 Battleship Halberd Exterior
22 00 02 00 Battleship Halberd Exterior
22 00 03 00 Battleship Halberd Exterior
22 00 04 00 Battleship Halberd Exterior
22 00 05 00 Battleship Halberd Exterior

23 00 01 00 Battleship Halberd Bridge (Vs. Duon)

24 00 01 00 The Subspace Bomb Factory
24 00 01 01 The Subspace Bomb Factory
24 00 01 02 The Subspace Bomb Factory
24 00 01 03 The Subspace Bomb Factory
24 00 02 00 The Subspace Bomb Factory

25 00 01 00 The Subspace Bomb Factory
25 00 01 01 The Subspace Bomb Factory
25 00 02 00 The Subspace Bomb Factory
25 00 02 01 The Subspace Bomb Factory
25 00 03 00 The Subspace Bomb Factory
25 01 01 00 The Subspace Bomb Factory
25 02 01 00 The Subspace Bomb Factory
25 02 02 00 The Subspace Bomb Factory
25 02 03 00 The Subspace Bomb Factory
25 03 01 00 The Subspace Bomb Factory (Vs. Metaridley)

27 00 01 00 Entrance to Subspace

28 00 01 00 Subspace
28 00 02 00 Subspace
28 00 03 00 Subspace
28 00 04 00 Subspace
28 00 05 00 Subspace
28 00 06 00 Subspace
28 00 07 00 Subspace
28 00 08 00 Subspace
28 00 09 00 Subspace
28 01 01 00 Subspace

29 00 01 00 Subspace
29 00 02 00 Subspace
29 00 03 00 Subspace

2A 00 01 01 The Great Maze
2A 00 01 02 The Great Maze
2A 00 01 03 The Great Maze
2A 00 01 04 The Great Maze
2A 00 02 01 The Great Maze
2A 00 02 02 The Great Maze
2A 00 02 03 The Great Maze
2A 00 02 04 The Great Maze
2A 00 02 05 The Great Maze
2A 00 03 01 The Great Maze
2A 00 05 01 The Great Maze
2A 00 05 02 The Great Maze
2A 00 05 03 The Great Maze
2A 00 07 01 The Great Maze
2A 00 07 02 The Great Maze
2A 00 07 03 The Great Maze
2A 00 09 01 The Great Maze
2A 00 09 02 The Great Maze
2A 00 09 03 The Great Maze
2A 00 0B 01 The Great Maze
2A 00 0D 01 The Great Maze
2A 00 0D 02 The Great Maze
2A 00 0F 01 The Great Maze
2A 00 11 01 The Great Maze
2A 00 11 02 The Great Maze
2A 00 11 03 The Great Maze
2A 00 13 01 The Great Maze
2A 00 13 02 The Great Maze
2A 00 15 01 The Great Maze
2A 00 15 03 The Great Maze
2A 00 15 04 The Great Maze
2A 00 15 05 The Great Maze
2A 00 17 01 The Great Maze
2A 00 17 02 The Great Maze
2A 00 17 03 The Great Maze
2A 00 19 01 The Great Maze
2A 00 19 02 The Great Maze
2A 00 19 03 The Great Maze
2A 00 1B 01 The Great Maze
2A 00 1B 02 The Great Maze
2A 00 1B 03 The Great Maze
2A 00 1D 02 The Great Maze
2A 00 1F 01 The Great Maze
2A 00 1F 02 The Great Maze
2A 00 1F 03 The Great Maze
2A 00 21 01 The Great Maze
2A 00 21 02 The Great Maze
2A 00 23 01 The Great Maze
2A 00 25 01 The Great Maze
2A 00 29 00 The Great Maze (Vs. Petey Pirahna)
2A 00 2A 00 The Great Maze (Vs. Porky)
2A 00 2B 00 The Great Maze (Vs. Duon)
2A 00 2C 00 The Great Maze (Vs. Ridley)
2A 00 2D 00 The Great Maze (Vs. Metaridley)
2A 00 2E 00 The Great Maze (Vs. Galleom (The Wilds))
2A 00 2F 00 The Great Maze (Vs. Rayquaza)
2A 00 33 00 The Great Maze (Shadow bug)
2A 00 34 00 The Great Maze (Shadow bug)
2A 00 35 00 The Great Maze (Shadow bug)
2A 00 36 00 The Great Maze (Shadow bug)
2A 00 37 00 The Great Maze (Shadow bug)
2A 00 38 00 The Great Maze (Shadow bug)
2A 00 39 00 The Great Maze (Shadow bug)
2A 00 3A 00 The Great Maze (Shadow bug)
2A 00 3B 00 The Great Maze (Shadow bug)
2A 00 3C 00 The Great Maze (Shadow bug)
2A 00 3D 00 The Great Maze (Shadow bug)
2A 00 3E 00 The Great Maze (Shadow bug)
2A 00 3F 00 The Great Maze (Shadow bug)
2A 00 40 00 The Great Maze (Shadow bug)
2A 00 41 00 The Great Maze (Shadow bug)
2A 00 42 00 The Great Maze (Shadow bug)
2A 00 43 00 The Great Maze (Shadow bug)
2A 00 44 00 The Great Maze (Shadow bug)
2A 00 45 00 The Great Maze (Shadow bug)
2A 00 46 00 The Great Maze (Shadow bug)
2A 00 47 00 The Great Maze (Shadow bug)
2A 00 48 00 The Great Maze (Shadow bug)
2A 00 49 00 The Great Maze (Shadow bug)
2A 00 4A 00 The Great Maze (Shadow bug)
2A 00 4B 00 The Great Maze (Shadow bug)
2A 00 4C 00 The Great Maze (Shadow bug)
2A 00 4D 00 The Great Maze (Shadow bug)
2A 00 4E 00 The Great Maze (Shadow bug)
2A 00 4F 00 The Great Maze (Shadow bug)
2A 00 50 00 The Great Maze (Shadow bug)
2A 00 51 00 The Great Maze (Shadow bug)
2A 01 01 00 The Great Maze (Vs. Tabuu)

5A 00 01 00 Classic Mode Master/Crazy Hand
5A 01 01 00 Master Hand
5A 02 01 00 Crazy Hand

5B 00 01 00 All-Star Rest Area?
5B 01 01 00 All-Star Rest Area?

5C 00 01 00 Petey Pirahna
5C 01 01 00 Rayquaza
5C 02 01 00 Porky
5C 03 01 00 Galleom (The Wilds)
5C 04 01 00 Galleom (The Ruined Hall)
5C 05 01 00 Ridley
5C 06 01 00 Duon
5C 07 01 00 Metaridley
5C 08 01 00 Tabuu

Music ID list:
26F9 Menu 1
26FA Menu 1
26FB Menu 2
26FC Battlefield
26FD Final Destination
26FE
26FF Online Practice Stage
2700 Results Display Screen
2701 Tournament Registration
2702 Tournament Grid
2703 Tournament Match End
 2704
2705 Classic: Results Screen
 2706
2707 All-Star Rest Area
2708 Home-Run Contest
2709 Cruel Brawl
270A Boss Battle
270B Trophy Gallery
270C Sticker Album / Album / Chronicle
270D Coin Launcher
 270E
270F Stage Builder
 2710
 2711
2712 Target Smash!!
2713 Credits
2714 Ground Theme (Super Mario Bros.)
2715 Underground Theme (Super Mario Bros.)
2716 Underwater Theme (Super Mario Bros.)
2717 Underground Theme (Super Mario Land)
2718 Airship Theme (Super Mario Bros. 3)
2719 Castle / Boss Fortress (Super Mario World / SMB 3)
271A Title / Ending (Super Mario World)
271B Main Theme (New Super Mario Bros.)
271C Luigi's Mansion Theme
271D Gritzy Desert
 271E
 271F
2720 Delfino Plaza
2721 Ricco Harbor
2722 Main Theme (Super Mario 64)
2723 Ground Theme 2 (Super Mario Bros.)
2724 Mario Bros.
2725 Mario Circuit
2726 Luigi Circuit
2727 Waluigi Pinball
2728 Rainbow Road
2729 Jungle Level Ver.2
272A The Map Page / Bonus Level
272B Opening (Donkey Kong)
272C Donkey Kong
272D King K.Rool / Ship Deck 2
272E Bramble Blast
272F Battle for Storm Hill
2730 Jungle Level
2731 25m BGM
2732 DK Jungle 1 Theme (Barrel Blast)
2733 Title (The Legend of Zelda)
2734 Main Theme (The Legend of Zelda)
2735 Great Temple / Temple
2736 The Dark World
2737 Hidden Mountain & Forest
 2738
2739 Tal Tal Heights
273A Hyrule Field Theme
273B Ocarina of Time Medley
273C Song of Storms
273D Molgera Battle
273E Village of the Blue Maiden
273F Gerudo Valley
2740 Termina Field
2741 Dragon Roost Island
2742 The Great Sea
2743 Main Theme (Twilight Princess)
2744 The Hidden Village
2745 Midna's Lament
2746 Main Theme (Metroid)
2747 Norfair
2748 Ending (Metroid)
2749 Vs. Ridley
274A Theme of Samus Aran, Space Warrior
274B Sector 1
274C Opening / Menu (Metroid Prime)
274D Vs. Parasite Queen
274E Vs. Meta Ridley
274F Multiplayer (Metroid Prime 2)
2750 Ending (Yoshi's Story)
2751 Obstacle Course
2752 Yoshi's Island
 2753
2754 Flower Field
2755 Wildlands
 2756 ATHLETIC2 (Obstacle Course (Winter))
2757 The Legendary Air Ride Machine
2758 King Dedede's Theme
2759 Boss Theme Medley
275A Butter Building
275B Gourmet Race
275C Meta Knight's Revenge
275D Vs. Marx
275E O2 Battle
275F Forest / Nature Area
2760 Checker Knights
2761 Frozen Hillside
2762 Squeak Squad Theme
2763 Main Theme (Star Fox)
2764 Corneria
2765 Main Theme (Star Fox 64)
2766 Area 6
2767 Star Wolf
 2768
2769 Space Battleground
276A Break Through the Ice
276B Star Wolf (Star Fox: Assault)
276C Space Armada
276D Area 6 Ver. 2
276E Pokémon Main Theme
276F Pokémon Center
2770 Road to Viridian City (From Pallet Town / Pewter City)
2771 Pokémon Gym / Evolution
2772 Wild Pokémon Battle! (Ruby / Sapphire)
2773 Victory Road
2774 Wild Pokémon Battle! (Diamond / Pearl)
2775 Dialga / Palkia Battle at Spear Pillar!
2776 Team Galactic Battle!
2777 Route 209
2778 Mute City
2779 White Land
277A Fire Field
277B Car Select
277C Dream Chaser
277D Devil's Call in Your Heart
277E
277F Brain Cleaner
2780 Shotgun Kiss
2781 Planet Colors
 2782
2783 Fire Emblem Theme
2784 Shadow Dragon Medley
2785 With Mila's Divine Protection (Celica Map 1)
 2786
2787 Preparing to Advance
2788 Winning Road - Roy's Hope
2789 Attack!
278A Against the Dark Knight
278B Crimean Army Sortie
278C Power-Hungry Fool
278D Victory Is Near
278E Ike's Theme
278F Snowman
2790 SENTOUONIISAN (Unused)
2791 EIGHTMELODIES (Unused)
2792 SMILEANDTEARS (Unused)
2793 Humoresque of a Little Dog
 2794
2795 Porky's Theme
2796 Mother 3 Love Theme
2797 Unfounded Revenge / Smashing Song of Praise
2798 You Call This a Utopia?!
2799 World Map (Pikmin 2)
279A Forest of Hope
279B Environmental Noises
279C Ai no Uta
279D Tane no Uta
279E Main Theme (Pikmin)
279F Stage Clear / Title (Pikmin)
27A0 Ai no Uta (French Version)
27A1 WarioWare, Inc.
27A2 WarioWare, Inc. Medley
27A3 Mona Pizza's Song (Japanese Version)
27A4 Mona Pizza's Song (English Version)
27A5 Mike's Song (Japanese Version)
27A6 Mike's Song (English Version)
27A7 Ashley's Song (Japanese Version)
27A8 Ashley's Song (English Version)

27B3 Title (Animal Crossing)
27B4 Go K.K. Rider!
27B5 2:00 a.m.
 27B6
27B7 The Roost
27B8 Town Hall and Tom Nook's Store
27B9 K.K. Crusin'
27BA K.K. Western
27BB K.K. Gumbo
27BC Rockin' K.K.
27BD DJ K.K.
27BE K.K. Condor
27BF Underworld
27C0 Title (Kid Icarus)
27C1 Skyworld
27C2 Kid Icarus Original Medley
27C3 Famicom Medley
27C4 Gyromite
 27C5
27C6 Chill (Dr. Mario)
27C7 Clu Clu Land
27C8 Balloon Trip
27C9 Ice Climber
27CA Shin Onigashima
27CB Title (3D Hot Rally)
27CC Tetris: Type A
27CD Tetris: Type B
27CE Tunnel Scene (X)
27CF Power-Up Music
27D0 Douchuumen (Nazo no Murasamejo)
 27D1
27D2 PictoChat
 27D3 ELECTRO (Hanenbow)
27D4 Flat Zone 2
27D5 Mario Tennis / Mario Golf
27D6 Lip's Theme (Panel de Pon)
27D7 Marionation Gear
27D8 Title (Big Brain Academy)
27D9 Golden Forest (1080 Snowboarding)
27DA Mii Channel
27DB Wii Shop Channel
27DC Battle Scene / Final Boss (Golden Sun)
27DD Shaberu! DS Cooking Navi
27DE Excite Truck
27DF Brain Age: Train Your Brain in Minutes a Day
27E0 Opening Theme (Wii Sports)
27E1 Charge! (Wii Play)
 27E2 MAINTHEME
27E3 Encounter
27E4 Theme of Tara
27E5 Yell "Dead Cell"
27E6 Snake Eater (Instrumental)
27E7 MGS4 Theme of Love Smash Bros. Brawl Version
27E8 Cavern
27E9 Battle in the Base
27EA BEATMANIA (Unused)
27EB Theme of Solid Snake
27EC Calling to the Night
27ED Credits (Super Smash Bros.)
27EE Menu (Super Smash Bros. Melee)
27EF Opening (Super Smash Bros. Melee)
 27F0
 27F1 DXTERMINAL (Master Hand)
27F2 Green Hill Zone
27F3 Scrap Brain Zone
27F4 Emerald Hill Zone
27F5 Angel Island Zone
 27F6
27F7 Sonic Boom
27F8 Super Sonic Racing
27F9 Open Your Heart
27FA Live & Learn
27FB Sonic Heroes
27FC Right There, Ride On
27FD HIS WORLD (Instrumental)
27FE Seven Rings In Hand
27FF Princess Peach's Castle (Melee)
2800 Rainbow Cruise (Melee)
2801 Jungle Japes (Melee)
2802 Brinstar Depths (Melee)
2803 Yoshi's Island (Melee)
2804 Fountain of Dreams (Melee)
2805 Green Greens (Melee)
2806 Corneria (Melee)
2807 Pokémon Stadium (Melee)
2808 Poké Floats (Melee)
2809 Big Blue (Melee)
280A Mother (Melee)
280B Icicle Mountain (Melee)
280C Flat Zone (Melee)
280D Super Mario Bros. 3 (Melee)
280E Battle Theme (Melee)
280F Fire Emblem (Melee)
2810 Mach Rider (Melee)
2811 Mother 2 (Melee)
2812 Dr. Mario (Melee)
2813 Battlefield (Melee)
 2814
2815 Multi-Man Melee 1 (Melee)
2816 Temple (Melee)
2817 Final Destination (Melee)
2818 Kongo Jungle (Melee)
2819 Brinstar (Melee)
281A Venom (Melee)
281B Mute City (Melee)
281C Menu (Melee)
281D Giga Bowser (Melee)
 281E
281F Adventure Map
2820 Step: The Plain
2821 Step: The Cave
2822 Step: Subspace
2823 Boss Battle Song 1
 2824 SSE Results
2825 Boss Battle Song 2
2826 Save Point
 2827 SSE DK Jungle
 2828 SSE Airship theme
 2829 SSE Halberd Interior
 282A SSE Metroid Prime Data Select
 282B SSE Brinstar
282C Step: Subspace Ver.2
282D Step: Subspace Ver.3
 282E SSE Halberd Moving
   GMTA*Updated
Inside BLOC files, most often in miscdata[5]
===================================================================
GMTA
Stage Hitboxes!
===================================================================
Header:
0x00 - GMTA
0X04 - number of entries
0x08 - offset section begins

==Hitbox Data==
*there are ALOT of unknown values here, but these are what i've found so far*

0x3C - File index of model specifying hitbox bone and location
0x1E4 - Damage Multiplier (Scales with Difficulty)
0x1E8 - Hitbox Size
0x20C - Hitbox Effect
0x228 - Hitbox sfx
   GMWA*NEW
Inside BLOC files, most often in miscdata[5]
===================================================================
GMWA
Controls all buttons placed in the level
===================================================================
Header:
0x00 - GMWA
0x04 - Number of entries
0x08 - Offset section begins

==Button Data==
0x0C - Y-rotation
0x20(2) - Always 0x0001?
0x22(2) - positioning model File index. if 0xFF(none) position will be overridden with local float values?
0x28(4) - Button ID?
0x2C(4) - Trigger ID of this button
0x30(4) - Trigger ID to activate
0x88(4) - Hurtbox size
   GMOT
Inside BLOC files, most often in miscdata[5]
===================================================================
GMOT(grAdventureMotionGround)
It's currently unknown what the applicable difference is between GMOT and GMOV, Both seem to move objects with collisions attached to them
===================================================================
Header:
0x00 - GMOT
0x04 - Number of entries
0x08 - Offset section begins

==Data==
0x00(3C) - Unknown float values
0x3C(1) - Hexadecimal File Index of Model data in BBox associated with the object to be moved
0x3D(1) - Hexadecimal File Index of Collision Data in BBox associated with the object to be moved
0x118(4) - Hexadecimal Info index of sound to be played
   GMOV
Inside BLOC files, most often in miscdata[5]
===================================================================
GMOV(grAdventureMoveGround)
It's currently unknown what the applicable difference is between GMOT and GMOV, Both seem to move objects with collisions attached to them
===================================================================
Header:
0x00 - GMOV
0x04 - Number of entries
0x08 - Offset section begins

==Data==
0x00(44) - Unknown float values
0x3C(1) - Hexadecimal File Index of Model data in BBox associated with the object to be moved
0x3D(1) - Hexadecimal File Index of Collision Data in BBox associated with the object to be moved
   GBLK
Inside BLOC files, most often in miscdata[5]
===================================================================
GBLK
Breakable blocks placed within levels
===================================================================
Header:
0x00 - GBLK
0x04 - Number of entries
0x08 - Offset section begins

==Data==
0x00(18) - Nulls
0x18(4) - Hurtbox size
0x1C(4) - Nulls
0x20(4) - Unknown
0x24(4) - Flags?
0x28(1) - unknown
0x29(1) - Base Block Model
0x2C(1) - Block Position Model
0x2D(1) - Collision Definition of block
0x30(4) - 0xFFFFFFFF
0x34(4) - 0xFFFFFFFF
   GFPR*NEW
Inside BLOC files, most often in miscdata[5]
===================================================================
GFPR (grAdventureFirePillar)
Pillars of fire!
===================================================================
==Hitbox Data==
*there are many unknown values here, but these are what i've found so far*

0x00(3C) - Padding
0x3C - File index of model
0x20c - Hitbox effect
0x228 - Hitbox sfx
0x240 - x-translation
0x244 - y-translation
0x248 - z-translation
0x264(3C) - Padding
   GEFF*NEW
Inside BLOC files, most often in miscdata[8]
===================================================================
GEFF
Backround Graphical effects
===================================================================

Header:
0x00 - GEFF
0x04 - Number of entries
0x08 - Offset section begins

==Data==
0x00(18) Nulls?
0x18(4) Unknown
0x1C(4) Unknown
0x20(4) Graphic ID
0x24(4) nulls?

Enemy Files:

    GEG1*Updated
Inside BLOC files, most often in miscdata[7]

===================================================================
GEG1:
Number Of enemies spawned / positions, type, spawn time, and AI behaviour of enemies
===================================================================
Header:
0x00 - GEG1
0X04 - number of entries
0x08 - offset section begins

Enemy Data:
0x1D - Enemy type
0x20 - AI type?
0x7C(4) - Trigger ID of this enemy
0x80(4) - Trigger ID to activate when this enemy is destroyed

==Enemy Types==
-0F spaak | AI type 05
-17 Prim | AI type 00
-14 boxer prim | AI type 00
-20 Boom prim | AI type 00
-23 sword prim | AI type 00
 
Files that need parsing:
-EPSP [enemy AI]
-GLAD [Ladders]
-GIB2 [Item Blocks]
-GMTA [Stage Hitboxes!]
-GMWA [Buttons]
-GLOK
-GFSR
-GMOT
-GFT2
-GENC
-GEPT
-GNDV
-GITM
-GASD
-GET1
Pages: [1]