• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Our weekly protagonist poll is now up! Vote for your favorite Conquest protagonist in the poll by clicking here.
  • 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.
Now I'm lost. Someone heeeeelp this guy!

Sorry, if it makes you feel any better, I'm lost too! I write, do banners, and play games others make, so this is new and something I don't know much about. Maybe it'll be easier once it's actually downloaded?

(And it would actually be girl, but eh. That's just dumb technicalities.)

Also, I got everything figured out except the Gameboy Advanced Emulator. That's what the error keeps popping up with, and I tried to look up ways to fix it. There was the software I downloaded from the Microsoft site, then someone had a code to enter, and I couldn't get it to save in any files...and that's about all I can find. Maybe someone knows another program I can try?
 
Last edited:
Sorry, if it makes you feel any better, I'm lost too! I write, do banners, and play games others make, so this is new and something I don't know much about. Maybe it'll be easier once it's actually downloaded?

(And it would actually be girl, but eh. That's just dumb technicalities.)

Also, I got everything figured out except the Gameboy Advanced Emulator. That's what the error keeps popping up with, and I tried to look up ways to fix it. There was the software I downloaded from the Microsoft site, then someone had a code to enter, and I couldn't get it to save in any files...and that's about all I can find. Maybe someone knows another program I can try?

Sorry, girl!
Try getting Visual Boy Advance. Best emulator in my humble opinion. Make sure your save option is set to 128k, so you can save normally in-game.

Obs.: What are the counter parts of guy and dude for girls?
 
Sorry, girl!
Try getting Visual Boy Advance. Best emulator in my humble opinion. Make sure your save option is set to 128k, so you can save normally in-game.

Obs.: What are the counter parts of guy and dude for girls?

Is there anything I need to get for this, and any idea where to go for it? I don't trust third party downloads, so I prefer to find the original source.

And I think it's gal for girls. Yes, creative, isn't it? (Nope. XD)

Edit: That's actually the one I've been trying to download. Giving me "The program can't start because MSVCP120.dll is missing from your computer. Try reinstalling the program to fix this problem." As if I hadn't reinstalled ten times by now. I tried looking up what that was, and I downloaded it from Microsoft. Nothing worked...
 
Last edited:
Is it possible to givepokemon a nicknamed Pokemon like the ingame trades?

I'm not 100% sure but I don't believe it is. When you get traded a Pokemon in game, that Pokemon has a preset Pokemon ID (Stats and such) but when you get given a pokemon by the Givepokemon command, it generates a random ID. Maybe with some ASM code it is possible but I don't think it's a simple fix.
 
Hello, I wish to hack a gold/silver rom, and would like to know which are the recommended tools to do that, as the tools forum isn't as much organized and I do not wish to miss any important tool as I don't really know what I'm looking for to use, as a beginner. Thank you.
 
I know I've asked a lot of questions...but how do I get a clean pokemon firered rom so I can play games? I've been playing stuff on vizzed, so I've never had to do that before.
 
I'm not 100% sure but I don't believe it is. When you get traded a Pokemon in game, that Pokemon has a preset Pokemon ID (Stats and such) but when you get given a pokemon by the Givepokemon command, it generates a random ID. Maybe with some ASM code it is possible but I don't think it's a simple fix.

Ah, alright. Thanks for answering. ^^ There's no other way to give a Pokemon besides givepokemon, though, if I'm correct in assuming that?
 
Thank you!
Last question I have right now:

How do you keep a sprite completely hidden until a certain flag is set? I've looked through lots of FR scripts but cannot find anything on it. Either that, or I'm just overlooking it completely.

You do so by setting a flag in the first script of the game, and then clearing it when you want a certain OW to appear. The same flag can then be set to make it disappear.
https://www.pokecommunity.com/showpost.php?p=6375660&postcount=95
Just edit the script.

Also make sure the "person ID" of the event is the same as the flag you set.
 
You do so by setting a flag in the first script of the game, and then clearing it when you want a certain OW to appear. The same flag can then be set to make it disappear.
https://www.pokecommunity.com/showpost.php?p=6375660&postcount=95
Just edit the script.

Also make sure the "person ID" of the event is the same as the flag you set.

Thanks again, that really helped me.

But since I'm relatively new to hack scripting, would it be inserting something like
Spoiler:

or would it be something a lot more than that? Sorry for so many questions.
 
Last edited:
Thanks again, that really helped me.

But since I'm relatively new to hack scripting, would it be inserting something like
Spoiler:

or would it be something a lot more than that? Sorry for so many questions.

You can't use the hidesprite command because the first script is called before the first map is loaded.

This is more what you want to do:
Code:
#dynamic 0x800000

#org 0x1A6481
goto @extended

#org @extended
// first, copy the commands from the original script and put them here (except the "end" command)
// you can edit these if you don't want certain flags to be set at the start
// then, you can put your own setflag commands
setflag 0x130
// add as many as you want
// you may want to place some nop commands to save space for later
// a setflag command takes the same space as 3 nop commands, so if you have enough overwriting them won't cause any issues
end

You could of course compile a new script and change the game to read the new script first, but the way above is a bit simpler for a beginner.
 
You can't use the hidesprite command because the first script is called before the first map is loaded.

This is more what you want to do:
Code:
#dynamic 0x800000

#org 0x1A6481
goto @extended

#org @extended
// first, copy the commands from the original script and put them here (except the "end" command)
// you can edit these if you don't want certain flags to be set at the start
// then, you can put your own setflag commands
setflag 0x130
// add as many as you want
// you may want to place some nop commands to save space for later
// a setflag command takes the same space as 3 nop commands, so if you have enough overwriting them won't cause any issues
end

You could of course compile a new script and change the game to read the new script first, but the way above is a bit simpler for a beginner.

Would this be in a new script or in the first script? I can't infer well. And it would look something like this?
Spoiler:

Or am I wrong? The purpose of the script is to show the character's mother's sprite, do the above commands, and then hide.
This should have been its own thread. I apologise.
 
Would this be in a new script or in the first script? I can't infer well. And it would look something like this?
Spoiler:

Or am I wrong? The purpose of the script is to show the character's mother's sprite, do the above commands, and then hide.
This should have been its own thread. I apologise.

This is the first script of the game:
Code:
;---------------
#org 0x1A6481
setflag 0x2B
setflag 0x2C
setflag 0x33
setflag 0x92
setflag 0x35
setflag 0x36
setflag 0x37
setflag 0x3C
setflag 0x3D
setflag 0xA1
setflag 0x3F
setflag 0x4F
setflag 0x5A
setflag 0xA3
setflag 0xA4
setflag 0x62
setflag 0x6B
setflag 0xA2
setflag 0x8C
setflag 0x6C
setflag 0x6D
setflag 0x6E
setflag 0x6F
setflag 0x75
setflag 0x74
setflag 0x7B
setflag 0x7C
setflag 0x7D
setflag 0x76
setflag 0x91
setflag 0x97
setflag 0x90
setflag 0x94
setflag 0x95
setflag 0x96
setflag 0x99
setflag 0xA5
setflag 0xA6
setflag 0xA7
setflag 0xA8
setflag 0xA9
setflag 0xAA
setflag 0xAB
setflag 0xAC
setflag 0x9D
setflag 0x9E
setflag 0x9F
setflag 0xA0
setflag 0xAE
setvar 0x4025 0x1F4
end

It is used by the game to hide overworlds like Oak in Palette Town so that they can be shown once you need them. Do you really want the mother hidden? If so, you would need two scripts, first the edited thing:
Code:
#dynamic 0x800000

#org 0x1A6481
goto @ext

#org @ext
// this is the original stuff
// it is preserved so all other events could still work
setflag 0x2B
setflag 0x2C
setflag 0x33
setflag 0x92
setflag 0x35
setflag 0x36
setflag 0x37
setflag 0x3C
setflag 0x3D
setflag 0xA1
setflag 0x3F
setflag 0x4F
setflag 0x5A
setflag 0xA3
setflag 0xA4
setflag 0x62
setflag 0x6B
setflag 0xA2
setflag 0x8C
setflag 0x6C
setflag 0x6D
setflag 0x6E
setflag 0x6F
setflag 0x75
setflag 0x74
setflag 0x7B
setflag 0x7C
setflag 0x7D
setflag 0x76
setflag 0x91
setflag 0x97
setflag 0x90
setflag 0x94
setflag 0x95
setflag 0x96
setflag 0x99
setflag 0xA5
setflag 0xA6
setflag 0xA7
setflag 0xA8
setflag 0xA9
setflag 0xAA
setflag 0xAB
setflag 0xAC
setflag 0x9D
setflag 0x9E
setflag 0x9F
setflag 0xA0
setflag 0xAE
setvar 0x4025 0x1F4
// this is the new stuff
setflag 0x130
// assuming the mother's person id is 130, she will by be invisible
end
You don't need to do anything other than compile that into the ROM.

You would then make a script and put it on the map. This is where your script comes in.
Code:
#dynamic 0x800000

#org @main
lockall
showsprite 1
applymovement 0x1 @look1
waitmovement 0
msgbox @1 0x6
applymovement 0x1 @look2
waitmovement
hidesprite 1
setvar 0x... 0x1 // use a variable to disable a script tile, which is what I'm guessing is what you want.
releaseall
end

...

This would show the mother's sprite, which would be invisible beforehand, and then hide it again after looking around.

At this point, a better option may be writing a level script that hides the sprite instead by setting its flag when you enter the map.
 
This is the first script of the game:
Code:
;---------------
#org 0x1A6481
setflag 0x2B
setflag 0x2C
setflag 0x33
setflag 0x92
setflag 0x35
setflag 0x36
setflag 0x37
setflag 0x3C
setflag 0x3D
setflag 0xA1
setflag 0x3F
setflag 0x4F
setflag 0x5A
setflag 0xA3
setflag 0xA4
setflag 0x62
setflag 0x6B
setflag 0xA2
setflag 0x8C
setflag 0x6C
setflag 0x6D
setflag 0x6E
setflag 0x6F
setflag 0x75
setflag 0x74
setflag 0x7B
setflag 0x7C
setflag 0x7D
setflag 0x76
setflag 0x91
setflag 0x97
setflag 0x90
setflag 0x94
setflag 0x95
setflag 0x96
setflag 0x99
setflag 0xA5
setflag 0xA6
setflag 0xA7
setflag 0xA8
setflag 0xA9
setflag 0xAA
setflag 0xAB
setflag 0xAC
setflag 0x9D
setflag 0x9E
setflag 0x9F
setflag 0xA0
setflag 0xAE
setvar 0x4025 0x1F4
end

It is used by the game to hide overworlds like Oak in Palette Town so that they can be shown once you need them. Do you really want the mother hidden? If so, you would need two scripts, first the edited thing:
Code:
#dynamic 0x800000

#org 0x1A6481
goto @ext

#org @ext
// this is the original stuff
// it is preserved so all other events could still work
setflag 0x2B
setflag 0x2C
setflag 0x33
setflag 0x92
setflag 0x35
setflag 0x36
setflag 0x37
setflag 0x3C
setflag 0x3D
setflag 0xA1
setflag 0x3F
setflag 0x4F
setflag 0x5A
setflag 0xA3
setflag 0xA4
setflag 0x62
setflag 0x6B
setflag 0xA2
setflag 0x8C
setflag 0x6C
setflag 0x6D
setflag 0x6E
setflag 0x6F
setflag 0x75
setflag 0x74
setflag 0x7B
setflag 0x7C
setflag 0x7D
setflag 0x76
setflag 0x91
setflag 0x97
setflag 0x90
setflag 0x94
setflag 0x95
setflag 0x96
setflag 0x99
setflag 0xA5
setflag 0xA6
setflag 0xA7
setflag 0xA8
setflag 0xA9
setflag 0xAA
setflag 0xAB
setflag 0xAC
setflag 0x9D
setflag 0x9E
setflag 0x9F
setflag 0xA0
setflag 0xAE
setvar 0x4025 0x1F4
// this is the new stuff
setflag 0x130
// assuming the mother's person id is 130, she will by be invisible
end
You don't need to do anything other than compile that into the ROM.

You would then make a script and put it on the map. This is where your script comes in.
Code:
#dynamic 0x800000

#org @main
lockall
showsprite 1
applymovement 0x1 @look1
waitmovement 0
msgbox @1 0x6
applymovement 0x1 @look2
waitmovement
hidesprite 1
setvar 0x... 0x1 // use a variable to disable a script tile, which is what I'm guessing is what you want.
releaseall
end

...

This would show the mother's sprite, which would be invisible beforehand, and then hide it again after looking around.

At this point, a better option may be writing a level script that hides the sprite instead by setting its flag when you enter the map.

Ah, alright, I get it now. It's in the upstairs of the character's house in FR, and I didn't know how else I would make her "come up the stairs." Sorry, though; this should have been its own thread at this point.

Edit:I got the hidesprite to work via a simple level script. Thanks for the suggestion. When I want to make her appear, though, would I make a separate script with the commands or add it into the level script?
 
Last edited:
You would use the showsprite command in the script that you want to use to make her show up.

Would the var that I assigned to 0x1 in the level script be the same as the var for the script tile? Because I tried showsprite and I just get stuck on the tile.
 
Would the var that I assigned to 0x1 in the level script be the same as the var for the script tile? Because I tried showsprite and I just get stuck on the tile.

Why are you setting the variable in the level script? You don't need to do that. But the variable for the script tile is the one you'll set during its script so that it doesn't run again.
https://www.pokecommunity.com/showthread.php?t=302347
 
Status
Not open for further replies.
Back
Top