Kitty Corp Meow Mix Forums

Super Smash Bros. Brawl Hacking => Programming => Topic started by: Sammi Husky on March 18, 2014, 07:24:13 PM



Title: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Sammi Husky 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:
(http://i.imgur.com/BqVqv.png)

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:
(http://i.imgur.com/bU5mX.png)

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.
(http://i.imgur.com/wu4FQ.png)

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 (http://www.h-schmidt.net/FloatApplet/IEEE754.html). 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
http://youtu.be/jbW3r-WALX0 (http://youtu.be/jbW3r-WALX0)
http://youtu.be/kTWW_ooBJh4 (http://youtu.be/kTWW_ooBJh4)

Introductory video to new SSE series.

http://youtu.be/GXJ9EfzQTJ0 (http://youtu.be/GXJ9EfzQTJ0)

Download links:
HXD (http://mh-nexus.de/en/downloads.php?product=HxD), a commonly-used hex editor.
Notepad++ (http://notepad-plus-plus.org/download/v5.9.8.html), a handy program based off of Notepad with a Hex Plugin (http://sourceforge.net/projects/npp-plugins/files/Hex%20Editor/Hex%20Editor%20Plugin%20v0.9.4/HexEditor_0_9_4_UNI_dll.zip/download?use_mirror=superb-dca2).
Hexidecimal Number Converter (http://www.h-schmidt.net/FloatApplet/IEEE754.html) (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


Title: Re: The New File Research Thread [3/21/14] GSND + file locations
Post by: Sammi Husky on March 23, 2014, 02:03:43 AM
Turns out GEG1 and the EPSP files are directly related and control the enemy spawns and AI behavior respectively. will update the OP with new information accordingly. Currently, i can almost 100% rebuild the files that spawn enemies. i can spawn any type of enemy from prims to spaak, as well as when and where they are spawned.

(BTW im taking this post in case i run out of room in the OP)


Title: Re: The New File Research Thread [3/21/14] GSND + file locations
Post by: pikazz on March 23, 2014, 04:08:11 AM
yay! more filetypes to explore ;w;


Title: Re: The New File Research Thread [3/21/14] GSND + file locations
Post by: Sammi Husky on March 23, 2014, 12:59:55 PM
Luckily after looking the module for adventure stages, it seems that almost all of SSE is dictated through files. Which is good, because that means we really can have complete control. Incidentally, if you look through the module's objects section (section[5]) you'll find a list of all SSE files. I actually have a hunch that ADPM files dictate what mode the stage is. (e.g boss battle, melee battle) though this is just suspicions :P

Deviating from SSE files a little bit SCLA seems to control nitty gritty details about stage collisions. Such as step sound, landing sound, whether dash gfx are played, and global ground friction. And that's only one of the sections in SCLA out of 30. Though I don't think all stages use ALL the parameters, or even most. AND depending on the collision data (miscdata[2]) it seems that the data locations within the file are shifted, or maybe just use different sections....I haven't quite figured that file out yet.


Title: Re: [3/23/14] The New File Research Thread | Spawning enemies!
Post by: Gamma Ridley on March 23, 2014, 06:09:52 PM
Can enemies only be spawned within the SSE? Or would it be possible to spawn them outside of it by, say, a character, or on a stage? Just a thought, I know nothing of this stuff.

Wish I could help, but for now I'll be cheering here on the sidelines, hoping you find something juicy that could help with stage making. :1


Title: Re: [3/23/14] The New File Research Thread | Spawning enemies!
Post by: Sammi Husky on March 23, 2014, 09:06:27 PM
I haven't experimented with the Spawning the enemies in a normal stage, that would be interesting! it's a good idea, i'll have to give it a shot sometime. I do have my suspicions that it wont work, but i'll give it a go either way.

The SCLA file isn't mapped much yet, but it in particular seems to be the juicy stuff inside normal stages. Like traction / step sound and landing sounds. Hopefully i can find some really nice stuff in there after i map it! :)


Title: Re: [3/23/14] The New File Research Thread | Spawning enemies!
Post by: Spex130 on March 23, 2014, 09:26:34 PM
Nice work here! Always a fan of modifying the SSE. I'm with Grav here in that I really want to help, but it seems kinda out of my expertise.

Is there any way we can help out? If you can tutorialize the process of mapping into a replicable general workflow, crowdsourcing might be of use to you!

Among other things, I'm fairly sure that SSE enemies have a PSA-like component to them as well. Maybe checking the Brawlbox Source (or PSA, if the source is around) might give some leads into cracking it? I'll try looking into it, too, but I'm no professional.

In any case, good luck! Cheering for you!


Title: Re: [3/23/14] The New File Research Thread | Spawning enemies!
Post by: pikazz on March 24, 2014, 05:50:28 AM
the enemy data is awesome!

but using that data in stage is harder than it looks, it needs to be loaded in the module aswell :/


Title: Re: [3/23/14] The New File Research Thread | Spawning enemies!
Post by: Sky Grounder on March 24, 2014, 11:33:00 AM
Subbed to thread. I worked on SSE files a long time ago, and had some data on the different types. Sadly, I think most of it is gone, due to my PC breaking some time ago.
I posted some information in the SSE collab thread, if you want to add it to the OP.


Title: Re: [3/23/14] The New File Research Thread | Spawning enemies!
Post by: Sammi Husky on March 24, 2014, 01:56:41 PM
Sweet! i'll go nab that

but using that data in stage is harder than it looks, it needs to be loaded in the module aswell :/

Yea using it in anything but an adventure stage won't work, because the module  sora_adv_stage is programmed to load these files and act a certain way, while sora_melee is not. What makes SSE so customizable, is that it uses a single generic module to govern ALL adventure stages. That means that anything thats different between skyworld and halberd or any other stage, is completely controlled by these files and not the module. :P


Title: Re: [3/24/14] The New File Research Thread | BGMG added!
Post by: pikazz on March 24, 2014, 02:19:10 PM
Sweet! i'll go nab that
Yea using it in anything but an adventure stage won't work, because the module  sora_adv_stage is programmed to load these files and act a certain way, while sora_melee is not. What makes SSE so customizable, is that it uses a single generic module to govern ALL adventure stages. That means that anything thats different between skyworld and halberd or any other stage, is completely controlled by these files and not the module. :P
I know that, together that the enemy module data is inside Sora_Enemy, which controlls the "PSA" of the enemies just like Ft_Char does to a character. so to add a enemy to a regular VS stage, the Stage module need the Sora_Enemy "enemy" part together with the part of Sora_Adv_Stage to have it work


Title: Re: [3/24/14] The New File Research Thread | BGMG added!
Post by: Sammi Husky on March 26, 2014, 12:59:22 PM
Well, it seems my suspicions about ADPM were correct, it controls the game mode of the level, whether it be a boss battle, normal battle, or what have you. I haven't documented the file itself yet, but soon. I have succeeded in changing the first level (where you fight kirby) from fighting a char, to fighting in an arena full of enemies. However, the enemies don't spawn, and the match instantly ends as it starts since no enemies were spawned. I hope i can find the file that's responsible for this..hmm..

But hey progress is progress and im one step closer to being able to rebuild a single level into something completely different


Title: Re: [3/24/14] The New File Research Thread | BGMG added!
Post by: pikazz on March 28, 2014, 04:53:42 AM
something I am really curious about is how to change the stages, example changing the first kirby/Mario match to another stage, making the stage seceltion load another stage or make the Masterhand Boss in Classic mode being another boss

also, do you know that the filetypes is nickname for what actually doing?
BGMG can be Background Music Generator
GSND can be Generate Sound
GMOV can be Generate Movie
GITM can be Generate Item
GEG1 can be Generate Enemy Generator 1


Title: Re: [3/24/14] The New File Research Thread | BGMG added!
Post by: Sammi Husky on March 28, 2014, 03:35:13 PM
Of course :P i know the filtype is an acronym for what the file does, however i felt i would just leave figuring out the acronym to others, and focus on what the files actually do instead ;)

incidentally, it seems that anything that MOVES uses GMOV.
Take a look at the BLOC archive in 280202a, there are a few helpful filetypes there. It's a fairly simple room with only a few notable things within it. Such as the door and the falling block. The falling block is what im really interested in, as it has hitboxes attached to it.


Title: Re: [3/24/14] The New File Research Thread | BGMG added!
Post by: pikazz on March 28, 2014, 05:50:28 PM
the sad thing we cant use that into to the fighter or the Brawl stage themself D;
imaging how easy it would be if we could use that moving block in 280202a to a stage example final destination!


Title: Re: [3/24/14] The New File Research Thread | BGMG added!
Post by: Sammi Husky on April 05, 2014, 01:52:28 AM
Whew! i have finally succeeded in linking two different levels together! The ADSJ file is directly tied to the GDOR file! I'll update the OP with documentation as soon as i write it out!

This effectively means that we can now create levels and link them from any door within a previous level. The real question is, can we make the game load a file that isn't NORMALLY there? We shall see...


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: Spex130 on April 05, 2014, 03:19:48 PM
Fantastic work!


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: Sammi Husky on April 05, 2014, 11:15:33 PM
I am a bit ahead of myself here, BUT i kinda made a tool that can explore any BLOC archive, list file offsets and subfiles within it, and the individual entries of each of those subfiles. It can currently change any enemy spawned to ANY OTHER enemy that i have identified. Though it only supports editing GEG1 Files right now, it aims to be an SSEditor that will eventually support all the files. Maybe even a gui for dragging and dropping stage elements to create new stages....maybe..if it's possible. ( it can VIEW all files inside a BLOC archive, but only edit GEG1).

When i have enough files supported and whatnot i'll release it as an alpha, but for now just a teaser~

(http://i.imgur.com/3f3UxoD.png)


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: BlackJax96 on April 05, 2014, 11:51:28 PM
Why not code it into Brawlbox?
Everything is already set up to read and write files and display child entries and properties.
All you need to do is implement the format.


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: Sammi Husky on April 06, 2014, 02:00:42 PM
Sounds like a good idea actually, I'll look into that. Still have a long way to go in learning c#, so  i'm constantly looking at BBox's source anyways. I only started programming in c# a few months ago. WHELP, good way to learn i suppose! lol


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: pikazz on April 06, 2014, 04:15:04 PM
Sammi Husky, I just want to make you sure being right on track.

but inside each SSE Stage in the first ARC file, all the enemy data, models and stuff are there.
so if we will edit the GEG1, we need to add that data aswell if it isn't in the stage already!


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: Sammi Husky on April 06, 2014, 05:28:31 PM
Sammi Husky, I just want to make you sure being right on track.

but inside each SSE Stage in the first ARC file, all the enemy data, models and stuff are there.
so if we will edit the GEG1, we need to add that data aswell if it isn't in the stage already!

Yep! that is true. However, some enemies aren't there and are in adventure_common. Another interesting thing, is that EPSP Needs to have the data for the AI for the enemies. since the movesets are in adventure_common and in the first arc entry in the file. :) I have a few templates of the EPSP data, and can almost completely rebuild the GEG1 and EPSP files.


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: pikazz on April 07, 2014, 03:38:44 AM
Yep! that is true. However, some enemies aren't there and are in adventure_common. Another interesting thing, is that EPSP Needs to have the data for the AI for the enemies. since the movesets are in adventure_common and in the first arc entry in the file. :) I have a few templates of the EPSP data, and can almost completely rebuild the GEG1 and EPSP files.
i know that, thats the more common enemies like all the primid and spaak I believe?

and thats pretty intresting! cant wait to make my own SSE Stage! :3


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: Sammi Husky on April 13, 2014, 01:31:21 PM
Hmm interestingly enough, it seems EPSP isn't needed at all for spawning enemies, at least not enemies that i have encountered thus far. Strange, because the strings in the EPSP data talk about 'AI' so i figure it still has something to do with the ai. However, i can create enemies that behave properly without having the EPSP file present at all.

Interesting. i wonder what EPSP actually does...


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: Spex130 on April 13, 2014, 07:17:37 PM
Might it be linked to difficulty level? It's a random shot, but that's something that isn't unilaterally necessary to create an enemy. If choosing an A.I. based on difficulty is something necessary, in the least they would leave a default option in case nothing was chosen.


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: Sammi Husky on April 13, 2014, 08:43:29 PM
Hey, thats a great idea actually. Alot of the string entries say something regarding 'AISwitchCheck' so that may very well be the case!


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: Sammi Husky on April 28, 2014, 12:05:23 PM
Just a slight update to this, The reason i haven't posted anything lately is because i've run into a very very slight roadblock. You see, i can completely replace a stage and everything in that stage including moving objects, enemy spawners, blahdeblahdeblah. BUT something is being read from somwhere that controls some very specific things.

Even though i replaced all the files with that of another stage, the game's camera (sometimes) and game MODE doesn't play correctly. for example, replacing the first stage after defeating kirby/mario with the first skyworld level works correctly, however you spawn WAY above everything and the cameras and blastlines behave like the original stage.

Next example, replacing that skyworld level this time. I just reverse the stages that were swapped last time. Putting that level directly after fighting kirby/mario over the first skyworld level. Somewhat same results, but this time you spawn correctly. The camera still seems to behave incorrectly but im not sure. However, the game mode for fighting an arena of enemies doesn't register correctly. The enemies spawn right and all that jazz, but defeating them doesn't advance the level...curious.

In other news, i found what SCLA and ADPM actually stands for by looking at strings in the module.

ADPM :: Adventure Stage Parameters

SCLA is a bit more iffy, it only references it like this "shadow_collision_check" and other shadow related strings. However this doesn't explain the step/landing sounds and traction Floating points.


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: Dantarion on April 28, 2014, 04:29:26 PM
This is awesome!



Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: Sammi Husky on April 30, 2014, 07:33:09 PM
This is awesome!


Indeed! :)

For anyone interested, i just felt like posting a little bit of Progress here. Just a proof of concept. I show off a few things in this video, the first being the sfx that are played when the clouds are triggered. Second (and main thing) being the linking of this stage to a very distant completely different SSE stage. The door i was walking in at the end was simply a blank door that lead to nowhere, however it can be changed to lead to ANY stage in the game. Including boss fights. I also just show that everything works. Hitboxes, dying/respawning, item boxes etc

http://youtu.be/kTWW_ooBJh4 (http://youtu.be/kTWW_ooBJh4)


EDIT: also, i've found the files that control stage related hitboxes. Like those big smashing spikey blocks with buttons on them in the factory levels.


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: pikazz on May 01, 2014, 03:04:29 AM
now this is progress!

do you have any clue how to change the character thats plays in new stage? would love to change example to jigglypuff :w:


Title: Re: [4/5/14] The New File Research Thread | Linking Stages together!
Post by: SonicBrawler on May 01, 2014, 11:32:32 AM
do you have any clue how to change the character thats plays in new stage? would love to change example to jigglypuff :w:

surprise surprise XD

nice job on this Sammi. Cant wait to see what else can be edited.


Title: Re: [5/1/14] The New File Research Thread | Stage Hitboxes!
Post by: Sammi Husky on May 01, 2014, 06:41:44 PM
Sweet! I found a few kind of important files today. The first one is pretty nice, It controls the hitboxes attached to stage hazards! So far, only 2 of the values have been scienced as i like to call it. Though the first two are pretty important. GMTA is the file that controls these.

The next being buttons. These are also really importatnt. Since buttons are used to trigger multiple events, i assume there may be something in the data for them that links 2 objects together. If so, this is one of the essential files for designing new stages. This file is the GMWA file!

Aside from those 2 files, i've also added quite a few new files to the OP under "Files that need parsing" I'll probably make a video tutorial pretty soon to show my general workflow when looking for structures within files. I'll also link a few useful web articles, though those articles will be pretty intense. In any case, i already know the purpose of the files that i added, but values haven't been scienced


Title: Re: [5/1/14] The New File Research Thread | Stage Hitboxes!
Post by: Spex130 on May 01, 2014, 06:43:34 PM
Please post information and videos so we can help you science.

Also, very nice work. You're doing fantastic!


Title: Re: [5/1/14] The New File Research Thread | Stage Hitboxes!
Post by: Eternal Yoshi on May 01, 2014, 06:46:09 PM
MiscData [5] appears to not exist in normal stages...
Can you add a note to the topic title to SSE Stage Hitboxes?
The current title is very, very misleading.

Anyway, the best way to check is to get the base damage of the projectile by checking it in game.


Title: Re: [5/1/14] The New File Research Thread | SSE Stage Hitboxes!
Post by: pikazz on May 02, 2014, 08:23:17 AM
something I cant wait is until we can make Versus stages of SSE's stage engine! meaning we can have enemies, Activate buttons, stage hazards while battling eachother!


Title: Re: [5/1/14] The New File Research Thread | SSE Stage Hitboxes!
Post by: Sammi Husky on May 02, 2014, 03:37:33 PM
Well well, so much done in so little time. I guess the easiest way to sum this up would be to say i can pretty much add any stage features from any other stage to basically anywhere else!

I've pretty much mapped the GMOT and GMOV files, which represent these game tasks respectively

GMOT = grAdventureMotionGround
GMOV = grAdventureMoveGround

Closer and closer, soon i will be able to start working on an editor for these files hehe. I'll update the OP with more information after i find some more useful values in the files.

http://youtu.be/jbW3r-WALX0 (http://youtu.be/jbW3r-WALX0)

EDIT: I've confirmed that you can actually ADD new stages to SSE without modifying or replacing any. I can tell the game to load a file that normally doesn't exist at all, and it will load perfectly :)


Title: Re: [5/1/14] The New File Research Thread | SSE Stage Hitboxes!
Post by: pikazz on May 02, 2014, 04:45:22 PM
wow! thats excellent news! keep it up :D

cant wait to test this thing out >w<


Title: Re: [5/1/14] The New File Research Thread | SSE Stage Hitboxes!
Post by: Eternal Yoshi on May 02, 2014, 05:57:40 PM
While this is amazing, I can't help but feel that having to design SSE stages around everyone limits what you can do because the more challenging level designs that would be interesting can't accommodate everyone.

To make it doable with everybody, you'll end up having to design it around the slow characters that can't jump(IE Bowser, Ganondorf), which will make the overall design too easy for the rest of the cast....

The fact that the SSE attributes makes everyone's jumping ability and mobility worse is no help either.

:(

At the very least with this info, Minus and PM(Much later down the line) can adjust level designs around the changes to the characters and physics. It's just too bad that it's so difficult to make platforming challenges that aren't a bore for the fast and higher jumping characters like VBrawl's SSE.


Title: Re: [5/1/14] The New File Research Thread | SSE Stage Hitboxes!
Post by: Spex130 on May 02, 2014, 08:01:44 PM
EDIT: I've confirmed that you can actually ADD new stages to SSE without modifying or replacing any. I can tell the game to load a file that normally doesn't exist at all, and it will load perfectly :)

Terminal hype velocity achieved.


Speaking of things, do you think it would be possible to not activate a flag to use SSE attributes using either actual files or ASM codes? Hmm.

Anyways, SSE editing is another one of those things I never thought I'd see, just like the Clone Engine, haha. I'm watching and waiting eagerly!


Title: Re: [5/1/14] The New File Research Thread | SSE Stage Hitboxes!
Post by: Don Jon Bravo on May 03, 2014, 08:09:55 AM
so
dont know if this has been asked before
but will it ever be possible to have a 4 player brawl in a customized SSE, and maybe having a boss in the background attack the 4 brawlers
kinda like stage hazards?


Title: Re: [5/1/14] The New File Research Thread | SSE Stage Hitboxes!
Post by: pikazz on May 03, 2014, 09:49:05 AM
so
dont know if this has been asked before
but will it ever be possible to have a 4 player brawl in a customized SSE, and maybe having a boss in the background attack the 4 brawlers
kinda like stage hazards?
well, it is possible to have 4 Player (the Yoshi-Link + Pit-Mario fight example)
but making it accept to be 4 playable characters might be a diffirent story

but using a SSE Stage Engine as a stage might work, but it will probely require huge work!


Title: Re: [5/1/14] The New File Research Thread | SSE Stage Hitboxes!
Post by: Don Jon Bravo on May 03, 2014, 12:02:46 PM
it would probably require modifyng the AI of bosses to attack more than one player
as well as keeping the same brawl rules during the event
who knows with all this new research on SSE we might get a close replication

it might be easier to import stage hitboxes into existing stages
rather than import brawl rules into SSE stages


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Sammi Husky on May 03, 2014, 01:31:15 PM
While this is amazing, I can't help but feel that having to design SSE stages around everyone limits what you can do because the more challenging level designs that would be interesting can't accommodate everyone.

Unfortunately yes, i see what you mean :(  Though i think just the ability to build custom levels in an easy streamlined interface (eventually) will draw alot of attention for people who just like the challenge :)

Speaking of things, do you think it would be possible to not activate a flag to use SSE attributes using either actual files or ASM codes? Hmm.

Im not entirely sure, it could be anything ranging from a simple pointer(s) to a place in memory after the game fixes the offsets, or it could be an entire asm routine that is responsible for loading the attributes..Though it's definitely possible, just out of my reach sadly

it might be easier to import stage hitboxes into existing stages
rather than import brawl rules into SSE stages

In all honesty, from the looks of it that may be the easiest route. Unless it's possible to make SSE stages with 4 fighters, with those fighters able to be controlled :/

In any case, i've updated the OP with information on GMOT and GMOV files, which allow basically all special and interesting stage objects to be placed into other stages. Basically any object that moves in SSE besides enemies use these, and it's also how i managed that last video. I've also added the last bit of info for the ADSJ file that was needed to link stages!


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: pikazz on May 03, 2014, 01:43:33 PM
speaking of which, the importing SSE stuff to a brawl stage might work! we just make the module load that file aswell! unless it requires some extra more information!
I can try to test load it in a module!

but example if I want to do a stage that has Hitboxes, what does it need?


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Don Jon Bravo on May 03, 2014, 03:41:02 PM
Unfortunately yes, i see what you mean :(  Though i think just the ability to build custom levels in an easy streamlined interface (eventually) will draw alot of attention for people who just like the challenge :)

Im not entirely sure, it could be anything ranging from a simple pointer(s) to a place in memory after the game fixes the offsets, or it could be an entire asm routine that is responsible for loading the attributes..Though it's definitely possible, just out of my reach sadly

In all honesty, from the looks of it that may be the easiest route. Unless it's possible to make SSE stages with 4 fighters, with those fighters able to be controlled :/

In any case, i've updated the OP with information on GMOT and GMOV files, which allow basically all special and interesting stage objects to be placed into other stages. Basically any object that moves in SSE besides enemies use these, and it's also how i managed that last video. I've also added the last bit of info for the ADSJ file that was needed to link stages!

so tis might be possible n the future?
in regular brawl stages?
http://youtu.be/MvowEarWWtY (http://youtu.be/MvowEarWWtY)


@pikass
we would probably need animations
and some type of timely hazards?


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Sammi Husky on May 05, 2014, 11:31:43 PM
speaking of which, the importing SSE stuff to a brawl stage might work! we just make the module load that file aswell! unless it requires some extra more information!
I can try to test load it in a module!

but example if I want to do a stage that has Hitboxes, what does it need?


The problem is that i have NO idea how modules work so i don't really know what to tell you to do :( The files that are loaded are loaded from inside BLOC archives, something the normal modules aren't able to recognize normally..i have a feeling that the modules would need to be modified alot in order for this to work, but hey who knows maybe im just over thinking it.

If you can add, for example, the methods for grAdventureMove4Ground then we could maybe do it, but i feel like we need to add the method for loading the BLOC archives in order to even have it look in them for the GMOV file. and i don't really know what method is responsible for loading up the BLOC file


EDIT: Btw, im beginning the implementation of these files into BBox, so whenever the new BBox comes out it will support these files

(http://i.imgur.com/8i3WAge.png)


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: pikazz on May 05, 2014, 11:59:07 PM
a stage module the files by either FileIndex (for ModelData) or Type ID, so if we could figure out what BLOC's Type ID is, we could try to add it in a Module to make everything load at minimal work!

but thats if it only need to load BLOC to work which I believe its the case, in worse scenario we have to add the GDOR, GMOV, GET1 (and ect) Type ID to be load aswell in the module!

but in the utter worse, if they really are seperate (the SSE and Versus mode) so you cant accest to SSE stuff in Versus in Sora_Melee, we need to add that information too :/


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Spex130 on May 06, 2014, 10:44:08 AM
Well, uh, BJ isn't making any more Brawlboxes. So feel free to release whenever.

Also, don't forget that Dolphin has a Debug mode where you can watch things get loaded in real-time. Maybe you can see what loads what there?


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Sammi Husky on May 10, 2014, 10:35:14 PM
So i know this totally isn't SSE related, however this is STILL a file i edited and this IS 'The New File Research Thread'..... Apparently i can control on a per character basis what Dimension the fighter fights on...

http://youtu.be/vX8AwgEGUqg (http://youtu.be/vX8AwgEGUqg)


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Tabuu Forte Akugun on May 10, 2014, 11:01:37 PM
Hey Sammi, I must say I'm very impressed with your work on SSE files. ;D I don't recall anyone getting as far as you. What I'm still waiting for though is a way to view/edit data in Boss moveset files.


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Sammi Husky on May 10, 2014, 11:25:43 PM
so yea the fighters individual modules have constants too~ thats where i found this. So far for mario i got

==Mario==
*all offsets relative to beginning of section[4]*

0x18 - Vertical momentum gained on FLUDD
0x28 - Vertical momentum gained on cape hitting foe?
0x44 - Z axis random of FLUDD water
0x5C - Y axis starting position of FLUDD water
0x78 - Divisor of FLUDD strength
0x80 - Z Rotation of water segments?
0x84 - Y Rotation of water segments?

Yea there are article related constants that aren't in the fighter .pac, which is good. because it opens a doorway to more interesting character edits.

(btw this is only 7/40 of his floats!)


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: pikazz on May 11, 2014, 02:51:40 AM
so yea the fighters individual modules have constants too~ thats where i found this. So far for mario i got

==Mario==
*all offsets relative to beginning of section[4]*

0x18 - Vertical momentum gained on FLUDD
0x28 - Vertical momentum gained on cape hitting foe?
0x44 - Z axis random of FLUDD water
0x5C - Y axis starting position of FLUDD water
0x78 - Divisor of FLUDD strength
0x80 - Z Rotation of water segments?
0x84 - Y Rotation of water segments?

Yea there are article related constants that aren't in the fighter .pac, which is good. because it opens a doorway to more interesting character edits.

(btw this is only 7/40 of his floats!)
thats actually quite old <w<


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Sammi Husky on May 11, 2014, 11:56:35 AM
thats actually quite old <w<

I know the knowledge OF the section[4] is old, but i don't think anybody actually took the time to see what they do for each characacter :P


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: pikazz on May 11, 2014, 12:04:42 PM
I know the knowledge OF the section[4] is old, but i don't think anybody actually took the time to see what they do for each characacter :P
its quite easy to see that too, but the funny thing is that some constants is used twice or more  by other things! did expremient about that too years ago, got a constant spinning with huge wind to the left! and all the G&W turned yellow!

you can see how what is used by what in brawlbox ;3


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Sammi Husky on May 11, 2014, 12:52:10 PM
Indeed! thats what im doing, just opening them in BBox to see the values, finding them loaded in memory with dolphin and editing the values in realtime! that way i can see what does what alot faster :3

All the notable things i figure out will be going on the OpenSA wiki. What im really interested in is the fact that alot of the ones i've found so far have to do with articles, and whats more is that these values aren't in the fighter .pac which means there may be more we can do to certain articles then we know :P

Then some of the values do crazy things like change what dimension the fighter is behaving on, like in that video, or change what direction gravity acts on for that character.


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Dantarion on May 12, 2014, 05:15:38 PM
You should keep notes on file/memory offsets for all this stuff!


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Sammi Husky on May 12, 2014, 10:18:45 PM
You should keep notes on file/memory offsets for all this stuff!

Indeed! i've been updating the wiki with the info i've found and keeping a local record of things i've found. (i think my account is called '3x' there idk)

When i add them to the wiki i've been specifying file offsets in both absolute to the beginning of the module, and relative offsets starting at section[4]'s offset inside the particular file.

The only reason i didn't record memory offsets is that depending on what mode your in, the offset changes of course. In training mode the memory offset is completely different then that of in normal brawl mode. In any case, i suppose i can add memory offsets as it would make it easier for others to test and contribute. :P

Fox's is really really small, but here is what i have for the people in this thread.

==Fox==
0x00 - 10
0x04 - 1
0x08 - 0 Weird stuff, see earlier video
0x0C - 20
0x10 - -1
0x14 - 0
0x18 - 1 - Aerial fox illusion power multiplier. 3 = insta-death
0x1C - 0

but it seems that other then articles, some characters have *general power* multipliers or something that multiplies the knockback, hitlag, damage etc of almost all hitboxes the character possesses. (wario is an example of this multiplier dealio).

In regards to that strange effect i achieved in that video, it seems that the values in section[4] at 0x00-0x0C are (almost)always the same between modules, and the third value is the one that causes those strange shenanigans


Title: Re: [5/3/14] The New File Research Thread | Moving Collision Objects
Post by: Dantarion on May 13, 2014, 03:54:22 PM
If you specific a memory offset, add something like "vBrawl P1 training mode" to let people know how you got them. Those should be the pretty constant.


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Sammi Husky on May 16, 2014, 11:16:07 PM
If you specific a memory offset, add something like "vBrawl P1 training mode" to let people know how you got them. Those should be the pretty constant.

For now i've just been adding the memory range for p1 vBrawl training mode. I'll probably specify specific memory offsets at a later date, im much more interested in discovering what they do right now then getting specific memory offsets :)

In any case, i updated the OP with info for GBLK (breakable blocks) and will probably start up on either buttons or the "punch sliders" as Brawl calls them. The uh..slidey things in SSE that you hit and then they move along the track and break stuff. Or maybe canons...or the cart tracks..idk which i will do first..

Oh also, for anyone interested, I've begun implenting almost all of these files into BBox. (not editable, just viewable and exportable). You can find the latest source for BBox here if people wanna export and view these things in hex editors

https://github.com/libertyernie/brawltools

EDIT:
Oh ho ho, i believe i found something like...event ID's in the files.. Seems GET1 files dictate events that call other files. For example, GNDV causes the clouds collapsing animation to play and all that jazz in skyworld, however removing GET1 causes the GNDV files to never activate, and the forced camera scroll doesn't activate either.

 Upon further research, i noticed there are these ID's in GET1 that seem to match up with the GNDV Unknown values.

This has HUGE implications. It explains how buttons work, it explains how step activated events occur, and it explains how when certain item blocks are hit, events occur. SWEET. This is definitely a good find :)


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Sky Grounder on May 19, 2014, 02:04:25 AM
You probably know this, but ADPM parameters are very similar to STPM parameters. (Normal Brawl stages use STPM for pause-camera and shadow direction among other things.)


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Sammi Husky on May 19, 2014, 09:51:58 PM
You probably know this, but ADPM parameters are very similar to STPM parameters. (Normal Brawl stages use STPM for pause-camera and shadow direction among other things.)

:0 oh wow..i feel kinda stupid now lol. I had the data right in front of me, i knew what ADPM stood for (Adventure stage parameters) and yet somehow it didin't click xD.

ADPM = Adventure Stage Parameters. STPM = Stage Parameters. Well, that makes things a whole lot easier. Hopefully some really interesting things are in here! Thanks for pointing that out mate!

In other news, i've found these new "ID's" everywhere now..it's strange o.O i wonder what they do. I also wonder if it's really GET1 that defines them. Maybe GET1 was just the easiest for me to see the ID's in, however there is nothing more besides these ID's in the GET1 besides a few float values...leading me to believe it ISN'T what i originally hoped it would be..i knew it was too good to be true.

However, they still seem to be ID's for referencing other files. It's likely that buttons and GMSJ (Explicit stepjumps which can be triggered without a door) still use these ID's for referencing triggerable events



Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: ✦Dylan✦ on May 26, 2014, 09:11:00 AM
I believe in God and I believe I gust read a thread made by God.

Sammi Husky is god, it all makes sense now!

Oh, he isn't? Or Juesus?

Well I guess he is the first real hero!


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Sky Grounder on May 28, 2014, 08:01:11 AM
Oh, I feel this is necessary to mention:

Collision objects in COLL files in stages and SSE stages have a flag value that are only used in some SSE stages. It is probably related to some of the files in BLOCs. Also, some collision planes use "Crash1" as a material, which I believe can be related to damaging collisions or something. (Using that material in versus brawl stages, however, usually crashes the game.)

Just something to be aware of if you're gonna research files related to collisions :)


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: pikazz on May 28, 2014, 10:21:02 AM
Oh, I feel this is necessary to mention:

Collision objects in COLL files in stages and SSE stages have a flag value that are only used in some SSE stages. It is probably related to some of the files in BLOCs. Also, some collision planes use "Crash1" as a material, which I believe can be related to damaging collisions or something. (Using that material in versus brawl stages, however, usually crashes the game.)

Just something to be aware of if you're gonna research files related to collisions :)
the collision "Crash1-3" is actually inside the Module! example in break the targets or Stage Edit, those works!

so basically, to make those material work we need to imply the correct into in the stages module with %, knockback, effect ect


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Sammi Husky on May 28, 2014, 11:33:30 AM
Also, some collision planes use "Crash1" as a material, which I believe can be related to damaging collisions or something. (Using that material in versus brawl stages, however, usually crashes the game.)

yep! i've actually found the file that uses the Crash1 material, though it's still a little buggy. If everything isn't setup perfectly you'll end up being shot across the stage really really fast. I don't quite remember exactly what file it was, but it seems that that material is used for interfacing with files inside BLOC archives to produce unique results.

For example, the lava room in 080103a uses a 3d model called "effect_attach" and is also linked with the files GDMD and GMOT. we know GMOT is for animating objects that have an chr0 animation inside it's containing brres, however GDMD is the file in question here. It seems to be around every time something does damage to the player. Removing GDMD stops the lava from hurting you, UNTIL you reflect it or run around it too long. Then it will spout "Not enough continuous effect!" in the log, and throw you like i mentioned earlier.

(i imagine this would be where the wii normally crashes)

Interestingly enough, if you change the material to anything but crash1 the lava will no longer hurt you as well. Even if the proper files are there



Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Dantarion on May 28, 2014, 01:32:48 PM
Most likely for the collisions, there is some info that ends up pointing to the hitbox data somewhere.


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Sammi Husky on June 11, 2014, 02:20:17 AM
Sorry for not updating this in a while guys. i assure you im still working though, it's just that the amount of time i spend working on it has been spread a little thinner then i'd like due to my other projects.

Currently, the biggest contender standing in the way of me advancing is the last great hurdle of the files. The GFG1 file. This file (similar to GEG1 that spawns ENEMIES) actually spawns CPU fighters for you to square off against. The file is a bit more complex then the rest, and i can't really put my finger on a whole lot of things by just looking. It will require some testing and lots o' crashes to figure it out.

Other then that i have the GEFF file already mapped out. Pretty simple actually, it's literally just graphical calls from the ef_ file. Looks a whole lot like the external gfx calls in PSA. I'll hopefully be able to work on this alot more soon.

P.S if anyone wants to look at the GFG1 file, you can grab one  here  (http://www.mediafire.com/download/zdtddjqdad2qvwh).

Just open it in a hex editor and try to make sense of the stuff. You'll notice that the GFG1 file is actually inside a bloc archive, which you can find the details for in the OP. However for just changing around existing values, you shouldn't even need to bother. Just pick an interesting looking number and start changin and testin.


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Sky Grounder on June 13, 2014, 08:55:00 AM
Just a small hint: Use multiple GFG1 files and compare them. Look at the different stages where this file is used, and observe how the enemy CPUs work here. It can help giving you an idea of how the file is structured/ what values do what, instead of only doing trial-and-error testing.


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Dantarion on June 24, 2014, 03:51:29 PM
Sammi if you can get me 5-10 different GFG1 files of different sizes ill try to figure it out.


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Sammi Husky on June 24, 2014, 08:08:59 PM
Thanks Dant, any help is greatly appreciated. You can get a bunch of gfg1 files here (https://mega.co.nz/#F!jZISFShB!adiaKU7VNmV1qS_cH-8A0A). Something i just noticed while making these, is that it seems the files can control which costume to load, as well as can load more then 1 character at a time from 1 file.

If anyone else wants to end up testin them in dolphin, open up the miscdata[7] and one of the gfg1 files in a hex editor and append the data to the miscdata[7]. It's just an empty BLOC archive that's already setup for a single file. Then just replace the miscdata[7] in the 010001.pac and replace it. Nothin much else required except putting the stage in pf/stage/adventure/

EDIT:

Also, as an update to my thoughts about those "Event ID's". They actually are ID's of some form, and i've succeeded in changing and triggering multiple events (from buttons for now). It seems that almost every file i've come accross so far has "Slots" where these ID's can be placed, and if they aren't used they are just left null. For people who don't get how huge that is, just think that we can now officially place things in a world, and have events be triggered from nearly anything. (a huge part of designing a level) :)


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: ✦Dylan✦ on June 25, 2014, 09:37:39 AM
Can't wait until we can apply SSE elements to stages.


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Sammi Husky on June 27, 2014, 12:43:32 AM
Applying them to stages may not be too far off, however as much as i would love to try it there's quite frankly nobody to teach me how to do module stuff. I know a bit, enough to do a few things. But i don't know the basis of ASM. So sadly i wouldn't be of any help. The only ones who could even do anything remotely close to what would be necessary are PW, Dant, and Pikazz. I'd love to learn, however there just isn't any documentation available even on the wiki.

Aside from learning the general structure of the modules, it would require me to actually learn all about ASM, and then in particular the opcodes for PPC.

However, I can safely say that using these files may definitely be possible. Since the 1 module (sora_adv_stage.rel) governs the loading and reading of these files, it may only be a case of importing the required methods into a stage's module. (wishful thinking) the other method, hopefully not necessary, would be importing the methods into the actual sora_melee.rel

Sammi if you can get me 5-10 different GFG1 files of different sizes ill try to figure it out.

Dant, i was wondering if there is any way besides these forums i would be able to get in contact with you? skype perhaps? PM me or add me on skype if so. Skype name is sammi-husky.


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: pikazz on June 27, 2014, 01:05:35 AM
Applying them to stages may not be too far off, however as much as i would love to try it there's quite frankly nobody to teach me how to do module stuff. I know a bit, enough to do a few things. But i don't know the basis of ASM. So sadly i wouldn't be of any help. The only ones who could even do anything remotely close to what would be necessary are PW, Dant, and Pikazz. I'd love to learn, however there just isn't any documentation available even on the wiki.

Aside from learning the general structure of the modules, it would require me to actually learn all about ASM, and then in particular the opcodes for PPC.

However, I can safely say that using these files may definitely be possible. Since the 1 module (sora_adv_stage.rel) governs the loading and reading of these files, it may only be a case of importing the required methods into a stage's module. (wishful thinking) the other method, hopefully not necessary, would be importing the methods into the actual sora_melee.rel

Dant, i was wondering if there is any way besides these forums i would be able to get in contact with you? skype perhaps? PM me or add me on skype if so. Skype name is sammi-husky.
can try to teach you that I know, but Dant and PW would be the one that teach it out. I still have stuff to learn!

I also wonder if I could add you Dant!
and can I add you Sammi Husky? :3


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: MegaGEN50 on July 07, 2014, 12:47:27 AM
Alrighty, I think this is some really note-worthy stuff right here. How exactly would you change stage collisions? I think I could make Models and import them to change stage layouts.


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Sammi Husky on July 07, 2014, 02:42:35 AM
Changing collisions for SSE stages is still the same process as changing the collisions of another stage in brawl. You'll have to use the collision editor.

On another note, i added more stuff to the GMTA (stage hitboxes). In specific, the model index, hitbox effect, and hitbox sfx


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: MegaGEN50 on July 07, 2014, 12:36:34 PM
Changing collisions for SSE stages is still the same process as changing the collisions of another stage in brawl. You'll have to use the collision editor.

On another note, i added more stuff to the GMTA (stage hitboxes). In specific, the model index, hitbox effect, and hitbox sfx


Thanks for the info. Happy modding.


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: DSX8 on July 07, 2014, 04:52:41 PM
GMTA.. is that in the .rel? o.o


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: Sammi Husky on July 07, 2014, 06:13:19 PM
Nope, it's inside the BLOC entries (miscdata[5]) in SSE stages. The newest BBox version shows them, but can't rebuild it's child entries. Just the BLOC file itself for now. :P

For the most part, all the files that are in the OP of this thread are SSE only with the exception of SCLA which is present in all stages. Though it's purpose is mostly unknown


Title: Re: [5/16/14] The New File Research Thread | Breakable Blocks!
Post by: DSX8 on July 07, 2014, 07:20:41 PM
ah i see.. when u said stage hitbox and hurtbox's.. thought u did a breakthrough on stage .rel process o.o


Title: Re: [7/8/14] The New File Research Thread | Pillars of fire!
Post by: Sammi Husky on July 08, 2014, 08:50:41 PM
I've updated the OP with 2 new files, GFPR (grAdventureFirePillar) which is pillars of fire that periodically shoot from the ground at specified places. And GEFF (grAdventureEffect) which is background effects that from what i can tell are continuous throughout the level such as the confetti in the stadium levels.

Luckily it seems that most files that contain a hitbox have exactly the same layout, and use padding to ensure that file offsets will stay the same across multiple files. The GFPR files don't use a 3d model's bones for positioning, so they will have to be positioned via x, y, and Z coordinates. Though this isn't too much of a problem, it is kind of an annoyance.


Title: Re: [7/8/14] The New File Research Thread | Pillars of fire!
Post by: Sky Grounder on July 08, 2014, 10:05:22 PM
This is awesome Sammi! I wish I could help, however I don't have a PC that I can work with, so I'm unable to help.
Keep up the good work though :D


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: Sammi Husky on July 09, 2014, 06:00:23 PM
Thanks mate! things are progressing nicely.

I've updated the OP again today, this time adding a whole ton of updates. I've added the Trigger ID's to buttons and GEG1 files, as well as added the known offsets for buttons.

The great thing is, now that i've found these trigger ID's, i've basically been able to trigger anything from any file since it seems that most files have slots for them. Each file (that i've found so far) have a slot that defines it's Trigger ID, and a trigger ID to activate when some event or interaction is completed. In the case of GEG1 it activates an ID whenever the enemy is destroyed. This can range from activating a stepjump to another level, or just activating a spawn for more enemies. I've got a small video to show the progress. You can imagine what kind of things this opens up.

In this video, i simply trigger summoning an enemy with a button, however this can be applied to platforms and doors, as well as basically anything else you can think of.

http://youtu.be/L3UUQpnC_xc (http://youtu.be/L3UUQpnC_xc)


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: pikazz on July 10, 2014, 04:18:46 AM
wow, thats amazing :D keep up that good work!


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: Leon Exodio on July 11, 2014, 01:35:43 PM
*follows*


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: MegaGEN50 on July 12, 2014, 11:18:33 PM
EDIT: Nvm, I downloaded the latest version of BB.


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: Sammi Husky on July 13, 2014, 01:02:48 AM
Though i've implemented the ability to see and export the new files, only a few are supported. And even then, they aren't editable or rebuildable. Meaning you can't use the replace feature to make changes. You have to export the whole miscdata[5] or what have you and edit it the files in a hex editor, then use the replace feature on that instead. Hopefully i'll have them rebuildable soon enough though. :)


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: ✦Dylan✦ on July 13, 2014, 03:41:43 AM
Though i've implemented the ability to see and export the new files, only a few are supported. And even then, they aren't editable or rebuildable. Meaning you can't use the replace feature to make changes. You have to export the whole miscdata[5] or what have you and edit it the files in a hex editor, then use the replace feature on that instead. Hopefully i'll have them rebuildable soon enough though. :)

Yeah, and adding this stuff to stages will mean there will be ALOT of custom stage possibility's (more than before) and I know I'd use the hell out of it.

Keep up the good work. :kdance:


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: MegaGEN50 on July 29, 2014, 04:22:12 PM
I really hope this isn't dead.
I want to start a project, but need more info >XP


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: Sammi Husky on July 29, 2014, 05:35:32 PM
Nonono of course not, im only implementing the current files into BBox so that people can easily edit them / add new entries etc etc :)

Post Merge: July 29, 2014, 09:20:43 PM
Speaking of that, i'm still getting used to implementing new files for BBox so it took a while even for the simplest one, however it's mostly finished now. (and editable!)

(http://i.imgur.com/x0wjbXQ.png)


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: E-scope12 on August 01, 2014, 01:00:35 PM
I have a question about this. Its for Brawl's Spear Pillar. Does anyone know how to edit the hazards of Spear Pillar themselves?


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: Sammi Husky on August 01, 2014, 01:42:53 PM
For editing things like stage hazards, you would want to look in the 3 most likely places depending on what you want. Those are the module, the STDT, or in some rare cases unknown files that BBox doesn't recognize.

The actual stage hitboxes can likely be found in the module, whereas STDT will be like article floating points which control smaller aspects of the level / hazards. (i.e. skyworld's platform health). You can also find values similar to STDT inside the section[4] in any stage module.

In regards to this thread, i've 100% completed GSND files in bbox. You can now edit every known aspect, and right click->add new entry :)


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: ✦Dylan✦ on August 01, 2014, 03:54:45 PM
Tutorial please. I am eager to find stuff out.


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: Gamma Ridley on August 01, 2014, 03:55:50 PM
So is GSND used for sounds that play during certain triggers, like hitting a button or going through a door? And is it an SSE-specific thing?


Title: Re: [7/9/14] The New File Research Thread | Buttons and Trigger ID's
Post by: Sammi Husky on August 02, 2014, 12:36:20 AM
So is GSND used for sounds that play during certain triggers, like hitting a button or going through a door? And is it an SSE-specific thing?


GSND are indeed isolated SFX that play either on trigger (Trigger ID's), or if one is not specified it will play in the background when the level loads. This is what most stages do, as the sfx that are used are usually looped. However, you can use any sfx that are loaded in that level's soundbank or in the common / adventure common sfx

Tutorial please. I am eager to find stuff out.


Today is the day that i will be starting a video series of tutorials.  In this series, i will be documenting the SSE file formats as well as what each one does. This is the entry video for the beginning of that new series, and because of that it is slightly long. However, now that this one is out of the way, i will be able to focus more on the actual showing and teaching then on demonstrating things like hex.

In this video, i will be showing you how to animate objects that are controlled via dedicated chr0 animations, which is what differentiates Movable Grounds (GMOV) from Animated Objects (GMOT). The reason SSE uses these files instead of having a model for each location you would want this particular animated model, is so that you may reuse a stage element without taking up the space that would be required for duplicating the model, as each model is fairly big and will eat up filesize fast. so basically, reusable stage assets without taking up space! :)

http://youtu.be/GXJ9EfzQTJ0 (http://youtu.be/GXJ9EfzQTJ0)


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: E-scope12 on August 02, 2014, 02:12:28 PM
For editing things like stage hazards, you would want to look in the 3 most likely places depending on what you want. Those are the module, the STDT, or in some rare cases unknown files that BBox doesn't recognize.

The actual stage hitboxes can likely be found in the module, whereas STDT will be like article floating points which control smaller aspects of the level / hazards. (i.e. skyworld's platform health). You can also find values similar to STDT inside the section[4] in any stage module.

In regards to this thread, i've 100% completed GSND files in bbox. You can now edit every known aspect, and right click->add new entry :)
thank you for telling me. I want to edit Spear Pillars Hazards. I want to change Cresselia's Hazards to Dialga & Palkia's Hazards so that I can apply it to STGTENGAN_3 for my Giratina's Spear Pillar Hack.


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: DSX8 on August 02, 2014, 05:33:41 PM
do u know what SCLA files r for?


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: MegaGEN50 on August 08, 2014, 10:18:47 PM
Question, how would one be able to change character encounters?
(AKA Mario VS. Kirby in the first level)


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Sammi Husky on August 24, 2014, 11:37:39 PM
Unfortunately, i haven't quite figured that out yet. Incidentally, the file that Dantarion asked for a few is the one responsible for generating fighters.

In regards to general progress, i've got a stockpile of some files and formats waiting to be uploaded AND i've looked a bit into the way that sora_Adv_stage.rel loads up the files. I'll have specifics about the methods and constructor functions later, however for now i'll go ahead and say that we might really not have to work that hard at all to get these stage elements into standard versus stages ;)

Each file has it's own methods and object, and is relatively straight forward. As it turns out, alot of the base functions are called from sora_melee itself. (speaking of which, i've found that the method for the SSE file grAdventureMoveGround or GMOV is actually contained in sora_melee. The sora_adv_stage.rel actually just calls it) this explains alot, especially how sora_melee handles moving platforms without the need for these files :P sora_adv_stage.rel just reads the data from a file and passes the data to it.

My main goal at the moment is to patch a stage module with these methods and see if i can get the stage to load up these files and stage elements :P


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: pikazz on August 25, 2014, 02:59:38 AM
Unfortunately, i haven't quite figured that out yet. Incidentally, the file that Dantarion asked for a few is the one responsible for generating fighters.

In regards to general progress, i've got a stockpile of some files and formats waiting to be uploaded AND i've looked a bit into the way that sora_Adv_stage.rel loads up the files. I'll have specifics about the methods and constructor functions later, however for now i'll go ahead and say that we might really not have to work that hard at all to get these stage elements into standard versus stages ;)

Each file has it's own methods and object, and is relatively straight forward. As it turns out, alot of the base functions are called from sora_melee itself. (speaking of which, i've found that the method for the SSE file grAdventureMoveGround or GMOV is actually contained in sora_melee. The sora_adv_stage.rel actually just calls it) this explains alot, especially how sora_melee handles moving platforms without the need for these files :P sora_adv_stage.rel just reads the data from a file and passes the data to it.

My main goal at the moment is to patch a stage module with these methods and see if i can get the stage to load up these files and stage elements :P
so all the SSE stuff get loaded from Sora_Melee directly while Adv_Sora_melee is like a gateway to it? interesting

can help you test out the SSE stage loading stuff in a normal stage, did exprement with it before but with no result


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Sammi Husky on August 25, 2014, 05:33:51 PM
Well not quite. The only objects that i have found so far in sora_melee are as follows.

Code:
grAdventureMoveGround
grAdventureMotionGround
grGimmickAdvSpring

ftStatusUniqProcessAdvFollow

stLoaderStageAdventureCommon
stLoaderStageAdventure
stLoaderCommonSeAdventure
stLoaderStageSeAdventure
stLoaderInfoAdventure
stLoaderLocalAdventure

stOperatorFighterRebirthAdventure
stOperatorRuleAdventure
StOperatorInfoAdventure
stOperatorAdvBgm

muAdvSealTask
muAdvSealWinNoticeSeal
muAdvSealWinNotice

Of those, i know the first two are directly connected to two files. The others i've come to find are located in sora_adv_stage.rel. However i have found that there are lists of every known file's "magic number", "Header magic" whatever you'd like to call them. It also seems that the method for loading up the .pacs file resources are indeed in sora_melee.rel..or at least thats how it looks for now. It would require testing to find out, but if it is then it should be really easy to have individual stage modules call those common methods in sora_melee in combination with patching the stage module with the individual file methods :) Making for minimal modifications. In turn, if this worked out, we could release a set of stage modules that are "Unlocked" or "expanded" that allow the use of the common stage assets or "gimmicks" as the game calls them

I haven't really dove into the modules all that far yet, especially not enough to find the constructors for important functions..but yea.


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: MegaGEN50 on September 07, 2014, 09:35:51 PM
You have anything ready (sorry if i'm a bit impatient  :P ), cause I have a story idea that I want to put to use.


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Shinobu Nyan! on September 10, 2014, 02:00:35 PM
Sorry if this has been asked, I just read the OP and this page. So some stage hazards can be edited right? Is it possible to swap them between stages, or are we only able to do minor edits? This is an amazing topic for a stage builder like me bt dubs!


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Sammi Husky on September 17, 2014, 02:53:01 AM
Poked around in sora_enemy.rel a bit and found what method loads the enemy ID for spawning. (method[1][0]. It's just a li r4, X command where X is the decimal representation of the ID)

In any case, this will be useful for spawning enemies later on, so here is an ALMOST complete list that includes bosses. (Freezes when killed outside boss rooms)

Code:
-0x00 Kuribo
-0x01 Popperam
-0x02 Pochi
-0x03 Jyakeel
-0x04 Aroaros
-0x05 Cymal
-0x06 Deathpod
-0x07 Boobas
-0x08 Dekakuribo
-0x09 Botron
-0x0A Bucyulus
-0x0b Gyraan
-0x0c Siralamos
-0x0d Killer
-0x0e Roada
-0x0F Spar
-0x10 Mite
-0x11 Teckin
-0x12 Tautau
-0x13 Hammerbros
-0x14 Bitan
-0x15 Flows
-0x16 Kokkon
-0x17 Prim
-0x18 Shelly
-0x19 Patapata
-0x1A Jdus
-0x1B Bombhead
-0x1D Ngagog
-0x1E Faulong
-0x24 Ghamgha
-0x25 Robobeam
-0x26 Robodistance
-0x27 Robohoming
-0x28 Robopunch
-0x29 Cataguard
-0x2A Arman
-0x2B Galfire
-0x2E Bosspackun
-0x2F Ghamghabase
-0x33 Galleom
-0x34 Ridley
-0x35 Rayquaza
-0x36 Duon
-0x37 Porky
-0x38 Metaridly
-0x39 Falconflyer
-0x3A Taboo
-0x3B Masterhand
-0x3C Crazyhand


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Shinobu Nyan! on September 17, 2014, 09:09:12 AM
You never cease to amaze me. Well, you and all other developers. I would love to offer my help, but alas I'm only capable of supporting you guys with words.
Was that to much flattery, I think it was. So I'll end with what do you mean by "later on"?


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Gamma Ridley on September 17, 2014, 09:49:06 AM
So... What you're saying is... We might be able to generate bosses on regular stages?


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Spex130 on September 17, 2014, 10:25:53 AM
So... What you're saying is... We might be able to generate bosses on regular stages?

Please.


Do any of the normal enemies crash upon kill?


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Sammi Husky on September 17, 2014, 01:03:57 PM
So... What you're saying is... We might be able to generate bosses on regular stages?

After more research is done into the actual sora_adv_stage module, we should easily be able to..Recently i was actually looking into Brawl's item system since i can spawn any item regardless of stage specific status, and then i thought i could possibly add new items to the game. When that came to mind, i immediately thought of adding an enemy, since the enemy files are laid out the same as an item. I've only successfully added the crabs and koopas from the mario bros stage for now, but it's a possible avenue of research..

Do any of the normal enemies crash upon kill?

Nope! all other enemies can be spawned if the appropriate data is in the .pac stage resource. I'm really eager to start working on the module portion of this, but i feel i should document all the files beforehand and get BBox recognizing them lol


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: MegaGEN50 on September 17, 2014, 02:53:14 PM
MUST...UPDATE...OP...WITH THIS INFO
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: ✦Dylan✦ on September 18, 2014, 09:56:33 AM
BOSSES ON REGULAR STAGES! YEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAA!


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Shinobu Nyan! on September 18, 2014, 11:04:34 AM
This is, I mean, it's like, you know..... right!! I might become gay for you!! most likely not
MUST...UPDATE...OP...WITH THIS INFO
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
Yeah, what they said!!


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Dantarion on October 25, 2014, 03:21:04 PM
I would love to try making a PSA command for spawning an enemy if you figure this out Sammi


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: ✦Dylan✦ on October 25, 2014, 03:58:45 PM
Oh fudge, I could apply this to my football stadium hack!


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: Sammi Husky on October 27, 2014, 02:33:45 PM
I would love to try making a PSA command for spawning an enemy if you figure this out Sammi

Interestingly enough, this may be easier than i previously thought. It could probably piggyback off of the item routines considering they're all contained within sora_melee, and is the way the enemies in stages are spawned in non adventure stages. It could even be made to load enemy files off of a new folder on the SD specifically for enemies. Though i still need to do quite a bit more module work before i can make it work.

All i really have to do is RE the rest of the ASM routines in sora_melee and then add new ID's to the item system. Luckily that's the gist of it since the game automatically gets the file path from section[5] and passes in the Item ID. Then it uses the ID as an index for a list of item names, adding that to the path. Once that is tested and working, i can possibly move the system to it's own module similar to how PW did for BrawlEx. Of course i still need to learn just how PW's sora_melee hook works first..


Title: Re: [8/1/14] The New File Research Thread | New video series on SSE files!
Post by: ✦Dylan✦ on October 28, 2014, 10:13:31 AM
Interestingly enough, this may be easier than i previously thought. It could probably piggyback off of the item routines considering they're all contained within sora_melee, and is the way the enemies in stages are spawned in non adventure stages. It could even be made to load enemy files off of a new folder on the SD specifically for enemies. Though i still need to do quite a bit more module work before i can make it work.

All i really have to do is RE the rest of the ASM routines in sora_melee and then add new ID's to the item system. Luckily that's the gist of it since the game automatically gets the file path from section[5] and passes in the Item ID. Then it uses the ID as an index for a list of item names, adding that to the path. Once that is tested and working, i can possibly move the system to it's own module similar to how PW did for BrawlEx. Of course i still need to learn just how PW's sora_melee hook works first..
Its ok, you've done so much for this community anyway so don't rush yourself.