Drayano Posted April 19, 2011 Posted April 19, 2011 (edited) Okay I'm kind of stuck on this I already know level up moves are in a/0/1/8 and how to edit them and such, but how would one go about adding a new string to a Pokémon's level up set without breaking the others? Say for example, the string: FF FF FF FF A1 01 01 00 8F 01 01 00 5F 00 01 00 FA 01 01 00 D9 01 01 00 FF FF FF FF 2F 00 01 00 6F 00 05 00 ... FF FF FF FF The four FF are what border each Pokémon's level up set, with the first bit being Ninetales' level up set and the bit after being Jigglypuff. At the moment, both are bordered, and their absolute positions are in place. Say I wanted this: FF FF FF FF A1 01 01 00 8F 01 01 00 5F 00 01 00 FA 01 01 00 D9 01 01 00 DA 01 01 00 FF FF FF FF 2F 00 01 00 6F 00 05 00 ... FF FF FF FF Adding a new move without replacing means everything ahead has now shifted four bytes. However, the absolute positions haven't changed, so it screws up every single level up set after Ninetales. I'm sure there's a simple way to do it, but it's not something I know how to do yet. --- tl;dr - How do I add NEW level up moves rather than REPLACING level up moves and still have it working? Edited April 19, 2011 by Drayano whoops
Shin Atomoz Posted April 19, 2011 Posted April 19, 2011 I remember I tried doing this with PPRE and my Totodile would try to learn the attack I set for it and then several others like Sacred Fire, Spacial Rend, and Splash...
Andibad Posted April 19, 2011 Posted April 19, 2011 (edited) FF FF FF FF A1 01 01 00 8F 01 01 00 5F 00 01 00 FA 01 01 00 D9 01 01 00 DA 01 00 00 FF FF FF FF 2F 00 01 00 6F 00 05 00 ... FF FF FF FF hm why 00 ? why is not working because you disable it ... 01 --> lv 1 for move, 00 is disable that move...... For example i used bulbasaur: 00000000h: 21 00 01 00 2D 00 03 00 ; !...-...00000008h: 49 00 07 00 16 00 09 00 ; I....... 00000010h: 4D 00 0D 00 4F 00 0D 00 ; M...O... 00000018h: 24 00 0F 00 4B 00 13 00 ; $...K... 00000020h: E6 00 15 00 4A 00 19 00 ; æ...J... 00000028h: 26 00 1B 00 84 01 1F 00 ; &...„... 00000030h: EB 00 21 00 92 01 25 00 ; ë.!.’.%. 00000038h: FF FF FF FF ; ÿÿÿÿ Start(1) Tackle 3 Growl 7 Leech Seed 9 Vine Whip 13 PoisonPowder 13 Sleep Powder 15 Take Down 19 Razor Leaf 21 Sweet Scent 25 Growth 27 Double-Edge 31 Worry Seed 33 Synthesis 37 Seed Bomb For togekiss is :00000000h: 8F 00 01 00 F5 00 01 00 ; �...õ...00000008h: 8C 01 01 00 93 01 01 00 ; Œ...“... 00000010h: FF FF FF FF ; ÿÿÿÿ Start Sky Attack Start ExtremeSpeed Start Aura Sphere Start Air Slash After i expand and experiment, some move is not working, maybe is have data for learned move pokemon ?00000000h: 8F 20 01 20 F5 20 01 20 ; � . õ . 00000008h: 8C 01 01 20 93 01 01 20 ; Œ.. “.. 00000010h: 8C 01 07 00 35 00 08 00 ; Œ...5... 00000018h: 38 00 09 00 FF FF FF FF ; 8...ÿÿÿÿ red value is not working because Sky attack was at start level 1, for flamethrower is at TM/HM data , .... so if you entered duplicate move it will ignore.Is video for that, togekiss will learn hydro pump at lv 9 (38 00 09 00)........... yeah another value was ignore by core, because is duplicate move [video=youtube;q5_rryhkYog] Anyway maybe is possible added 559 slot........ For editing for that, don't using ROM hex offxet, narc hex offset in HEX editor mode......... So : EE EE XX UU EE EE is for move id flipped........ XX is for level learned, 00 is disabled, 01 is for lv 1 ....... UU is i don't know, for togekiss that value is 20, another ..... not 20... for normal move you can used 00. For TM/HM learned is not at a/0/1/8 ... for adding new move at level up in pokemon, is possible, and working for me........ for now i can't create tutorial or tell how expanding that, i still have a lot of my final test so i no have time for that. Maybe tommorow i will create it (tutorial) using notepad++ (freeware) , but i always using ultraedit . . . . Edited April 19, 2011 by Andibad
Drayano Posted April 19, 2011 Author Posted April 19, 2011 Oh that was just a typo, I meant DA 01 01 00. Better fix that. I might give UltraEdit a try. It's possible the hex editor I'm using just can't cut it for this task or something.
suaqua Posted April 19, 2011 Posted April 19, 2011 twistedfatal is currently working on a moveset editor which should be out sometime soon
Andibad Posted April 19, 2011 Posted April 19, 2011 I not sure he done in this week. Moveset learned move level up is can added/expand new slot(for save max 22 slot) so is impossible editing via ROM, but maybe some fuction will can added new byte to ROM and no replacing them. I not sure twistfatal will work for that. . . I was found many data and well but not done to analyze. I no wait and use twistfatal tool, you must know twistfatal work, because sometimes he tools not working, i hope he used vb2010 for new technology
Drayano Posted April 20, 2011 Author Posted April 20, 2011 We don't know what order twistedfatal is making the tools either iirc, though I've seen people requesting for other tools before the wilds and such. Regardless, UltraEdit got the job done. Thanks!
twistedfatal Posted April 20, 2011 Posted April 20, 2011 (edited) I not sure he done in this week. Moveset learned move level up is can added/expand new slot(for save max 22 slot) so is impossible editing via ROM, but maybe some fuction will can added new byte to ROM and no replacing them. I not sure twistfatal will work for that. . . I was found many data and well but not done to analyze. I no wait and use twistfatal tool, you must know twistfatal work, because sometimes he tools not working, i hope he used vb2010 for new technology Im using vb2008 for the moveset editor We don't know what order twistedfatal is making the tools either iirc, though I've seen people requesting for other tools before the wilds and such.Regardless, UltraEdit got the job done. Thanks! im currently working on my moveset editor. im doing it by gen. currently i have finished gen 1 Edited April 26, 2011 by twistedfatal updated post
aninymouse Posted April 23, 2011 Posted April 23, 2011 So I'm not incorrect in assuming that you can simply insert new values in the rom, in between existing values (and thereby expanding the rom size slightly)? Pretty sure that's how it was done in Gen 4 through PPRE, though of course PPRE was able to compile roms.
Andibad Posted April 23, 2011 Posted April 23, 2011 but PPRE will trimed ROM, i no want my ROM is trimmed
Drayano Posted April 26, 2011 Author Posted April 26, 2011 Yeah, expanding seems to work fine. Truth be told I didn't actually test if it worked ingame, but according to crystaltile the absolute offsets had shifted, so I assume it works fine. There's the factor of knowing exactly how many slots there are, but 22 seems a safe bet.
Andibad Posted April 26, 2011 Posted April 26, 2011 Is work except move using TM/HM item or duplicate move.
Drayano Posted May 27, 2011 Author Posted May 27, 2011 Gonna revive this thread; since I stated it worked, something went wrong and it stopped working again shortly after. I have a feeling it was a certain version of UltraEdit or something, but either way I'm clueless about how to expand and still have all the Pokémon working again now. It isn't just a case of insert the hex values at any rate, since I've tried like four different hex editors with the same failed result. Help?
aninymouse Posted May 28, 2011 Posted May 28, 2011 Last gen, if you expanded any of the level-up learnsets, thus changing the size of the narc, you had to make sure none of them were at the max, or Pokemon would learn weird moves at random levels (like trying to learn Dragon Rage 5 times in a row, or Frenzy Plant, etc.). The max is 22 now, but I'm sure a similar rule still applies. This includes Pokemon that normally come maxed out at 22 as well, not just ones you alter - got to downsize all of 'em to 21 or less. What, specifically, is the problem you've encountered? You say Pokemon "aren't working," what does this mean exactly?
Drayano Posted May 28, 2011 Author Posted May 28, 2011 Well, when you add bytes to any Pokémon (I usually use Ninetales as a test) it shifts every byte after it by four places, but the absolute offset as displayed by CrystalTile doesn't change, so the data is read from the wrong place for everything after what you edit. Admittedly I haven't actually tried it in the game, but something I did where I just copied and pasted some bytes when I was experimenting near the start resulted in the Pokémon (in this case Snivy) learning weird things like Mega Punch at Level 6, then trying to learn "---" in a continuous loop at the same level, making it impossible to progress. Basically, the offsets don't change so the data is read incorrectly, causing weird things to happen. Also, about the having to downsize maxed ones already, are you sure that was necessary and wasn't just a problem with PPRE in Gen IV?
Andibad Posted May 28, 2011 Posted May 28, 2011 Yeah is my worried is make another pokemon give error... but i not tested it yet yeah i will test in on Hex workshop, Ultra edit. but since is have a "FF FF FF FF" byte for closing for every pokemon i think is still possible to expand~ if is not working why in every pokemon move set always using that byte (FF FF FF FF)? but i not sure...
Drayano Posted May 28, 2011 Author Posted May 28, 2011 I did think (and still do) that the FF FF FF FF is like a 'border' between each Pokémon, but it doesn't seem to just swap when you insert more bytes... It's a real shame
Andibad Posted May 28, 2011 Posted May 28, 2011 yeah you right is give error, i get error message on snivy, after i editing them D: is on narc header to control these? another pokemon after snivy will no have move, and snivy is not get a move after i was level up snivy... also is effect on wild pokemon, all moveset is set to PP = 00 ... so is used strugle for used to attack ... i get shock after see long narc header maybe is control these data? LOL HEADER DATA FOR THIS NARC : 4E41 5243 FEFF 0001 38B7 0000 1000 0300 4254 4146 EC14 0000 9C02 0000 0000 0000 0400 0000 0400 0000 4000 0000 4000 0000 8400 0000 8400 0000 D000 0000 D000 0000 0401 0000 0401 0000 3C01 0000 3C01 0000 9001 0000 9001 0000 CC01 0000 CC01 0000 1002 0000 1002 0000 5C02 0000 5C02 0000 6C02 0000 6C02 0000 7802 0000 7802 0000 BC02 0000 BC02 0000 CC02 0000 CC02 0000 D802 0000 D802 0000 0C03 0000 0C03 0000 4803 0000 4803 0000 8C03 0000 8C03 0000 D403 0000 D403 0000 0C04 0000 0C04 0000 5404 0000 5404 0000 8404 0000 8404 0000 C404 0000 C404 0000 0805 0000 0805 0000 6405 0000 6405 0000 A005 0000 A005 0000 B405 0000 B405 0000 EC05 0000 EC05 0000[color=Red] FFFF FFFF [color=Blue]2100 0100 2D00 0300 4900 0700 1600 0900 4D00 0D00 4F00 0D00 2400 0F00 4B00 1300 E600 1500 4A00 1900 2600 1B00 8401 1F00 EB00 2100 9201 2500 FFFF FFFF[/color] [/color] blue is for bulbasaur moveset, on 001, and red is for 000 (actually for egg (glitch on pokemon BW)) for added byte is failed, but i not test replace data to data, maybe is working (is not copy but added moveset pokemon (have more than 15 slot) into target), but i think is will failed~ since added new byte is not working ... but i not sure is ? i never can change togekiss moveset~ ....
Drayano Posted May 28, 2011 Author Posted May 28, 2011 Oh boy that is a scary header o_o; I'm praying you don't need to edit that for this. Yeah, those are all the same effects I had when I tried expansion. I had everything using Struggle on me, same as you. You can definitely replace the current moves, I've done that loads in my hack, in some cases using duplicates, though I often had to replace moves the Pokémon normally learnt (usually going for the ones useless to it). Of course, that kinda sucks for things like stone evolutions, who are often stuck to 4-5 moves; Togekiss being one example of that. There's definitely some way to expand but I don't have a clue what it is
Andibad Posted May 29, 2011 Posted May 29, 2011 in my test on togekiss, i added 2 move, hydro pump on lv 11, togekiss is success to learn that and no with glitch move/unnamed move or wild pokemon is not used strugle but is not normally move. i think all pokemon gen 5 will give error. after there i excract a clean file and i edit snivy move, my test is failed, i don't know why snivy learn unnamed move on lv 8 ( i was set to lv 7 ...), if is OK to learn it will give error message...... really is confused to me........
Kairi Posted May 29, 2011 Posted May 29, 2011 Well, it's a little hackish, (but that's okay because we are hackers), but if you use PPRE to get the NARC file, you can then grab the specific file from a narc editor like this one. Then you just need to edit the single file and not worry about offsets. Raw hex is probably the best way to go on this one.
Andibad Posted May 29, 2011 Posted May 29, 2011 Yeah i hope is can. If that tools same as another. Is just same . . .
Zark Posted May 30, 2011 Posted May 30, 2011 (edited) Bulbasaur's file: 21 00 01 00 | 2D 00 03 00 | 49 00 07 00 | 16 00 09 00 | 4D 00 0D 00 | 4F 00 0D 00 | 24 00 0F 00 | 4B 00 13 00 | E6 00 15 00 | 4A 00 19 00 | 26 00 1B 00 | 84 01 1F 00 | EB 00 21 00 | 92 01 25 00 | FF FF FF FF http://bulbapedia.bulbagarden.net/wiki/List_of_moves 21 00 -> 00 21 -> 33 = Tackle 01 00 -> 00 01 -> 1 = Level 1 Tackle at level 1. 2D 00 -> 00 2D -> 45 = Growl 03 00 -> 00 03 -> 3 = Level 3 Growl at level 3. 21 00 01 00 | 2D 00 03 00 To add is simply: Fusion Bolt at level 2 Fusion Bolt is 559 -> 22F -> 022F -> 2F 02 Level 2 is 02 00 Then...21 00 01 00 | 2F 02 02 00 | 2D 00 03 00 He learns Fusion Bolt at level 2! FF FF FF FF never touch. And the limit is 22 attacks. Edited May 30, 2011 by Zark
IAL32 Posted May 30, 2011 Posted May 30, 2011 Zark: no way to add(example, Tynamo)attacks? Can I only modify the existents ones?
Drayano Posted May 30, 2011 Author Posted May 30, 2011 Zark, main problem is that every time any of us try to insert new hex in between current moves as you've shown there, it causes problems for every Pokémon after the edited one numerically like Wild Pokémon having no moves whatsoever, your Pokémon learning very strange things etcetera. I just tried it again with Hex Workshop and same result. Can I ask specifically what hex editor/program you use to edit the a/0/1/8 narc? EDIT: Okay, turns out editing each BIT of the .narc file and then reinserting it (basically what Kairi suggested) does actually work! It's a little slow, but it's definitely a start. Come to think of it, I guess that's how Kazo's Trainer tool works too; the hex is expanded for the trainer Pokémon as a segment of the big file, then when it's reinserted it's all in the right place. Wish I thought of it before x_x Well at any rate, there's one solution. Thank you.
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