Custom Robo Arena Robo Editor
|Game||Custom Robo Arena|
|Release Date||23 July 2015|
|Last Modified||01 October 2018|
This is a fairly simple editor for changing the stats of robos in Custom Robo Arena, programmed in Java as I learn it. I’m actually finishing up a proper robo rebalance/fixes hack of the game, and had a pretty miserable time editing every file in a hex editor with a sheet of addresses I only compiled with trial and error, and while I’m done all that now I can tell you that this program would have been helpful had I made it sooner.
First things first:
- You can get individual robos’ files by unpacking the rom with DSBuff or another unpacker, edit the files with this program, and then repack with the same packing program to get a playable rom. In CRA’s filesystem, robo stats are found in data/perform/body as .bin files.
- Robos’ filenames typically are represented by their type’s initials followed by a number that’s exactly the order they’re listed ingame, but for others: FO = Old Timer, FV = Big Boy, LT = Lightning Sky, SP_01 = Ray II Dark, SP_02 = Majel, SP_03 = Jameson, SP_04 = Chick, SP_05 = grey test robo, SP_06 = Ray, SP_07 = Ray II, SP_08 = X-Ray, SP_09 = Ray01, SP_10 = AIRS, SP_11 = Carat, SP_14 = our Ray Sky, SP_15 & SP_16 = the other two Ray Skies (Ray Sky was hard-to-find Japanese DLC and you just randomly got one of three slightly different robos with different colors; we just got the Power version and it - and by extension AIRS - thankfully came with the game). The UG_ files are Violent Boar, Snipe, Katana, Freya and Hadron, in that order.
- When you start the program you’ll be asked to open a file. The Choose File button will do the exact same thing if you cancel or want to select another.
- The Populate button will fill out the text boxes with all the values of the last chosen file.
- The Save button will overwrite the last chosen file with the current values in the chart (and will overwrite every part of the robo file in COMPLETE form, not just the values on the GUI here). If you open a robo, populate the list, fiddle with it, choose a DIFFERENT file and hit Save, you will have written over the new file with the previous robo’s data, with the changes you just made.
- The Change to Hex/Dec button will change the number format between decimal and hexadecimal - just because some values are easier to understand in a different format. It will save properly no matter what format the numbers are in.
The Fields Themselves:
- Some fields whose values have really unclear meaning have tooltips.
- The first five stats are the “style” and the stats you are shown in the robo selection menu. Most importantly: they do NOTHING. They are vague guesses from the developers who themselves weren’t quite sure on how to be consistent when each stat represents many factors, and they were often really far off. If you make changes to robos, you should still make an effort to alter these so as to not confuse the player.
- Stats that have S/M/L variations: These are separate values for various leg parts! For example, if you modify the default airdash speed, (Dash speed M), it won’t affect the robo if it puts on Booster legs or Chick legs. The Landing time S/M/L values correspond to landings after very short drops, regular jump drops, and for drops after air-dashes/jumps.
- The entire bottom part of the robo file viewed in a hex editor deals with the charge attack, specifying where you move and how fast (multiple times for some charges), your visibility/invincibility, damage frames, knockback angle, etc. It’s the whole script of the move and pretty freeform so it’s not easily understood, but this does mean that you can actually copy them wholesale over another robo’s charge data and have it work perfectly because their animations are so generic.
- Collision. The values for collision, model and robocube size are located in 0×232 - 0×249. I know 0×249 is robocube size from fixing Tempest’s.
And that’s all there is to know about the program and, currently, robo body files.
- Added Multiply/Divide Speeds features for easier mass-edits
- Added “Open and Populate” button for hopefully fewer overwriting accidents
- Now auto-populates on program start if you load a file.
- Completely reorganized the layout to be less weird.
- Added a hex conversion button.
- Added some tooltips
- Added fields for airdash type, airjumps, stealth, landing time, jump power + ascent duration (those two make up jump height), model and various sound effects.
- Clarified the four down damage values.
- Made file browsing keep track of the latest folder until you close it at least.