• Welcome to Smashboards, the world's largest Super Smash Brothers community! Over 250,000 Smash Bros. fans from around the world have come to discuss these great games in over 19 million posts!

    You are currently viewing our boards as a visitor. Click here to sign up right now and start on your path in the Smash community!

Brawl Game Script (REL) Editor (development)

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
not sure if this is exactly the right catagory to place this in... eh heh :p

anyways...
I've planned for a while now to start work on a Brawl Script editor.
I know now for a fact that rel files are game scripts...

but knowing what I know now, (not much)
is there anything about rel files I should know about before I get started??
(anything helpful for a software developer)
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
ok...
so the first thing I did was copy a string of code and pasted it in notepad and spaced it out...

here's what I got:
Code:
soArticleMediatorImpl<
  soTypeList<
    soInstancePoolInfo<
      wnPikachuThunder, 4, wnInstanceHolder, soIntToType<0>
    >,
    soTypeListNullType
  >,

  soTypeList<
    soArticleMediatorAssignmentInfo<
      wnPikachuCloud, soArticleMediatorAssignmentNull
    >,
    soTypeListNullType
  >,

  soKindInfoGeneric<
    2, 12
  >,
  soTypeListNullType
>
yes it's Pikachu :p

but yea...
it seems to be like a normal programming language...

but that's only just a start...
there's still a bunch of other stuff to sort out...

I'll keep going at it... P:
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
mo_fighter.cpp

the extension is for C++ files...
anyone have any ideas on where this file might be??

also, right after that, begins an interesting block of hex data...
anyone got any ideas??

the data looks like texture data from melee or something...
can't say for sure :p
but then again, I am just getting started...
I'd like some help though if anyone's willing :/
 

Dantarion

Smash Champion
Joined
May 21, 2007
Messages
2,492
Location
Santa Barbara, CA
You couldn't be more wrong.
The strings mean almost nothing, as no data points to them until the constructors to the classes in each module are run.
Look at PW's module viewer. The majority of the modules are PPC ASM. Unless you know PPC ASM, have a USBGecko, etc, you simply can't work on the modules, as there is NOTHING but ASM to look at
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
You couldn't be more wrong.
The strings mean almost nothing, as no data points to them until the constructors to the classes in each module are run.
actually, I think I'm right...
just explaining myself wrong...

that's pretty much how code works...
it does nothing until it's called :p
now, if you're referring to the strings themselves, you'd be right...
as they are called through the hex that is called by the logic...
this then returns whatever is called and blah blah...
I'm not gonna explain because I'm sure you already know :p

if I'm still wrong about this then please explain to me :/

Look at PW's module viewer. The majority of the modules are PPC ASM. Unless you know PPC ASM, have a USBGecko, etc, you simply can't work on the modules, as there is NOTHING but ASM to look at
I didn't even know he made this... o.o
are you talking about the code or the actual viewer??
 

Phantom Wings

Smash Apprentice
Joined
Jul 29, 2008
Messages
150
Allow me the honors Dant.

The strings you are looking at are the names of class structures so to speak. After the file gets initialized (by their very nature as relocatable files their data is meaningless until they are initialized) the space below that string is filled with the class' pointer table (for field members and methods). You'll notice that the amount of memory between each string varies - this is because the space reflects the size of the structure in memory.

The strings are actually used; but not for conventional programming purposes. After initialization, the first pointer of the class points to its class name. This is most likely for debugging purposes as it's a practice prevalent throughout Brawls programming.

If you're looking for the editor you can find it here.



Impressive work so far on the ARF engine Dantarion - I'm looking forward to seeing the finished product.
 

Bero

Smash Journeyman
Joined
Jan 10, 2010
Messages
409
Location
Japan
I think you'll need as much ASM knowledge as PW and Dantarion.

...Oh, Dantarion said same thing...
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
ah... PW
just the guy I wanted to originally see :)
well... shoot...
looks like you've already beaten me to developing an editor <:p
well... that doesn't mean I can't still try...
anyways...

I was thinking of rel files as python scripts used in blender games...
with a series of classes and functions referring back to the logic...

I don't think REL files are used just for debug purposes...
they're used more for calculating damages, knockbacks, etc. for attacks...
and for special stage parts such as inverse platforms, or stage events...
they can also be used to log debug info and such...

but my problem is...
I understand the strings, but I don't understand how the hex works above, and below the strings...

the very bottom of the file looks similar to a relocation table :/

btw...
could you by chance help me out with my mdl0 im/export scripts??
(later to become pac/pcs after brres)

and also,
I'd like to learn more about brawl's logic,
so I may build a logic editor more user friendly than PSA

I've been getting very little help to understand any of this...
so I hope you guys won't mind :/
thanx in return :)
 

Phantom Wings

Smash Apprentice
Joined
Jul 29, 2008
Messages
150
You are correct that .rel files are used for running Brawl. .rels - or modules as they are appropriately called - are the most basic form of Brawl's programming. They handle more than just gameplay mechanics however as they include responsibility for all the menus, items, unique character traits, events and graphical management that makes up the game.

The strings were what I was referring to as being used for debug purposes as they are completely worthless as far as matters concerning functionality and program execution. The real functionality of the module comes from the long block of data near the beginning of the file - the raw assembly code. Following that are the constants and variables if any exist. The class structures come after that with each one containing a set of pointers to their respective variables and parts of assembly code that belong to them. The last part of the file is indeed the relocation table in which the module viewer is responsible for executing so the module can be viewed properly.

After initialization, a module will usually execute a set of constructors that creates a hook for all the structures it contains. That hook is attached to Brawl's main loop or one of the sub-loops so the structures can be monitored and executed accordingly.

That's about all I'm willing to offer at the moment - Brawl's logic varies dramatically over its code and I'm not really up to digging through it all in a hopeless endeavor to understand it. As far as Mdl0s go, that was Pharox and Kryal's bag - I personally don't know a whole lot about them.

I'm retired from Brawl hacking these days and with the way things are going I'll probably not be coming back anytime soon. If you wish to understand more about Brawl you should probably get a USB Gecko and learn some assembly code - Google should be able to get you plenty of resources concerning PowerPC instructions.

Well, I'm off again. I don't visit too often anymore but I try to check up on everyone every once in a while. I look forward to seeing what progress the future will bring.



@Dant

It seems you're getting pretty bored of Brawl hacking these days so perhaps I should suggest a new angle to look at. Most of the assembly in the module files are self contained - wherever there's and entry point, the execution will eventually reach an exit point (a blr opcode). If you could separate the assembly according to this rule into smaller blocks and then, by using the class structures, separate the function blocks and the variables according to each class they belong to (via the class' pointer table), it would go a long way from the chaotic layout that you would normally deal with. Having some indication as to what the function belongs to may help understand its overall result as opposed to having to step through each routine one line at a time trying to understand the purpose behind each action. At the 3:19 mark in this video you'll see the sort of method of separating the assembly that I'm suggesting. It's just something that I considered trying before a quit Brawl hacking so I thought I'd suggest it.
 

Eternal Yoshi

I've covered ban wars, you know
Joined
Mar 3, 2007
Messages
5,450
Location
Playing different games
NNID
EternalYoshi
3DS FC
3394-4459-7089
.....Why is that it seems that the game doesn't read certain files even though their names are in the .rel?
I found sq_event_data in sora_menu_event.rel.
I was looking into modding event matches and figured out the pattern of sq_event_data.dat.

Code:
sq_event_data.dat notes

header:
0x00-03 = size
0x04-07 = end of file data?
0x0c-0f = number of files
header size = 48 bytes

10 bytes of ff appear to seperate the files.

event files:
All event files:
0x0c-0f = Music ID!!!
(refer to Music List used for Ocarina codes)
0x10-13 = rule functtion???? 
ff ff ff ff for event matches with no time limit
00 78 00 3c for many matches.
00 b4 00 5a for event match 10,20,34,39
00 14 00 0f for event match 16
00 78 00 5a for event match 21
00 0a 00 0f for event match 24

For event matches 1,2,3,4,5,6,8,9
0x18 = Player 1 Character ID
0x50 = Player 2 Character ID
0x88 = Player 3 Character ID
0xc0 = player 4 Character ID
0x1c - 0x1f = Player 1 floating point for scaling
0x54 - 0x57 = Player 2 floating point for scaling 
0x8c - 0x8f = Player 3 floating point for scaling (The Diddys in Event Match 7 had this value at 3F 19 99 9A, which is 0.6 times their normal size.)
0xc4 - 0xc7 = Player 4 floating point for scaling (DK in Event Match 9 had this value at 40 04 00 00 which would be 3 times his size)
0x92 = number of players????
(3e is in the 4th slot for matches with only 3 players almost as if it's the ID for none)

Format for event match 7(11 uses this format too)
0x18 = Player 1 character ID(DK)
0x50 = 1st Character ID(all of them are Diddys)
0x88 = 2nd Character ID
0xc0 = 3rd Character ID
0xf8 = 4th character ID
0x130 = 5th character ID

Format for event match 10 
0x18 = Player 1 ID
0x50 = 1st Character ID(Mario)
0x88 = 2nd Character ID(DK)
0xc0 = 3rd Character ID(Link)
0xf8 = 4th character ID(Samus)
0x130 = 5th character ID(Yoshi)
0x168 = 6th character ID(Kirby)
0x1a0 = 7th character ID(Fox)
0x1d8 = 8th character ID(Pikachu)

Format for event match 20
0x18 = Player 1 ID
0x50 = 1st Character ID(Wario)
0x88 = 2nd character ID(MK)
0xc0 = 3rd character ID(Pit)
0xf8 = 4th character ID(Zamus)
0x130 = 5th character ID(Olimar)
0x168 = 6th character ID(Lucas)
0x1A0 = 7th character ID(Diddy)
0x1D8 = 8th character ID(Pokemon Trainer)

Format for event match 29
ox18 = Player 1 ID
0x50 = 1st Character ID(Luigi)
0x88 = 2nd character ID(Falcon)
0xc0 = 3rd character ID(Ness)
0xf8 = 4th character ID(Jigglypuff)
(Could 3e at 0x130, 168, 1a0, and 1D8 be the ID for none?)

Format for event match 34
0x18 = Player 1 ID
0x50 = 1st Character ID(Bowser)
0x88 = 2nd character ID(Peach)
0xc0 = 3rd character ID(Zelda)
0xf8 = 4th character ID(Ice Climbers)
0x130 = 5th character ID(Marth)
0x168 = 6th character ID(Mr. Game & Watch)
0x1A0 = 7th character ID(Falco)
0x1D8 = 8th character ID(Ganondorf)

Format for event match 39
0x18 = Player 1 ID 3e(Choose your character?)
0x50 = 1st Character ID(King Dedede)
0x88 = 2nd character ID(Ike)
0xc0 = 3rd character ID(Lucario)
0xf8 = 4th character ID(ROB)
0x130 = 5th character ID(Toon Link)
0x168 = 6th character ID(Snake)
0x1A0 = 7th character ID(Sonic)
0x1D8 = 8th character ID(Wolf)

A pattern? Char ID's every 38 bytes???
For these matches, yes.

Notes on event Match info
Event Match 1, counts up for record. 1 stock for all. Delfino Plaza
Event Match 2 (1:00), 1 stock for Fox, unlimited for MK and Sheik. Corneria(Melee)
Event Match 3 counts up for record, but has a conditional time limit. 1 stock for Kirby, 2 for MK. Halberd
Event Match 4 counts up for record, 1 stock for Pit, 3 for Wario. Skyworld
Event Match 5 counts up for record, 3 stocks for all. Pokemon Stadium 2
Event Match 6 no visible time limit, but has a conditional time limit. 1 stock for Bowser, unlimited for Marios. Mushroomy Kingdom.
Event Match 7 counts up for record, 1 stock for all. 15 tiny Diddys. Mario Circuit.
Event Match 8 counts up for record. 2 stock for Pika, 1 for everyone else. Pokemon Stadium
Event Match 9 counts up for record, 1 stock for all. Starts with 2 Diddys and Ike. At third Level, Giant DK appears about 1:14:50.
Event Match 10 counts up for record. 2 stock for player, 1 stock for everyone else. Final Destination
Event Match 11 counts up for record, 1 stock for all. Rainbow Cruise
Event Match 12 1 stock for Yoshi, unlimited for Pika and Kirby, Yoshi's Island
Event Match 13 2 stocks for Kirby, unlimited for the Warios. Halberd 
Event Match 14 1 stock for Olimar, unlimited for Pika and PT. Distant Planet
Event Match 15 1 stock for All. Player 4 is giant and metal. Everyone else is slightly smaller. Smashville
Event Match 16 2 stocks for All 3. Frigate Orpheon 
Event Match 17 1 stock for Zelda, unlimited for both IC pairs.
Event Match 18 200 HP for both Links. Bridge of Eldin
Event Match 19 2 stocks for all 3. Mario Bros
Event Match 20 2 stocks for player. 1 for everyone else. In order: Wario,MK,Pit,Zamus,Olimar,Lucas,Diddy,PT. Battlefield
Event Match 21 2 stocks for both. Onett
Event Match 22 2 stocks for all, Diddy,DK,Sheik,Lucario. Diddy is easy to send offscreen, DK is giant.
Event Match 23 2 stocks for Samus, unlimited for both Fox and Falcon. All start at 300%. Norfair
Event Match 24 1 stock for Falcon, unlimited for ROBs. Port Town.
Event Match 25 1 stock for all. Lucario starts at 182%. Spear Pillar.
Event Match 26 (2:14) 1 stock for all. Olimars are tiny. Smashville. K.K. Slider in the BG. 
Event Match 27 1 stock for all. ROB is small. Bowser, Charizard, and DK are large. New Pork City
Event Match 28 1 stock for all. Hanenbow
Event Match 29 2 stocks for player, 1 for everyone else. Yoshi's Island(Melee)
Event Match 30 2 stocks for player 1 Sonic, 1 for everyone else. 15 Sonics. Green Hill Zone
Event Match 31 1 stock for Marth and Zelda. 2 stocks for both Ganondorfs. Zelda is very strong. Will transform when the stage is at third level. Castle Siege
Event Match 32 2 stocks for all. Will ocassonally Black out. Brinstar
Event Match 33 2 stocks for Ganondorf, 1 stocks for Link, Zelda, and Pit. Hyrule Temple
Event Match 34 2 stocks for player 1, 1 for everyone else. In order: Bowser,Peach,Zelda,Ice Climbers,Marth,G&W,Falco,Ganondorf. Pokemon Stadium(Melee)
Event Match 35 1 stock for all. Players 2,3,and 4 are completely black. Flat Zone 2 
Event Match 36 2 stocks for Snake, 1 for everyone else. Shadow Moses Island
Event Match 37 2 stocks for Toon Link. unlimited for both Yoshis. Pirate Ship
Event Match 38 2 stocks for Wolf, 1 for Fox and Falco. Lylat Cruise
Event Match 39 2 stocks for player 1, 1 for everyone else. In order: D3,Lucario,Ike,ROB,Toon Link,Snake,Sonic,Wolf. Skyworld
Event Match 40 2 stocks for player 1, 1 for everyone else. Final Destination
Event Match 41 2 stocks for all. Giant Mario is stronger and lighter than he should be. Final Destination


0x39b8 = End of 1 player event match data


Co-op

Event Match 1
Event Match 2
Event Match 3
Event Match 4
Event Match 5
Event Match 6
Event Match 7
Event Match 8
Event Match 9
Event Match 10
Event Match 11
Event Match 12
Event Match 13
Event Match 14
Event Match 15
Event Match 16
Event Match 17
Event Match 18
Event Match 19
Event Match 20
Event Match 21




Tail:

0x6f20 = filenames


dat size = 7,336 (hex bytes)
I didn't finish the co-op matches, but this should give you an idea of the pattern of this file.

I tried changing it and got no change. I tried file patch and riivolution and added lines to the XML to get the game to change it, but still no change. I EVEN TRIED DOLPHIN and no change.



Can you guys point me to the reason why?
 

Dantarion

Smash Champion
Joined
May 21, 2007
Messages
2,492
Location
Santa Barbara, CA
Eternal Yoshi, you should make a page on the OpenSA wiki with the data formats of all of the .dat files you decoded.
I have some to add there as well, then im gonna add Tabuu support.
EDIT: Open the common.pacs in Tabuu, actually.
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
You are correct that .rel files are used for running Brawl. .rels - or modules as they are appropriately called - are the most basic form of Brawl's programming. They handle more than just gameplay mechanics however as they include responsibility for all the menus, items, unique character traits, events and graphical management that makes up the game.

The strings were what I was referring to as being used for debug purposes as they are completely worthless as far as matters concerning functionality and program execution. The real functionality of the module comes from the long block of data near the beginning of the file - the raw assembly code. Following that are the constants and variables if any exist. The class structures come after that with each one containing a set of pointers to their respective variables and parts of assembly code that belong to them. The last part of the file is indeed the relocation table in which the module viewer is responsible for executing so the module can be viewed properly.
hmm...
well that does help me ALOT...
thanx :)

but umm...
1 last Q...
are the strings (or class structures as approprietly called) referanced in any way.
or are they just read as they are??
(I may have to get the viewer to answer that Q)

After initialization, a module will usually execute a set of constructors that creates a hook for all the structures it contains. That hook is attached to Brawl's main loop or one of the sub-loops so the structures can be monitored and executed accordingly.

That's about all I'm willing to offer at the moment - Brawl's logic varies dramatically over its code and I'm not really up to digging through it all in a hopeless endeavor to understand it. As far as Mdl0s go, that was Pharox and Kryal's bag - I personally don't know a whole lot about them.
[/qoute]
ah... kk...
just throwing that Q out there is all :p

[qoute]
I'm retired from Brawl hacking these days and with the way things are going I'll probably not be coming back anytime soon. If you wish to understand more about Brawl you should probably get a USB Gecko and learn some assembly code - Google should be able to get you plenty of resources concerning PowerPC instructions.
speaking of...
I've been wanting to ask...

how do you do that...
I know you dev'd the File Replacement Code...
but I want to try to fix a few things, and am just not sure how :/

Well, I'm off again. I don't visit too often anymore but I try to check up on everyone every once in a while. I look forward to seeing what progress the future will bring.



@Dant

It seems you're getting pretty bored of Brawl hacking these days so perhaps I should suggest a new angle to look at. Most of the assembly in the module files are self contained - wherever there's and entry point, the execution will eventually reach an exit point (a blr opcode). If you could separate the assembly according to this rule into smaller blocks and then, by using the class structures, separate the function blocks and the variables according to each class they belong to (via the class' pointer table), it would go a long way from the chaotic layout that you would normally deal with. Having some indication as to what the function belongs to may help understand its overall result as opposed to having to step through each routine one line at a time trying to understand the purpose behind each action. At the 3:19 mark in this video you'll see the sort of method of separating the assembly that I'm suggesting. It's just something that I considered trying before a quit Brawl hacking so I thought I'd suggest it.
I know this was ment for him, but I couldn't help but find this interesting... :/

I'll look into this sommore...

and also...
could you post a link to your viewer please :/
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
also...
I know what you guys mean about getting board with hacking...

I don't want to just hack...
I want to dev...

but I'm going to have to rewrite brawl in order to do so...

and thus it starts with Melee Brawl...
(getting the 5 missing chars as roster selections)

and then Brawl-MUGEN...
where the engine is completely re-designed...
(you can put as many chars/stages as you want)

I intend to make the scripts (modules) work from the stage/melee folder (for stages),
the fighter/*char* folder (for chars),
and for the game, maybe I'll just leave those in the module folder... :/

eh... just posting ideas...
at least you know what I wanna do...
 

...:::VILE:::...

Smash Ace
Joined
Apr 15, 2009
Messages
786
Ahhhhh, the dreaded .rel files. My studies of these files was along the lines of correct, but due to my lack of knowledge in certain fields cut those studies short.

ah... PW
just the guy I wanted to originally see :)
well... shoot...
looks like you've already beaten me to developing an editor <:p
well... that doesn't mean I can't still try...
anyways...

I was thinking of rel files as python scripts used in blender games...
with a series of classes and functions referring back to the logic...

I don't think REL files are used just for debug purposes...
they're used more for calculating damages, knockbacks, etc. for attacks...
and for special stage parts such as inverse platforms, or stage events...
they can also be used to log debug info and such...

but my problem is...
I understand the strings, but I don't understand how the hex works above, and below the strings...

the very bottom of the file looks similar to a relocation table :/

btw...
could you by chance help me out with my mdl0 im/export scripts??
(later to become pac/pcs after brres)

and also,
I'd like to learn more about brawl's logic,
so I may build a logic editor more user friendly than PSA

I've been getting very little help to understand any of this...
so I hope you guys won't mind :/
thanx in return :)
I may be able to provide some assistance with the mdl0 files (i have a ok understanding of the file format bar vertex weights).
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
Ahhhhh, the dreaded .rel files. My studies of these files was along the lines of correct, but due to my lack of knowledge in certain fields cut those studies short.



I may be able to provide some assistance with the mdl0 files (i have a ok understanding of the file format bar vertex weights).
ah finally... :D

umm...
meet me on my other thread:
http://smashboards.com/showthread.php?t=280525

thanx :)
 

Dantarion

Smash Champion
Joined
May 21, 2007
Messages
2,492
Location
Santa Barbara, CA
No offense, but by the way you are posting about this, you don't seem to have much knowledge in the areas you need to have knowledge in order to make something like this.

In order to do this, you MUST as LEAST know or learn PPC ASM. To do anything with the modules you MUST have a USBGecko, as they constantly branch to and from other modules.
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
No offense, but by the way you are posting about this, you don't seem to have much knowledge in the areas you need to have knowledge in order to make something like this.

In order to do this, you MUST as LEAST know or learn PPC ASM. To do anything with the modules you MUST have a USBGecko, as they constantly branch to and from other modules.
don't worry bout offending me :)
I hardly ever get offended...
a little embarresed maybe XD

anyways...
yea, you're right...
what is PPC ASM anyways??
and I use gecko channel...
what's different about USB gecko?? :/

off topic:
is that how you get the stack dumps and all??
(usb gecko)
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
change of heart...
*deletes message*

thank you

I do want this to turn into an info thread...

and there's still alot I want to learn...
 

Dantarion

Smash Champion
Joined
May 21, 2007
Messages
2,492
Location
Santa Barbara, CA
I posted you will need to know PPC ASM.

That is because the .rel files are 99% PPC ASM.
You posted asking what PPC ASM and what a USBGecko is, after I posted about them.
The fact that you didnt seem to try to look up what those are shows me that you will most likely not go far in this project, because there isn't anyone to handfeed you information.

I'm interested about what files you have info about however. Anything that no one else knows about?

You want to build a .rel editor, the best place to start is the source of PW's module viewer.
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
I have the ambition to do this and all...

but I'm only talking to you on a wii with most piece of crap connection you can get...

my cpu's have no net, nor am I really allowd to use them...

>_> <_<
I sneak on when no-one's looking...

anyways...
so you see my delema...

I'm doing the best I can...
and I'm kinda losing patients, as well as hope :/

unfortunatly...
the reason I know so little is because I really just started diving into brawl at around April...
and to top it off...
nobody wants to talk to a noob D:

what good does it do the person if they can't get the info they're looking for...

also... the source would be great if I can get it... >_>
 

...:::VILE:::...

Smash Ace
Joined
Apr 15, 2009
Messages
786
I have the ambition to do this and all...

but I'm only talking to you on a wii with most piece of crap connection you can get...

my cpu's have no net, nor am I really allowd to use them...

>_> <_<
I sneak on when no-one's looking...

anyways...
so you see my delema...

I'm doing the best I can...
and I'm kinda losing patients, as well as hope :/

unfortunatly...
the reason I know so little is because I really just started diving into brawl at around April...
and to top it off...
nobody wants to talk to a noob D:

what good does it do the person if they can't get the info they're looking for...

also... the source would be great if I can get it... >_>
Well with little knowledge this is probably the last thing you want to build an editor for.

Also the reason you aren't getting much talk is because the limited knowledge the public has on modules.
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
Well with little knowledge this is probably the last thing you want to build an editor for.
KK
I'll consider that...

so everything posted below is pretty much an in-depth description on everything known about rel files at this moment??
if so then go ahead and lock this thread for now...
*rethinking*
actually, that may be a bad idea...
if any new info is found, there won't be any way of posting it besides creating a thread...
Also the reason you aren't getting much talk is because the limited knowledge the public has on modules.
I was talking about everything...
I have 2 threads on my mdl0 im/exporter because the first one didn't get any replies until the second one came out... D:

comon people... (not meaning that...)
but really... right...
 

...:::VILE:::...

Smash Ace
Joined
Apr 15, 2009
Messages
786
KK
I'll consider that...

so everything posted below is pretty much an in-depth description on everything known about rel files at this moment??
if so then go ahead and lock this thread for now...
*rethinking*
actually, that may be a bad idea...
if any new info is found, there won't be any way of posting it besides creating a thread...


I was talking about everything...
I have 2 threads on my mdl0 im/exporter because the first one didn't get any replies until the second one came out... D:

comon people... (not meaning that...)
but really... right...
Well the mass of brawl hackers actually also know little about MDL0 file structure.
 

Dantarion

Smash Champion
Joined
May 21, 2007
Messages
2,492
Location
Santa Barbara, CA
Exactly. There IS no info on .rels. You would have to do almost all of the info yourself. I am not even trying to fully understand them, I am just patching character ID's out of the files.
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
Well the mass of brawl hackers actually also know little about MDL0 file structure.
yea... I know T_T
believe me when I say I yelled at the members of HCBH :p

@Dant
hmm... KK
I guess I'll have to come back to this thread a little later
(meaning quite a while) ToT

until then (if you're willing)
please post anything new about rel files :/

PW already has the structure covered...

but please send me a PM with the link to the rel viewer and the source...
or at least the thread...

this connection is sooo slow...
I really hate it X|
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
@PW

KK
so I've gotten the module viewer...
but um...
is there anything I should DL for it??
and is there a public src code on it??

what exactly does everything mean
(if there's a readme file, please post a link to it)

my overall outlook on this (rel files) has changed though...


@ Dant

I'm researching PPC ASM as well...
you could've told me it was 'PowerPC Assembly'


but yea...
this is the exact info I need to start designing a processor for my game system :D
thanx a bunch :)


EDIT:
@PW

nvm... I fighured it out :p

but I still need to know if there's anything I should DL for it...
it gives me errors like crazy... (it works though)
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
http://lmgtfy.com/?q=PPC+ASM

When you say "designing a processor for my game system" it makes you look bad. Is English not your first language?
can we please stay on topic... -_-
yes my english is bad... I know...
(not offended, just annoyed)

so basically saying...
PPC is what compilers and interpreters use...
(giving you an understanding on what I know)

now that I know that,
I should be able to make a compiler for brawl... :D

I'm thinking to have the code resemble the rel strings

but how should the code work??
I mean...
I don't fully know brawl yet so IDK how to build a code that could match...

I'm having trouble explaining myself...
but I hope you get the idea :/

you guys may be able to help me with a list of public classes and functions...

but the Q is: will you?? :/
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
actually guys...
you're doing enough...
I'll take on the code dev entirely :)

it'll be one heck of a tedious process though :(

but I guess I just have to look at all the modules, and compair the strings...
(the base of the code)

@PW:
yes you were right about the hex data...
(that's a sign that the code was compiled)

and if you say the strings don't directly referance the data,
making you think it's debug data...

I think it might be a way the compiler used the strings before compiling the code to work in brawl...
(basically saying the strings mean nothing to brawl, but everything to a compiler)
^ IDK if that's what you were meaning by debug purposes...
but that's my concept on it as of now...
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
1 last Q... for now...

umm...

what does the hex in between the strings do??
just asking by chance if you guys know... :/
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
edit:
ignoring this thread from now on
I see...
you're one of those people who dosn't like to help other people out -_-

I wasn't asking you anyways...

so fine

on another thing,
I've deciphered captain falcons rel
it deals entirely with:
kinetic energy
gravity
and his FS
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
Dantarion not liking to help people out...
I lol'd.
alright alright...
I'm sry -_-
I know he likes to help people out because I saw a log on him, PW, and a few other people while I was searching for the module viewer.

but srsly dant...
can we be a bit nicer...
geeze

I usually don't take offence to things like this,
but you just keep pushing my buttons D:

lets control ourselves and stick to a subject.

and I watched my ellipses for ya too <_<
anything else you want me to do...
gawd @-_-
 
Top Bottom