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

redriders180

Mastermind of Pokemon Glazed
314
Posts
13
Years
  • I need help with nicknaming pokemon. For the starter pokemon.

    A typical code for nicknaming the starter pokemon would look like this:

    Code:
    ...
    setvar 0x8004 0x0
    fadescreen 0x1
    special 0x9E
    waitstate
    ...
    with the ... signifying code you write before and afterward. This should work for either Firered or Ruby.
     
    Last edited:
    8
    Posts
    14
    Years
    • Seen Jan 22, 2012
    My question back in May has gone unheard. :/ Which is surprising considering it's a really simple question. Help me out guys.

    I noticed that when giving new and longer text to npcs sometimes different npcs may say parts of that text. Also sometimes entire routes of trainers would mysteriously disappear.

    To elaborate I think it has to do with data modification and over writing in places that weren't free. Can you guys please tell me a little about that and the free space finder in advance map? I completely had to start a new hack because of it and so far I've just done map editing since then.
     

    redriders180

    Mastermind of Pokemon Glazed
    314
    Posts
    13
    Years
  • My question back in May has gone unheard. :/ Which is surprising considering it's a really simple question. Help me out guys.

    I noticed that when giving new and longer text to npcs sometimes different npcs may say parts of that text. Also sometimes entire routes of trainers would mysteriously disappear.

    To elaborate I think it has to do with data modification and over writing in places that weren't free. Can you guys please tell me a little about that and the free space finder in advance map? I completely had to start a new hack because of it and so far I've just done map editing since then.

    I think what happens is part of the hex in the game is overwritten by the words the character says. This overwrites all the code that follows it, making other characters say what they're supposed to. The easiest thing to do would be to use the dynamic offsets XSE provides. Dynamic Offsets (if you don't know) are nice because XSE will look for free space automatically, and stick the code in there, with pretty no chance of overwriting anything. To do it, you just start all your code with the following:

    Code:
    #dynamic 0x800000
    #org @start
    The start writing the code. Instead of using 0xOFFSET to define msgbox and stuff, you use an @, followed by a sort of "nickname" for the offset. For example, you'd say:

    Code:
    #dynamic 0x800000
    #org @start
    msgbox @message MSG_FACE
    release
    end
    
    #org @message
    = Hi there!
    When you compile, it tells you all the offsets that XSE puts in. The first one (@start in this case) is the one you want. Copy and Paste the offset it gives you for @start and put it in your event. I hope this wasn't too complicated, and I'm sorry if I didn't answer your question.
     

    Truality

    Left for good
    1,006
    Posts
    12
    Years
    • Age 32
    • Seen May 17, 2013
    My question back in May has gone unheard. :/ Which is surprising considering it's a really simple question. Help me out guys.

    I noticed that when giving new and longer text to npcs sometimes different npcs may say parts of that text. Also sometimes entire routes of trainers would mysteriously disappear.

    To elaborate I think it has to do with data modification and over writing in places that weren't free. Can you guys please tell me a little about that and the free space finder in advance map? I completely had to start a new hack because of it and so far I've just done map editing since then.
    This happens because you compile an already compiled script with new data that exceed the old one in size. As in, if you write new text in a dialogue script but the new text is more than the old one and compile, even one extra space makes the difference in bytes and scrambles up other dialogues. So when you're recompiling a script, you can only augment it by repointing. You will need to know how to hex edit in order to do that, though.

    You can always edit a script if the changes you make on it leave the same number of bytes-or lower, but if the number of bytes is higher than the previous number, it will compile but screw up stuff. Otherwise, you can always make new scripts as the poster above me suggests.
     

    redriders180

    Mastermind of Pokemon Glazed
    314
    Posts
    13
    Years
  • In Firered, does anyone know the value of the variable which stores which way the player is facing, and which values of it mean which direction? I think 0x4 means facing right, but not any of the others.
     
    Last edited:

    masterquestmq

    Enthusiastic Rom Hacker
    194
    Posts
    13
    Years
    • Seen Nov 19, 2023
    In Firered, does anyone know the value of the variable which stores which way the player is facing, and which values of it mean which direction? I think 0x4 means facing right, but not any of the others.
    I think its these values
    0x0 = Face Down
    0x1 = Face Up
    0x2 = Face Left
    0x3 = Face Right
     

    Flowerchild

    fleeting assembly
    8,709
    Posts
    13
    Years
  • can someone use pokemon diamond as a base rom and make everything like emerald
    as a remake coment if you can please
    First of all, this is not a request thread, so you shouldn't really be asking for someone to make one. However, there is a hack of Diamond which is a remake - or, using the proper term a demake - of Pokémon Sapphire Version. Find it here.
     

    raekuul

    Team Anorith Grunt
    261
    Posts
    14
    Years
    • Age 34
    • Seen Jan 13, 2017
    I found the answer to my question ^^; I just needed to look in the right place. The information is now linked to in my signature.
     
    6
    Posts
    12
    Years
    • Seen Feb 19, 2012
    OK. Now i am doing a hack and it includes a friendship system. I figure that i need to use a lot of safety vars to read and write. However I have already searched for a list of used vars and flags but all the info that I can reach is about FireRed. Can anybody show me a list like that for Emerald? Or can anyone tell me another way to modify that friendship system?
     

    Binary

    え?
    3,977
    Posts
    16
    Years
    • Age 29
    • Seen Apr 7, 2014
    In Firered, does anyone know the value of the variable which stores which way the player is facing, and which values of it mean which direction? I think 0x4 means facing right, but not any of the others.
    The value of the player's facing direction is stored in 0x800C. If I'm correct, the values for the directions are:
    0x1 = down
    0x2 = up
    0x3 = left
    0x4 = right

    For Example:
    Code:
    compare 0x800C 0x1 
    if 0x1 call @down
     
    19
    Posts
    13
    Years
    • Seen Jan 26, 2013
    A typical code for nicknaming the starter pokemon would look like this:

    Code:
    ...
    setvar 0x8004 0x0
    fadescreen 0x1
    special 0x9E
    waitstate
    ...
    with the ... signifying code you write before and afterward. This should work for either Firered or Ruby.

    What does var 0x8004 0x0 do? Does it have to be that var?
     

    redriders180

    Mastermind of Pokemon Glazed
    314
    Posts
    13
    Years
  • What does var 0x8004 0x0 do? Does it have to be that var?

    I believe that var is whatever Pokemon slot the nicknamed Poke is at. Since its the first Pokemon your player gets, it'll be in the first slot of the party, which is 0x0. The special reads from 0x8004, and not any other variables, so it has to be that one.
     
    2
    Posts
    12
    Years
    • Seen Dec 25, 2011
    New to hacking, need help

    I've got a basic understanding of scripting, maybe a little too basic, but I'm just starting out, so bare with me.

    I can't figure out how to script how my game actually begins. Of course it begins with the pokemon professor talking to you, and after that's over with you get shoved out into the world of pokemon. What I need help with is what happens after that. I'm using ruby as my base, so after the professor asks me my name and whatnot I end up in the back of a truck on the way to my house. I want to change it to where I start out in my bed.

    How do I do this? I'm using AdvanceMap and XSE.

    Thanks,

    Riot
     
    19
    Posts
    13
    Years
    • Seen Jan 26, 2013
    I believe that var is whatever Pokemon slot the nicknamed Poke is at. Since its the first Pokemon your player gets, it'll be in the first slot of the party, which is 0x0. The special reads from 0x8004, and not any other variables, so it has to be that one.

    So what happens if the pokemon is sent to the box?
     
    6
    Posts
    12
    Years
    • Seen Feb 19, 2012
    Can anybody teach me how to create a map where every wild pokemon in it is uncatchable (while the same pokemon can be caught outside this map?)

    Much appreciated!
     

    Speedster

    The Unknown
    134
    Posts
    12
    Years
  • Can anybody teach me how to create a map where every wild pokemon in it is uncatchable (while the same pokemon can be caught outside this map?)

    Much appreciated!
    This isn't something easy to do especially for multiple pokemon but for some information you can refer to this: http://www.pokecommunity.com/showthread.php?t=250580 You could also recreate the pokemon in the 25 empty slots in between Celebi and Treecko and set the catch rate to 0.
     

    redriders180

    Mastermind of Pokemon Glazed
    314
    Posts
    13
    Years
  • So what happens if the pokemon is sent to the box?

    The code I gave you works only if it's the starter Pokemon, which usually isn't sent to a box. In the case where it's a gift Pokemon that ISNT a starter, you have to use more creativity. Generally, the following would work:

    Code:
    ... \\give the player the Pokemon
    countpokemon \\counts the number of Pokemon in your party
    subvar LASTRESULT 0x1 \\explained below
    copyvar 0x8004 LASTRESULT \\copies LASTRESULT to the variable 0x8004
    fadescreen 0x1 \\turns the screen black
    special 0x9E \\nickname special
    waitstate \\wait till done nicknaming
    ... \\rest of the code
    The reason you subtract one is because of the following: Suppose you have one Pokemon. countpokemon will return the value 0x1. But the Pokemon itself is in the first slot, which has a value of 0x0. Since you gave the player a Pokemon, it'll be at the bottom of the party. The script counts how many Pokemon you have, and subtracts one, giving the slot number of the final Pokemon, or the Pokemon you gave. It then continues as before.

    There is a way to nickname a Pokemon sent to a box though. From what I can tell, the givepokemon code actually returns a value to LASTRESULT. LASTRESULT is 0x0 if its in the party, 0x1 if it goes to a box, and 0x2 if there's no room in the party or in a box. If you really want to put this in, it'll add alot more branches to the code (You'll have to do different scripts is the player knows its 'Someone's PC' vs 'Bill's PC', among others), but it can be nicknamed with the following:

    Code:
    ... \\Give the player the Pokemon, check if LASTRESULT is 0x1
    fadescreen 0x1
    special 0x166
    waitstate
    ... \\The rest of the code
    Of course, the simplest way is to just countpokemon before the gift, and refuse to give it if there's more than six in the party.

    Edit: If you need to know more, I suggest getting a clean Firered rom and going to map 10.11, which is in Celadon City. The Pokeball on the desk gives the player an Eevee, and has everything you need to know about nicknaming things that are about to go to a box :)
     

    Speedster

    The Unknown
    134
    Posts
    12
    Years
  • Hello. I have a small question about JPAN's hack engine. I download both versions 1.0 and 1.1 and got the same result. No matter when its on an edited ROM or a clean FireRed ROM when I patch the engine and leave the house I start in I appear stuck in the middle of odd tiles and I can't move. If it at all helps this is what happens when I exit the house:
    picture.php
     

    masterquestmq

    Enthusiastic Rom Hacker
    194
    Posts
    13
    Years
    • Seen Nov 19, 2023
    Hello. I have a small question about JPAN's hack engine. I download both versions 1.0 and 1.1 and got the same result. No matter when its on an edited ROM or a clean FireRed ROM when I patch the engine and leave the house I start in I appear stuck in the middle of odd tiles and I can't move. If it at all helps this is what happens when I exit the house:
    picture.php


    No worries, just fix the warp frm the house to pallet town again on A-map this shud fix d problem.
     

    AustinWolff

    has left
    100
    Posts
    12
    Years
  • money script problem
    rom: ruby
    Script editor: XSE

    the show money command doesn't work, making the other moony commands useless! can anyone help?
    Spoiler:
     
    Status
    Not open for further replies.
    Back
    Top