• 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?".
  • Forum moderator applications are now open! Click here for details.
  • Welcome to PokéCommunity! Register now and join one of the best places on the 'net to talk Pokémon and more! Community members will not see the bottom screen advertisements.
  • Want to share your adventures playing Pokémon?
    Check out our new Travel Journals forum for sharing playthroughs of ROM Hacks, Fan Games, and other Pokémon content!
  • IMPORTANT: Following a takedown request, the following hacks have been delisted from PokéCommunity:

    • Pokémon Glazed
    • Pokémon: Giratina Strikes Back
    • Pokémon Flora Sky
    • Pokémon Stranded
    The downloads and discussion threads for these hacks will no longer be accessible, and staff will be unable to return questions regarding accessing this content.

Development: Pokemon above level 100

niven

Leader of Team LegendaryTrio
109
Posts
12
Years
Hi, I'm Niven.

I was wondering if there is a way to battle and/or capture a pokemon above level 100. If I'm not mistaken, the level of a pokemon takes up 1 byte so it should have a maximum value of 255. I don't know how this could be done at all, but I do believe it to be possible. I know the answer could be as simple as temporarily changing a flag that checks a pokemon's level (even though to me that's not simple) to allow a level above 100 (120, for example), or as complicated as one of those ginormous ASM routines.

I'm asking because I think that it could come in handy in a later part of my hack. I'm using the US version of fire red. version 1.0. Also, I'm using JPAN's hacked engine. So is it possible, and if so, how could it be done?

P.S credit will be given to whoever figures it out, and any and all help is welcome and appreciated.
 
Last edited:
3,830
Posts
13
Years
  • Age 26
  • OH
  • Seen Feb 26, 2024
Well, after a little hex editing, I changed a trainer's pokemon to level 101, and this was the result:

attachment.php


Also, when the trainer battle started, it said the other trainer had no pokemon.
However, this obviously due to the missingo. and not the level change.

Note: I changed the trainer's pokemon to be a level 101 mew.

I know this isn't what you meant, but it does prove that pokemon are not allowed in game over level 100, and what happens if they are.
 
Last edited:

niven

Leader of Team LegendaryTrio
109
Posts
12
Years
I had tried doing something like that before (hoping it would be a simple feat), and the same thing happened. I figure that to do this, there's probably some sort of routine of variable that stops a pokemon from leveling up, and replaces it with a level 0 ???, if it's level is set above that through hacking, that would need to be removed/modified. I would try to search the game for such a thing, but I have no idea how people do stuff like that. I hope that some of the experts and more experienced hackers will take a look at this.
 

Mr.Pkmn

Ordinary ASM Magician
53
Posts
15
Years
  • Seen Nov 17, 2023
I was able to set the enemy pokemon to a level >100, but stats had to be recalculated manually.

synthrom.png
 

Corvus of the Black Night

Wild Duck Pokémon
3,416
Posts
15
Years
First off, why would you want to do this? The level 100 cap is something that's been in the series since the beginning and changing it makes no sense.

Second, removing the cap could interfere with exp curves and lead to Pokemon leveling to level 255, then reseting at level 0, making them stuck at a heinous state forever.

Just keep it as is; removing the cap is only going to make things get nasty, especially at your skill level.
 

niven

Leader of Team LegendaryTrio
109
Posts
12
Years
@Corvidae Well, I want to do this because I've always hated to that you can only reach lv 100. It annoys me, to no end. Also, I don't think it has been done before in a hack, and I would like to be the first. I see what you mean, but I made this thread cause I know that it would just mess up the game at "my skill level," and hacking is about being able to do things that nintendo didn't do and you have always wanted to see. And I don't actually want to remove the level cap completely, just temporarily for one trainer battle.

@Mr. PKMN Can you tell me how you were able to do that. Any bit of information could help, me or someone else, figure out a way to do this.
 

Corvus of the Black Night

Wild Duck Pokémon
3,416
Posts
15
Years
Temporarily for one battle?!

What kind of role is that supposed to play in a Pokemon game? >_> Pokemon don't just skedaddle between levels you know. That will probably end up confusing your poor fans, even if you managed to get it to work with absolutely no problems. There's no place for a mechanic like this in a Pokemon game... It doesn't matter if you're the first to come up with triangular wheels, its still not a good idea.

On another note he probably edited the memory while in-game, or hacked it to display a larger value over 100 with a script of some sort. Once you catch a Pokemon like that they'll revert to level 100 and have a screwed up EXP value.
 

niven

Leader of Team LegendaryTrio
109
Posts
12
Years
I was thinking that an evil organization invents some sort of thing, that strengthens pokemon, and makes them evil, then uses it one his pokemon. That way you battle Pokemon above the usual cap of lv 100, to make it more of a challenge. If you don't like the idea, then stop just posing negative comments on this thread. You don't have to look,think, or be involved with this thread at all in any way if you don't like the idea. Your posts are just wasting my time, and I don't care if you don't like the idea. I would like to see it happen, to make my hack more unique, and believe it can be done. You might not, so just don't bother your time with my idea.
 

The Author

The Hero of Knothole Glade
381
Posts
12
Years
If I'm not mistaken, you can do this in the second generation games, but anything after that leveling your Pokémon past 100 causes problems. Although I'm sure there's a way, it just wouldn't be something anyone could do just because they're bored. It'll require a bit of research.
 

Mr.Pkmn

Ordinary ASM Magician
53
Posts
15
Years
  • Seen Nov 17, 2023
@Mr. PKMN Can you tell me how you were able to do that. Any bit of information could help, me or someone else, figure out a way to do this.
ASM. My first one too.

First off, why would you want to do this?
Because I needed to overpower the player's (ev trained) lv 100 pokemon in order to balance the crappy AI and still give a challenge.

Second, removing the cap could interfere with exp curves and lead to Pokemon leveling to level 255, then reseting at level 0, making them stuck at a heinous state forever.
Not my concern, as my purpose was intended for enemy pokemon.
 

Satoshi Ookami

Memento Mori
14,254
Posts
15
Years
First off, why would you want to do this? The level 100 cap is something that's been in the series since the beginning and changing it makes no sense.
Well you are not exactly right.
The first generation actually HAD gap 255 instead of 100 ;)
Not like you could reach that level in the normal way but still Missignos, numbers, characters, etc... had levels over 100. ;)
 

blakfyr999

PWNGE Trainer
15
Posts
12
Years
considering thats code, i doubt thats an area youd want to mess with if u dont know EXACTLY what your doing. besides arent the amounts of EXP programed for each pokemon by it's species? O_o
 
275
Posts
13
Years
  • Seen Oct 9, 2019
considering thats code, i doubt thats an area youd want to mess with if u dont know EXACTLY what your doing. besides arent the amounts of EXP programed for each pokemon by it's species? O_o
Close.

Technically speaking, there are six EXP progressions (which are assigned per-species, but there isn't one for each species) that each map to mathematical equations/functions. However, they aren't implemented as functions; IIRC Game Freak actually manually calculated out the values for each level for each equation, and stored the values as lists inside the game engine.

To get EXP to work with Pokemon above Level 100, you either need to extend those lists and modify the parts of the game engine that read them, or simply code in a special-case code for Level 101+ Pokemon.

Well, after a little hex editing, I changed a trainer's pokemon to level 101, and this was the result:

attachment.php


Also, when the trainer battle started, it said the other trainer had no pokemon.
However, this obviously due to the missingo. and not the level change.

Note: I changed the trainer's pokemon to be a level 101 mew.

I know this isn't what you meant, but it does prove that pokemon are not allowed in game over level 100, and what happens if they are.
The "?????????" glitch Pokemon may not be a result of modifying the level in and of itself, but rather of modifying the level without recalculating the checksum. Did you modify the trainer data, the routine that generated the Pokemon, or the already-generated 100-byte Pokemon data structure kept in RAM?
 

niven

Leader of Team LegendaryTrio
109
Posts
12
Years
@davidjcobb For what I'm hoping to do, I think that it would need a special case code. Also, since it's intended for an enemy pokemon only, I won't need to worry about the EXP and all that stuff too much, will I? Could you tell me the basics of making a code like that?
 
275
Posts
13
Years
  • Seen Oct 9, 2019
@davidjcobb For what I'm hoping to do, I think that it would need a special case code. Also, since it's intended for an enemy pokemon only, I won't need to worry about the EXP and all that stuff too much, will I? Could you tell me the basics of making a code like that?
Well, I'm not familiar with the ASM that handles Pokemon stats, so unfortunately, I don't know enough to tell you where specifically to start.
 

Jambo51

Glory To Arstotzka
736
Posts
14
Years
  • Seen Jan 28, 2018
In FireRed, there is a stat decrypter at 0x3FBE8, while there is a stat encrypter around 0x41000. I can't remember the exact location off the top of my head.

These use indices in order to decrypt/decrypt the wanted piece of data from the Party data. You pass it the Pokemon's party location in R0, the index in R1, and occassionally some other piece of data in R2. For a list of indices, see HackMew's post in "Modernizing the Fire Red field engine". More specifically, the post which contains his code for the field effects of the Magma Body ability.

Changing the level would indeed mean that updating the checksum would be required IIRC. However, it should change it to a bad EGG rather than a missingno.
 
Last edited:

_Garret

Digital Angels Inc.
7
Posts
12
Years
  • Age 26
  • Seen Dec 23, 2013
If i remember correctly in (I think) ruby had a game-shark code that maxed the level to 225.
I think its possible and a great idea too. But yes stats have to be manually edited.
 

darkdarkrai

No. 1 World at war fanboy
38
Posts
12
Years
I saw this vid on youtube which tells you how to get a level 101 pokemon on pokemon Diamond/Pearl/Platinum (It didn't tell you how to use it on HG/SS, and he used platinum for the demo) He used action replay and after, his save file got trashed
 

droomph

weeb
4,285
Posts
12
Years
What you should do is set the wild battle, then use ASM to set the temporary stats to 255. It will be hard to beat, and you won't break the game.
 
1
Posts
13
Years
  • Seen Apr 19, 2014
I will start out by saying this happened on a copy of Red I lost quite some time ago. I used a GameShark to turn a Raticate into a Mew. I used a bunch of Rare Candies I got from using Missingno to level it up to 100, then while fighting the Elite Four my Mew leveled up to 101. I used a Rare Candy on it once and it went back down to level 100. I have no explanation for how or why any of this happened.
 
Back
Top