• 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?".
  • Forum moderator applications are now open! Click here for details.
  • 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.

Renegade

Time for real life...
995
Posts
12
Years
I already had it on that thread, yes it's for emerald, and I was just asking because some people might not look there or in other places before here.

Na, there's really no point. If it's already on the Pokecommunity somewhere then there's no reason to post it again. :)
 
14
Posts
11
Years
  • Seen Apr 9, 2013
For example, lets say I have a cave in Pewter City that warps to the Rock Tunnel map. Now if I look at the Pokedex area map it'll tell me they're in Rock Tunnel when really you get there from Pewter (obviously). So I guess what I'm asking is, is there a way for me to tell the Pokedex where a Pokemon is without it really being there? And vise versa?
 

borisjo

Scripter (XSE, pokescript)
9
Posts
13
Years
  • Seen May 16, 2016
I have a question about levelscripts. I've been searching but I can't seem to find an answer , my question is: do levelscripts work if you get back to the map after a wild pokemon battle? Some sort of a safari type, when you catch a pokemon, the script detects it with special2 command and you get warped out of there. Can levelscripts work after a battle and if they can, how do I make it to work? Thanks in advance!
 

Jambo51

Glory To Arstotzka
736
Posts
14
Years
  • Seen Jan 28, 2018
For example, lets say I have a cave in Pewter City that warps to the Rock Tunnel map. Now if I look at the Pokedex area map it'll tell me they're in Rock Tunnel when really you get there from Pewter (obviously). So I guess what I'm asking is, is there a way for me to tell the Pokedex where a Pokemon is without it really being there? And vise versa?

There isn't yet, but I'm working on this very thing for roaming legendaries. If I work it out, I'll post something in R&D, so keep an eye on R&D.

I have a question about levelscripts. I've been searching but I can't seem to find an answer , my question is: do levelscripts work if you get back to the map after a wild pokemon battle? Some sort of a safari type, when you catch a pokemon, the script detects it with special2 command and you get warped out of there. Can levelscripts work after a battle and if they can, how do I make it to work? Thanks in advance!

Level script type 5 triggers every time you refresh the OW screen (with, perhaps the exception of special 0x8E). There isn't one which only triggers after battle, but if you write your script well, that won't matter too much.
 

borisjo

Scripter (XSE, pokescript)
9
Posts
13
Years
  • Seen May 16, 2016
Level script type 5 triggers every time you refresh the OW screen (with, perhaps the exception of special 0x8E). There isn't one which only triggers after battle, but if you write your script well, that won't matter too much.

Thank you for replying! But I have no idea how to make this levelscript type 5 to work, I've tried many things but the screen stays black when I come back to the map after a battle. I hope you know how I can solve this? I have added the script here:

Spoiler:
 

Jambo51

Glory To Arstotzka
736
Posts
14
Years
  • Seen Jan 28, 2018
Thank you for replying! But I have no idea how to make this levelscript type 5 to work, I've tried many things but the screen stays black when I come back to the map after a battle. I hope you know how I can solve this? I have added the script here:

Script removed for brevity.

You can't execute scripts like that using type 5 level scripts. It explicity requires type 2, which in turn, is variable reliant.

Try setting a variable you haven't used inside the type 5 script:
Spoiler:


And then putting the "exit" script in the type 2 level script slot, using (in my example) var 0x40F0 as the control value, and set the "value" to 1.

Your script requires some modification, because you can't warp and then continue execution of the script, so it needs split up into 2 parts.

Type 2 level script (Map 1, same map as type 5 script from above):
Spoiler:


Finally, you need to (in the map you warp back to) add yet another type 2 level script which contains the remaining movement part. The var is still 0x40F0, but the value is now 2:
Spoiler:


I know for a fact that the last 2 parts will work, but I'm not sure about the type 5 level script part. It's worth a try. If it doesn't work, you're looking at ASM hacking to get your desired result, and that's not fun.
 

borisjo

Scripter (XSE, pokescript)
9
Posts
13
Years
  • Seen May 16, 2016
You can't execute scripts like that using type 5 level scripts. It explicity requires type 2, which in turn, is variable reliant.

Try setting a variable you haven't used inside the type 5 script:
Spoiler:


And then putting the "exit" script in the type 2 level script slot, using (in my example) var 0x40F0 as the control value, and set the "value" to 1.

Your script requires some modification, because you can't warp and then continue execution of the script, so it needs split up into 2 parts.

Type 2 level script (Map 1, same map as type 5 script from above):
Spoiler:


Finally, you need to (in the map you warp back to) add yet another type 2 level script which contains the remaining movement part. The var is still 0x40F0, but the value is now 2:
Spoiler:


I know for a fact that the last 2 parts will work, but I'm not sure about the type 5 level script part. It's worth a try. If it doesn't work, you're looking at ASM hacking to get your desired result, and that's not fun.

It's been a while since I scripted XSE so I need to get back into it also I'm dutch and learning a scripting language in English is not the easiest for me so I hope you can explain some more about this.

I understand I need to make 3 scripts, 1 type 5 levelscript that detects that I caught(or that I didn't caught) a specific pokemon.
1 type 2 levelscript that warps me to a certain point and 1 typ2 levelscript that makes me move.
But I don't quite understand how these scripts follow up to each other.
I can't follow the 0x40F0 part, when it's set to 1 does the next script sees it because it is going to set the variable to value 2? Sorry if my grammar isn't good, I'm trying my best!

I hope you will take time to explain this to me, again thanks in advance!
 

Renegade

Time for real life...
995
Posts
12
Years
I have a question. Hope someone can answer :)

My question is this: How can I make the "BF1" titles go away in Pokemon Fire Red? What I mean is, in the Team Rocket hideout, when you go from place to place, the map title that pops up every time you go into a new map is something like "ROCKET HIDEOUT" but then there is another string of text that says "BF1" or "BF2", which stands for bottom floor. How would I go about getting rid of these strings of text?

Thank you for your time in advanced.
 
14
Posts
11
Years
  • Seen Apr 9, 2013
I have a question. Hope someone can answer :)

My question is this: How can I make the "BF1" titles go away in Pokemon Fire Red? What I mean is, in the Team Rocket hideout, when you go from place to place, the map title that pops up every time you go into a new map is something like "ROCKET HIDEOUT" but then there is another string of text that says "BF1" or "BF2", which stands for bottom floor. How would I go about getting rid of these strings of text?

Thank you for your time in advanced.

In the Advnace Map Header go to "Show Name on Entering" and change it to 02??
That should do the trick.

I wrote a level script that will show certain sprites if certain flags are set. The first time I visited it set the sprites correctly. But now when I go back there, nothing shows up! Why is that? Is there a way to write a level script to make sprites appear/disappear every time you enter?
 
Last edited:

Renegade

Time for real life...
995
Posts
12
Years
In the Advnace Map Header go to "Show Name on Entering" and change it to 02??
That should do the trick.

I wrote a level script that will show certain sprites if certain flags are set. The first time I visited it set the sprites correctly. But now when I go back there, nothing shows up! Why is that? Is there a way to write a level script to make sprites appear/disappear every time you enter?

What is the level script set to? 02 Validates Values, or what?
 

Renegade

Time for real life...
995
Posts
12
Years
My double post was combined. The level script was a separate question that I was asking. What you need to set to 02?? is in the header tab under "show name on entering".

Yes, I know, and it worked. Thanks for that by the way. But I was asking what you set your level script to.
 

DrFuji

[I]Heiki Hecchara‌‌[/I]
1,691
Posts
14
Years
I have a question. Hope someone can answer :)

My question is this: How can I make the "BF1" titles go away in Pokemon Fire Red? What I mean is, in the Team Rocket hideout, when you go from place to place, the map title that pops up every time you go into a new map is something like "ROCKET HIDEOUT" but then there is another string of text that says "BF1" or "BF2", which stands for bottom floor. How would I go about getting rid of these strings of text?

Thank you for your time in advanced.

I know PunsAreFun answered your question, but from the sounds of this post it seemed like you wanted to retain the 'ROCKET HIDEOUT' text but get rid of the B1F part. Its an easy thing to do, but I'm also going to explain how (both types of) the floor numbers are activated in case you or anybody else ever needs to edit them/ add them back in :P

The floor number is determined by the third and second last bytes in the map header - The map header can be viewed by going into the header tab of Advance Map and pressing Ctrl+H. Here is a comparison of the main Celadon City map, the first floor of the Department Store and the first floor of the Rocket Hideout respectively.

FloorNumbers.png


The bytes in the red and blue boxes are the ones we're interested in (though more-so the red one). The blue boxes are highlighting a feature that is already present in the header setting - It is actually the 'Show name on entering' option which is available in the default header tab. I'm just highlighting it here since it needs to be set to 4, 5, 6 or 7 in order for the drop down box to be displayed.

The game determines whether it should designate a floor number to the map based on the second byte. If you're climbing a tower the byte ascends in a pretty logical fashion: 0x1 = 1F, 0x2 = 2F, 0x3 = 3F etc, all the way up to 0x63 (99F) because the game can't display a third digit pushing it over into the 100's.

The basement floors have another system entirely which is slightly less apparent. They begin at 0xFF and start to descend, making the pattern: 0xFF = B1F, 0xFE = B2F, 0xFD = B3F etc. Essentially, the basement floor numbering is exactly the same as regular flooring, except in reverse. It also stops at 0x9D (B99F) because once again the display would require an extra character to be displayed, causing it to glitch slightly.

With this information there are two options which are now open to you: Remove the map name display entirely (by changing whether it should be displayed or not) or just get rid of the numbering. Since you want the latter, just change the byte in the red box to 00 and those pesky floor numbers should never trouble you on that map again :D

I wrote a level script that will show certain sprites if certain flags are set. The first time I visited it set the sprites correctly. But now when I go back there, nothing shows up! Why is that? Is there a way to write a level script to make sprites appear/disappear every time you enter?

The 02 type of level script will only activate when the chosen variable is set to a chosen value (What you've put into the Flag and Value boxes), but simultaneously the variable's value needs to be changed within the script to prevent it from repeating forever. Essentially this means that the script will only be played once upon entering the map but the variable's value will need to be reset in order for it to activate a second time when you enter again. Its very finicky and awkward to have a type 02 script activate every time you enter a map, especially if the player can fly to that exact map.

If you want a script that plays every time, you can use level script numbers 03, 05 and 07, whose descriptions are shown in A-Map. They don't need a variable/ value combination to be activated and checkflag commands should work so they're great for the kind of thing you're talking about. Hopefully this helps.
 
1
Posts
11
Years
  • Seen Oct 19, 2012
Hi everbody!

I didn't really know where to post my question, so i decided to post it here and hope it isn't too long.

I am currently working on a Pokemon Emerald Hack and since i'm not all that experienced, i need your help with the program "Advance Trainer".
I started off with the tool "Advance Starter" and changed the starters to Meowth, Snubbull and Whismur.
Now i'm trying to change the Rivals Starter-Pokemon directly in "Advance Trainer" to Mankey, Tyrogue and Makuhita. I first of all gave all a new offset cause of the custom moveset and item. It always works for the first Pokemon i change, but as soon as i change the second, the first one gets either reset or gets really strange movesets and items.

An example would be: I change the Rival with the Mudkip as Starter and give him a Tyrogue, i give it the moves "Fake Out" and "Tackle". Now, if i go and change the Rival with the Torchic to a Mankey, the Tyrogues Moveset changes to stuff like "Pay Day". If i go change it back, the Mankey gets reset and there's a Torchic again.

I guess it has to do with some sort of link those trainer files have to each other, does someone know how i can fix this?

Too, i'd really love to implement my own music, would be grateful if you can link me the most easy-to-understand guide in this forum!

Best regards and sorry for my bad English, i'm a foreigner.
RanQrusu
 
Last edited:
17
Posts
12
Years
  • Seen Mar 27, 2014
When I try and load my Emerald ROM in A-Trainer, I get an error message saying "Subscript is out of range - DrawTile8@ModLZ77", and then I can't proceed any farther? This is the first time that this has happened when I've used it, so I'm not sure what the issue is. It isn't just my modified ROM, a clean one gets the same message.

Also, the Bug.txt file gets this printed out into it: "20121016|224113|6.1.7601|0.9.1|DrawTile8|9|modLZ77|Subscript out of range|4" if that helps identify the problem.

This is kinda a big deal, so if someone could help me fix this, I'd really appreciate it.
 
215
Posts
11
Years
  • Seen Jul 14, 2020
Is there a way to create new routes in advanced map?
I have routes 1-25 but when I create a new map and give it a new route, it will just change the name of the map that I originally used.
Can someone give me very detailed instructions on how to create a new route. Please and thank you.
 

itman

Back to ROM hacking. :D
98
Posts
16
Years
  • Age 30
  • Seen Feb 5, 2014
Is there a way to create new routes in advanced map?
I have routes 1-25 but when I create a new map and give it a new route, it will just change the name of the map that I originally used.
Can someone give me very detailed instructions on how to create a new route. Please and thank you.

Are you trying to add more routes, as in route#26, or trying to just make a new route in general?

For the names, you can only replace the names; you can't add more. So if you wanted to make a "Route 26", you'd have to change that map to an existing name, and then edit that name. So if you changed it to, let's say "Tanoby Ruins" and then edited it to say "Route 26", that name will now permanently be "Route 26" for any map using the old "Tanoby Ruins" name.
 
Status
Not open for further replies.
Back
Top