• 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 Trading Card Game 2 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.

Script Help Thread (DO NOT REQUEST SCRIPTS)

Status
Not open for further replies.
... well no... i did not know that
 
... well no... i did not know that

If you are using XSE, compile something Dynamically. Then, after the compile, it will list all of the offsets it has placed the @offsets at. There, you can choose to copy one of the offsets to your clipboard. Or, you can save the log which holds all of the information.
 
cool, thats helpful. thank you

so I am trying to make an event in the Rocket Hideout that fills your coin case... considering team rocket runs the casino there we should be able to gank some coins while we are down there ;)

this is what ive got...
Spoiler:


this section is where I am trying to max the coins in the case without going over and causing glitchy numbers...
coincasetovar 0x4001
setvar 0x4002 0x270F
copyvar 0x4002 0x4001
it may not work this way... idk how to assign a number to the coin case...
it would be nice if we could just tell the coincase to be 9999 ...

but my biggest issue is... anytime i set this event in a map... the map goes black... and wont let me recover from it... i still hear music... and if I move i bump into stuff (like im completly surrounded by walls)
i tried the first and fourth floor of the hideout with the same results both times.
 
Last edited:
Make sure it is #dynamic 0x74000. And please trust it, it is far, far safer than manual insertion. Trust me, I didn't learn about dynamic insertion until I was well into hacking and you wouldn't believe the amount of problems it had caused. Always do it dynamically when possible.
What's so good about 74? 80 is pretty much the best start you can get.
 
What's so good about 74? 80 is pretty much the best start you can get.

That big chunk of free space begins are around 720000. I think A-Map also uses this space to repoint it's maps and such, which is why are start 740000. Ideally, it depends how many maps you're going to add. If you enlarge every existing map and add a ton more maps, then 740000 is a bad start. That's generally not the case though, so 740000 is a good place to start (I would start 760000 if I was that sure I'd change a lot). Of course some people like to use this space to insert their graphics, but it shouldn't matter because we skip 20000 anyways.
 
That big chunk of free space begins are around 720000. I think A-Map also uses this space to repoint it's maps and such, which is why are start 740000. Ideally, it depends how many maps you're going to add. If you enlarge every existing map and add a ton more maps, then 740000 is a bad start. That's generally not the case though, so 740000 is a good place to start (I would start 760000 if I was that sure I'd change a lot). Of course some people like to use this space to insert their graphics, but it shouldn't matter because we skip 20000 anyways.

If you want to be really specific, 740000 is where the guaranteed free space starts. There are also good chunks in the 160000's, 200000's, and there is a good amount in the 500000-600000. That is for Ruby, but I do believe that it is similar in FR.

What's so good about 74? 80 is pretty much the best start you can get.

I was being more specific towards using a Dynamic start offset. FBI had shown a sample script using that as the start offset, so I kept it to simplify the process and not cause confusion.

Personally, I like to script in 800000+ and insert all of my images in the lower free space since sometimes the Advance Series doesn't want to start at the dynamic offset I specify and goes to free space in the 600000's.
 
Last edited:
In the past I've been more familiar with Pokescript; would it be better to just use XSE instead?
 
hi I want to know what's the problem in this script as whn the pidgeotto section of the script after battling pidgeotto the screen turns black forever and whenever I step on the script tile the script again starts to go on and I again got a free mankey and battle a pidgeotto sohow should I stop these errors?

Here is the script

'---------------
#org 0x802781
applymovement 0x2 0x8802824
waitmovement 0x0
msgbox 0x880282F MSG_YESNO '"A wild Mankey wants to join your\n..."
compare LASTRESULT 0x1
if 0x1 goto 0x88027AB
compare LASTRESULT 0x0
if 0x0 goto 0x8802819
end

'---------------
#org 0x8027AB
msgbox 0x880286C MSG_NORMAL '"Mankey happily joined your party!"
applymovement 0x2 0x88028A9
givepokemon 0x38 0xA 0xCF 0x0 0x0 0x0
fanfare 0x13E
msgbox 0x88028B1 MSG_KEEPOPEN '"[player]recieved a Mankey!!"
waitfanfare
closeonkeypress
setflag 0x754
fadescreen 0x1
fadescreen 0x0
showsprite 0x3
msgbox 0x88028C9 MSG_NORMAL '"A Pidgey wants to battle but it is..."
fadescreen 0x1
hidesprite 0x3
fadescreen 0x0
showsprite 0x4
cry 0x11 0x0
msgbox 0x88028FA MSG_NORMAL '"The evolved Pidgeotto is\nattackin..."
waitcry
wildbattle 0x11 0x8 0xD2
fadescreen 0x0
hidesprite 0x4
fadescreen 0x1
setflag 0x755
release
end

'---------------
#org 0x802819
msgbox 0x8802890 MSG_NORMAL '"Mankey seems very sad!"
release
end


'---------
' Strings
'---------
#org 0x80282F
= A wild Mankey wants to join your\nparty should you take it?

#org 0x80286C
= Mankey happily joined your party!

#org 0x8028B1
= [player]recieved a Mankey!!

#org 0x8028C9
= A Pidgey wants to battle but it is\nnot strong.

#org 0x8028FA
= The evolved Pidgeotto is\nattacking with rage!!

#org 0x802890
= Mankey seems very sad!


'-----------
' Movements
'-----------
#org 0x802824
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x0 'Face Down
#raw 0x10 'Step Down (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x8028A9
#raw 0x4E 'Jump Down
#raw 0x60 'Hide
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0xFE 'End of Movements
 
hi I want to know what's the problem in this script as whn the pidgeotto section of the script after battling pidgeotto the screen turns black forever and whenever I step on the script tile the script again starts to go on and I again got a free mankey and battle a pidgeotto sohow should I stop these errors?

Here is the script

'---------------
#org 0x802781
applymovement 0x2 0x8802824
waitmovement 0x0
msgbox 0x880282F MSG_YESNO '"A wild Mankey wants to join your\n..."
compare LASTRESULT 0x1
if 0x1 goto 0x88027AB
compare LASTRESULT 0x0
if 0x0 goto 0x8802819
end

'---------------
#org 0x8027AB
msgbox 0x880286C MSG_NORMAL '"Mankey happily joined your party!"
applymovement 0x2 0x88028A9
givepokemon 0x38 0xA 0xCF 0x0 0x0 0x0
fanfare 0x13E
msgbox 0x88028B1 MSG_KEEPOPEN '"[player]recieved a Mankey!!"
waitfanfare
closeonkeypress
setflag 0x754
fadescreen 0x1
fadescreen 0x0
showsprite 0x3
msgbox 0x88028C9 MSG_NORMAL '"A Pidgey wants to battle but it is..."
fadescreen 0x1
hidesprite 0x3
fadescreen 0x0
showsprite 0x4
cry 0x11 0x0
msgbox 0x88028FA MSG_NORMAL '"The evolved Pidgeotto is\nattackin..."
waitcry
wildbattle 0x11 0x8 0xD2
fadescreen 0x0
hidesprite 0x4
fadescreen 0x1
setflag 0x755
release
end

'---------------
#org 0x802819
msgbox 0x8802890 MSG_NORMAL '"Mankey seems very sad!"
release
end


'---------
' Strings
'---------
#org 0x80282F
= A wild Mankey wants to join your\nparty should you take it?

#org 0x80286C
= Mankey happily joined your party!

#org 0x8028B1
= [player]recieved a Mankey!!

#org 0x8028C9
= A Pidgey wants to battle but it is\nnot strong.

#org 0x8028FA
= The evolved Pidgeotto is\nattacking with rage!!

#org 0x802890
= Mankey seems very sad!


'-----------
' Movements
'-----------
#org 0x802824
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x0 'Face Down
#raw 0x10 'Step Down (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x8028A9
#raw 0x4E 'Jump Down
#raw 0x60 'Hide
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0xFE 'End of Movements

I fixed this script for you guys a long time ago. I'm kinda sad no one bothered to read all that detailed post I wrote...
Anyways, I encourage you to go and read it again, if there are things you don't understand you are free to ask me.

link: https://www.pokecommunity.com/posts/7525168/
 
So basically what I want to do is make it so that the game thinks you already visited the pokemon center of a town. So that you can use fly at the very beginning of the game to get to all the towns.

I looked at the level script for the poke-centers and this is what came up.
Game: Fire Red
Editor: exe (extreme script editor)
Script:
Spoiler:


Is this the code that makes the game recognize that flying to that pokemon center is enabled? Or do I need to set something else? I could make it so that my creepy pasta game is supposed to be played through normally, but setting the fly stuff to be working would make testing it sooo much easier. (And recording it for youtube videos)
 
So basically what I want to do is make it so that the game thinks you already visited the pokemon center of a town. So that you can use fly at the very beginning of the game to get to all the towns.

I looked at the level script for the poke-centers and this is what came up.
Game: Fire Red
Editor: exe (extreme script editor)
Script:
Spoiler:


Is this the code that makes the game recognize that flying to that pokemon center is enabled? Or do I need to set something else? I could make it so that my creepy pasta game is supposed to be played through normally, but setting the fly stuff to be working would make testing it sooo much easier. (And recording it for youtube videos)

Aren't fly locations just flags? Why not set them all at the beginning of the game?

This post is something that every rom hacker needs book marked, even if just as a reference: https://www.pokecommunity.com/posts/6829256
 
Hi, im new to hacking and i want to know how to change scripts and such. Help is really appreciated, thanks in advance
 
So I'm thinking of making a new 'house' in Viridian forest that teleports you to different areas (new maps mind you) depending on how many badges you have. Would this script work?

Spoiler:


And So on?
 
So I'm thinking of making a new 'house' in Viridian forest that teleports you to different areas (new maps mind you) depending on how many badges you have. Would this script work?

Spoiler:


And So on?

No it will always warp you to the first gym's warp from badges 1-8.

Hint: Introduce a variable that increments per badge.

Better Hint: Noossab Blue's super cheap mode way.

Hi, im new to hacking and i want to know how to change scripts and such. Help is really appreciated, thanks in advance

There are many tutorials for scripting in the tutorial section. I suggest you read up :P
 
Last edited:
So I'm thinking of making a new 'house' in Viridian forest that teleports you to different areas (new maps mind you) depending on how many badges you have. Would this script work?

Spoiler:


And So on?

I believe it would work if you reverse it. That is, start with the eighth badge and work your way to the first.
 
I believe it would work if you reverse it. That is, start with the eighth badge and work your way to the first.

Wait, do you mean do the warps in order of 1-8 badges but check for the badges in reverse order?

No it will always warp you to the first gym's warp from badges 1-8.

Hint: Introduce a variable that increments per badge

Ah so more like

Spoiler:


And so on?
 
Wait, do you mean do the warps in order of 1-8 badges but check for the badges in reverse order?



Ah so more like

Spoiler:


And so on?

She means like this:

Code:
start of script*
checkflag for gym badge 8
if true jump @warp8
checkflag for gym badge 7
if true jump @warp7
....
....
end

I was suggesting something more complicated, but if you're interested it's like:

Code:
compare variable 0x1
if == first warp
compare variable 0x2
if == second warp
...
...
end

Where the variable was incremented the same time the flag is set.
The way she said is easier for you. You shouldn't do my way unless you're doing some sneaky business with the variables later :P
 
I believe it would work if you reverse it. That is, start with the eighth badge and work your way to the first.

She means like this:

Code:
start of script*
checkflag for gym badge 8
if true jump @warp8
checkflag for gym badge 7
if true jump @warp7
....
....
end

I was suggesting something more complicated, but if you're interested it's like:

Code:
compare variable 0x1
if == first warp
compare variable 0x2
if == second warp
...
...
end

Where the variable was incremented the same time the flag is set.
The way she said is easier for you. You shouldn't do my way unless you're doing some sneaky business with the variables later :P
Ahhh girls on the interwebsssss1!!! *runs and hides* (lol I kid :P )

Ah, that makes it so much simpler o.o funny how something sounds so complex in your head but turns out to be really simple. :3
I'm kinda slow to catch on, but when I do it usually sticks :)
I don't plan on doing much sneaky business with variables except making 'ghost' trainers disappear after you beat them. that one I know how to do.

For me the simpler the code stuff is the better. Hum...now to figure out how to set all the flying stuff to work at the beginning of the game :P (or just not at all but maybe will be useful in a later build)

I think before I do ANYTHING I'll get that script to work, and then work on the rest of the stuff.
Cause the creepy pasta as a whole matures throughout the entire game as you go through it.
 
Status
Not open for further replies.
Back
Top