The secret of the Move Camera Script (and extras) Page 2

Started by cooley June 11th, 2008 2:09 PM
  • 31357 views
  • 58 replies

cooley

///Keepin' it simple

Age 28
Male
United States
Seen December 5th, 2014
Posted December 2nd, 2014
1,148 posts
16.3 Years
Nice video, it's a good idea. :)

Also, your Level Script guide is very nice, however I never did my level scripts like that. Then again, I taught myself, since nobody loves me...

Still, very nice addition, can't wait to see what else you can come up with, if anything.
You did? So did I, xD
I experimented until I got it right every time, what other way were you talking about? Was it through hex?

If @begin is the 802000 then yes I did.
What kind of map are you using? Is it a Town map, like pallet town, or an indoor map, like the player's room.

If it's pallet town, then you have to enter pallet town from a house or from a path(e.g. Route 1)
If it's the player's room, then that might not work sometimes. I haven't mastered Level scripting yet, so I have to see why things like this happen.

Megiddo-san

Barium - Summer '12 Return?

Age 31
Male
Where you least expect it
Seen February 15th, 2016
Posted August 4th, 2012
1,308 posts
15.4 Years
It's a pokemon center. It's ok. Adiktus helped me fix it. The problems are that a-map's level script tool is buggy and that 0x4000 resets to 0 when you exit the map. So it happens again.

Hashire! Asu e tsudzuku shinka no micha wa

ZodiacDaGreat

Working on a Mobile System

Age 30
Male
South Pacific
Seen April 25th, 2017
Posted August 14th, 2013
429 posts
16.3 Years
It's a pokemon center. It's ok. Adiktus helped me fix it. The problems are that a-map's level script tool is buggy and that 0x4000 resets to 0 when you exit the map. So it happens again.
I don't think so, you must know that the game itself uses some variables, so I'd say for you not to use 4000 & 4001, maybe the 8000s as well. Try variables starting from 7000.

Darthatron

巨大なトロール。

Age 31
Male
Melbourne, Australia
Seen February 2nd, 2015
Posted October 28th, 2014
1,152 posts
17.4 Years
You did? So did I, xD
I experimented until I got it right every time, what other way were you talking about? Was it through hex?
Well, that was one of the ways. :P This way seems to be better though. :)
あなた は しきしゃ です
わたし は ばか です

Megiddo-san

Barium - Summer '12 Return?

Age 31
Male
Where you least expect it
Seen February 15th, 2016
Posted August 4th, 2012
1,308 posts
15.4 Years
Don't use 4000. The event will happen more than once. Goto the grayed script offset in a hex editor. You should see something like 004000008008. If there is FFFF after the 08, change it to 0000.

Hashire! Asu e tsudzuku shinka no micha wa

Ghost

In the Mainframe!

Male
Las Vegas
Seen 4 Days Ago
Posted February 13th, 2023
742 posts
15.4 Years
Don't use 4000. The event will happen more than once. Goto the grayed script offset in a hex editor. You should see something like 004000008008. If there is FFFF after the 08, change it to 0000.
Finally it worked!!
Thanks Megiido.
United States
Seen May 15th, 2020
Posted April 25th, 2019
221 posts
16.2 Years
Well, I have my own concept of "Map Scripting". It works well. I'm not entirely sure how it works, but it does and that's all that really matters. But you know, you can do map scripting in advance map 1.82 or anything lower. All you need to do is look in the advance/professional view of the header and it's all right there. But I guess it's easier for noobs that there's a map scripting box. It kind of ruins the fact that only masters can do it though...
And it's also kind of annoying because it took me like, three days to learn and master it and now I can't do anything without my hex editor. Good thing Ultraedit never expires for me! :P So you'd understand what the bytes like 03 FF FF FF 08 04 FF FF FF 08 02 FF FF FF 08 00 represent in the hex editor huh?

cooley

///Keepin' it simple

Age 28
Male
United States
Seen December 5th, 2014
Posted December 2nd, 2014
1,148 posts
16.3 Years
Well, I have my own concept of "Map Scripting". It works well. I'm not entirely sure how it works, but it does and that's all that really matters. But you know, you can do map scripting in advance map 1.82 or anything lower. All you need to do is look in the advance/professional view of the header and it's all right there. But I guess it's easier for noobs that there's a map scripting box. It kind of ruins the fact that only masters can do it though...
And it's also kind of annoying because it took me like, three days to learn and master it and now I can't do anything without my hex editor. Good thing Ultraedit never expires for me! :P So you'd understand what the bytes like 03 FF FF FF 08 04 FF FF FF 08 02 FF FF FF 08 00 represent in the hex editor huh?
Yeah, I do now

E.G.
03 FF FF FF 08 = Level script #3(on entering map), FF FF FF 08 = Pointer to script
04 FF FF FF 08 = Level script #4(validates values, and loads handler to 0x03000F28), FF FF FF 08 = Pointer to script
02 FF FF FF 08 = Level script #2(validates values, and loads handler to 0x03000EB0), FF FF FF 08 = Pointer to script

02 and 03 are the most used throughout the game.
04 is really for Immediate activites, they have only been used for "spriteface 0xFF 0x2"

But it's really up to people to experiment. I do not have time, you know, my hack, my programs, and my tutorials. xD

how's that for :P lol

cooley

///Keepin' it simple

Age 28
Male
United States
Seen December 5th, 2014
Posted December 2nd, 2014
1,148 posts
16.3 Years
Well, I just wanted to know does anyone need anything to be added to this tutorial?

@adiktus: I see, your the level script inserter of a few hacks, which is pretty much not needed because, it is so easy. You make people think you can do these advanced things, when they're not really.

cooley

///Keepin' it simple

Age 28
Male
United States
Seen December 5th, 2014
Posted December 2nd, 2014
1,148 posts
16.3 Years
Well, I never knew about the one in Wah, I knew how it was done, but I was using the wrong specials before.

- HackMew -'s XSE reminded me of it, then I asked him, and then I tested, and experimented. Until I perfected it. So no, I did not know about the one on Wah, I can't even read spanish, xD

cooley

///Keepin' it simple

Age 28
Male
United States
Seen December 5th, 2014
Posted December 2nd, 2014
1,148 posts
16.3 Years
how can i made a level script, that the message always apear?
Yeah, sorry about that. I'll update the first post with how to fix this. You see, Advance map overwrites the values with 'FFFF'. Which is why most level scripts won't work if you do it through advance map. I'll update the first post with how to make a level script through XSE, or for those who don't like XSE, through hex. The only thing you'll need from A-map is the 'Professional Header' and the 'Map script offset' from it.

You will eventually need XSE to check the script though...And Advance Map with a Hex editor.
Get prepared everyone!

Tyrantrum

Age 29
Male
Seen May 18th, 2021
Posted June 13th, 2020
5,812 posts
15.6 Years
Here's what I don't get about level scripts.
When u insert them, how A-Map and the script know where to start.

Explanation:
Like, if u want a level script to happen right when u come downstairs from ur bedroom, how will it know if the script will work at the staircase or at the front door? :\

cooley

///Keepin' it simple

Age 28
Male
United States
Seen December 5th, 2014
Posted December 2nd, 2014
1,148 posts
16.3 Years
Here's what I don't get about level scripts.
When u insert them, how A-Map and the script know where to start.

Explanation:
Like, if u want a level script to happen right when u come downstairs from ur bedroom, how will it know if the script will work at the staircase or at the front door? :\
I dunno, xD
I've tried to do that with Level scripts, but it'll only work if you use "setmaptile" scripts or "On entering map/not on menu close" or "Load handler to 0x03000F28"

But the scirpts I just mentioned, they can't use messages, applymovement, or anything that requires "Pointer to data to load". They are however very useful, and can check if a flag has been set, then do something else. These are some of the many compatible commands I've encountered.

checkflag (0x2B
clearflag (0x2A)
hidesprite (0x53)
movesprite2 (0x63)
showsprite (0x55)
setfarbyte (0x13)
setflag (0x29)
spriteface (0x5B)
writebytetooffset (0x11)

KhaosKnight

The 1 and only Khaotic Hacker

Seen May 28th, 2015
Posted September 7th, 2012
355 posts
15.4 Years
I dunno, xD
I've tried to do that with Level scripts, but it'll only work if you use "setmaptile" scripts or "On entering map/not on menu close" or "Load handler to 0x03000F28"

But the scirpts I just mentioned, they can't use messages, applymovement, or anything that requires "Pointer to data to load". They are however very useful, and can check if a flag has been set, then do something else. These are some of the many compatible commands I've encountered.

checkflag (0x2B
clearflag (0x2A)
hidesprite (0x53)
movesprite2 (0x63)
showsprite (0x55)
setfarbyte (0x13)
setflag (0x29)
spriteface (0x5B)
writebytetooffset (0x11)

Ok, so like if i was going to make a setmaptile script i cant make it like this

  
#Dynamic 0x800000
 
#org @main
checkflag 0x201
if 0x1 goto @change
release
end
 
#org @change
movesprite2 0x15 0x11 0x08
setmaptile 0x14 0x7 0x78 0x1
setmaptile 0x15 0x7 0x79 0x1
setmaptile 0x16 0x7 0x79 0x1
setmaptile 0x17 0x7 0x7A 0x1
setmaptile 0x14 0x8 0x189 0x0
setmaptile 0x15 0x8 0x189 0x0
setmaptile 0x16 0x8 0x189 0x0
setmaptile 0x17 0x8 0x189 0x0
setmaptile 0x14 0x9 0x3E 0x1
setmaptile 0x15 0x9 0x3E 0x1
setmaptile 0x16 0x9 0x3E 0x1
setmaptile 0x17 0x9 0x3E 0x1
setmaptile 0x14 0xA 0x1 0x0
setmaptile 0x15 0xA 0x1 0x0
setmaptile 0x16 0xA 0x1 0x0
setmaptile 0x17 0xA 0x1 0x0
release
end

i have to make it like this for it to work?

 
#Dynamic 0x800000
 
#org @main
checkflag 0x201
if 0x0 goto @end
movesprite2 0x15 0x11 0x08
setmaptile 0x14 0x7 0x78 0x1
setmaptile 0x15 0x7 0x79 0x1
setmaptile 0x16 0x7 0x79 0x1
setmaptile 0x17 0x7 0x7A 0x1
setmaptile 0x14 0x8 0x189 0x0
setmaptile 0x15 0x8 0x189 0x0
setmaptile 0x16 0x8 0x189 0x0
setmaptile 0x17 0x8 0x189 0x0
setmaptile 0x14 0x9 0x3E 0x1
setmaptile 0x15 0x9 0x3E 0x1
setmaptile 0x16 0x9 0x3E 0x1
setmaptile 0x17 0x9 0x3E 0x1
setmaptile 0x14 0xA 0x1 0x0
setmaptile 0x15 0xA 0x1 0x0
setmaptile 0x16 0xA 0x1 0x0
setmaptile 0x17 0xA 0x1 0x0
release
end
 
#org @end
release
end





cooley

///Keepin' it simple

Age 28
Male
United States
Seen December 5th, 2014
Posted December 2nd, 2014
1,148 posts
16.3 Years
Ok, so like if i was going to make a setmaptile script i cant make it like this

  
#Dynamic 0x800000
 
#org @main
checkflag 0x201
if 0x1 goto @change
release
end
 
#org @change
movesprite2 0x15 0x11 0x08
setmaptile 0x14 0x7 0x78 0x1
setmaptile 0x15 0x7 0x79 0x1
setmaptile 0x16 0x7 0x79 0x1
setmaptile 0x17 0x7 0x7A 0x1
setmaptile 0x14 0x8 0x189 0x0
setmaptile 0x15 0x8 0x189 0x0
setmaptile 0x16 0x8 0x189 0x0
setmaptile 0x17 0x8 0x189 0x0
setmaptile 0x14 0x9 0x3E 0x1
setmaptile 0x15 0x9 0x3E 0x1
setmaptile 0x16 0x9 0x3E 0x1
setmaptile 0x17 0x9 0x3E 0x1
setmaptile 0x14 0xA 0x1 0x0
setmaptile 0x15 0xA 0x1 0x0
setmaptile 0x16 0xA 0x1 0x0
setmaptile 0x17 0xA 0x1 0x0
release
end
i have to make it like this for it to work?

 
#Dynamic 0x800000
 
#org @main
checkflag 0x201
if 0x0 goto @end
movesprite2 0x15 0x11 0x08
setmaptile 0x14 0x7 0x78 0x1
setmaptile 0x15 0x7 0x79 0x1
setmaptile 0x16 0x7 0x79 0x1
setmaptile 0x17 0x7 0x7A 0x1
setmaptile 0x14 0x8 0x189 0x0
setmaptile 0x15 0x8 0x189 0x0
setmaptile 0x16 0x8 0x189 0x0
setmaptile 0x17 0x8 0x189 0x0
setmaptile 0x14 0x9 0x3E 0x1
setmaptile 0x15 0x9 0x3E 0x1
setmaptile 0x16 0x9 0x3E 0x1
setmaptile 0x17 0x9 0x3E 0x1
setmaptile 0x14 0xA 0x1 0x0
setmaptile 0x15 0xA 0x1 0x0
setmaptile 0x16 0xA 0x1 0x0
setmaptile 0x17 0xA 0x1 0x0
release
end
 
#org @end
release
end
Both ways are good. But setmaptile scripts don't have to include setmaptiles. I don't even think that's the official name for it.

KhaosKnight

The 1 and only Khaotic Hacker

Seen May 28th, 2015
Posted September 7th, 2012
355 posts
15.4 Years
Both ways are good. But setmaptile scripts don't have to include setmaptiles. I don't even think that's the official name for it.
So if i was going to make a "setmaptile" level script what would i have to do to make it work? I compiled that script with XSE and applied it using A-map but it didnt work.





cooley

///Keepin' it simple

Age 28
Male
United States
Seen December 5th, 2014
Posted December 2nd, 2014
1,148 posts
16.3 Years
You aren't supposed to use setmaptile scripts as regular ones...If you'd follow my tutorial, you wouldn't be wondering. setmaptile scripts are the scripts that happens before the map loads, it happens during the black screen that occurs before loading.

You should use the ones in my tutorial. I'll update it today.


OK, Level scripts are all updated! Enjoy, I've included how to make one with Advance map , and XSE.
And I explained it more in-depth with more pictures, etc.

Enjoy, only one more update, until I finish this tutorial.

KhaosKnight

The 1 and only Khaotic Hacker

Seen May 28th, 2015
Posted September 7th, 2012
355 posts
15.4 Years
You aren't supposed to use setmaptile scripts as regular ones...If you'd follow my tutorial, you wouldn't be wondering. setmaptile scripts are the scripts that happens before the map loads, it happens during the black screen that occurs before loading.

You should use the ones in my tutorial. I'll update it today.

OK, Level scripts are all updated! Enjoy, I've included how to make one with Advance map , and XSE.
And I explained it more in-depth with more pictures, etc.

Enjoy, only one more update, until I finish this tutorial.
I know i have been using them as level scripts, its just i have been using them on a route map and when you enter a route there is no black screen...





Seen July 16th, 2010
Posted April 14th, 2010
7 posts
15.2 Years
this tut for the level scripts is now really great, thanks =D
but how can i make this script, that it every start when i enter the map...

and antoher one:
i made a level script with a movement of the camera an a text box, but at the end when the script should be at the end, there comes a text box again with some letters, as like as you forget to change the 0xFFFF to 0x0

cooley

///Keepin' it simple

Age 28
Male
United States
Seen December 5th, 2014
Posted December 2nd, 2014
1,148 posts
16.3 Years
this tut for the level scripts is now really great, thanks =D
but how can i make this script, that it every start when i enter the map...

and antoher one:
i made a level script with a movement of the camera an a text box, but at the end when the script should be at the end, there comes a text box again with some letters, as like as you forget to change the 0xFFFF to 0x0
1. I don't know, I'm still researching that.
2. You forgot to put something in Advance map...Like the flag? Or you forgot to fix the problem by Using XSE.