• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Research: Chaos Rush's 649 on Ruby Project

Status
Not open for further replies.

Darkest Shade of Light

Pokémon Midnight Sun
298
Posts
14
Years
Definitely going to be following this. I just wish you would've kept up the track with 493 because I stopped at Gen IV, not really interested in Gen V :/

EDIT: For your issue with Arceus, why not do what Game Freak did with Castform? All you'd have to do is modify the transformation code to transform the Pokémon based on what item is being held, as opposed to what the status of the battle weather is.
 
Last edited:

Jambo51

Glory To Arstotzka
736
Posts
14
Years
  • Seen Jan 28, 2018
Definitely going to be following this. I just wish you would've kept up the track with 493 because I stopped at Gen IV, not really interested in Gen V :/

I dislike all the Pokémon after Gen 2, and if I took that attitude towards any hacks I did, it would be incredibly short sighted. Just because I don't like them, it doesn't mean that everyone else doesn't like them. Long story short, I put all 649 Pokémon in my patch (and so is Chaos Rush) so that the end users have the choice of which Pokémon they want to use without having to overwrite existing Pokémon.

That's my philosophy towards it. :)
 

Awkward Squirtle

,@,e .ºoO
110
Posts
12
Years
  • Seen Jan 29, 2016
Haven't given up, still working on movesets. Yes, it's taking THAT long.

Currently have up to Kadabra (#64) complete.

That's 64 movesets inserted. Only 322 to go. (585 if I include Gen IV and V)
*sigh* -____________-

Level-up movesets? Are you doing them by hand? It would be much faster to write a script to translate and copy the movesets from a B/W ROM to your Ruby ROM, surely.
 
1,323
Posts
16
Years
  • Seen Dec 9, 2023
Level-up movesets? Are you doing them by hand? It would be much faster to write a script to translate and copy the movesets from a B/W ROM to your Ruby ROM, surely.
Yes, I am doing them by hand. And no, I can't copy+paste from B/W, because my move index numbers do not match B/W's move index numbers. I haven't added all moves up to Gen V, I've added a select 129 new moves from both Gen IV and V.
 

Speedster

The Unknown
134
Posts
12
Years
EDIT: For your issue with Arceus, why not do what Game Freak did with Castform? All you'd have to do is modify the transformation code to transform the Pokémon based on what item is being held, as opposed to what the status of the battle weather is.
I know both Jambo and Chaos are extremely knowledgeable but I doubt it is very easy to modify the Castform Routine. I've seen it tried to be done before and there weren't good results. So it would take quite some time at my guess for it to be done.
 
94
Posts
13
Years
  • Seen Nov 2, 2016
Errr, no. It's most likely as simple as searching for castform's index number, looking for loads of it, and changing it.

Let me look at it one sec...Castform has index number 385, so that's 0x181. Let me search for loads of 0x181 with ida pro...

08011F50, 08018CD4, 08018E06, 08018E24, 08018E30, 080194F8, 08019DC0, 0803440A, 080345CA, 08034FCE, 08074638, 08074704, 08074768, 08076CA6, 08088E96

Use a debugger to set breaks on thumb at these points, then do a castform transformation. The one that breaks will be the place it loads and checks if the pokemon currently in battle is castform. From there all you'd have to do is change it to the one you want. Or you could add others if you hooked on your on routine in there some place.
 

Darkest Shade of Light

Pokémon Midnight Sun
298
Posts
14
Years
I dislike all the Pokémon after Gen 2, and if I took that attitude towards any hacks I did, it would be incredibly short sighted. Just because I don't like them, it doesn't mean that everyone else doesn't like them. Long story short, I put all 649 Pokémon in my patch (and so is Chaos Rush) so that the end users have the choice of which Pokémon they want to use without having to overwrite existing Pokémon.

That's my philosophy towards it. :)
I'm sorry, I was misunderstood.
What I meant was having two separate versions. One with the 649 from Generations I-V, and one with 493 from Generations I-IV, to avoid using unnecessary amounts of space for the 146 or so Pokémon not being used by people who want to avoid Generation 5. Also, this brings up the thought of how difficult it could be to remove Pokémon. Like, rolling back the ROM to make it only have Gen 1/2 Pokémon, freeing up space to have a massive world, or a crap ton of events and stuff...

Having issues with Multiquote:

@Speedster
Actually, it isn't all that hard, with about an hour of work, I just gave Castform two new transformations (overwriting ?? slots) that would be taken during sandstorm conditions and then when holding a Poké Ball in battle. Granted, this was only two forms, and Castform still showed up as normal in battle before changing to it's Poké Ball form in battle. But I suppose that doing it this way would require having more like 664 Pokémon in-game to accommodate for the Arceus forms, since I cannot for the life of me figure out how they added "frames" for Castform in R/S/E
 

Speedster

The Unknown
134
Posts
12
Years
Errr, no. It's most likely as simple as searching for castform's index number, looking for loads of it, and changing it.

Let me look at it one sec...Castform has index number 385, so that's 0x181. Let me search for loads of 0x181 with ida pro...

08011F50, 08018CD4, 08018E06, 08018E24, 08018E30, 080194F8, 08019DC0, 0803440A, 080345CA, 08034FCE, 08074638, 08074704, 08074768, 08076CA6, 08088E96

Use a debugger to set breaks on thumb at these points, then do a castform transformation. The one that breaks will be the place it loads and checks if the pokemon currently in battle is castform. From there all you'd have to do is change it to the one you want. Or you could add others if you hooked on your on routine in there some place.

I'm sorry, I was misunderstood.
What I meant was having two separate versions. One with the 649 from Generations I-V, and one with 493 from Generations I-IV, to avoid using unnecessary amounts of space for the 146 or so Pokémon not being used by people who want to avoid Generation 5. Also, this brings up the thought of how difficult it could be to remove Pokémon. Like, rolling back the ROM to make it only have Gen 1/2 Pokémon, freeing up space to have a massive world, or a crap ton of events and stuff...

Having issues with Multiquote:

@Speedster
Actually, it isn't all that hard, with about an hour of work, I just gave Castform two new transformations (overwriting ?? slots) that would be taken during sandstorm conditions and then when holding a Poké Ball in battle. Granted, this was only two forms, and Castform still showed up as normal in battle before changing to it's Poké Ball form in battle. But I suppose that doing it this way would require having more like 664 Pokémon in-game to accommodate for the Arceus forms, since I cannot for the life of me figure out how they added "frames" for Castform in R/S/E

Well you both proved me wrong. I'm still guessing its not as simple as a snap of the finger though. There will still be bugs to work out in the routine but I'm glad your knowledge over me has helped me learn more.
 

Darkest Shade of Light

Pokémon Midnight Sun
298
Posts
14
Years
Well you both proved me wrong. I'm still guessing its not as simple as a snap of the finger though. There will still be bugs to work out in the routine but I'm glad your knowledge over me has helped me learn more.
No, it's nowhere near as easy as a snap of the finger. My method was very buggy, and only meant to show it would work, and it still took me an hour to work out how to do it. So, what Chaos Rush is doing is a very difficult, while still very useful, tool. Although I feel like a jerk just kind of waiting for this to be happened.

@Chaos Rush
Is there any way those of us interested could help out?
 
1,323
Posts
16
Years
  • Seen Dec 9, 2023
I know both Jambo and Chaos are extremely knowledgeable
AHAHAHAHAHAHA. I'm not knowledgeable. I can't do ASM. I just know how to repoint and expand tables, which is what's most important when adding new Pokemon.


I'm sorry, I was misunderstood.
What I meant was having two separate versions. One with the 649 from Generations I-V, and one with 493 from Generations I-IV, to avoid using unnecessary amounts of space for the 146 or so Pokémon not being used by people who want to avoid Generation 5.
That would be ridiculous. So you're saying, after painstakingly expanding all the tables to 649 Pokemon, I have to do it again on another rom, but this time 493? Sorry, I ain't doing that. Nobody's forcing you to use Gen V Pokemon. And Ruby has plenty of free space.


@Chaos Rush
Is there any way those of us interested could help out?
I wish :(. But I've made up all Pokemon's new movesets in Notepad to keep track of what their moveset would be with my patch's movebank, and since there's all these files and offsets I have to keep track of, it would be a disaster letting someone else work on it without all the information & plans I have.

This is gonna take awhile...seriously losing motivation
 

Jambo51

Glory To Arstotzka
736
Posts
14
Years
  • Seen Jan 28, 2018
I wish :(. But I've made up all Pokemon's new movesets in Notepad to keep track of what their moveset would be with my patch's movebank, and since there's all these files and offsets I have to keep track of, it would be a disaster letting someone else work on it without all the information & plans I have.

This is gonna take awhile...seriously losing motivation

Don't hesitate to ask for my help, man. I can provide just about any piece of information you want related to these expansions, and if you wanted, I could provide the little pieces of ASM you feel you need.

For example, I recently developed a Seen/Caught Flag repoint which actually redistributes the existing save space for them to allow for extra seen/caught flags. I can go into more detail than that if required. It's for Emerald, but it wouldn't be too hard to port to Ruby, I don't think.

Don't lose motivation. Stop for a while and come back to it when you ARE motivated. That's what I did, and I feel better for it, :)
 

Darkest Shade of Light

Pokémon Midnight Sun
298
Posts
14
Years
That would be ridiculous. So you're saying, after painstakingly expanding all the tables to 649 Pokemon, I have to do it again on another rom, but this time 493? Sorry, I ain't doing that. Nobody's forcing you to use Gen V Pokemon. And Ruby has plenty of free space.
Oh. I didn't know it'd be two completely separate projects. I figured just copy/pasting the same thing with smaller values for available Pokémon. I've never tried to mess around with tables and such :/
 

Awkward Squirtle

,@,e .ºoO
110
Posts
12
Years
  • Seen Jan 29, 2016
Yes, I am doing them by hand. And no, I can't copy+paste from B/W, because my move index numbers do not match B/W's move index numbers. I haven't added all moves up to Gen V, I've added a select 129 new moves from both Gen IV and V.

When I did something similar (replace 4th gen movesets with 3rd gen moves), I made a table that maps non-existent moves to similar existing ones (e.g. Fire Fang -> Flame Wheel, Shadow Claw -> Shadow Punch etc) before replacing them. If you're still not too far in, it would save a lot of time if you did this (then manually edited the movesets afterwards if necessary).
 
1,323
Posts
16
Years
  • Seen Dec 9, 2023
When I did something similar (replace 4th gen movesets with 3rd gen moves), I made a table that maps non-existent moves to similar existing ones (e.g. Fire Fang -> Flame Wheel, Shadow Claw -> Shadow Punch etc) before replacing them. If you're still not too far in, it would save a lot of time if you did this (then manually edited the movesets afterwards if necessary).
You seem to be forgetting that my rom has 129 new moves added. I didn't replace any moves. I added new moves.
 

Tropical Sunlight

The Faltine
3,476
Posts
16
Years
You seem to be forgetting that my rom has 129 new moves added. I didn't replace any moves. I added new moves.
No, I think what he meant was to replace the moves you added with already existing moves (or a single existing move, to make it easier for you) in a list, then write a program to export/import movesets from the list into the ROM, and then change the few newly added moves in the ROM manually.
 

Awkward Squirtle

,@,e .ºoO
110
Posts
12
Years
  • Seen Jan 29, 2016
I meant replacing the moves in the movesets of the Pokémon. Let's say you didn't add Natural Gift. Your script would then find all instances of Natural Gift in Pokémon's movepools, and replace it with another move such as Present.

Obviously you can't just copy/paste the data, as B/W level-up move data has a different format to Ruby move data (mainly that the two move ID bytes are separate from the level byte) - you'd use a script written in e.g. Python to convert the B/W move list to Ruby format. While you're doing that, you can translate all the move index numbers to the Ruby index numbers, and replace any unimplemented move IDs as described above.
 
1,323
Posts
16
Years
  • Seen Dec 9, 2023
Just posting to say that all Generation I Pokemon have their movesets updated.

Also debating on whether I should not add Gen V Pokemon in order to save time, so I can restart Pokemon DarkViolet faster.
 

MegaKuriboh

Yare Yare Daze
811
Posts
15
Years
Just posting to say that all Generation I Pokemon have their movesets updated.

Also debating on whether I should not add Gen V Pokemon in order to save time, so I can restart Pokemon DarkViolet faster.

I really love the 5th Gen Pokemon, I would really appreciate it if you would add them too.
 

Jambo51

Glory To Arstotzka
736
Posts
14
Years
  • Seen Jan 28, 2018
Just posting to say that all Generation I Pokemon have their movesets updated.

Also debating on whether I should not add Gen V Pokemon in order to save time, so I can restart Pokemon DarkViolet faster.

Well, even if you decide not to include them, you should probably leave what you HAVE done with them in. There's no point in adding all that stuff, only to remove it now. So my argument would be, if you DON'T decide to include the 5th gen Pokémon, leave their spaces open so that people can insert fakemon etc into the spaces.
 
Status
Not open for further replies.
Back
Top