- 5,256
- Posts
- 17
- Years
- Age 27
- Leicester, UK
- Seen Mar 31, 2025
Make a level script on the maps outside where Lugia spawns and clear the flag that you set for his Person ID.
Make a level script on the maps outside where Lugia spawns and clear the flag that you set for his Person ID.
Umm.... Can you make it a bit simpler?....
When you made Lugia disappear, you set a flag that was the same as its person ID in A-map, correct? Now, create a map script outside of that room which clears that flag. This will make Lugia show up again the next time you go back into the room which Lugia resides in. This will be infinate unless you set another flag to prevent this script from happening again, or changing the var whcih is attached to the map script.
What command do I use in A-map for the level script?
How about a sample? Not specifically for it. I just want to see its structure.
It is really this simple:
#Dynamic 0x800000
#org @start
clearflag 0x[Person ID of Lugia]
end
This will make lugia infinately appear in that cave. If you want to make it only reapear once:
#Dynamic 0x800000
#org @start
checkflag 0x[a flag]
if 0x0 goto @Lugia
end
#org @Lugia
clearflag 0x[Person ID of Lugia]
setflag 0x[a flag]
end
Since this script only messes with flags, it will work best under map script type 03 in A-Map.
So if Lugia's person ID is 1, I put 0x001?
And the flag is any fromm 0x1 to 0x8C2 right?
Also, if I want multiple of them, do I make one for each of them?
I believe flags from the 200 - 2FF range are perfectly usable, and Poké Ball events tend to use the flags in the 100 area so I'm guessing they might be safe too. But yeah, just use, say, flag 200 and flag 201 for the flags that karatekid gave you.
Is it safe to use the two Saffron City maps for two separate maps?
Why are there extra map header banks for ROUTE 4 and ROUTE 10? I cant open the second copies of the map and if I edit them, will this mess with the game?
Also why are they there anyway? Is it the Pokecentres and flight spots maybe?
Code:
#dynamic 0x800000
#org @start
lock
faceplayer
msgbox @monster 0x6
random 0x5
compare 0x800D 0x0
if 0x1 goto @level1
compare 0x800D 0x1
if 0x1 goto @level2
compare 0x800D 0x2
if 0x1 goto @level3
compare 0x800D 0x3
if 0x1 goto @level4
compare 0x800D 0x4
if 0x1 goto @level5
end
#org @monster
= Im'ma troll you!
#org @level1
wildbattle 0x1 0x1 0x1
random 0x2
compare 0x800D 0x0
if 0x1 goto @WIN
compare 0x800D 0x1
if 0x1 goto @LOSE
end
#org @level2
wildbattle 0x1 0x2 0x1
random 0x2
compare 0x800D 0x0
if 0x1 goto @WIN
compare 0x800D 0x1
if 0x1 goto @LOSE
end
#org @level3
wildbattle 0x1 0x3 0x1
random 0x2
compare 0x800D 0x0
if 0x1 goto @WIN
compare 0x800D 0x1
if 0x1 goto @LOSE
end
#org @level4
wildbattle 0x1 0x4 0x1
random 0x2
compare 0x800D 0x0
if 0x1 goto @WIN
compare 0x800D 0x1
if 0x1 goto @LOSE
end
#org @level5
wildbattle 0x1 0x5 0x1
random 0x2
compare 0x800D 0x0
if 0x1 goto @WIN
compare 0x800D 0x1
if 0x1 goto @LOSE
end
#org @WIN
giveitem 0x8B 0x1 0x1
hidesprite 0x1
setflag 0x200
end
#org @LOSE
hidesprite 0x1
setflag 0x200
end
I don't know about your first and third questions, but for the second one you need to set a flag (see karatekid's link for safe flags) in the script and then assign that same flag to the Person ID of the Person Event you want to hide in Advance Map.
hidepsrite 0x1
setflag 0x200
1) Find the pal in the OBJ view and make it in APE using the info given about each color. Then compress and insert into the rom and search for what you inserted. Basically, recreate the palette and search for the recreation which should be the same as the original.I have three questions:
1. What is the palette for this:
![]()
I have tried to find it using the VBA BG Map Palette Memory Technique but its palette is in the OBJ window.
2. This one:
Whenever I compile this, it works well except for the hidesprite section. When I finish the battle and it's supposed to hidesprite, it hides, but when I take 1 STEP, the sprite reappears. I don't know what has gone wrong.Spoiler:Code:Code: #dynamic 0x800000 #org @start lock faceplayer msgbox @monster 0x6 random 0x5 compare 0x800D 0x0 if 0x1 goto @level1 compare 0x800D 0x1 if 0x1 goto @level2 compare 0x800D 0x2 if 0x1 goto @level3 compare 0x800D 0x3 if 0x1 goto @level4 compare 0x800D 0x4 if 0x1 goto @level5 end #org @monster = Im'ma troll you! #org @level1 wildbattle 0x1 0x1 0x1 random 0x2 compare 0x800D 0x0 if 0x1 goto @WIN compare 0x800D 0x1 if 0x1 goto @LOSE end #org @level2 wildbattle 0x1 0x2 0x1 random 0x2 compare 0x800D 0x0 if 0x1 goto @WIN compare 0x800D 0x1 if 0x1 goto @LOSE end #org @level3 wildbattle 0x1 0x3 0x1 random 0x2 compare 0x800D 0x0 if 0x1 goto @WIN compare 0x800D 0x1 if 0x1 goto @LOSE end #org @level4 wildbattle 0x1 0x4 0x1 random 0x2 compare 0x800D 0x0 if 0x1 goto @WIN compare 0x800D 0x1 if 0x1 goto @LOSE end #org @level5 wildbattle 0x1 0x5 0x1 random 0x2 compare 0x800D 0x0 if 0x1 goto @WIN compare 0x800D 0x1 if 0x1 goto @LOSE end #org @WIN giveitem 0x8B 0x1 0x1 hidesprite 0x1 setflag 0x200 end #org @LOSE hidesprite 0x1 setflag 0x200 end
BTW, I made that script myself so sorry if it looks lame.
3. How to make a script for a FireRed ROM installed with RTC that for example, I want a certain building open from 6:00 to 19:00 and closed from 19:01 to 5:99?
1) Find the pal in the OBJ view and make it in APE using the info given about each color. Then compress and insert into the rom and search for what you inserted. Basically, recreate the palette and search for the recreation which should be the same as the original.
2) You solved
3) DNS tells you where it writes the time to in the RAM. Using the comparefarbyte commands, you can read the time and manipulate it. I would suggest loading the hour into one var and the minutes into another and comparing them to values to calculate the time.
1. I tried doing that and its says "Palette not found." When I searched again it found 00000000 as the same and then when you play it, it crashes.
3. Would it be long? Because from what I know I will have to do a command for each hour, time or day. Is it really possible to do this and have a specific time e.g 19:59? I'll research on it.