pkmntrainerBW Posted August 19, 2011 Posted August 19, 2011 I've trie using TwistedFatal's TMHM tool, but it's so buggy I can't even get it to work right. I could probably edit it in the hex if someone could tell me which narc it is.
Andibad Posted August 19, 2011 Posted August 19, 2011 http://projectpokemon.org/forums/showthread.php?17426-Pokemon-ROM-Changer&p=133554 is must used Japanese clean version~ is work fine and fast
pkmntrainerBW Posted August 20, 2011 Author Posted August 20, 2011 I'd prefer a program that works on an English ROM, since I have already done extensive edits to pokemon stats and movepools on an English ROM. Or just the narc containing the data.
elementking Posted August 20, 2011 Posted August 20, 2011 The narc file that contains TM/HM data (a/0/1/6) is the same for both the English and Japanese ROMs so they're interchangeable. Just make your changes with the programs Andibad suggested, extract the narc file, then reinsert it into the English ROM. It should work. Or you could insert the narc file from your English ROM into a clean Japanese one, make your edits and extract it, then insert it into the English ROM.
Kaphotics Posted August 20, 2011 Posted August 20, 2011 Well, Bond697 posted the source code for the ROM Changer, all someone needs to do is just change the read offsets (the starting points for each narc it accesses) so that it can edit English ROMs.
pkmntrainerBW Posted August 20, 2011 Author Posted August 20, 2011 The narc file that contains TM/HM data (a/0/1/6) is the same for both the English and Japanese ROMs so they're interchangeable. Just make your changes with the programs Andibad suggested, extract the narc file, then reinsert it into the English ROM. It should work. Or you could insert the narc file from your English ROM into a clean Japanese one, make your edits and extract it, then insert it into the English ROM. does that narc contain the data for which pokemon can learn which TMs and HMs?
Drayano Posted August 20, 2011 Posted August 20, 2011 Crap I forgot to reply to your PM >>;; Yes, the a/0/1/6 narc is what contains the TM/HM. The way it works in the hex is that near the end of each Pokémon's data in the narc there's a string of hex numbers that represent the TM/HM compatibility. The first byte represents TMs 1 - 8, the second 9 - 16, etcetera in groups of 8. Once you reach 80, it goes 81 - 88, then 89 - HM01 since there is no 96. The final one is HM02 - HM06. These hex numbers represent binary digits; if for example you took a random Pokemon's first TM hex and converted it to binary you might get a string like 01101010. The important thing to note is that it's in REVERSE; that is, the first digit there represents TM8, not 1, and it drops down as you go right. Then the next byte, once converted to binary, has digits representing it in the order 16-9 and so on. In that example - 01101010 - that means the Pokemon would be able to learn TM07, TM06, TM04 and TM02 because all of those are represented with a 1. The other four TMs are not learnable by the Pokémon due to being represented by a 0. It's the same for all of them, although of course the final one will only have five digits as only five things are represented. There's two ways you can figure out new things; stick the binary combo you want in the Windows calc, convert it to hex and put it in or you can do it manually via converting between base 16/base 2. Let's use an example 00000000, representing TM89 - HM01. The first byte hence represents HM01. Now if we want to make the Pokémon learn HM01, we change the string to 10000000. It's an unsigned byte so it goes between 0 - 255. The value of a binary number doubles each time you go to the left, as it's multiplied by 2 each time. As such, that string is equal to 128 in decimal, which is also equal to 2^7. So you figure out 128 in hex (128 / 1.6 = 80) so you put 80 as the hex value, and that means the Pokemon will learn HM01 but none of the other moves in that string. Say you wanted 10000001, letting it learn TM89 as well. The least significant bit here represents 1, hence the total is 128 + 1 = 129. This is also transferred to hex by 80 + 01, hence you would put in 81 for the correct setup. If you wanted 10000101, that'd be 128 + 4 + 1 = 133, or 80 + 01 + 04, which means you'd put in 85, and so on and so forth. I probably went a bit further than I had to with that but that covers some of the basics for anyone unfamiliar with hex. Of course, that's the archaic method, and using that tool and transferring the narc over will work just as well.
pkmntrainerBW Posted August 20, 2011 Author Posted August 20, 2011 Okay, I understood what you said Drayano, but is all that still in the a/0/1/6 narc or something different. And now for everyone, for that tool, I would have to download a Japanese Pokemon Black ROM, edit it, and take out the narcs that got changed and reinsert them into an english rom?
Drayano Posted August 21, 2011 Posted August 21, 2011 Yes, it's all in the a/0/1/6 narc. Yeah, that's exactly what you'd do.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now