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
  #601    
Old October 12th, 2014 (1:43 AM). Edited October 12th, 2014 by Kenny1.
Kenny1's Avatar
Kenny1 Kenny1 is offline
On a break from Rom hacking, to improve other skills.
     
    Join Date: Nov 2013
    Gender: Male
    Posts: 86
    I'm not completely sure if this is known already,I haven't seen it, only for FireRed, But I think I found the table for Emerald which points to the ASM for the script commands. I'm not completely certain, but I think it is this: 081DB67C
    Could you guys, who are better at hacking Emerald verify this?
    Or tell me that it has already been found so that I can delete this post.
    __________________
    I'm no longer active here, I check back every now and then to see what happens, but that's it. I no longer hack either.
    Reply With Quote

    Relevant Advertising!

      #602    
    Old October 12th, 2014 (3:15 AM). Edited November 2nd, 2014 by Spherical Ice.
    Spherical Ice's Avatar
    Spherical Ice Spherical Ice is online now
    • Crystal Tier
     
    Join Date: Nov 2007
    Location: Bristol, UK
    Age: 19
    Posts: 5,222
    trainerbattle 0x2 is not the same as trainerbattle 0x1, unlike what I've seen posted in some places. 0x2 will continue the script after the battle but also with encounter music, whereas 0x1 does not play any encounter music.
    __________________

    A Pokemon that is discriminated!
    Support squirtle and make it everyone's favourite.
    Reply With Quote
      #603    
    Old October 12th, 2014 (3:59 AM).
    Touched's Avatar
    Touched Touched is offline
    Resident ASMAGICIAN
       
      Join Date: Jul 2014
      Gender: Male
      Posts: 623
      Quote:
      Originally Posted by Kenny1 View Post
      I'm not completely sure if this is known already,I haven't seen it, only for FireRed, But I think I found the table for Emerald which points to the ASM for the specials. I'm not completely certain, but I think it is this: 081DB67C
      Could you guys, who are better at hacking Emerald verify this?
      Or tell me that it has already been found so that I can delete this post.

      Edit: Yeah This might already be known, please someone tell me.
      The script command table is at 081DB67C, not the specials. The special table is actually located at 081DBA64.
      Reply With Quote
        #604    
      Old October 12th, 2014 (6:32 AM).
      Kenny1's Avatar
      Kenny1 Kenny1 is offline
      On a break from Rom hacking, to improve other skills.
         
        Join Date: Nov 2013
        Gender: Male
        Posts: 86
        Quote:
        Originally Posted by Touched View Post
        The script command table is at 081DB67C, not the specials. The special table is actually located at 081DBA64.
        I knew something was strange with my post, I was wondering why. *facepalm*
        __________________
        I'm no longer active here, I check back every now and then to see what happens, but that's it. I no longer hack either.
        Reply With Quote
          #605    
        Old October 12th, 2014 (4:13 PM).
        Danny0317's Avatar
        Danny0317 Danny0317 is offline
        Fluorite's back, brah
        • Gold Tier
         
        Join Date: Jun 2013
        Location: Miami, FL
        Age: 17
        Gender: Male
        Nature: Hasty
        Posts: 1,075
        I was messing around trying to find behavior byte scripts, and found this. Anyone know where it's used?

        '---------------
        #org 0x271CB7
        lockall
        checksound
        additem 0x8005 0x1
        copyvar 0x8007 LASTRESULT
        bufferitems2 0x1 0x8005 0x1
        checkitemtype 0x8005
        call 0x8271B08
        compare 0x8007 0x1
        if 0x1 goto 0x8271CE8
        compare 0x8007 0x0
        if 0x1 goto 0x8271D47
        end

        '---------------
        #org 0x271B08
        copyvar 0x8000 LASTRESULT
        compare 0x8000 0x1
        if 0x1 goto 0x8271B45
        compare 0x8000 0x5
        if 0x1 goto 0x8271B55
        compare 0x8000 0x2
        if 0x1 goto 0x8271B65
        compare 0x8000 0x3
        if 0x1 goto 0x8271B75
        compare 0x8000 0x4
        if 0x1 goto 0x8271B85
        end

        '---------------
        #org 0x271CE8
        copyvar 0x8008 0x8004
        copyvar 0x8004 0x8005
        special2 LASTRESULT 0x19E
        compare LASTRESULT 0x1
        if 0x1 goto 0x8271D0E
        compare LASTRESULT 0x0
        if 0x1 goto 0x8271D1F
        end

        '---------------
        #org 0x271D47
        msgbox 0x8272ABF MSG_KEEPOPEN '"[player] found one [buffer2]!"
        msgbox 0x8272AD0 MSG_KEEPOPEN '"Too bad!\nThe bag is full[.]"
        setvar LASTRESULT 0x0
        releaseall
        end

        '---------------
        #org 0x271B45
        bufferstd 0x2 0xE
        compare 0x8007 0x1
        if 0x1 call 0x8271BAF
        return

        '---------------
        #org 0x271B55
        bufferstd 0x2 0xF
        compare 0x8007 0x1
        if 0x1 call 0x8271BAF
        return

        '---------------
        #org 0x271B65
        bufferstd 0x2 0x10
        compare 0x8007 0x1
        if 0x1 call 0x8271BAF
        return

        '---------------
        #org 0x271B75
        bufferstd 0x2 0x11
        compare 0x8007 0x1
        if 0x1 call 0x8271BB3
        return

        '---------------
        #org 0x271B85
        bufferstd 0x2 0x12
        compare 0x8007 0x1
        if 0x1 call 0x8271BAF
        return

        '---------------
        #org 0x271D0E
        bufferitems2 0x0 0x8004 0x1
        preparemsg 0x82731A9 '"[player] found one [buffer1]\n[buf..."
        goto 0x8271D2A

        '---------------
        #org 0x271D1F
        preparemsg 0x8272ABF '"[player] found one [buffer2]!"
        goto 0x8271D2A

        '---------------
        #org 0x271BAF
        fanfare 0x172
        return

        '---------------
        #org 0x271BB3
        fanfare 0x174
        return

        '---------------
        #org 0x271D2A
        waitmsg
        waitfanfare
        bufferitems2 0x1 0x8004 0x1
        copyvar 0x8004 0x8008
        msgbox 0x8272A9A MSG_KEEPOPEN '"[player] put away the [buffer2]\ni..."
        special 0x158
        special 0x99
        releaseall
        end


        '---------
        ' Strings
        '---------
        #org 0x272ABF
        = [player] found one [buffer2]!

        #org 0x272AD0
        = Too bad!\nThe bag is full[.]

        #org 0x2731A9
        = [player] found one [buffer1]\n[buffer2]!

        #org 0x272A9A
        = [player] put away the [buffer2]\nin the [buffer3] Pocket.
        __________________
        Reply With Quote
          #606    
        Old October 19th, 2014 (7:20 PM).
        Danny0317's Avatar
        Danny0317 Danny0317 is offline
        Fluorite's back, brah
        • Gold Tier
         
        Join Date: Jun 2013
        Location: Miami, FL
        Age: 17
        Gender: Male
        Nature: Hasty
        Posts: 1,075
        So, I was messing around the behavior byte scripts, yet again, and found these things that may be useful.. EM btw

        290B0F dive script
        290A49 waterfall script
        271EA0 surf
        23B684 weird behavior byte script
        2C8393 timer script?
        27381B questionare
        272604 useless blueprint
        2725F2 useless empty garbage can
        2725E9 expensive vase
        292DE5 instructions for running shoes
        27208F player sees region map
        26A22A trick master door
        2A4BAC pokeblock feeder
        2393F9 "the door is locked"
        1E615D oddly, the same thing as ^
        271D92 Pokemon center PC
        27EE0B player's tv
        290B5A dive (while you're under)
        2A8337 player hides, and warpholes
        252BE8 very complicated script
        2736BC player whites out script
        291FC0 egg is hatching/ "Huh?"
        1DF7BA wally calls you and you register him
        21307B roxanne calls you
        224175 rival calls you to talk about rayquaza
        __________________
        Reply With Quote
          #607    
        Old October 21st, 2014 (8:00 PM).
        Full Metal's Avatar
        Full Metal Full Metal is offline
        C(++) Developer.
        • Silver Tier
         
        Join Date: Jan 2008
        Location: In my mind.
        Age: 22
        Gender: Male
        Nature: Timid
        Posts: 806
        [Here] is a packet dump of downloading the mystery gift special Pumpkaboo ( which by the way you can still get if you want it ).

        See [thread] for context. I believe my 3DS no longer had the same IP as it did in the other capture.
        __________________

        ★ full metal.

        I like to push it,
        and push it,
        until my luck is over.
        Reply With Quote
          #608    
        Old October 25th, 2014 (10:33 AM).
        Danny0317's Avatar
        Danny0317 Danny0317 is offline
        Fluorite's back, brah
        • Gold Tier
         
        Join Date: Jun 2013
        Location: Miami, FL
        Age: 17
        Gender: Male
        Nature: Hasty
        Posts: 1,075
        So, as I was playing my hack, I saw this, which I had no clue happened.

        https://www.youtube.com/watch?v=-anF9453beU&feature=youtu.be&t=42s

        I'm going to try to find the script, and when I talked to the Oran berry while transforming, I got this.



        Now, I had no idea that happened, but I think it'll be pretty cool to find it.

        So, apperantly, that is called from this:

        special 0x2C
        copyvar 0x8000 0x8004
        compare 0x8000 0xFF
        if 0x1 goto 0x827434F

        and at 0x827434F, there is:

        #org 0x27434F
        lockall
        preparemsg 0x8274744 '"!"
        waitmsg
        waitkeypress
        releaseall
        end
        __________________
        Reply With Quote
          #609    
        Old October 25th, 2014 (8:49 PM).
        Shiny Quagsire's Avatar
        Shiny Quagsire Shiny Quagsire is offline
        I'm Still Alive, Elsewhere
           
          Join Date: May 2009
          Location: Hoenn Safari Zone
          Age: 19
          Gender: Male
          Nature: Jolly
          Posts: 700
          Quote:
          Originally Posted by Dark Sneasel View Post
          So, as I was playing my hack, I saw this, which I had no clue happened.

          https://www.youtube.com/watch?v=-anF9453beU&feature=youtu.be&t=42s

          I'm going to try to find the script, and when I talked to the Oran berry while transforming, I got this.



          Now, I had no idea that happened, but I think it'll be pretty cool to find it.
          I've actually seen this happen before once while I played my actual cartridge. It was pretty cool to see. Interesting to know that particular special, because it might give some insight on berry stuffs for the future or whatever.
          __________________



          Reply With Quote
            #610    
          Old November 11th, 2014 (12:15 PM). Edited November 12th, 2014 by Chacha Dinosaur.
          Chacha Dinosaur's Avatar
          Chacha Dinosaur Chacha Dinosaur is offline
          Adamant and adaptive dinosaur.
             
            Join Date: Jul 2013
            Age: 22
            Gender: Male
            Posts: 455
            The critical hit table is located at x250530 for FireRed and x31c128 for Emerald. Place the bytes 10 00 08 00 02 00 01 00 01 00 at the respective locations to update the table to Generation 6 mechanics.

            I also might search the bytes for focus energy and high-critical hit ratio moves too and update this too.
            EDIT: I checked the routines in FR,EM and Ruby ROMs. And in all of them, focus energy gives +2 crit level and high crit moves give +1 crit level which is up to gen vi standards. I also tested focus+scope lens combo (always getting crits) and high crit move+scope lens combo (not always giving critical but high chance). So i think no further byte change is required if the two tests pass which it did while i was testing in fire red.
            Reply With Quote
              #611    
            Old November 11th, 2014 (5:20 PM).
            destinedjagold's Avatar
            destinedjagold destinedjagold is offline
            Oh Hai Thar~
            • Silver Tier
             
            Join Date: May 2007
            Location: Philippines
            Age: 26
            Gender: Male
            Nature: Careful
            Posts: 8,550
            ^ Adding to KDS's post, the critical hit table for Ruby is located at x1FAB50.
            Though I haven't tested it yet.
            __________________


            FC: 0061-1111-6462
            TSV: 1364(X), 0790(OR)

            Reply With Quote
              #612    
            Old November 11th, 2014 (6:59 PM).
            Aruaruu Aruaruu is offline
               
              Join Date: Sep 2011
              Gender: Male
              Posts: 199
              Quote:
              Originally Posted by KDS View Post
              The critical hit table is located at x250530 for FireRed and x31c128 for Emerald. Place the bytes 10 00 08 00 02 00 01 00 01 00 at the respective locations to update the table to Generation 6 mechanics.
              I am assuming this changes both the rate of crits AND the damage multiplier? Not just one or the other?

              Quote:
              I also might search the bytes for focus energy and high-critical hit ratio moves too and update this too.
              Please do!
              Reply With Quote
                #613    
              Old November 11th, 2014 (8:34 PM). Edited November 12th, 2014 by Chacha Dinosaur.
              Chacha Dinosaur's Avatar
              Chacha Dinosaur Chacha Dinosaur is offline
              Adamant and adaptive dinosaur.
                 
                Join Date: Jul 2013
                Age: 22
                Gender: Male
                Posts: 455
                Quote:
                Originally Posted by Aruaruu View Post
                I am assuming this changes both the rate of crits AND the damage multiplier? Not just one or the other?
                This only changes the rate as per the table mentioned in bulbapedia. Not the multiplier to 1.5.

                Quote:
                Originally Posted by Aruaruu View Post
                Please do!
                See the original post again.
                Reply With Quote
                  #614    
                Old November 14th, 2014 (6:12 AM). Edited November 14th, 2014 by FBI.
                FBI's Avatar
                FBI FBI is offline
                Free supporter
                • Silver Tier
                 
                Join Date: Jan 2013
                Location: Unknown Island
                Gender: Male
                Posts: 1,770
                So I'm a little stuck. I've been working to try and get something to pop up on the bottom right menu. Which is this one

                Normally the blue text HM move shows up if the Pokemon has learned the move. However, I'm having a hard time checking where it starts to do this. Some offsets which I have discovered:
                081245A4 is a function used by the menu to determine what these HM options do. This part is executed once you've selected, say "FLY" for example and press "a" on it.

                08122BD4 is where the Pokemon menu seems to be generated. Unfortunately, it's a very complex functions (the whole menu thing is) and from there the subroutines are not easy to figure out.
                though I didn't find anything that seems to check Pokemon moves.

                08121E5E: The menu seems to be already generated by now. Just assigning options to functions here (I think).
                All of a sudden after some generating of Pokemon menu, we have the graphics of the bottom right menu!
                08121F00: Bottom right menu generation (graphical?) starts
                08121F04-08121F10: Looks like it's generating graphics box styles and sizes
                08121F12: Opens a different menu depending on when the menu is opened i.e battle vs outside?? (very maybe)

                As you can see I'm pretty torn between what direction I should go. Quite obviously they're going to be drawing the boxes and implementing text speed AFTER the menu options are confirmed so I don't think there's meaning to look past 08121F00. At 08122BD4 I can't seem to find the HM check. I've tried to go further back than 08122BD4 but that seems to be too far back, as there it starts generating pokemon menu :P

                Anyone wanna throw me a bone? Oh here are a few things some people may find useful:

                0812461C: seems to be where the badge is checked if using HM move from the menu
                You want to change to bytes at 08124630's beq to just a b to remove the badge check..alternatively you can change the badge check to your own check by branching somewhere else at 08124626.
                __________________
                ...
                Reply With Quote
                  #615    
                Old November 14th, 2014 (7:42 AM). Edited November 15th, 2014 by Chacha Dinosaur.
                Chacha Dinosaur's Avatar
                Chacha Dinosaur Chacha Dinosaur is offline
                Adamant and adaptive dinosaur.
                   
                  Join Date: Jul 2013
                  Age: 22
                  Gender: Male
                  Posts: 455
                  I found the way to emulate the critical-hit nerf (2x to 1.5x) in Gen III.
                  This just hijacks the way of manipulating the critical hit damage using the critical hit marker.

                  UDPATE: CORRECTED(Thanks to Aruaruu for finding the flaw)

                  For Fire Red:
                  Spoiler:

                  Insert this first mini-routine somewhere in free space

                  Code:
                  .text
                  .align 2
                  .thumb
                  .thumb_func
                  
                  ldr r4, damage
                  ldr r1, crit
                  ldrb r1, [r1, #0x0]
                  add r1, r1, #0x1
                  mul r1, r0
                  lsr r1, r1, #0x1
                  ldr r3, return
                  bx r3
                  
                  .align 2
                  damage: .word 0x02023D50
                  crit: .word 0x02023D71
                  return: .word 0x0801E5ED
                  At x1E5E4 place 00 4B 18 47 XX+1 XX XX 08
                  ---
                  Then, insert this second routine

                  Code:
                  .text
                  .align 2
                  .thumb
                  .thumb_func
                  
                  mov r1, #0x0
                  strh r1, [r6, #0x0]
                  ldr r1, crit
                  ldrb r1, [r1, #0x0]
                  add r1, r1, #0x1
                  mul r1, r0
                  lsr r1, r1, #0x1
                  ldr r3, return
                  bx r3
                  
                  .align 2
                  crit: .word 0x02023D71
                  return: .word 0x0801E6E5
                  At x1E6DC: 00 4B 18 47 YY+1 YY YY 08 00 00


                  For Emerald:
                  Spoiler:

                  Insert this first mini-routine somewhere in free space

                  Code:
                  .text
                  .align 2
                  .thumb
                  .thumb_func
                  
                  ldr r4, damage
                  ldr r1, crit
                  ldrb r1, [r1, #0x0]
                  add r1, r1, #0x1
                  mul r1, r0
                  lsr r1, r1, #0x1
                  ldr r3, return
                  bx r3
                  
                  .align 2
                  damage: .word 0x020241F0
                  crit: .word 0x02024211
                  return: .word 0x08046DDD
                  At x46DD4 place 00 4B 18 47 XX+1 XX XX 08
                  ---
                  Then, insert this second routine

                  Code:
                  .text
                  .align 2
                  .thumb
                  .thumb_func
                  
                  mov r1, #0x0
                  strh r1, [r6, #0x0]
                  ldr r1, crit
                  ldrb r1, [r1, #0x0]
                  add r1, r1, #0x1
                  mul r1, r0
                  lsr r1, r1, #0x1
                  ldr r3, return
                  bx r3
                  
                  .align 2
                  crit: .word 0x02024211
                  return: .word 0x08046ED5
                  At x46ECC: 00 4B 18 47 Y+1 YY YY 08 00 00
                  Reply With Quote
                    #616    
                  Old November 14th, 2014 (10:46 AM). Edited November 14th, 2014 by Aruaruu.
                  Aruaruu Aruaruu is offline
                     
                    Join Date: Sep 2011
                    Gender: Male
                    Posts: 199
                    Quote:
                    Originally Posted by KDS View Post
                    -snip-
                    Oh wow. Thanks for this. I will test it out with Emerald some time.
                    Got a question. About the byte changes you posted before.
                    Lets say I wanted to have the Gen VI Crit chance, but with the Gen 3 Class Stages.

                    e.g
                    Spoiler:
                    Stage 0 - 1/16 chance
                    Stage 1 - 1/8 chance
                    Stage 2 - 1/2 chance
                    Stage 3+ - Certain
                    and
                    High crit ratio moves - Stage 2
                    Scope Lens - Stage 1
                    Farfetch'd Stick/Chansey Lucky Punch - Stage 2
                    Focus Energy - Stage 1
                    Lansat Berry - Stage 2


                    Would it be possible to do that by altering those bytes?
                    Reply With Quote
                      #617    
                    Old November 14th, 2014 (7:09 PM).
                    DoesntKnowHowToPlay's Avatar
                    DoesntKnowHowToPlay DoesntKnowHowToPlay is offline
                    Tiny Umbrella with Lots and Lots of Good
                       
                      Join Date: Jan 2012
                      Posts: 258
                      Supposedly someone else documented this, but I couldn't find it in the thread index so I'm posting it again.

                      FR's Vs. Seeker table is at x45318C. Each entry is 16 (0x10) bytes, as follows:

                      0x0: half-word, denotes the trainer's ID in the first fight with them
                      0x2: up to five half-words denoting rematch IDs. FFFF is used as filler if more is coming, 0000 to terminate early.
                      0xC: half-word, seems to always be 3.
                      0xE: half-word, ranges from x15 to x41. Never seemed to be read in my tests. Appears to scale with trainer's levels in the base game (and by extension position).

                      The table has xDD entries and no terminator; the (a?) limiter is at x10d09c.
                      __________________

                      Yet Another Fire Red Hack

                      Physical/Special Split
                      Reply With Quote
                        #618    
                      Old November 14th, 2014 (9:16 PM).
                      Chacha Dinosaur's Avatar
                      Chacha Dinosaur Chacha Dinosaur is offline
                      Adamant and adaptive dinosaur.
                         
                        Join Date: Jul 2013
                        Age: 22
                        Gender: Male
                        Posts: 455
                        Quote:
                        Originally Posted by Aruaruu View Post
                        Oh wow. Thanks for this. I will test it out with Emerald some time.
                        Got a question. About the byte changes you posted before.
                        Lets say I wanted to have the Gen VI Crit chance, but with the Gen 3 Class Stages.

                        e.g
                        Spoiler:
                        Stage 0 - 1/16 chance
                        Stage 1 - 1/8 chance
                        Stage 2 - 1/2 chance
                        Stage 3+ - Certain
                        and
                        High crit ratio moves - Stage 2
                        Scope Lens - Stage 1
                        Farfetch'd Stick/Chansey Lucky Punch - Stage 2
                        Focus Energy - Stage 1
                        Lansat Berry - Stage 2


                        Would it be possible to do that by altering those bytes?
                        It is possible. I already found the specific checks for each crit boosting element that you have mentioned except the lansat berry.
                        Reply With Quote
                          #619    
                        Old November 14th, 2014 (10:15 PM). Edited November 14th, 2014 by Aruaruu.
                        Aruaruu Aruaruu is offline
                           
                          Join Date: Sep 2011
                          Gender: Male
                          Posts: 199
                          Quote:
                          Originally Posted by KDS View Post
                          It is possible. I already found the specific checks for each crit boosting element that you have mentioned except the lansat berry.
                          Great! I will play around with it then.

                          ..and I also tested your Crit damage nerf ASM for Emerald. It appears to lock button input when the Fight/Bag/Pkmn/Run commands come up during a trainer battle. Wild battles don't cause this though. I tried removing the byte changes you posted before and it didn't make any difference.
                          I still need to try it on a clean rom though.
                          Clean rom produces same result.
                          Reply With Quote
                            #620    
                          Old November 15th, 2014 (4:28 AM).
                          Chacha Dinosaur's Avatar
                          Chacha Dinosaur Chacha Dinosaur is offline
                          Adamant and adaptive dinosaur.
                             
                            Join Date: Jul 2013
                            Age: 22
                            Gender: Male
                            Posts: 455
                            Quote:
                            Originally Posted by Aruaruu View Post
                            Great! I will play around with it then.

                            ..and I also tested your Crit damage nerf ASM for Emerald. It appears to lock button input when the Fight/Bag/Pkmn/Run commands come up during a trainer battle. Wild battles don't cause this though. I tried removing the byte changes you posted before and it didn't make any difference.
                            I still need to try it on a clean rom though.
                            Clean rom produces same result.


                            Well, the problem was in the second routine which was stupidity of erroneous branching in my part, the first one was working properly. Now, it is fixed in the OP :D.
                            Reply With Quote
                              #621    
                            Old November 25th, 2014 (9:19 PM).
                            Shiny Quagsire's Avatar
                            Shiny Quagsire Shiny Quagsire is offline
                            I'm Still Alive, Elsewhere
                               
                              Join Date: May 2009
                              Location: Hoenn Safari Zone
                              Age: 19
                              Gender: Male
                              Nature: Jolly
                              Posts: 700
                              If you are looking to be able to catch other trainer's pokemon (either via cheat code or custom ASM balls), disable the BL at 08040B36 by overwriting it with 00 00 00 00. What this does is it will prevent the caught pokemon's ID from being overwritten with the player's ID, thus making the data section get properly unencrypted and the checksum made valid. And, as a bonus, this has no adverse effect on normally caught wild pokemon, since the wild pokemon are pre-generated with the player's ID and thus don't need the trainer ID set. If you wanted to take this a step further and properly set your ID, you could branch into a custom ASM routine, decrypt the data section, set the ID to your ID, and then re-encrypt it with the new ID properly set. In it's current state however, it will act as if it were a traded Pokemon and might not listen 100% of the time.

                              Thanks to FIQ for allowing me to figure this out, I've always wondered why this happened. If anyone wants to make a proper cheat code or something you can use these byte modifications:
                              Code:
                              [21:14] < FBI> 0802D496: E0 E0 @disable trainer blocking
                              [21:14] < FBI> 08040B36: 00 00 00 00 00 @disable trainer ID overwrite
                              __________________



                              Reply With Quote
                                #622    
                              Old November 28th, 2014 (6:47 PM).
                              Lance32497's Avatar
                              Lance32497 Lance32497 is offline
                              LanceKoijer of Pokemon_Addicts
                                 
                                Join Date: Aug 2014
                                Location: Criscanto town-Ginoa Region xD
                                Gender: Male
                                Nature: Adamant
                                Posts: 793
                                Quote:
                                Originally Posted by MrDollSteak View Post
                                I've just got some very quick offsets for Pokedex hacking.

                                I'm not sure whether it's already been posted, I don't think so, as I had to discover these on my own.

                                I've found 2 limiters for the Kantodex that are quite useful, which when combined with Jambo51's already posted offsets, can allow for the Kantodex to act as a national dex.

                                Even though Jambo already found the limiter for the Kantodex itself, it would still not display the correct seen/caught numbers as they were still limited to 150 as were the habitats.

                                By changing the number 96 at the offset: 104BF2
                                You can extend the limit to the seen/caught text. Eg. changing 96 to FA will allow for a max of 250 seen/caught Pokemon.

                                By changing the number 97 at the offset: 106828
                                You can extend the number of Pokemon that will be correctly featured in the habitat pages. Eg. changing 97 to FA will allow for the first 250 Pokemon in your pokedex to be displayed in the habitat pages before receiving the national dex.

                                This can be helpful as it stops people from having to give the national dex at the start of the game.

                                I'll just repost Jambo's limiters from his thread here

                                0x10352C - mov r1, #0x97
                                0x1035F6 - cmp r0, #0x96

                                Just change those 2 bytes at that offset to the number of Pokemon you want in.
                                how about if I want it 300 or 12C in hex...
                                What would I change?
                                Reply With Quote
                                  #623    
                                Old November 28th, 2014 (11:00 PM).
                                HidoranBlaze's Avatar
                                HidoranBlaze HidoranBlaze is offline
                                   
                                  Join Date: Apr 2013
                                  Age: 21
                                  Gender: Male
                                  Posts: 253
                                  Quote:
                                  Originally Posted by Lance32497 View Post
                                  how about if I want it 300 or 12C in hex...
                                  What would I change?
                                  cmp rX, #0xYY will only work if YY is a byte. You're limited to 255 Pokemon in that sense. If you want more, you'll have to modify the routine so that it loads a halfword and compares against that.
                                  Reply With Quote
                                    #624    
                                  Old December 7th, 2014 (7:53 AM). Edited December 9th, 2014 by Danny0317.
                                  Danny0317's Avatar
                                  Danny0317 Danny0317 is offline
                                  Fluorite's back, brah
                                  • Gold Tier
                                   
                                  Join Date: Jun 2013
                                  Location: Miami, FL
                                  Age: 17
                                  Gender: Male
                                  Nature: Hasty
                                  Posts: 1,075
                                  So, I was messing around with spriteface2, which doesn't seem to be very documented (at least not in Spherical Ice's online thing), and I got this (tested in EM, btw):

                                  Spriteface 2 documentation
                                  0 - face down
                                  1 - face down
                                  2 - face up
                                  3 - face left
                                  4 - face right
                                  5 - face down
                                  6 - face down
                                  7 - face up
                                  8 - face up
                                  9 - run nonstop facing down
                                  10- run nonstop facing down
                                  11- run nonstop facing up
                                  12- run nonstop facing left
                                  13- run nonstop facing right
                                  14- run nonstop facing down
                                  15- run nonstop facing down
                                  16- run nonstop facing up
                                  17- run nonstop facing up
                                  18- run nonstop facing down faster
                                  19- run nonstop facing down faster
                                  20- run nonstop facing up faster
                                  21- run nonstop facing left faster
                                  22- run nonstop facing right faster
                                  23- run nonstop facing down faster
                                  28- run nonstop facing down very fast
                                  29- run nonstop facing up very fast
                                  30- run nonstop facing left very fast
                                  30- run nonstop facing right very fast
                                  46- (only works on creatsprite of player) runs in place facing down
                                  47- (only works on creatsprite of player) runs in place facing up
                                  48- (only works on creatsprite of player) runs in place facing left
                                  49- (only works on creatsprite of player) runs in place facing right

                                  To use it, first you must use createsprite then spriteface2.
                                  __________________
                                  Reply With Quote
                                    #625    
                                  Old December 10th, 2014 (4:57 PM).
                                  DoesntKnowHowToPlay's Avatar
                                  DoesntKnowHowToPlay DoesntKnowHowToPlay is offline
                                  Tiny Umbrella with Lots and Lots of Good
                                     
                                    Join Date: Jan 2012
                                    Posts: 258
                                    In-game trades in FR are at 0x26CF8C. The scripts relating to them store very little information, and just index into this table. Each entry is 0x3C bytes, used as such:

                                    0x0 - Nickname, limited to ten characters + 0xFF.
                                    0xC - Half-word, ID of the NPC's pokemon.
                                    0xE - IVs, stored in HP/Atk/Def/Speed/SAtk/SDef order. One byte each.
                                    0x14 - An entire word dedicated to the ability bit.
                                    0x18 - NPC's trainer ID. Only the low bits are visible on the status screen.
                                    0x1C - Five bytes; four of them are 5 and one is 0x1E. Not sure what they do if anything.
                                    0x24 - Personality value; influences nature, gender, etc; more info here: http://bulbapedia.bulbagarden.net/wiki/Personality_value
                                    0x28 - Hold item.
                                    0x2A - 0x00 if the mon carries mail (only ZYNX has mail in FR), 0xFF otherwise.
                                    0x2B - Original trainer's name. Limited to seven characters + 0xFF.
                                    0x36 - 0x00 if original trainer is male, 0x01 if original trainer is female. Only visible in RSE.
                                    0x37 - Always 0xA. Not sure what it controls if anything.
                                    0x38 - Half-word, ID of the species the NPC is looking for.
                                    0x3A - Half-word, seems unused.
                                    __________________

                                    Yet Another Fire Red Hack

                                    Physical/Special Split
                                    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 6:13 AM.