Research & Development Got a well-founded knack with ROM hacking? Love reverse-engineering the Pokémon games? Or perhaps you love your assembly language. This is the spot for polling and gathering your ideas, and then implementing them! Share your hypothesis, get ideas from others, and collaborate to create!

TrollandToad.com
Reply
 
Thread Tools
  #1    
Old October 12th, 2011 (6:27 PM). Edited October 15th, 2011 by niven.
niven's Avatar
niven niven is offline
Leader of Team LegendaryTrio
     
    Join Date: Jul 2011
    Location: Where I'm sittin'
    Age: 19
    Gender: Male
    Nature: Brave
    Posts: 109
    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.
    __________________
    Leader of Team LegendaryTrio


    ____________________________________________________________________

    "We cannot do everything for
    Africa, but doing nothing is not
    an option" - Lee H. Hamilton
    Reply With Quote

    Relevant Advertising!

      #2    
    Old October 15th, 2011 (9:02 AM). Edited July 14th, 2015 by esperance.
    esperance's Avatar
    esperance esperance is offline
    • Platinum Tier
     
    Join Date: Mar 2010
    Location: Ohio
    Age: 20
    Gender: Male
    Nature: Relaxed
    Posts: 3,828
    Well, after a little hex editing, I changed a trainer's pokemon to level 101, and this was the result:



    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.
    __________________
    I was once somebody.
    Reply With Quote
      #3    
    Old October 15th, 2011 (9:10 AM).
    niven's Avatar
    niven niven is offline
    Leader of Team LegendaryTrio
       
      Join Date: Jul 2011
      Location: Where I'm sittin'
      Age: 19
      Gender: Male
      Nature: Brave
      Posts: 109
      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.
      __________________
      Leader of Team LegendaryTrio


      ____________________________________________________________________

      "We cannot do everything for
      Africa, but doing nothing is not
      an option" - Lee H. Hamilton
      Reply With Quote
        #4    
      Old October 15th, 2011 (9:55 AM).
      Mr.Pkmn's Avatar
      Mr.Pkmn Mr.Pkmn is offline
      Ordinary ASM Magician
         
        Join Date: May 2008
        Posts: 50
        I was able to set the enemy pokemon to a level >100, but stats had to be recalculated manually.

        Reply With Quote
          #5    
        Old October 15th, 2011 (10:02 AM).
        Corvus of the Black Night's Avatar
        Corvus of the Black Night Corvus of the Black Night is offline
        Wild Duck Pokémon
        • Gold Tier
        • Gold Tier
         
        Join Date: Feb 2009
        Location: With the Birds
        Age: 24
        Gender: Other
        Nature: Impish
        Posts: 3,429
        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.
        Reply With Quote
          #6    
        Old October 15th, 2011 (11:14 AM).
        niven's Avatar
        niven niven is offline
        Leader of Team LegendaryTrio
           
          Join Date: Jul 2011
          Location: Where I'm sittin'
          Age: 19
          Gender: Male
          Nature: Brave
          Posts: 109
          @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.
          __________________
          Leader of Team LegendaryTrio


          ____________________________________________________________________

          "We cannot do everything for
          Africa, but doing nothing is not
          an option" - Lee H. Hamilton
          Reply With Quote
            #7    
          Old October 15th, 2011 (11:17 AM).
          Corvus of the Black Night's Avatar
          Corvus of the Black Night Corvus of the Black Night is offline
          Wild Duck Pokémon
          • Gold Tier
          • Gold Tier
           
          Join Date: Feb 2009
          Location: With the Birds
          Age: 24
          Gender: Other
          Nature: Impish
          Posts: 3,429
          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.
          Reply With Quote
            #8    
          Old October 15th, 2011 (11:23 AM).
          niven's Avatar
          niven niven is offline
          Leader of Team LegendaryTrio
             
            Join Date: Jul 2011
            Location: Where I'm sittin'
            Age: 19
            Gender: Male
            Nature: Brave
            Posts: 109
            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.
            __________________
            Leader of Team LegendaryTrio


            ____________________________________________________________________

            "We cannot do everything for
            Africa, but doing nothing is not
            an option" - Lee H. Hamilton
            Reply With Quote
              #9    
            Old October 15th, 2011 (12:46 PM).
            The Author's Avatar
            The Author The Author is offline
            The Hero of Knothole Glade
               
              Join Date: Sep 2011
              Location: Knothole Glade
              Age: 19
              Gender: Male
              Nature: Quiet
              Posts: 381
              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.
              __________________
              The Disciple
              The Poet
              The Leader
              The Musician
              The Transcendentalist

              The Author
              The Philosopher
              The Architect
              The Psychologist
              The Artist
              Reply With Quote
                #10    
              Old October 15th, 2011 (2:26 PM).
              Mr.Pkmn's Avatar
              Mr.Pkmn Mr.Pkmn is offline
              Ordinary ASM Magician
                 
                Join Date: May 2008
                Posts: 50
                Quote:
                Originally Posted by niven View Post
                @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.

                Quote:
                Originally Posted by Corvidae View Post
                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.

                Quote:
                Originally Posted by Corvidae View Post
                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.
                Reply With Quote
                  #11    
                Old October 15th, 2011 (10:31 PM).
                Satoshi Ookami's Avatar
                Satoshi Ookami Satoshi Ookami is offline
                Memento Mori
                • Gold Tier
                 
                Join Date: Jul 2008
                Location: Abyss of Time, Great Seal
                Age: 25
                Gender: Male
                Nature: Calm
                Posts: 14,497
                Quote:
                Originally Posted by Corvidae View Post
                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.
                __________________
                ROM hacking FAQ - Read before asking how to play a hack.

                Anime List | PSN Trophy List
                Reply With Quote
                  #12    
                Old October 15th, 2011 (11:11 PM).
                blakfyr999's Avatar
                blakfyr999 blakfyr999 is offline
                PWNGE Trainer
                   
                  Join Date: Oct 2011
                  Location: Indianapolis/The Moon
                  Age: 23
                  Gender: Male
                  Nature: Bold
                  Posts: 15
                  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
                  Reply With Quote
                    #13    
                  Old October 16th, 2011 (1:11 AM).
                  Missingyep Missingyep is offline
                     
                    Join Date: Jul 2010
                    Posts: 275
                    Quote:
                    Originally Posted by blakfyr999 View Post
                    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.

                    Quote:
                    Originally Posted by agentgeo View Post
                    Well, after a little hex editing, I changed a trainer's pokemon to level 101, and this was the result:



                    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?
                    Reply With Quote
                      #14    
                    Old October 16th, 2011 (5:04 AM).
                    niven's Avatar
                    niven niven is offline
                    Leader of Team LegendaryTrio
                       
                      Join Date: Jul 2011
                      Location: Where I'm sittin'
                      Age: 19
                      Gender: Male
                      Nature: Brave
                      Posts: 109
                      @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?
                      __________________
                      Leader of Team LegendaryTrio


                      ____________________________________________________________________

                      "We cannot do everything for
                      Africa, but doing nothing is not
                      an option" - Lee H. Hamilton
                      Reply With Quote
                        #15    
                      Old October 16th, 2011 (12:57 PM).
                      Missingyep Missingyep is offline
                         
                        Join Date: Jul 2010
                        Posts: 275
                        Quote:
                        Originally Posted by niven View Post
                        @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.
                        Reply With Quote
                          #16    
                        Old October 16th, 2011 (11:28 PM). Edited October 16th, 2011 by Jambo51.
                        Jambo51's Avatar
                        Jambo51 Jambo51 is offline
                        Glory To Arstotzka
                           
                          Join Date: Jun 2009
                          Gender: Male
                          Nature: Quiet
                          Posts: 732
                          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.
                          __________________
                          Hey guys, please check out my recreations of the gen 1 and 2 music on my custom engine at my SoundCloud! - Here!
                          Reply With Quote
                            #17    
                          Old October 23rd, 2011 (6:42 AM).
                          _Garret's Avatar
                          _Garret _Garret is offline
                          Digital Angels Inc.
                             
                            Join Date: Aug 2011
                            Age: 20
                            Nature: Lonely
                            Posts: 7
                            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.
                            Reply With Quote
                              #18    
                            Old February 7th, 2012 (11:33 AM).
                            darkdarkrai's Avatar
                            darkdarkrai darkdarkrai is offline
                            No. 1 World at war fanboy
                               
                              Join Date: Jun 2011
                              Location: Down the street
                              Gender: Male
                              Nature: Jolly
                              Posts: 38
                              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
                              __________________
                              Do NOT friend me on xbox! I have my own private xbox account for me and my (real) friends only. If you want to friend me on Xbox, my other account that I will set up in a couple of months is
                              Called darkdarkrai_97. But I will not be able to join parties, as it
                              is a free one!

                              I support



                              Reply With Quote
                                #19    
                              Old February 7th, 2012 (8:17 PM).
                              droomph's Avatar
                              droomph droomph is offline
                              weeb
                              • Crystal Tier
                               
                              Join Date: Sep 2011
                              Location: nowhere spectacular
                              Age: 20
                              Gender: Male
                              Nature: Impish
                              Posts: 4,291
                              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.
                              __________________
                              did u no there r 21 letters in the alphabet
                              o i forgot 5
                              uraqt


                              Reply With Quote
                                #20    
                              Old February 7th, 2012 (11:12 PM).
                              Capn Nemo Capn Nemo is offline
                                 
                                Join Date: Mar 2011
                                Posts: 1
                                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.
                                Reply With Quote
                                  #21    
                                Old February 27th, 2012 (9:07 AM).
                                robosllim's Avatar
                                robosllim robosllim is offline
                                   
                                  Join Date: Jan 2012
                                  Gender: Male
                                  Posts: 13
                                  I just found this thread and think the idea is interesting. I'd like to try to figure out how to raise the cap in a hack I'm helping with.

                                  From what I understand, there are four main things that need to be changed:

                                  First, the experience tables needed to be expanded and filled in up to 150 or 200 or 255 or whatever. Does anyone know where these tables are?

                                  Second, something needs to be done with stat growth. Jambo51 mentioned a stat encrypter/decrypter which I still need to learn about.

                                  Third, there's the checksum. How does that work? Does this just mean that changing values in memory on the fly will break the game? Will it work out alright as long as the level values are hardcoded in the ROM?

                                  Fourth, which might actually just be part of the first step, Pokemon need to be allowed to level up past level 100. I'm obviously still learning about all this, but it would seem that a Pokemon stops growing either when it hits its level 100 experience total (the last value in its growth table) or once it hits the "max level" value stored in the ROM somewhere. It might be both, since a Pokemon can level up with a Rare Candy ("set this Pokemon's experience total to level+1, unless at end of table") or through regular experience gain ("increase this Pokemon's experience by X unless EXP equals max").

                                  Any thoughts? In the meantime, I guess I'll check out HackMew's engine thread.
                                  Reply With Quote
                                    #22    
                                  Old May 12th, 2012 (11:47 PM).
                                  buggy131313 buggy131313 is offline
                                     
                                    Join Date: May 2012
                                    Posts: 2
                                    I highly recommend not going over level 200 or so. You'd have to use something like the enhanced debug versions of VBA and find out what accesses the level. Sadly, you'd need to do this for every part of the game. This may or may not be feasible. It's also possible to use a program like IDA or a plain disassembler to find this information.

                                    It makes more sense to not bother, and just directly modify the stats in RAM instead of modifying a bunch of machine code and lists. It's no harder than making a prewired Gameshark/Action Replay code. You just put a hook ('asm detour') to your code that checks to see if some value is correct ('Is this the right trainer') and then modifies the stats based on that and then returns to the original code flow. You have to watch for registers and timing but this isn't too bad so far as ASM hacks go.
                                    Reply With Quote
                                      #23    
                                    Old May 29th, 2012 (8:54 PM).
                                    Renegade's Avatar
                                    Renegade Renegade is offline
                                    Time for real life...
                                       
                                      Join Date: Nov 2011
                                      Location: United States
                                      Gender: Male
                                      Nature: Careful
                                      Posts: 998
                                      I think you can. I'm pretty sure anything in Pokemon can be hacked up to 255.
                                      Reply With Quote
                                        #24    
                                      Old June 10th, 2012 (11:41 AM). Edited June 10th, 2012 by POKEMONMASTER260.
                                      POKEMONMASTER260 POKEMONMASTER260 is offline
                                         
                                        Join Date: Jun 2009
                                        Posts: 139
                                        *sigh* If only things were as easy as they were in the 1st gen... (Hint: Missingno glitch could do this...)
                                        Reply With Quote
                                          #25    
                                        Old July 17th, 2012 (1:24 PM).
                                        RyanE.Johnson RyanE.Johnson is offline
                                           
                                          Join Date: Jul 2012
                                          Gender: Male
                                          Posts: 1
                                          I don't know much of anything to do with hacking but I'm learning. Now that that's out of the way I do see a use for this.

                                          Let's say you're one of the mad people online who say 'Lets put all the Pokemon games into one!" Of course there are probably endless other problems but one problem would be that you've probably maxed out your Pokemon pretty quickly through the story.

                                          Being able to level your Pokemon past 100 would lead to being able to have a longer story while keeping difficulty at a nice level.

                                          Going through the second half of a game fighting only level 100 Pokemon would be boring and stale, plus you couldn't level them up and evolve them seeing as they are already level 100. However, it would probably be extremely hard to catch any of these Pokemon due to extremely high level.
                                          Reply With Quote
                                          Reply

                                          Quick Reply

                                          Join the conversation!

                                          Create an account to post a reply in this thread, participate in other discussions, and more!

                                          Create a PokéCommunity Account

                                          Sponsored Links
                                          Thread Tools

                                          Posting Rules
                                          You may not post new threads
                                          You may not post replies
                                          You may not post attachments
                                          You may not edit your posts

                                          BB code is On
                                          Smilies are On
                                          [IMG] code is On
                                          HTML code is Off

                                          Forum Jump


                                          All times are GMT -8. The time now is 7:46 AM.