Tenchi Muyo RPG Save State Hacking Guide Usable with the ZSNES emulator (.zst style save states) Written by Thundergod (dragon_god_inferno@yahoo.com) Version 1.0: First draft, all character information. Version 1.1: Changed the layout slightly, for easier reading, and added a special note. Version 1.2: Added an explanation of offsets. Version 1.3: Minor corrections made, and a few new offsets added. Version 1.4: More minor changes, and more offsets. Unpublished work Copyright 2000 Thundergod This FAQ is for private and personal use only. It can only be reproduced electronically, and if placed on a web page or site, may be altered as long as this disclaimer and the above copyright notice appears in full. This FAQ is not to be used for profitable/promotional purposes; this includes being used by publishers of magazines, guides, books, etc. or being incorporated into magazines, etc. in ANY way. This FAQ was created and is owned by me, Thundergod. All copyrights and trademarks are acknowledged that are not specifically mentioned in this FAQ. Please give credit where it is due. Thanks go to: Ragnarosen (ragnarosen@hotmail.com) for the form of the following paragraph, and for the section on hexadecimal. Kao Megura (kmegura@yahoo.com) for the copyright statement. Paul (ForgottenDruid@aol.com) for the experience offsets. Fallen One (FalenOne@aol.com) for the movement offsets. MiraiOtaku (Miraiotaku@aol.com) for the download link. To download ROMs and emulators for all systems, go to www.pe2000.net. To alter the statistics of your characters through hacking into your save state (or .zst file), you'll need to go to Break Point Software (http://www.bpsoft.com) and download a program called "Hex Workshop." Once you're finished downloading and the program is finished running SETUP.EXE automatically, open Hex Workshop and use it to open any Tenchi Muyo RPG .zst files you may have. NOTE: This Hacking Guide was designed for use with the ZSNES emulator, and was hacked with Break Point Software's Hex Workshop. This guide will not work with any other programs, as each one works with the save states differently. ----------------------------------------------------------- OFFSETS: Most of the questions I get anymore have to do with offsets – what are they, how do I tell what I'm editing, I don't understand hacking in general, etc. As far as I am concerned, the help Section is as thorough is it is going to get. The only way I could explain it any better would be to point at the screen and say, "See that there? That's what you need to change!" Since I can't do that, you'll just have to be on your own if you need any help more detailed than what I have included below. If you REALLY cannot figure out offsets and hacking on your own, read the Hex Workshop help file. For the best explanation (with pictures), open the help file and click on the Find tab. Search for offset, click on the first option (there should be four), and click on "How to Hex Edit" in the box below. Read over that very carefully, and you should have no trouble with hacking and finding offsets after that. If you STILL do not understand, then odds are hacking is, quite seriously, not for you. If you have reached this stage and do not understand, do not e-mail me, for I will not be able to help you. Do not ask me to hack files for you; I will ignore any request to do so. ----------------------------------------------------------- Help! Answers for commonly asked questions: You don't use a cartridge in the SNES for this process. Have you heard of emulation? An emulator is a program on your PC (or Mac) that you can use to play the games you have. First, you need to download an emulator (ZSNES is the best, in my opinion) and the Tenchi Muyo RPG ROM. Once you have both, load up the ROM in your emulator. If you are using ZSNES, press F2 to save the game's state. This will make a copy of that EXACT moment in the game, so when you load the state (F4) it will reappear right at that point. Now that you have a save state file (.zst for ZSNES), load up the Hex Workshop program, load the save state, and hack away! This can only be done on the computer, when you are using an emulator (like ZSNES) and ROMs (in this case, Tenchi Muyo RPG.) Go to www.pe2000.net for ROMs, emulators, and how to use them. If you already know, and/or are already using an emulator, then move on to the next paragraph. Otherwise, get them so that you can follow the rest of this. Once you are using an emulator, you may have found out how to use save states. Basically, save states save all the details of your game at that exact moment. Thus, you can use it more often, and faster, than regular saving. For example, if you want to save your state right before making a choice (like a fork in the road,) if you choose the wrong path, you can just load up your save state and choose again. At any rate, to begin hacking, go to the Breakpoint software homepage (www.bpsoft.com) and download a copy of Hex Workshop. Load up your favorite emulator (whatever that may be) and make a save state. A ZSNES save state will have the same name as the ROM, and will have the file extension .zst. For ZSNES (the best emulator , in my opinion) press F2 to save a state, and F4 to load a state. Next, load up Hex Workshop and load the save state (ex: tmrpg.zst) Use the "go to" command, which should be under Edit, to got to the offset you are looking for. For example, if the offset is 90B4, type 90B4 and press enter, and it will take you right to it. Keep in mind that this all uses the hexadecimal system, which means that not only is there 0 - 9, but also A - F. A = 10, B = 11, and so on. This is called hexadecimal because there are 16 numbers instead of ten. So, let's say that offset 24041 is the offset for speed, and you want speed to be at max (255, FF in hexadecimal). Use "go to" to go to offset 24041, and then type in FF. Next, save the data, and open the emulator again. Load the state, and voila! the character's speed will be at 255. Note that you can make as many changes as you want before reloading the state (not just one, as in the example), and that you should close Hex Workshop before reloading the state. To find a particular offset easily, use the "go to" command in the edit menu (I think). Remember, because of the hexadecimal system you can also enter letters from A to F. For example, if the offset is 2041A, use "go to" and type in 2041A. The program will take you right to it! Also, somewhere on the screen (bottom right corner I think) a small box will say what offset you are currently on (ex. Offset: 2041A). Now for the entering of values. Let's say you want to change Tenchi's attack to 99 (which is the max). To do that, go to the offset that changes attack (I forget the number) and type in two number (or letters from A to F) The hexadecimal system is hard to grasp at first. In the 99 example, 99 become 63 in hexadecimal form. In decimal (or standard) form, the base is ten. This means that for a number (say 1429) each digit is multiplied by an increasing power of ten. For 1429, it looks like this: (9*1)+(2*10)+(4*100)+(1*1000) or (9*10^0)+(2*10^1)+(4*10^2)+(1*10^3) with the carat (^) referring to the power of the number. If you already know how to work with powers, I apologize for repeating this basic information. As you can see, the powers of the digits increase at we go along. In hexadecimal, the base is 16, not 10, so there are a few changes. Here's what 1429 would look like in hexadecimal: (9*1)+(2*16)+(4*256)+(1*4096) or (9*16^0)+(2*16^1)+(4*16^2)+(1*16^3) Thus, 63 in hexadecimal equals 99 in decimal because (3*1)+(6*16) equals 99. The highest number you can get with one offset is 255 (FF in hexadecimal). Two offset changes are much harder, because the number that you are trying to change is broken up into two pieces. For these numbers, refer to the list of useful numbers at the beginning of the guide. For example, input E703 to get 999 and 0F27 to get 9999. Thus, if the two offsets for exp are 2041C and 2041D, type in 0F at offset 2041C and 27 at offset 2041D. Keep in mind that the first offset controls the lower numbers (up to 255) so if you change that by one you will change the number by one. However, the second offset controls the larger numbers, so a change of one might change the number by 100 or more. If you want, say, 9995 exp, lower the first offset from 0F to 0C, which is four numbers lower. ----------------------------------------------------------------------------- --- Those new to hex and hex editors can read the following: - Typical hex editors display a file with "offsets" on the left of the screen, "hex values" in the middle, and the "printed garbage" on the right of the screen. - Offsets are the addresses. It may appear like this: 00000000 - Hex values are the values. They may appear like this: E6 03 20 20 FF - The printed garbage is there only so humans can look at it. It's not very pretty; it won't help you in most cases; don't worry about it. - This guide will represent the offsets in this format: #B9 - The last number (0-9, A-F) in an offset is the COLUMN you need to go to. So for the offset of #B9, go to the line "000000B0" and the 9th column to the right. ----------------------------------------------------------------------------- --- - For the different offsets, here's a Quick List of the most commonly used values: HEX VALUE DECIMAL VALUE USES ----------------------------------------------------------------------- "63" for "99" used for levels, item quantities "FF" for "255" used for statistics "E7 03" for "999" used for HP, Max HP, statistics "0F 27" for "9999" used for HP, Max HP "FF FF" for "65535" used for HP, Max HP "7F 96 98" for "9,999,999" used for money or experience ----------------------------------------------------------------------------- --- NOTE: For the two- or three-column HEX VALUES ("E7 03"), the numbers must be entered "backward" as shown above to work properly. - When saving large numbers to computer language, the order of the hex values are reversed. If you open Windows Calculator and enter "999" in decimal form and convert it to hexadecimal form, it will show "3E7" (note that Calculator will remove any leading zeros). To use this multi-column hex value, add any necessary leading zeros (in this case, in front of the "3") to make even pairs ("03 E7"). Put the number pairs in reverse order ("E7 03") in the tmrpg.zst files. - THIS DOES NOT MEAN TO REVERSE THE VALUES! "03 E7" must be entered as "E7 03", not "30 7E"! For the basic rule of thumb, number pairs are entered like this: #2 #1 (or #3 #2 #1 for very large numbers) ----------------------------------------------------------- CHARACTER MODIFIER OFFSETS: These are the data for the four characters presently in battle, starting with the first character at the top and the fourth at the bottom. First Position: Movement Rate: 10C29 Number of kills to gain a level: 10C50 Present HP: 10C53 Maximum HP: 10C54 Kiai: 10C55 Present Attack: 10C58 Maximum Attack: 10C59 Present Defense: 10C5B Maximum Defense: 10C5C Second Position: Movement Rate: 10C79 Number of kills to gain a level: 10CA0 Present HP: 10CA3 Maximum HP: 10CA4 Kiai: 10CA5 Present Attack: 10CA8 Maximum Attack: 10CA9 Present Defense: 10CAB Maximum Defense: 10CAC Third Position: Movement Rate: 10CC9 Number of kills to gain a level: 10CF0 Present HP: 10CF3 Maximum HP: 10CF4 Kiai: 10CF5 Present Attack: 10CF8 Maximum Attack: 10CF9 Present Defense: 10CFB Maximum Defense: 10CFC Fourth Position: Movement Rate: 10D19 Number of kills to gain a level: 10D40 Present HP: 10D43 Maximum HP: 10D44 Kiai: 10D45 Present Attack: 10D48 Maximum Attack: 10D49 Present Defense: 10D4B Maximum Defense: 10D4C Notes: All of the values are permanent except for kiai (which is reset at the start of every battle) and HP (which is reset every time you gain a level). Do not use the 'Morph' ability if you plan on changing your character's stats. A character's morphed form has it's own stats which will be lower than your hacked stats. Stats will return to normal when you revert from morphed form. Kiai (the green dots at you spend for special attacks and morphing) has an in-game maximum of 8. This means that once your kiai reaches 8, it will not grow any higher. However, you can change a character's kiai value to higher than 8 (ex: 99, hex 63) and still have the game work fine. For an easy fight, set your characters' kiai to 99 or some high value, and you'll have enough kiai to last most battles. However, do not set it to 255 (FF hex)! If you do, it will crash the game when you try to load it! 99 should be safe, though, but if you really want to be safe set it to 8 (the normal maximum), or don't change it at all. The maximum value for HP is 255 (hex FF), and the maximum for other stats is 99 (hex 63). If you set present attack (or defense) to a value lower than maximum stat, by the next battle the present stat will be raised (or lowered, conceivably) to equal the maximum stat.