Welcome to the PokéCommunity!

Hi there! Thanks for visiting PokéCommunity. We’re a group of Pokémon fans dedicated to providing the best place on the Internet for discussing ideas and sharing fan-made content. Welcome! We’re glad you’re here.

In order to join our community we need you to create an account with us. Doing so will allow you to make posts, submit and view fan art and fan fiction, download fan-made games, and much more. It’s quick and easy; just click here and follow the instructions.

Hey all, I wrote a script for my starter Pokemon, an Eevee, and when I tested it in my ROM, all that happened was the noise you hear when you click a text box. If someone could help me out, I'd appreciate it. Here's the script:

Hey all, I wrote a script for my starter Pokemon, an Eevee, and when I tested it in my ROM, all that happened was the noise you hear when you click a text box. If someone could help me out, I'd appreciate it. Here's the script:

Here I fixed your script I found numerous of errors in your script especially in the first part you didn't even have a decision command to check if the user picked yes or no.

Also you've placed a release command in your script but it doesn't have any lock command in it. Also the givepokemon command 133 is Eevee's Pokemon No. so you have to convert to 133 to hex, so it will be 85.

well its quite simple...
the character you want to follow has a movment sequence... you just have to copy that movement sequence with your character... only one step behind.

if character 1 and character 2 are beside eachother face to face... (character one is on the left)
if character 1s sequence looks like Walk_down walk_down walk_down walk_left
character 2 can be walk_left walk_down walk_down walk_down walk_left

notice how character 2 has a step before the setps that character 1 has... that means he should be following... movement commands are simple really.

you will want to check the players facing most likely... this will tell you weather you are standing above, below, left or right of the character you want to follow, so you know which movements to make to do the following...

#org 0x8800290(I am facing right, so I am to the left of Oak, to follow I must walk right then follow)
M walk_right walk_right walk_right walk_right walk_right walk_right walk_right hide end

#org 0x88002A0(I am facing left, so I am to the right of Oak, to follow I must get out of oaks way by going up, then back down... then follow)
M walk_up look_down walk_down walk_right walk_right walk_right walk_right walk_right hide end

(another option would have been to check playerfacing before moving oak, then at each result (up down left right) move Oak and the player, this way instead of having the player get out of oaks way, Oak could walk around the player...)

This is my example from when (in my hack) the player chooses to catch their own starting pokemon... you talk to Oak, (after he offers you his 3 choices) and he offers you the chance to catch your own starter... you say yes and upon selecting yes this script is run (he walks and the player follows, depending on the players location or which way he is facing oak)

So I've been hacking Fire Red for a few days now with XSE 1.0, and I recently came across a download link for 1.1 (FINALLY) so I started using it because it's less buggy, etc. and whether this is related to my problem or not, I'm not sure, but the script shown below will not do what I want it to do.

What's supposed to happen:

Rival's song plays
Rival says "Wait up"
Player faces rival
Rival approaches player
Rival tells you your pokemon are bad
Player jumps to the side (looking like rival pushed him)
Rival walks out the door
A variable is set so that the script doesn't occur again

What actually happens:

Rival's song plays
Rival says "Wait up"
Rival DOES NOT approach the player and stays in the same spot
Text box saying your pokemon are bad still appears
Player still jumps to the side
Rival stays in the same old spot
A variable is set so that the script doesn't occur again

So my obvious problem is that my applymovement portion of the script is not working.
The sprite I am trying to move does have the person event #5 as specified in the script, so I'm not sure what the problem is... I have to have 3 of these scripts, and one of them works (they are EXACTLY the same), the other two do not, but I think I may have compiled the first one using XSE 1.0 if that means anything.

So I've been hacking Fire Red for a few days now with XSE 1.0, and I recently came across a download link for 1.1 (FINALLY) so I started using it because it's less buggy, etc. and whether this is related to my problem or not, I'm not sure, but the script shown below will not do what I want it to do.

What's supposed to happen:

Rival's song plays
Rival says "Wait up"
Player faces rival
Rival approaches player
Rival tells you your pokemon are bad
Player jumps to the side (looking like rival pushed him)
Rival walks out the door
A variable is set so that the script doesn't occur again

What actually happens:

Rival's song plays
Rival says "Wait up"
Rival DOES NOT approach the player and stays in the same spot
Text box saying your pokemon are bad still appears
Player still jumps to the side
Rival stays in the same old spot
A variable is set so that the script doesn't occur again

So my obvious problem is that my applymovement portion of the script is not working.
The sprite I am trying to move does have the person event #5 as specified in the script, so I'm not sure what the problem is... I have to have 3 of these scripts, and one of them works (they are EXACTLY the same), the other two do not, but I think I may have compiled the first one using XSE 1.0 if that means anything.

You would need to use the setdoor animation commands and the playsong commands in conjunction with the hide/showsprite commands. Doors are quite fun:p.

I'm wondering if the problem you are having deals with the raws. Try giving them all their own lines. If you notice, the player's movements are only one raw and those work. So, give it a try. It couldn't hurt.

Also, check to make sure it deffinaetely is the the person number, not the event number. Here is an img:

Spoiler:

I know it is in Spanish, (i don't speak Spanish, so if I can read it, so can you:p) but the number you should be looking at for Gary is "No. de Gente:", which is just under the "Delete Event" button.

You would need to use the setdoor animation commands and the playsong commands in conjunction with the hide/showsprite commands. Doors are quite fun:p.

I'm wondering if the problem you are having deals with the raws. Try giving them all their own lines. If you notice, the player's movements are only one raw and those work. So, give it a try. It couldn't hurt.

Also, check to make sure it deffinaetely is the the person number, not the event number. Here is an img:

I know it is in Spanish, (i don't speak Spanish, so if I can read it, so can you:p) but the number you should be looking at for Gary is "No. de Gente:", which is just under the "Delete Event" button.

Alright, I tried giving each movement their own #raw, but still no luck unfortunately. I also double checked to make sure I had the right person event no., and I did so I'm not sure what the problem could be! I get the feeling maybe there was a change in the way XSE works with the applymovement command from 1.0-1.1 possibly?

Alright, I tried giving each movement their own #raw, but still no luck unfortunately. I also double checked to make sure I had the right person event no., and I did so I'm not sure what the problem could be! I get the feeling maybe there was a change in the way XSE works with the applymovement command from 1.0-1.1 possibly?

Alright, so I messed around with a few things and I'm just gonna restate some things that may not have been clear earlier...

- I need 3 of these scripts
- One of them works, the other two do not

So in my said messing around, I tried pointing the script events that weren't working to the same pointer as the script event that does work and the same thing happened, it didn't work. However, if I move the script events to another place on the map, it suddenly works! But since the script is not where it should be, it obviously doesn't work right. So the question now is why don't the scripts work where they're supposed to?

I am having much trouble with the callasm command. I believe it's because I installed JPAN's hacked engine. callasm works with a clean ROM, but it doesn't work on my hacked ROM (the game crashes), which I've been working on for a very long time and have ZERO motivation to move to a new ROM.
I'd like to know if maybe the JPAN hacked engine requires something other than callasm for ASM scripts to play out. I know the engine uses specials for its asm scripts, but I don't understand why callasm isn't working for me.

I am having much trouble with the callasm command. I believe it's because I installed JPAN's hacked engine. callasm works with a clean ROM, but it doesn't work on my hacked ROM (the game crashes), which I've been working on for a very long time and have ZERO motivation to move to a new ROM.
I'd like to know if maybe the JPAN hacked engine requires something other than callasm for ASM scripts to play out. I know the engine uses specials for its asm scripts, but I don't understand why callasm isn't working for me.

The most common problem is adding 1 to the offset of the ASM routine. I have spent hours trying to fix routines when all it was, was that simple problem. I'm fairly certain it works the same since a friend of mine used callasm with JPAN's hack and there aren't any changes made to that command listed in his documentation.

Quote originally posted by TempixTL:

Alright, so I messed around with a few things and I'm just gonna restate some things that may not have been clear earlier...

- I need 3 of these scripts
- One of them works, the other two do not

So in my said messing around, I tried pointing the script events that weren't working to the same pointer as the script event that does work and the same thing happened, it didn't work. However, if I move the script events to another place on the map, it suddenly works! But since the script is not where it should be, it obviously doesn't work right. So the question now is why don't the scripts work where they're supposed to?

karatekid552, I have been adding 1. Again, it works on a clean ROM but not my hack. The ASM hex data is placed on an even address. It ends with a 0. So, the offset referenced in the XSE script ends with a 1.

karatekid552, I have been adding 1. Again, it works on a clean ROM but not my hack. The ASM hex data is placed on an even address. It ends with a 0. So, the offset referenced in the XSE script ends with a 1.

I know it works in your hack, but sometimes, when you move things, you forget to do something. Trust me, it happens a lot.

Have you tried debugging it? Also, what is this routine and what does it do? Can I see it? It could be the routine itself since a lot was changed and shifted in JPAN's hack and references in the routine may no longer exist.

Definitely, here's a YouTube video: http://youtu.be/HblZ9n9HK8Y
The first part is the working script, the second one is the failing script.

I do also have a picture:

Spoiler:

The highlighted event is the one working script, and there is another script event directly under it for something completely different. The two script events on the side also have the same script events under them, and they also have a warp under that which serves no purpose. And I have tried moving the script events under the broken ones somewhere else, but no dice. Same thing with the warps.

I know it works in your hack, but sometimes, when you move things, you forget to do something. Trust me, it happens a lot.

Have you tried debugging it? Also, what is this routine and what does it do? Can I see it? It could be the routine itself since a lot was changed and shifted in JPAN's hack and references in the routine may no longer exist.

Figured it out. The character I was using for the script wasn't working right for some reason. I'm fine now. Sorry if I wasted your time.

Edit (3rd time now, probably): My gender checker ASM script I wrote myself works! It was pointless because XSE already has a checkgender command, but I did it just for practice. Now I can sleep in peace, knowing I didn't waste the whole day learning ASM.

Quote originally posted by TempixTL:

Definitely, here's a YouTube video: http://youtu.be/HblZ9n9HK8Y
The first part is the working script, the second one is the failing script.

I do also have a picture:

Spoiler:

The highlighted event is the one working script, and there is another script event directly under it for something completely different. The two script events on the side also have the same script events under them, but one of them also has a warp under that which serves no purpose. And I have tried moving the script events under the broken ones somewhere else, but no dice. Same thing with the one warp.

This is occurring because you cannot move a sprite that's off the screen. It has to be within 6 or less tiles from the player I believe. So, the sprite disappears when you have the script thing all the way down there and it is no longer loaded. You'll need to have the script run when you're closer to the rival. Or, what you could do is..
1. Put two rivals on that map
2. Give each of them flags
3. Put the sprite in the video in his position as it is now.
4. Put the second rival sprite somewhere where he can't be seen. Or, alternatively, you can use a setmaptile script on the map and use the hidesprite command in it so that the second rival sprite disappears before you enter.
5. On the script tile event, use setflag 0x[first rival event's flag number] to hide the first rival sprite. Then, use showspritepos 0x[event number of second rival sprite] and 0x[x coordinate] 0x[y coordinate] to show the second rival sprite at a designated position that is 6 tiles from your player. Then, have him walk down and do the script similarly as it initially had been.

Sorry this is kind of badly written. If you need me to clarify anything, I can.

This is occurring because you cannot move a sprite that's off the screen. It has to be within 6 or less tiles from the player I believe. So, the sprite disappears when you have the script thing all the way down there and it is no longer loaded. You'll need to have the script run when you're closer to the rival. Or, what you could do is..
1. Put two rivals on that map
2. Give each of them flags
3. Put the sprite in the video in his position as it is now.
4. Put the second rival sprite somewhere where he can't be seen. Or, alternatively, you can use a setmaptile script on the map and use the hidesprite command in it so that the second rival sprite disappears before you enter.
5. On the script tile event, use setflag 0x[first rival event's flag number] to hide the first rival sprite. Then, use showspritepos 0x[event number of second rival sprite] and 0x[x coordinate] 0x[y coordinate] to show the second rival sprite at a designated position that is 6 tiles from your player. Then, have him walk down and do the script similarly as it initially had been.

Sorry this is kind of badly written. If you need me to clarify anything, I can.

compare PLAYERFACING DOWN
if == call 0x8741BD2 ' Equal To
compare PLAYERFACING LEFT
if == call 0x8741BDD ' Equal To
compare PLAYERFACING RIGHT
if == call 0x8741BC7 ' Equal To

but it enter always in DOWN, also when my player is pointing the right or the left. Why? Maybe an error in the PKSV variable translation and i have to put directly the value instead of RIGHT, LEFT? If yes, which are these values?

I moved the people who were being told to move closer and now that works but still no messages show up. I changed the message types to 0x6 and added a setvar but it didnt change anything. I've read through that tutorial before but have not been able to find any information on the s-tiles in there so I've just been trying things out. Also I don't know if this could be related but when I try to make a level script that displays a message it just displays

This is a test message
this is a signpost

over and over again. Everything else in the level script works fine, just not messages. just like my s-tile script.

Thanks for the help. I really appreciate the speedy reply.

I've been trying to make more scripts and I have not been able to make a message display yet. I have even tried copying example scripts directly from tajaros' tutorial and using them in both emerald and fire red. I cant figure out what I'm doing wrong.

I moved the people who were being told to move closer and now that works but still no messages show up. I changed the message types to 0x6 and added a setvar but it didnt change anything. I've read through that tutorial before but have not been able to find any information on the s-tiles in there so I've just been trying things out. Also I don't know if this could be related but when I try to make a level script that displays a message it just displays

This is a test message
this is a signpost

over and over again. Everything else in the level script works fine, just not messages. just like my s-tile script.

Thanks for the help. I really appreciate the speedy reply.

I've been trying to make more scripts and I have not been able to make a message display yet. I have even tried copying example scripts directly from tajaros' tutorial and using them in both emerald and fire red. I cant figure out what I'm doing wrong.

I moved the people who were being told to move closer and now that works but still no messages show up. I changed the message types to 0x6 and added a setvar but it didnt change anything. I've read through that tutorial before but have not been able to find any information on the s-tiles in there so I've just been trying things out. Also I don't know if this could be related but when I try to make a level script that displays a message it just displays

This is a test message
this is a signpost

over and over again. Everything else in the level script works fine, just not messages. just like my s-tile script.

Thanks for the help. I really appreciate the speedy reply.

I've been trying to make more scripts and I have not been able to make a message display yet. I have even tried copying example scripts directly from tajaros' tutorial and using them in both emerald and fire red. I cant figure out what I'm doing wrong.

By this description, you are using an old version of XSE. V1.0.0 most likely. Go to Gamer2020's toolbox. There you will find his most recent version (just a couple of weeks ago, if that) which has had several bugs fixed.

The PokéCommunity

Meta

Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, or The Pokémon Company International. We just love Pokémon.