• 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.

Help Thread: Quick Questions & Answers

Status
Not open for further replies.
  • 5
    Posts
    8
    Years
    • Seen Aug 13, 2016
    So, I've been working on my own Fire Red hack (my first hack). It's nothing special really, I don't understand anything about hex editors and stuff, I'm just using the standard tools like A-map and YAPE. I've edited a lot of moves and things are looking really good. But when I started testing the moves I noticed a little problem. I edited Razor Wind and Skull Bash and removed the 2-turn effect. For example Skull Bash is now just a Rock-type Double Edge. However those moves still use the animation of the first turn of the original move where the Pokémon would get ready to attack when in this case the Pokémon already attacks on this first turn. This looks a little silly of course. So I wanted to know if there is a simple way to repoint the animation of these moves to the second turn animation with a tool like PGE?
     
  • 3
    Posts
    8
    Years
    • Seen Apr 25, 2023
    Where do I find the download links to get Advanced Map, YAPE, etc., and the necessary tools to make my first ROM hack? Thanks.
     

    _Evan

    Learning to ROM Hack
  • 15
    Posts
    8
    Years
    So I somehow broke a warp event that I never touched, and it is the same as a base version of LG/FR. I checked both warps for both areas, they are unchanged, but they still don't work. Anyone have any idea what could be wrong?
     
  • 417
    Posts
    9
    Years
    • Seen Nov 20, 2016
    So I somehow broke a warp event that I never touched, and it is the same as a base version of LG/FR. I checked both warps for both areas, they are unchanged, but they still don't work. Anyone have any idea what could be wrong?
    Make sure the block behavior is the same as the original game.
     

    _Evan

    Learning to ROM Hack
  • 15
    Posts
    8
    Years
    Make sure the block behavior is the same as the original game.
    Everything that I am looking at is exactly the same. Movement Permissions, the Warp Event, and the tile. I even checked the warp it's linked to, and that is also the same.
     

    Skystrike

    [i]As old as time itself.[/i]
  • 1,641
    Posts
    15
    Years
    Does anyone have the offsets of the in-battle message box's image and palette for Fire Red?


    edit: Google helped...
     
    Last edited:

    Logan

    [img]http://pldh.net/media/pokecons_action/403.gif
  • 10,417
    Posts
    15
    Years
    Thank you, but I don't see Advanced Map in here... also any suggestions on what Editors I should Install for a beginner? And finally where do I get the ROMs to begin editing xD
    Sorry I'm so needed... :(
    It's against the rules to post links to ROMs here, you'll have to google for them I'm afraid. It shouldn't be too difficult though. :)
     
  • 417
    Posts
    9
    Years
    • Seen Nov 20, 2016
    Everything that I am looking at is exactly the same. Movement Permissions, the Warp Event, and the tile. I even checked the warp it's linked to, and that is also the same.
    I don't know if it matters in this case, but it matters in the future, so I'll point out that what I was referring to wasn't anything you listed. Behaviors and backgrounds are specific to blocks, like how the grass knows to create wild Pokemon. You can look at them in the block editor tab of A-Map (puzzle piece I think). Perhaps, even if you didn't move a warp, the block it is on no longer has the appropriate warp behavior. Sometimes it looks like the tiles are the same, but they actually have different behavior. This happens in places like the entrance of caves.
     
    Last edited:
  • 4
    Posts
    8
    Years
    • Seen Oct 21, 2016
    I'm using Advance Map 1.92, maps are looking good so far, but there's just one problem: only certain in-game pokemon sprites are present.

    I'm at least 99% sure that I'll have to find and insert them myself (ew). If so, how? Like, do I need a separate program? Should the sprites be standard PNG images?

    enlighten me pl0x
     
  • 5
    Posts
    8
    Years
    • Seen Apr 22, 2016
    FreeSpaceFinderv2.0.1.0 crashes the moment I open it, and running as administrator and using compatibility mode don't work either. I'm using a Windows 7 64-bit OS, and I can run every other tool (AdvanceMap, XSE, Lunar IPS, Hopeless Trainer Editor, etc.) just fine. Does anyone know what the problem could be and how to fix it? If not, will I be missing out on anything if I use v1.0.2? That one I can run for some reason.
     

    Logan

    [img]http://pldh.net/media/pokecons_action/403.gif
  • 10,417
    Posts
    15
    Years
    I'm using Advance Map 1.92, maps are looking good so far, but there's just one problem: only certain in-game pokemon sprites are present.

    I'm at least 99% sure that I'll have to find and insert them myself (ew). If so, how? Like, do I need a separate program? Should the sprites be standard PNG images?

    enlighten me pl0x
    There's a couple of tools that can insert OW sprites, I use NSE myself, you can find them in the Tools, Tutorials and Resources section. The images will need to be indexed and in whatever format the tool you're using uses (probably bitmap)
     
  • 5
    Posts
    8
    Years
    • Seen Apr 22, 2016
    Alright so after some research it turns out that XSE automatically finds free space if I start the script with #dynamic 0x800000, so it seems like I don't have to worry about the latest version of FSF crashing.

    Two more questions: is there enough free space by default in FireRed that I shouldn't worry about deleting existing scripts? I'm aware of #removeall 0xOFFSET and similar options but I'm not sure if it's common practice to use them.

    The other thing I want to clarify is: say I use @start and @1 in one script, to change an NPC's message. Can I reuse those pointer names later for a different script?
     
  • 5,256
    Posts
    16
    Years
    Alright so after some research it turns out that XSE automatically finds free space if I start the script with #dynamic 0x800000, so it seems like I don't have to worry about the latest version of FSF crashing.

    Two more questions: is there enough free space by default in FireRed that I shouldn't worry about deleting existing scripts? I'm aware of #removeall 0xOFFSET and similar options but I'm not sure if it's common practice to use them.

    The other thing I want to clarify is: say I use @start and @1 in one script, to change an NPC's message. Can I reuse those pointer names later for a different script?

    It's very unlikely you'll run out of space, and you can always expand the ROM to get another 16MB of free space (that's 0xFFFFFF bytes).

    Provided the labels are not in the same script, yes, the compiler does not care what they are in different scripts and once the script is compiled the labels are forgotten, and instead the offsets of the scripts in the ROM is used by XSE. If you enable refactoring, then XSE will just use preset labels (@start, @snippet1, @snippet2, @string1, @move1, @mart1, etc.).
     

    Telinc1

    Weirdo Extraordinaire
  • 168
    Posts
    10
    Years
    Alright so after some research it turns out that XSE automatically finds free space if I start the script with #dynamic 0x800000, so it seems like I don't have to worry about the latest version of FSF crashing.

    Two more questions: is there enough free space by default in FireRed that I shouldn't worry about deleting existing scripts? I'm aware of #removeall 0xOFFSET and similar options but I'm not sure if it's common practice to use them.

    The other thing I want to clarify is: say I use @start and @1 in one script, to change an NPC's message. Can I reuse those pointer names later for a different script?
    FireRed has more than enough freespace, even for a more complex hack. If you go to around 0x720000, you'll see that the area is absolutely free (there's freespace from ~0x720000 all the up to 0xD00000, where's there's graphics data, more specifically the battle text box. The area after 0xF00000 is free too). That makes for about 5 MB of freespace you can use however you want. You should use #removeall if you mess up a big script, note that it deletes everything referenced in it (subscripts, messages, mart data, movement data, braille data).
    As for the pointer names, they are just for the compiler. When you compile the script, they're changed to an offset with enough free space to fit whatever is after it, starting the search at the dynamic offset (with #dynamic 0x800000, XSE will put the script at any free location after 0x800000). They are lost after compilation (just decompile a script, you'll see, turn off refactoring though). Ergo, you can use the same names however many times you want, obviously as long as the same name doesn't appear twice in the same script (e.g. you can't have two #org @starts in a single script).
    As Sperical Ice said, you can expand your ROM to 32 MB (XSE can do it; look around the menus). That gives you an extra 16 MB to store data in. Don't do it unless you run out of space though, as the most popular IPS patch format doesn't work with ROMs over 16 MB (you're going to have to use alternatives such as BPS, though that's better than IPS imo; check out Floating IPS, that supports BPS as well as IPS). The reason for that incompatibility is that IPS stores the offsets to change as three bytes, so it can't reference locations over 0xFFFFFF (which happens to be the very end of the 16th MB).
     
  • 5
    Posts
    8
    Years
    • Seen Apr 22, 2016
    Thank you both. I'm finally starting to get the hang of writing/compiling simple scripts now that I've become less paranoid of messing something up.
     
  • 148
    Posts
    17
    Years
    • Age 29
    • Seen May 29, 2024
    Is there any way that in FireRed I can replace any instance of one word with another all in one go? For example, let's say I wanted to rename Team Rocket to something else. Instead of going through each script and hunting down every instance of the phrase Team Rocket, is there a program that can change them all at once?
     
  • 794
    Posts
    10
    Years
    Is there any way that in FireRed I can replace any instance of one word with another all in one go? For example, let's say I wanted to rename Team Rocket to something else. Instead of going through each script and hunting down every instance of the phrase Team Rocket, is there a program that can change them all at once?

    Yup, that program is called a hex editor.
     
    Status
    Not open for further replies.
    Back
    Top