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
  #626    
Old December 12th, 2014 (8:36 PM).
RichterSnipes's Avatar
RichterSnipes RichterSnipes is offline
*pew pew pew*
     
    Join Date: Oct 2011
    Location: USA
    Age: 24
    Gender: Male
    Nature: Modest
    Posts: 370
    Quote:
    Originally Posted by DoesntKnowHowToPlay View Post


    XY added a feature that gives experience points when you catch pokemon. To duplicate this in FR, do the following...
    Quote:
    Originally Posted by lsmash View Post
    I combined my work with the one from Doesnt. As a result, there are less bytes to write into freespace.
    So, here's what to do to give exp points when you catch a pokemon...
    I'm aware I'm kind of late to catch this, but I've caught a bug with this code. Everything works correctly, but if a Pokémon can learn a move on level up while it already knows four moves and you enter the move information screen, the captured Pokémon will reappear on screen after exiting the move information screen. It doesn't affect any functionality, but it is a notable occurrence.
    __________________
    My hack:
    Reply With Quote

    Relevant Advertising!

      #627    
    Old December 12th, 2014 (9:21 PM).
    Incineroar's Avatar
    Incineroar Incineroar is offline
    the spirit of the fighter
    • Moderator
    • Platinum Tier
    • Developer
     
    Join Date: May 2009
    Location: Iki Town
    Age: 22
    Gender: Male
    Nature: Brave
    Posts: 13,527
    Quote:
    Originally Posted by Chaos Rush View Post
    0x0806EFD0 = the font used in the START menu.
    00 gives you the smaller font. Any other value doesn't seem to do anything.
    Hate to basically draw this from the dead, but I've been looking at the routines for loading this, and I can't seem to find it. Has anyone been able to also adjust the trainer's name to small text as well as the rest of the menu? It's almost pointless to apply this if not all the text is uniform haha.
    __________________
    Reply With Quote
      #628    
    Old December 13th, 2014 (8:11 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 Team Fail View Post
      Hate to basically draw this from the dead, but I've been looking at the routines for loading this, and I can't seem to find it. Has anyone been able to also adjust the trainer's name to small text as well as the rest of the menu? It's almost pointless to apply this if not all the text is uniform haha.
      My guess with the trainer's name is that it uses one of the text attributes which changes the font, since the text renderer applies all those attributes/colors/etc regardless of where it is. I might edit this post if I happen to find it but that's probably the issue here.
      __________________



      Reply With Quote
        #629    
      Old December 14th, 2014 (1:33 PM).
      Karjam's Avatar
      Karjam Karjam is offline
      AKA KarjamP
         
        Join Date: Dec 2006
        Location: Cape Town, South Africa
        Age: 22
        Gender: Male
        Posts: 25
        Someone on YouTube who goes under the username of "Pokechu22" had discovered a hidden debug function within Pokémon FireRed just by fiddling around with a glitch Pokémon.



        When he shared his discovery on Bulbapedia, someone pointed out that the "backup save memory" mentioned within this hidden debug function was also mentioned in a couple of places within the leaked debug copy of the German version of Pokémon Ruby, leading me realize that this is indeed a function related to debugging the game.

        Who knows? Perhaps there's more hidden debug features within the ROM that we don't know about.
        Reply With Quote
          #630    
        Old December 20th, 2014 (9:08 AM). Edited December 21st, 2014 by Spherical Ice.
        Spherical Ice's Avatar
        Spherical Ice Spherical Ice is offline
        • Crystal Tier
         
        Join Date: Nov 2007
        Location: Bristol, UK
        Age: 19
        Posts: 5,222
        Quote:
        Originally Posted by Chaos Rush View Post
        Here are some offsets for the Pokedex HUD:
        0x451F55 = X position of text list
        0x451F56 = Y position of text list
        0x451F5D = X position of Habitat picture
        0x451F5E = Y position of Habitat picture
        0x451F65 = X position of "Seen:__ Owned:__" box
        0x451F66 = Y position of "Seen:__ Owned:__" box
        0x451F61 = BG Palette number that habitat picture uses
        0x4520C8 = # of list entries on main pokedex page (National Pokedex enabled only)

        Mess around with the bytes at those offsets, allowing you to do stuff like this:
        Expanding on from this, I've found out some more about this area of the ROM (again, for FireRed):

        00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

        00451F50
        00451F60

        00 00 00 00 01 01 02 14 10 00 08 00 01 15 0B 08
        06
        01 48 01 01 15 02 09 09 00 78 01 FB 5E 41 08

        The above controls the size and positioning of various aspects of the Pokédex page, regardless of whether the National Pokédex has been activated or not.

        00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

        00451F60
        00451F70
        00451F80
        00451F90
        00451FA0
        00451FB0
        00451FC0
        00451FD0
        00451FE0
        00451FF0
        00452000
        00452010

        06 01 48 01 01 15 02 09 09 00 7B 01 FB 5E 41 08
        FD FF FF FF
        95 5E 41 08 09 00 00 00 E0 5D 41 08
        FD FF FF FF
        F7 5D 41 08 00 00 00 00 09 5E 41 08
        01 00 00 00
        18 5E 41 08 02 00 00 00 2D 5E 41 08
        03 00 00 00
        39 5E 41 08 04 00 00 00 46 5E 41 08
        05 00 00 00
        57 5E 41 08 06 00 00 00 6D 5E 41 08
        07 00 00 00
        7B 5E 41 08 08 00 00 00 88 5E 41 08
        FD FF FF FF
        A4 5E 41 08 0A 00 00 00 D5 5E 41 08
        0B 00 00 00
        DF 5E 41 08 0C 00 00 00 ED 5E 41 08
        0D 00 00 00
        B0 5E 41 08 FD FF FF FF C7 5E 41 08
        FE FF FF FF
        6C 1F 45 08 C1 2E 10 08 49 2F 10 08
        13 00 09 00 00 00 0C 04 12 30 01 02 FB 5E 41 08

        The above controls the Pokédex prior to the National Pokédex being activated.

        00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

        00452010
        00452020
        00452030
        00452040
        00452050
        00452060
        00452070
        00452080
        00452090
        004520A0
        004520B0
        004520C0
        004520D0

        13 00 09 00 00 00 0C 04 12 30 01 02 FB 5E 41 08
        FD FF FF FF
        95 5E 41 08 09 00 00 00 24 5F 41 08
        0E 00 00 00
        E0 5D 41 08 FD FF FF FF F7 5D 41 08
        00 00 00 00
        09 5E 41 08 01 00 00 00 18 5E 41 08
        02 00 00 00
        2D 5E 41 08 03 00 00 00 39 5E 41 08
        04 00 00 00
        46 5E 41 08 05 00 00 00 57 5E 41 08
        06 00 00 00
        6D 5E 41 08 07 00 00 00 7B 5E 41 08
        08 00 00 00
        88 5E 41 08 FD FF FF FF A4 5E 41 08
        0A 00 00 00
        D5 5E 41 08 0B 00 00 00 DF 5E 41 08
        0C 00 00 00
        ED 5E 41 08 0D 00 00 00 B0 5E 41 08
        FD FF FF FF
        C7 5E 41 08 FE FF FF FF 1C 20 45 08
        C1 2E 10 08 49 2F 10 08 14 00 09 00 00 00 0C 04
        12 30 01 02 02 C8 13 03 C8 8D 00 00 0A 00 D0 07

        The above controls the Pokédex after the National Pokédex is activated using special 0x16F.

        Hover over all of the colored bytes to find out what they do. Co-ordinates are colored in red, while dimensions are in blue. List items are grouped together by yellow highlighting. Pointers are colored magenta, while the list item "functions" are colored in "royal blue". Unformatted bytes are currently unknown.

        Note that Pokémon past 151 do not get loaded with the National Pokédex list "function" (0E 00 00 00) until the special is activated, and it otherwise functions like the Kanto Pokédex list "function" (09 00 00 00).

        It's also worth noting that all of the headers (e.g. 'POKéMON LIST') are just regular strings. To recreate the orange text and dark-orange background in XSE, use this (and replace NAME with whatever you want, obviously):

        Code:
        #org @string1
        = [darknavyblue_fr]\c\h03ÓNAME
        __________________

        A Pokemon that is discriminated!
        Support squirtle and make it everyone's favourite.
        Reply With Quote
          #631    
        Old December 22nd, 2014 (3:37 PM).
        Telinc1's Avatar
        Telinc1 Telinc1 is offline
        Weirdo Extraordinaire
           
          Join Date: Jun 2013
          Location: Sofia, Bulgaria
          Gender: Male
          Nature: Bold
          Posts: 167
          Thanks to this post, I was able to find the part of the code that checks the badges for Surf and Waterfall. They're at 0x06D59C for Surf and at 0x06D5D0 for Waterfall. They're obviously stored as little endian. That's why the bytes at Surf's location are 24 08. Why is this important? Well, if we set those to flags that get set at the start of the game (0x33 = 33 00 is one, more in this thread), we can practically remove the badge checks for HMs with the following three steps:
          • Change the two bytes at 0x06D59C and 0x06D5D0 to the number of a flag that's set by the game start script - removes overworld badge checks for Surf and Waterfall (found using this post).
          • Write 01 20 00 00 00 00 00 00 00 00 00 to 0x124620 - removes HM checks from the menu (well known and found by karatekid552, source)
          • The overworld badge checks for Cut, Strength and Rock Smash in are in the scripts themselves. Just open up the script for any tree, boulder or rock and you'll see it.
          I personally think this is a great discovery. Of course, I all I did was stare at some bytes in a Hex Editor to find the offsets for the badges themselves, so I take absolutely no credit for this.
          Also, yes, I do realise it's a better idea to completely null out the call to the routine that checks flags, though I bet anybody who knows ASM could do it in seconds just by looking at the bytes.
          __________________

          Check out my hacks by clicking on the userbar!
          Check out my new website (this link now works!)!
          Reply With Quote
            #632    
          Old December 24th, 2014 (2:51 AM). Edited December 24th, 2014 by Shiny Quagsire.
          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 want to stop the top help bar from showing up at all in the Town Map in Fire Red, just stub out the function at 080C4ED0 with a bx lr (70 47). This is useful if you maybe don't like the help menus or something, idk.

            Also, if you want the Town Map to act like it would in a Pokemon Center (ie without the sliding animation), set 080A1CB0 and 080A1CDC to 1. Basically each offset calls the routine at 80BFF50 to set up the callbacks for the Town Map, thus also passing this argument handed down through r0. If it's set to 0, it does the sliding map animation. If it's set to 1, it acts like a wall map. Note that this map will not be able to view the additional regions like a normal map would.
            __________________



            Reply With Quote
              #633    
            Old December 28th, 2014 (5:36 AM).
            Hiroshi Sotomura's Avatar
            Hiroshi Sotomura Hiroshi Sotomura is online now
            That's Deneb, Altair, and Vega.
            • Developer
            • Crystal Tier
            • GTGet-Together Event Management
            • PokéCommunity Daily
            • Discord Moderoid
             
            Join Date: Nov 2002
            Location: Melbourne, Australia
            Gender: Male
            Nature: Lax
            Posts: 16,956
            I'm still seeking what controls the HM checks at all, so I can reallocate what badge works for what move.

            And despite Black/White advancing the scene, X/Y goes back to the tried and true checks. :( (That's not why I want to keep using badge checks, mind you.) Maybe we should stop trying to follow the leader here, haha.
            __________________
            On a day just like any other,
            you suddenly stood up and said,
            “Let's go stargazing tonight!”
            Reply With Quote
              #634    
            Old December 28th, 2014 (10:29 AM).
            FBI's Avatar
            FBI FBI is offline
            Free supporter
            • Silver Tier
             
            Join Date: Jan 2013
            Location: Unknown Island
            Gender: Male
            Posts: 1,770
            Quote:
            Originally Posted by Hiroshi Sotomura View Post
            I'm still seeking what controls the HM checks at all, so I can reallocate what badge works for what move.

            And despite Black/White advancing the scene, X/Y goes back to the tried and true checks. :( (That's not why I want to keep using badge checks, mind you.) Maybe we should stop trying to follow the leader here, haha.
            I've done some research on this some time ago :o

            First of all, all HMs have secondary flag checks if used via the BRM.

            The badge checks for Cut, Strength, Rocksmash are done via scripts. The badge checks for waterfall and surf are done in two places, once in their respective scripts, and another in the routines themselves (those checks would be at 0x806D570 and 0x806D5B2 respectively). Finally flag checks for moves being used via the bottom right menu are at 0x812461C (flash, fly and others you decide to use via BRM).

            The same flag check is used for all HMs, and changing that requires your own little snipplet of ASM. Right now it's doing something like this:
            Code:
            ldr r0, =(0x820)
            add r0, r0, r4
            bl checkflag
            Where r4, is the current HM selected from a table. So that leaves two possible ways, 1) edit the order of the table at 0x845A788, or 2) edit the routine to change the value of r4 depending on what you want. I should also mention that r4's value at this point is determined at 0x81245C0.

            Overall just editing the badges should be rather simple :D
            __________________
            ...
            Reply With Quote
              #635    
            Old January 4th, 2015 (9:29 AM). Edited January 4th, 2015 by daniilS.
            daniilS's Avatar
            daniilS daniilS is offline
            busy trying to do stuff not done yet
               
              Join Date: Aug 2013
              Age: 18
              Gender: Male
              Posts: 409
              Posted this in the Beginner's Lounge as a reply to a question, but figured it might as well go here:
              Code:
              .thumb
              
              main:
              	push {r4-r5, lr}
              	sub sp, #8
              	ldr r4, [sp, #0x14]
              	str r4, [sp, #4]
              	str r3, [sp]
              	mvn r5, r2
              	cmp r5, #0x1
              	bne next
              	mov r2, r3
              	mov r3, r4
              	b finish
              next:
              	mov r3, r2
              	mov r2, r1
              finish:	
              	mov r1, r0
              	ldr r0, warp1
              	bl +0x080551DC-0x0805538C
              	add sp, #8
              	pop {r4-r5, pc}
              
              .align 2
              warp1:	.word 0x02031DBC
              
              /*insert at 0x5538C*/
              /*with this routine enabled, if the third argument of the warp command is 0xFE, it will instead read the last two arguments as the map and warp ID. the arguments may be vars.*/
              __________________
              Reply With Quote
                #636    
              Old January 4th, 2015 (6:53 PM). Edited January 4th, 2015 by Deokishisu.
              Deokishisu's Avatar
              Deokishisu Deokishisu is offline
              Mr. Magius
                 
                Join Date: Feb 2006
                Location: If I'm online, it's a safe bet I'm at a computer.
                Gender: Male
                Nature: Relaxed
                Posts: 883
                Quote:
                Originally Posted by DoesntKnowHowToPlay View Post
                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.
                I'm taking an educated guess without actually looking into it, but I believe that one of those unknowns are values for the received Pokemon's contest stats. In the third gen, all in game trades (even in FR/LG) give Pokemon with some contest stats built in. I'm going to guess that the bytes at 0x1C are it, as there are 5 contest stats. The byte at 0x37 may be sheen.

                Again, just a guess.

                EDIT: There has to be more to that mail byte too. Where is Zynx's mail message stored?

                EDIT2: According to this Bulbapedia article, Pokemon given in ingame trades have contest stats all at 5, save for one that's set at 30. This all but confirms that the bytes at 0x1C are the Pokemon's contest stats. It also says that all ingame trade Pokemon have a sheen of ten. The byte at 0x37 is then probably sheen like I thought, since it's always set at 0xA.
                Reply With Quote
                  #637    
                Old January 5th, 2015 (9:26 AM).
                redriders180's Avatar
                redriders180 redriders180 is offline
                Mastermind of Pokemon Glazed
                   
                  Join Date: Jun 2010
                  Location: Path of Victory, Tunod
                  Gender: Male
                  Nature: Quirky
                  Posts: 540
                  I'm not sure if anybody's done any research on this in the past, but in BPRE, the branch for incenses in breeding starts at 0x08045FD2. At that point, R4 appears to contain an address to the Pokemon's species, and R6 and R2 contain the held items of the two Pokemon. More info in the spoiler.

                  Spoiler:
                  Code:
                  ROM:08045FD2                 LDRH    R0, [R4]
                  ROM:08045FD4                 CMP     R0, R7
                  ROM:08045FD6                 BNE     loc_8045FE4
                  ROM:08045FD8                 CMP     R6, #0xDD
                  ROM:08045FDA                 BEQ     loc_8045FE4
                  ROM:08045FDC                 CMP     R2, #0xDD
                  ROM:08045FDE                 BEQ     loc_8045FE4
                  ROM:08045FE0                 MOVS    R0, #0xCA
                  ROM:08045FE2                 STRH    R0, [R4]
                  ROM:08045FE4
                  ROM:08045FE4 loc_8045FE4                             ; CODE XREF: sub_8045FA0+36j
                  ROM:08045FE4                                         ; sub_8045FA0+3Aj ...
                  ROM:08045FE4                 LDRH    R1, [R4]
                  ROM:08045FE6                 MOVS    R0, 0x15E
                  ROM:08045FEA                 CMP     R1, R0
                  ROM:08045FEC                 BNE     loc_8045FFA
                  ROM:08045FEE                 CMP     R6, #0xDC
                  ROM:08045FF0                 BEQ     loc_8045FFA
                  ROM:08045FF2                 CMP     R2, #0xDC
                  ROM:08045FF4                 BEQ     loc_8045FFA
                  ROM:08045FF6                 MOVS    R0, #0xB7
                  ROM:08045FF8                 STRH    R0, [R4]
                  The checks themselves are extremely simple. R4 is loaded, and compared with Wynaut's index number (0x168) If it's not equal, move on to the next check (Azurill). It then compares both items with the index number of Lax Incense (0xDD). If either are equal, move on to the next check. If neither are equal, write the index number of Wobbuffet to R4. The check is nearly identical for Azurill, except for different indices of course.


                  It would be fairly simple to put a hook in the table and point to more checks.
                  __________________


                  I think I'm done with ROM hacking. I'll still pop in and visit, though.


                  Reply With Quote
                    #638    
                  Old January 10th, 2015 (2:41 PM).
                  daniilS's Avatar
                  daniilS daniilS is offline
                  busy trying to do stuff not done yet
                     
                    Join Date: Aug 2013
                    Age: 18
                    Gender: Male
                    Posts: 409
                    E0 at 0806D7C3 will disable all of poison's effects in the overworld.
                    __________________
                    Reply With Quote
                      #639    
                    Old January 10th, 2015 (3:21 PM).
                    Percy's Avatar
                    Percy Percy is offline
                    look at my signature
                       
                      Join Date: Sep 2014
                      Location: Philippines
                      Gender: Male
                      Nature: Lonely
                      Posts: 2,437
                      Quote:
                      Originally Posted by Chaos Rush View Post


                      XY added a feature that gives experience points when you catch pokemon. To duplicate this in Emerald, do the following:

                      Repoint the battle script at x2dbd84 to point to this:

                      2A 00 08 42 02 02 05 00 92 BD 2D 08 60 0B 10 0B 01 F1 XX XX XX XX 2E 90 44 02 02 00 2E AC 40 02 02 00 2E AD 40 02 02 00 23 00 10 0F 01 3A 2E 32 43 02 02 00 F2 10 0D 01 3A 2E 32 43 02 02 00 F3 C2 BD 2D 08 F0 13 7A C9 5C 08 12 40 00 28 C3 BD 2D 08

                      where XX XX XX XX is a pointer to:

                      2E 90 44 02 02 00 2E AC 40 02 02 00 2E AD 40 02 02 00 23 00 10 0D 01 3A 2E 32 43 02 02 00 F3 C2 BD 2D 08 F0 13 7A C9 5C 08 12 40 00 28 C3 BD 2D 08

                      To let the player's mons evolve from this experience, replace the bytes at x3DE7C with B5 DE 03 08.

                      credit obviously goes to DoesntKnowHowToPlay for doing this first on FireRed lol

                      EDIT: So apparently, as discovered by Tlachtli, if you level up from experience while catching a Pokémon that hasn't yet been recorded to the Pokédex, then the Pokédex screen will have the text displayed in the wrong X-position offset. I'll look into it eventually
                      Chaos, is this safe to use? Is the bug squashed or something?
                      __________________
                      [you're so easy to manipulate ]
                      Reply With Quote
                        #640    
                      Old January 12th, 2015 (2:14 PM).
                      GoGoJJTech's Avatar
                      GoGoJJTech GoGoJJTech is offline
                      (☞゚ヮ゚)☞ http://GoGoJJTech.com ☜(゚ヮ゚☜)
                      • Gold Tier
                       
                      Join Date: Nov 2012
                      Location: Earth
                      Age: 18
                      Gender: Female
                      Nature: Jolly
                      Posts: 2,477
                      In Fire Red, change the halfword at 21D94 (0x137) to a different song ID and it'll change the wild Pokemon defeated fanfare to another song. Example:

                      Changing 0x137 (Victory 2) to 0x12B (Battle 6) will allow you to hear the Champion's battle theme every time you defeat a Pokemon in the wild. Tickle yourself with this if you'd like.
                      __________________
                      I believe in Jesus Christ my Savior. If you do too, and aren't scared to admit it, then copy and paste this into your signature.
                      The HGSS Music Patch - The BW/2 Music Patch - ASM: Switch Music Based on Seasons
                      Romhack.me Profile - Pokecommunity Profile - Youtube Channel

                      Support me at my site!
                      Pokémon Platinum Red and Blue
                      Reply With Quote
                        #641    
                      Old January 16th, 2015 (6:43 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 knizz View Post
                        For FireRed:
                        If you want to skip the intro: [0x080EC5D0]=0x08078915.
                        If you want to skip the intro+titlescreen: [0x080EC5D0]=0x0800C301.
                        If you want to skip the tutorial+oak:[list] [*][0x0800C4C4]=0x08056645[*][0x08054A68]=0x4C3C[*][0x08054A6A]=0x6820[*][0x08054A6C]=0x4900[*][0x08054A6E]=0xE001
                        I want to clarify something, so in 0x800c4c4 I'll insert 08 05 66 45?

                        Quote:
                        Originally Posted by knizz View Post
                        EDIT:
                        If you want to skip the intro+titlescreen:
                        • [0x080EC5D0]=0x08079255
                        • [0x080EC5C6]=0xB431
                        • [0x080EC5C8]=0x4700
                        So when these codes are inserted, there will be no titlescreen permanently?
                        It continues to Continue/New Game/Option part?
                        __________________
                        This signature has been disabled.
                        Scrollbar appears
                        Please review and fix the issues by reading the signature rules.

                        You must edit it to meet the limits set by the rules before you may remove the [sig-reason] code from your signature. Removing this tag will re-enable it.

                        Do not remove the tag until you fix the issues in your signature. You may be infracted for removing this tag if you do not fix the specified issues. Do not use this tag for decoration purposes.
                        Reply With Quote
                          #642    
                        Old January 20th, 2015 (12:28 AM). Edited January 20th, 2015 by Maverickp.
                        Maverickp Maverickp is offline
                           
                          Join Date: Nov 2014
                          Posts: 1
                          Does someone know the location of the amorphous blob graphics on which the player surfs on in FireRed? It looks like some kind of blue pokémon.
                          I know there is the answer for Emerald in this thread (p.22), but I'm looking for the FireRed offsets.

                          Edit: found it, it's at 0x396B08.
                          Reply With Quote
                            #643    
                          Old January 24th, 2015 (7:59 AM).
                          knizz's Avatar
                          knizz knizz is offline
                             
                            Join Date: Aug 2007
                            Posts: 192
                            Quote:
                            Originally Posted by Lance32497 View Post
                            I want to clarify something, so in 0x800c4c4 I'll insert 08 05 66 45? So when these codes are inserted, there will be no titlescreen permanently? It continues to Continue/New Game/Option part?
                            The bytes are reversed. So that's 45 66 05 08 at 0x800c4c4 (offset 0xc4c4 in the gba file)
                            It will permanently disable the start game menu. You can't resume games anymore, after that. You'll have to use the emulators quick saves for that.
                            __________________
                            Firered IDA 6.6 DB: https://www.dropbox.com/s/d856o3pyndyr5sr/firered.idb
                            VBA-M with lua scripting support
                            Reply With Quote
                              #644    
                            Old February 2nd, 2015 (11:03 AM).
                            C me's Avatar
                            C me C me is offline
                            Creator of Pokemon League Of Legends
                               
                              Join Date: Jan 2014
                              Age: 20
                              Gender: Male
                              Posts: 673
                              So I was looking at disable's effect and was wondering where a number of things in the script were found.
                              These are:
                              - number of turns the effect lasts
                              - target of the effect (can it affect the user, maybe both targets in a double battle)
                              - why you can't disable more than one move (it has to store this information in the RAM, maybe there is one RAM offset and if it's taken the effect fails)

                              Here's the script in Emerald offset 0x2D9507

                              Spoiler:
                              00 02 03 01 1C 9F 2D 08 00 00 A3 1C 9F 2D 08 09 0A 10 84 00 12 40 00 28 4E 8A 2D 08


                              The actual disablelastusedattack is one byte i think A3. It points to 0x2D9F1C.

                              Spoiler:
                              39 20 00 33 7C 42 02 02 20 0F 12 40 00 28 4E 8A 2D


                              I don't think the rest of the script is relevant.

                              If you could change the things I mentioned above you could introduce cool new moves that would be so strong they would get disabled for a few turns. If you could make disable's effect not disappear when you switch out a Pokemon you could prevent a sweep from happening.

                              I hope there is a way to change these things and they're not hardcoded.
                              Reply With Quote
                                #645    
                              Old February 11th, 2015 (3:04 PM). Edited April 5th, 2015 by Navenatox.
                              Navenatox's Avatar
                              Navenatox Navenatox is offline
                                 
                                Join Date: Jan 2015
                                Location: Austria
                                Age: 22
                                Gender: Male
                                Posts: 76
                                Option presets

                                I don't know if this has already been posted before but I'll share it anyway.

                                Something that has always annoyed me about the games were the presets in the option menu. Every time I start a new game, the first thing I'm doing is change the options. So I did a little research on them and found out how you can change the preset values.

                                Write "XX 20" at offset 0x5496C, where XX = [text speed] + [frame] * 8
                                Text speed: 0 = slow, 1 = mid, 2 = fast
                                Frame: 0 = type 1, 1 = type 2, etc.

                                Write "XX 20" at offset 0x5499C, where XX = [sound] + [battle style] * 2 + [battle scene] * 4
                                Sound: 0 = mono, 1 = stereo
                                Battle style: 0 = shift, 1 = set
                                Battle scene: 0 = on, 1 = off

                                Write "XX" at offset 0x549A2, where XX = [button mode]
                                Button mode: 0 = help, 1 = LR, 2 = L=A

                                These offsets work for both FR and LG.

                                Edit: Here are the offsets for Emerald:
                                84354: XX 20 for text speed and frame
                                84378: XX 20 for sound, battle style and battle scene
                                84384: XX 20 D0 74 for button mode
                                The XX values are the same as above.
                                Reply With Quote
                                  #646    
                                Old February 11th, 2015 (6:20 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
                                  OK, happy fun time again. So over on #GoGo Le Pug was curious as to how to get rid of Spinda's spots. Turns out the fix was easy:

                                  So in Fire Red one routine actively handle's doing Spinda's spots, located at 08043458. This routine does a few checks: First if it's Spinda, then it goes through each bit of the PID and extract info from that and does its thing on the sprite, adding 4 to a certain range of colors. To get rid of the Spinda check, simply write E0 to 08043475 for Fire Red, or 0806D681 for Emerald. Likewise, if you wanted to make every Pokemon have Spinda spots, just write 00 00 to 08043474 (FR) or 0806D680 (EM). Spinda's spots are located at 0825265C and 0825265E, interlaced I believe with two bytes for the smaller two dot designs and two bytes for the larger ones (maybe, I haven't fully looked into it), hence the 2 bytes difference between the two offsets. If anyone is curious on the actual dot placement stuff this is a nice read. Also gives you the plain dot designs.
                                  __________________



                                  Reply With Quote
                                    #647    
                                  Old February 15th, 2015 (2:23 AM). Edited February 15th, 2015 by PurpleOrange.
                                  PurpleOrange's Avatar
                                  PurpleOrange PurpleOrange is offline
                                  still don't know what I'm doing
                                     
                                    Join Date: Sep 2013
                                    Location: Littleroot Town (UK)
                                    Age: 20
                                    Gender: Male
                                    Posts: 355
                                    As sonic1 said earlier in this thread, the offset for the table that determines which pokemon are banned in the battle frontier in emerald is at x611C9A. there are 3 pointers to this table.

                                    the first pointer is at x1A3FCC, this seems to be used to see if you have enough non-banned pokemon in your party.

                                    the second pointer is at x1A418C, this seems to be used in the script that tells you which pokemon are banned

                                    the third pointer is at x1B8654, this seems to be used to see which pokemon are actually not able to enter

                                    so to add more just repoint the table at x611C9A, expand it (making sure it ends with FF FF) and put the pointer to the new table in reverse hex at the three offsets
                                    __________________

                                    Reply With Quote
                                      #648    
                                    Old February 19th, 2015 (3:08 PM).
                                    El Diabeetus's Avatar
                                    El Diabeetus El Diabeetus is offline
                                    Amateur Voice Actor / ROM Editor ('Hacker')
                                       
                                      Join Date: Jul 2006
                                      Age: 24
                                      Nature: Lonely
                                      Posts: 1,068
                                      I know some amount of page back, the help system could be removed but you needed to mess with the titlescreen. Is there a way to remove it without messing with the titlescreen function?
                                      __________________
                                      Hacks I'm currently working on (at a super slow pace):

                                      Chinpokomon Big/Small (would leave the titles, but apparently exceeded sig limit)

                                      Check my Japanese inspired Logo edits for Gens 1-7!:
                                      http://www.pokecommunity.com/showpost.php?p=9137003
                                      Reply With Quote
                                        #649    
                                      Old February 19th, 2015 (9:40 PM).
                                      GoGoJJTech's Avatar
                                      GoGoJJTech GoGoJJTech is offline
                                      (☞゚ヮ゚)☞ http://GoGoJJTech.com ☜(゚ヮ゚☜)
                                      • Gold Tier
                                       
                                      Join Date: Nov 2012
                                      Location: Earth
                                      Age: 18
                                      Gender: Female
                                      Nature: Jolly
                                      Posts: 2,477
                                      Quote:
                                      Originally Posted by SSJ4 Furanki View Post
                                      I know some amount of page back, the help system could be removed but you needed to mess with the titlescreen. Is there a way to remove it without messing with the titlescreen function?
                                      *Changed the bytes at 0x13B8C2 to 1D E0 to remove the help system

                                      - From the PRPB log
                                      __________________
                                      I believe in Jesus Christ my Savior. If you do too, and aren't scared to admit it, then copy and paste this into your signature.
                                      The HGSS Music Patch - The BW/2 Music Patch - ASM: Switch Music Based on Seasons
                                      Romhack.me Profile - Pokecommunity Profile - Youtube Channel

                                      Support me at my site!
                                      Pokémon Platinum Red and Blue
                                      Reply With Quote
                                        #650    
                                      Old February 20th, 2015 (6:29 AM).
                                      El Diabeetus's Avatar
                                      El Diabeetus El Diabeetus is offline
                                      Amateur Voice Actor / ROM Editor ('Hacker')
                                         
                                        Join Date: Jul 2006
                                        Age: 24
                                        Nature: Lonely
                                        Posts: 1,068
                                        Quote:
                                        Originally Posted by GoGoJJTech View Post
                                        *Changed the bytes at 0x13B8C2 to 1D E0 to remove the help system

                                        - From the PRPB log
                                        Thank you Gogo! The help system is probably one of the most unneeded things to come out of FR/LG, next to the Teachy TV.
                                        __________________
                                        Hacks I'm currently working on (at a super slow pace):

                                        Chinpokomon Big/Small (would leave the titles, but apparently exceeded sig limit)

                                        Check my Japanese inspired Logo edits for Gens 1-7!:
                                        http://www.pokecommunity.com/showpost.php?p=9137003
                                        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 3:39 PM.