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

[ARCHIVE] Simple Questions (SEARCH BEFORE ASKING A QUESTION)

Status
Not open for further replies.

Darthatron

巨大なトロール。
  • 1,152
    Posts
    18
    Years
    Where could I find the pointers of the loaded sprites during the intro in fire red?
    Oak sprite, Player sprite, Rival sprite..
    Use unLZ and use the "Automatically fix pointers" option. :\
    also, are there tutorials on adding more then 5 evolutions to a pokémon? YAPE can only do five, I need two more D:
    The GBA games only support 5 evolutions. You would have to hack the engine to be able to add more.
     
  • 712
    Posts
    16
    Years
    • Seen Apr 8, 2024
    ok, here is a quote of hackmew's explanation about the branch with link instruction, which i can't seem to understand. anyone can help me?

    Considering we need to expand it to call our custom shiny handler, we need to replace some of the bytes and make it so the new instructions lead to the hacked routine, making the Pokémon shiny as needed. To call the shiny routine, we basically need 3 things: the address of the routine stored into some register, a bl instruction (branch with link) and a bx one (branch and exchange). It works like this: first of all we need to put the routine address into a register. Which register exactly depends on the other 2 instructions. While I said it in the first lesson already, it's good to remember that the address, pointing to a THUMB routine, must be odd or the game would treat it as an ARM routine instead, and guess what… it wouldn't work at all. The branch with link instruction is used to call a sub-routine and return to where it was called afterwards. The "link" in the name refers to the Link Register which is where the return address is stored. The bl instruction cannot use a direct address. Instead, it can point up to 4 MB forward or backward the address it is used in. This is a problem for us, and indeed we need to use the branch and exchange instruction. All the bx instruction need is a register containing the desired address. When a bx is executed, the address stored into the register is saved into the Program Counter (PC) and the game continue executing the instructions from there. The bx instruction is actually more powerful. Like its name suggests, it can exchange between ARM and THUMB mode. For our purposes, though, we don't need any exchanges and the address in the register will be a odd one. So, the routine address is loaded into a register, then the bl instruction is executed, with the branch pointing to the branch and exchange instruction. This way the routine is executed, and once it's finished, the instruction immediately after the branch with link will be executed. For this to work, the bx must not be near the branch with link. Most of the times, we don't really need to put a bx instruction ourselves, because there are many available already. So start disassembling the routine till you find a bx. It might take some time before you actually find one, depending on the routine's length. Sooner or later, you'll get one.

     

    Cinaed666

    Geek.
  • 24
    Posts
    14
    Years
    Okay, So I changed the image in unlz at number 1632 (oak) to a sprite of prof. Elm.
    It took it without any trouble, but when I write it to ROM, and play it in VBA, Oak is still there?
     

    Ninja Caterpie

    AAAAAAAAAAAAA
  • 5,979
    Posts
    16
    Years
    That's great and all, but I can't seem to get the stuff to change positions when I edit it! A-map seems to have the same data in its World Map editor, and changing it does nothing. ;-; I see the changes in the hex editor but they haven't done anything in-game.

    Would using the world map editor, changing the routine and rewriting where the areas were directly have done anything to the feasibility of the table i'm using...
     
    Last edited:

    Darthatron

    巨大なトロール。
  • 1,152
    Posts
    18
    Years
    That's great and all, but I can't seem to get the stuff to change positions when I edit it! A-map seems to have the same data in its World Map editor, and changing it does nothing. ;-; I see the changes in the hex editor but they haven't done anything in-game.

    Would using the world map editor, changing the routine and rewriting where the areas were directly have done anything to the feasibility of the table i'm using...

    It's possible. I mean... dramatically changing a routine can do some odd things, mainly if it doesn't take into consideration factors (such as this), but I doubt it, due to MMX writing it. :P Are you sure you don't have a patch or something with the same name in the folder? :\
     

    Tropical Sunlight

    The Faltine
  • 3,476
    Posts
    16
    Years
    If i patch a rom with a tile base will it override all the pokemon data i've edited?
    Well, patching a modified ROM is always a risk.
    I'd make a backup and then patch it, see if anything went wrong and tested it out in-game.

    I have a question to ask as well. What's the index number of the normal wild Pokemon battle song in FireRed?
     

    Mr

    Just call me Mister
  • 58
    Posts
    14
    Years
    How do you edit the word map in fire red?

    I searched again today ... nothing ...
     

    Epicness

    Hacker Newbia
  • 24
    Posts
    13
    Years
    • Seen Dec 19, 2010
    indoor tile problem

    How can I replace my indoor tiling. i screwed up with the pallets and its all messed up now. all the houses are ruined including the protaganists. it would be great if someone could redirect me for some help.

    btw its a FR ROM.


    thanks,
    Epicness
     

    Orinjmate

    The Orinj of the Mate
  • 120
    Posts
    13
    Years
    Is there a tool for doing any of the following in FR:-
    1) Changing the order of the Kanto Dex
    2) Removing the Kanto Dex Option from the Pokedex
    3) Changing the text of the words 'Kanto Dex'

    (please don't suggest changing the data and sprite of each pokemon in yape and unLZ)
    Thanks.
     

    Resultz

    All- round Poke-Whizz
  • 583
    Posts
    14
    Years
    Is there a tool for doing any of the following in FR:-
    1) Changing the order of the Hoenn Dex
    2) Removing the Kanto Dex Option from the Pokedex
    3) Changing the text of the words 'Kanto Dex'

    (please don't suggest changing the data and sprite of each pokemon in yape and unLZ)
    Thanks.

    This another of my questions along with a few other scripting ones :X and Sprite insertion ones..

    okay.
    SPRITE INSERTION.
    -I have a copy of the 'indexed' sprite as edited in irfanview and the regular sprite and copy the regular sprite onto the messed up one, but when i come to import it to Unlz, it says its unindexed, Why?

    -SCRIPTING
    -To assign a script to a pre-existing sprite/person, do i simply open the script with the offset given by Amap?

    -Can someone explain fully what Pointers and dynamic offsets are?

    Sorry for spamming you thread, but im really confuzzled.
     

    Orinjmate

    The Orinj of the Mate
  • 120
    Posts
    13
    Years
    This another of my questions along with a few other scripting ones :X and Sprite insertion ones..

    okay.
    SPRITE INSERTION.
    -I have a copy of the 'indexed' sprite as edited in irfanview and the regular sprite and copy the regular sprite onto the messed up one, but when i come to import it to Unlz, it says its unindexed, Why?

    -SCRIPTING
    -To assign a script to a pre-existing sprite/person, do i simply open the script with the offset given by Amap?

    -Can someone explain fully what Pointers and dynamic offsets are?

    Sorry for spamming you thread, but im really confuzzled.

    I'm not sure if these are the answers you're looking for but here we go:-

    for sprite insertion my friend uses gimp for copying non-indexed over indexed, this technique won't work on paint.

    i don't understand your first question on scripting

    dynamic offsets mean you can put '@whatever' rather than another offset and it will automatically compile it to an offset, where as with an org offset you have to type in an offset for things like text, movements, goto/call commands etc.

    i think pointers mean that you can repoint an offset to a different offset in the ROM but i am not certain.

    Hope this was helpful in anyway lol
     

    Resultz

    All- round Poke-Whizz
  • 583
    Posts
    14
    Years
    Is there a tool for doing any of the following in FR:-
    1) Changing the order of the Kanto Dex
    2) Removing the Kanto Dex Option from the Pokedex
    3) Changing the text of the words 'Kanto Dex'

    (please don't suggest changing the data and sprite of each pokemon in yape and unLZ)
    Thanks.

    I'm not sure if these are the answers you're looking for but here we go:-

    for sprite insertion my friend uses gimp for copying non-indexed over indexed, this technique won't work on paint.

    i don't understand your first question on scripting

    dynamic offsets mean you can put '@whatever' rather than another offset and it will automatically compile it to an offset, where as with an org offset you have to type in an offset for things like text, movements, goto/call commands etc.

    i think pointers mean that you can repoint an offset to a different offset in the ROM but i am not certain.

    Hope this was helpful in anyway lol
    I'll try that later, as i'm using paint.

    About the scripting, each sprite has an offset stated in A-Map, can i type this into the first part of a script to change what they do?

    Dynamic Offsets meaning i can 'name' the scripts/events rather than their name being an offset hex number?
     

    Nosophoros

    I'm eating your cake
  • 44
    Posts
    13
    Years
    1. Does anyone know how to insert the train from fr into ruby (and make it work)?

    2. If I move a building in a-map/elitemap will I still be able to enter it with the inside looking like it would in it's original position?
     

    Resultz

    All- round Poke-Whizz
  • 583
    Posts
    14
    Years
    1. Does anyone know how to insert the train from fr into ruby (and make it work)?

    2. If I move a building in a-map/elitemap will I still be able to enter it with the inside looking like it would in it's original position?

    If you move the corresponding warp (in the events tab) to where the new door or entry point should be then yes.



    Also, Orinjmate, Thanks, a lot. Ive been trying for weeks to insert sprites and its finally worked now.
    [ARCHIVE] Simple Questions (SEARCH BEFORE ASKING A QUESTION)
     
    Status
    Not open for further replies.
    Back
    Top