The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > ROM Hacking > Research & Development
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

Research & Development Got a well-founded knack with ROM hacking? Love reverse-engineering the Pokémon games? Or perhaps you love your assembly language. This is the spot for polling and gathering your ideas, and then implementing them! Share your hypothesis, get ideas from others, and collaborate to create!
Research & Development programs in this forum are subject to moderator approval before they are displayed.


Advertise here

Reply
 
Thread Tools
  #1    
Old May 28th, 2009, 10:06 AM
0m3GA ARS3NAL's Avatar
0m3GA ARS3NAL
Im comin' home...
Community Supporter Tier 1
 
Join Date: Jan 2008
Location: Superjail Penitentiary
Age: 21
Gender: Male
Nature: Gentle

Advertise here
Ok, So I am sure you have heard of the std.rbh file that comes with XSE, right?
If not, READ THE XSE GUIDE THAT COMES WITH IT SILLY BUNS!
If you DO know of it, then you might wanna start looking into making your own .rbh files!

And RBH file, or RuBikon Header File
is a file XSE uses to add onto it's current data base... so to speak.
It read's this file, and it loks at the commands in it, and what they mean, much like how MSG_NORMAL really means 0x6 to XSE.. (Which means if you put MSG_NORMAL anywhere in the script, XSE will pop out an 0x6 right there, so long as you include teh std.rbh file with the compiling.)
Now, you may be asking, "What is so important though?"
Well, making your own can simplify your XSE scripting experience!
Do you have an offset you type often in your game?
(I do, I have to type goto 0x08003224 at the end of my scripts, since I use a single,
release
end
in my whole game, just reused all the time.
Well, using a .rbh file, we can make a define for it!
Lets sat I want to use [END] as my pointer instead of writing out that pointer all the time.
#define [END] 0x08003224
That line of code, inserted into a .std file, will allow me to type [END] every time I want that Pointer to appear!

Pretty handy huh?
Let me give another example.
Say you are into something more complicated...
say, pallet changing... with scripts, to change your char's clothes or something. I dunno ^__^
Anyways
You can make a color chart out of these defines, so you can use writebytetooffset faster.
Simply find the color you want, the pointer to that color, and the 2 offsets of the bytes that define the color.
Now, writebytetooffset can only write 1 byte at a time, SO, we have to have it only write 1 byte at a time, so we would split the color red into 2 bytes, and use, say, [redpt1] and [redpt2] for the defines!
Pretty handy I think. (I know that was a terrible example but still!)
The key here is to find out something that is boring to type over and over, and try to find a way to make it easier on you.
(This does not work well with commands themselves... like lock, and such, if you want to temporarily change the name of a command use the #alias command (also found in the XSE tutorial)
Alias's don't go in RBH files just to let you know...

My STDEXTRAS.RBH


I saw someone had released a .rbh file onto the net, and I figured, I may as well too!

I made this quite a long time ago, back on the days of XSE V1.
I never thought to release it though!
Just paste this information into XSE, and save it as stdextras.rbh

Code:
#define [small] \c\h06\h00
#define [jap] \c\h15
#define [west] \c\h16
#define [waitkey_txt] \c\h09
#define [pause_txt] \c\h08
#define [pausebgm_txt] \c\h17
#define [playbgm_txt] \c\h17
#define [shift] \c\h0D\h08

#define [A] \hF8\h00
#define [B] \hF8\h01
#define [L] \hF8\h02
#define [R] \hF8\h03
#define [STRT] \hF8\h04
#define [SEL] \hF8\h05
#define [DPAD_U] \hF8\h06
#define [DPAD_D] \hF8\h07
#define [DPAD_L] \hF8\h08
#define [DPAD_R] \hF8\h09
#define [DPAD_UD] \hF8\h0A
#define [DPAD_LR] \hF8\h0B
#define [DPAD] \hF8\h0C

#define [+] \hf9\04
#define [LV] \hF9\h05
#define [PP] \hF9\h06
#define [ID] \hF9\h07
#define [NO] \hF9\h08
#define _ \hF9\h09
#define [1] \hF9\h0A
#define [2] \hF9\h0B
#define [3] \hF9\h0C
#define [4] \hF9\h0D
#define [5] \hF9\h0E
#define [6] \hF9\h0F
#define [7] \hF9\h10
#define [8] \hF9\h11
#define [9] \hF9\h1
#define [DBLCIRCLE] \hF9\h15
#define [TRIANGLE] \hF9\h16
#define [CROSS] \hF9\h17
#define | \hF9\hD1
#define [?] \hF9\hD2
#define [~] \hF9\hD3
#define [SPARAL] \hF9\hD4
#define [SPARAR] \hF9\hD5
#define [SIDE_U] \hF9\hD6
#define [L_EYE] \hf9\hD8
#define [R_EYE] \hf9\hD9
#define [@] \hf9\hDA
#define [;] \hf9\hDB
#define [PLUS] \hf9\hDC
#define [MINUS] \hf9\hDD
#define [EQUAL] \hf9\hDE
#define [SPIRAL] \hf9\hDF
#define [TOUNGE] \hf9\hE0
#define [TRIANGLE2] \hf9\hE1
#define [B_CIRCLE] \hf9\hE4
#define [B_TRIANGLE] \hf9\hE5
#define [B_SQUARE] \hf9\hE6
#define [B_HEART] \hf9\hE7
#define [MOON] \hf9\hE8
#define [NOTE] \hf9\hE9
#define [POKEBALL] \hf9\hEA
#define [ELECTRIC] \hf9\hEB
#define [GRASS] \hf9\hEC
#define [FIRE] \hf9\hED
#define [WATER] \hf9\hEE
#define [L_HAND] \hf9\hEF
#define [R_HAND] \hf9\hF0
#define [FLOWER] \hf9\F1
#define [EYE] \hf9\hF2
#define [EYE2] \hf9\hF3
#define [FRUSTRATED] \hf9\hF4
#define [:<] \hf9\hF5
#define [:>] \hf9\hF6
#define [|:<] \hf9\hF7
#define [:o] \hf9\hF8
#define [^^] \hf9\hF9
#define [>:)] \hf9\hFA
#define [D:] \hf9\hFB
#define ['_'] \hf9\hFC
#define [8O] \hf9\hFD
#define [D:<] \hf9\hFE
#define [LETS_GO] \hf9\hFF
If you like, feel free to comment / rep / Spread the word!
And dont forget, try making your own useful RBH FILES!
__________________
>Boot Jailbot
>Pass *****
.
.
Jailbot OS Ver 1.1.2
Greetings Warden
of Superjail Penitentiary
Awaiting user input...

>Display User_Info
╠══User Info══╣
Username:
0m3GA ARS3NAL
Age: 18
Sex: Male ♂
Race: Caucasian
Quote:
"What is this
I don't even..."

M/O: Often acts out to get attention, but recently has changed that. Has been studying up on hacking information and hopes to participate in more advanced hacking discussion.
╠══End of File══╣
Awaiting user input...

>

Last edited by 0m3GA ARS3NAL; May 28th, 2009 at 08:14 PM.
Reply With Quote
  #2    
Old May 29th, 2009, 03:45 AM
Tropical Sunlight's Avatar
Tropical Sunlight
The Faltine
 
Join Date: Mar 2008
Location: Slovenia
Age: 18
Gender: Male
Send a message via Windows Live Messenger to Tropical Sunlight
This is the most useful tutorial I've seen today!
This could help many people including me!
__________________
Reply With Quote
  #3    
Old June 3rd, 2009, 06:05 AM
Khan6195's Avatar
Khan6195
Michael Jackson Died. Parté!
 
Join Date: May 2009
Location: Canada
Age: 19
Gender: Male
Nature: Adamant
This is the most useful tutorial I've seen today! Thanks a lot!
Reply With Quote
Reply
Quick Reply

Sponsored Links


Advertise here
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Minimum Characters Per Post: 25



All times are UTC -8. The time now is 11:27 AM.


Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2014 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.