The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > ROM Hacking > ROM Hacking Hub
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

ROM Hacking Hub General discussions about ROM Hacking and Emulation. Not sure where to start? This is the place for you.
Posting links to ROMs is illegal and is not tolerated anywhere on the forum.
New threads in this forum are to be approved by a moderator before they are displayed.


Closed Thread
Click here to go to the first staff post in this thread.  
Thread Tools
  #6601    
Old March 18th, 2012, 04:02 AM
Magic's Avatar
Magic
 
Join Date: Jan 2009
Location: UK
Age: 23
Gender: Male
Quote:
Originally Posted by Rumille View Post
Nope. I can delete the script untill I only have

lockall
releaseall
end

But after I enter the script without the other line and with releaseall and end, releaseall/end turns into the updatecoins line.

Edit: Without the setvar 0x7000 0x1 line it works without adding the updatecoins line, but then I have the problem of the script repeating itself everytime I step on the scripttile.
The best advice would be to rewrite the script with fresh @pointers so they all get assigned new offsets, then see if the problem persists.
__________________
  #6602    
Old March 18th, 2012, 04:06 AM
Spherical Ice's Avatar
Spherical Ice
Community Supporter
 
Join Date: Nov 2007
Location: UK
Send a message via Skype™ to Spherical Ice
Yeah, I'd probably change the Decompile settings (Ctrl+D) and check the Refactoring button. Then open the script, remove any messed up lines of code, compile and use the new offset.
__________________
  #6603    
Old March 18th, 2012, 04:45 AM
RetroRoller's Avatar
RetroRoller
Pop-Punk Pizza Party
 
Join Date: Jun 2011
Location: England
Gender: Male
Nature: Jolly
I'm using PKSV and I wrote a script to gain the running shoes (Decompiled from original after amended)
Spoiler:
#dyn 0x740000
#org 0x8740194
lock
faceplayer
checkflag 0x082F
if 0x1 goto 0x874026E ' Flag is set
msgbox 0x87401AA ' I can't believe you'...
callstd MSG_LOCK ' Built-in lock command
setflag 0x082F
release
end

#org 0x874026E
msgbox @oh
callstd MSG_NORMAL
release
end


#org 0x87401AA
= I can't believe you're leaving.\nI swear on my life, wherever you\lwind up, you're always my kid.\pOh! Before I forget, here's a\n\c\h01\h06Leaving Present\c\h01\h08 for you!\pI believe they're\c\h01\h06 Running Shoes\c\h01\h08.\nThere's a label attached to it too.\p\c\h01\h04If you're using VisualBoyAdvance,\nthe default running control is\lholding down the X key.

#org @oh
= Hey again kiddo.\nTalk to your Mother if you want\la rest.


My problems are
1) The flag isn't set, seeing as I cannot run outside, (I haven't checked the location properties for an outdoor map properly in AdvanceMap yet, which might be the case, but I could run outside before)

2) After Decompiling it in PKSV... The script becomes... well... you'd better just look for yourself.
Spoiler:
#org 0x8740194
'-----------------------------------
lock
faceplayer
checkflag FR_RUNNING_SHOES
if true jump 0x874026E ' Flag is set
msgbox 0x87401AA ' I can't believe you'...
callstd MSG_LOCK ' Built-in lock command
setflag FR_RUNNING_SHOES
CMD_C3 0x0
#raw 0xD7
#raw 0xD5
#raw 0xE2
givetocoincase 232 ' Bear in mind, it's not in hex
#raw 0xD6
#raw 0xD9
#raw 0xE0
#raw 0xDD
#raw 0xD9
#raw 0xEA
#raw 0xD9
nop0 ' #raw 0x0
#raw 0xED
#raw 0xE3
#raw 0xE9
givetocoincase 55782 ' Bear in mind, it's not in hex
nop0 ' #raw 0x0
#raw 0xE0
#raw 0xD9
#raw 0xD5
#raw 0xEA
#raw 0xDD
#raw 0xE2
#raw 0xDB
setdoorclosed 0xC3FE 0xE700
#raw 0xEB
#raw 0xD9
#raw 0xD5
#raw 0xE6
nop0 ' #raw 0x0
#raw 0xE3
#raw 0xE2
nop0 ' #raw 0x0
#raw 0xE1
#raw 0xED
nop0 ' #raw 0x0
#raw 0xE0
#raw 0xDD
#raw 0xDA
#raw 0xD9
#raw 0xB8
nop0 ' #raw 0x0
#raw 0xEB
#raw 0xDC
#raw 0xD9
#raw 0xE6
#raw 0xD9
#raw 0xEA
#raw 0xD9
#raw 0xE6
nop0 ' #raw 0x0
#raw 0xED
#raw 0xE3
#raw 0xE9
#raw 0xFA
#raw 0xEB
#raw 0xDD
#raw 0xE2
#raw 0xD8
nop0 ' #raw 0x0
#raw 0xE9
#raw 0xE4
#raw 0xB8
nop0 ' #raw 0x0
#raw 0xED
#raw 0xE3
#raw 0xE9
givetocoincase 55782 ' Bear in mind, it's not in hex
nop0 ' #raw 0x0
#raw 0xD5
#raw 0xE0
#raw 0xEB
#raw 0xD5
#raw 0xED
#raw 0xE7
nop0 ' #raw 0x0
#raw 0xE1
#raw 0xED
nop0 ' #raw 0x0
#raw 0xDF
#raw 0xDD
#raw 0xD8
setdoorclosed 0xC9FB 0xABDC
nop0 ' #raw 0x0
#raw 0xBC
#raw 0xD9
#raw 0xDA
#raw 0xE3
#raw 0xE6
#raw 0xD9
nop0 ' #raw 0x0
CMD_C3 0x0
#raw 0xDA
#raw 0xE3
#raw 0xE6
#raw 0xDB
#raw 0xD9
#raw 0xE8
#raw 0xB8
nop0 ' #raw 0x0
#raw 0xDC
#raw 0xD9
#raw 0xE6
#raw 0xD9
givetocoincase 231 ' Bear in mind, it's not in hex
#raw 0xD5
CMD_FE 0xFC
nop1 ' #raw 0x1
if 0xC6 jump 0xDDEAD5D9 ' Unknown Checkflag/IF condition
'Jump not in ROM area
#raw 0xE2
#raw 0xDB
nop0 ' #raw 0x0
msgboxsign
#raw 0xE6
#raw 0xD9
#raw 0xE7
#raw 0xD9
#raw 0xE2
#raw 0xE8
#raw 0xFC
nop1 ' #raw 0x1
jumpstd 0x0

#org 0x874026E
'-----------------------------------
checkobedience 0xD9DC
#raw 0xE6
#raw 0xD9
givetocoincase 231 ' Bear in mind, it's not in hex
#raw 0xD5
nop0 ' #raw 0x0
#raw 0xE0
#raw 0xD5
#raw 0xD6
#raw 0xD9
#raw 0xE0
nop0 ' #raw 0x0
#raw 0xD5
#raw 0xE8
#raw 0xE8
#raw 0xD5
#raw 0xD7
#raw 0xDC
#raw 0xD9
#raw 0xD8
nop0 ' #raw 0x0
#raw 0xE8
#raw 0xE3
nop0 ' #raw 0x0
#raw 0xDD
#raw 0xE8
nop0 ' #raw 0x0
#raw 0xE8
#raw 0xE3
#raw 0xE3
setdoorclosed 0xFCFB 0x401
CMD_C3 0xDA
nop0 ' #raw 0x0
#raw 0xED
#raw 0xE3
#raw 0xE9
givetocoincase 55782 ' Bear in mind, it's not in hex
nop0 ' #raw 0x0
#raw 0xE9
#raw 0xE7
#raw 0xDD
#raw 0xE2
#raw 0xDB
nop0 ' #raw 0x0
setworldmapflag 0xE7DD
#raw 0xE9
#raw 0xD5
#raw 0xE0
#raw 0xBC
#raw 0xE3
#raw 0xED
#raw 0xBB
#raw 0xD8
#raw 0xEA
#raw 0xD5
#raw 0xE2
#raw 0xD7
#raw 0xD9
#raw 0xB8
CMD_FE 0xE8
#raw 0xDC
#raw 0xD9
nop0 ' #raw 0x0
#raw 0xD8
#raw 0xD9
#raw 0xDA
#raw 0xD5
#raw 0xE9
#raw 0xE0
#raw 0xE8
nop0 ' #raw 0x0
#raw 0xE6
#raw 0xE9
#raw 0xE2
#raw 0xE2
#raw 0xDD
#raw 0xE2
#raw 0xDB
nop0 ' #raw 0x0
#raw 0xD7
#raw 0xE3
#raw 0xE2
#raw 0xE8
#raw 0xE6
#raw 0xE3
#raw 0xE0
nop0 ' #raw 0x0
#raw 0xDD
#raw 0xE7
#raw 0xFA
#raw 0xDC
#raw 0xE3
#raw 0xE0
#raw 0xD8
#raw 0xDD
#raw 0xE2
#raw 0xDB
nop0 ' #raw 0x0
#raw 0xD8
#raw 0xE3
#raw 0xEB
#raw 0xE2
nop0 ' #raw 0x0
#raw 0xE8
#raw 0xDC
#raw 0xD9
nop0 ' #raw 0x0
setcatchlocation 0xDF00 0xD9
#raw 0xED
setdoorclosed 0xBCFF 0xD5D9
#raw 0xE6
nop0 ' #raw 0x0
#raw 0xDD
#raw 0xE2
nop0 ' #raw 0x0
#raw 0xE1
#raw 0xDD
#raw 0xE2
#raw 0xD8
nop0 ' #raw 0x0
#raw 0xE8
#raw 0xDC
#raw 0xD9
nop0 ' #raw 0x0
comparehiddenvar 0xE9 0xE2E2
#raw 0xDD
#raw 0xE2
#raw 0xDB
nop0 ' #raw 0x0
setobedience 0xE3DC
#raw 0xD9
#raw 0xE7
nop0 ' #raw 0x0
#raw 0xD7
#raw 0xD5
#raw 0xE2
#raw 0xE2
#raw 0xE3
#raw 0xE8
nop0 ' #raw 0x0
#raw 0xD6
#raw 0xD9
#raw 0xFA
#raw 0xE9
#raw 0xE7
#raw 0xD9
#raw 0xD8
nop0 ' #raw 0x0
#raw 0xDD
#raw 0xE2
#raw 0xE7
#raw 0xDD
#raw 0xD8
#raw 0xD9
nop0 ' #raw 0x0
#raw 0xE1
#raw 0xE3
#raw 0xE7
#raw 0xE8
nop0 ' #raw 0x0
#raw 0xD6
#raw 0xE9
#raw 0xE0
#raw 0xD8
#raw 0xDD
#raw 0xE2
#raw 0xDB
#raw 0xE7
setdoorclosed 0xE3FF 0xE6E9
nop0 ' #raw 0x0
#raw 0xE1
#raw 0xE3
#raw 0xE8
#raw 0xDC
#raw 0xD9
#raw 0xE6
nop0 ' #raw 0x0
#raw 0xDD
#raw 0xDA
nop0 ' #raw 0x0
#raw 0xED
#raw 0xE3
#raw 0xE9
nop0 ' #raw 0x0
#raw 0xEB
#raw 0xD5
#raw 0xE2
#raw 0xE8
nop0 ' #raw 0x0
#raw 0xD5
CMD_FE 0xE6
#raw 0xD9
#raw 0xE7
#raw 0xE8
setdoorclosed 0xFCFF 0x401
CMD_C3 0xDA
nop0 ' #raw 0x0
#raw 0xED
#raw 0xE3
#raw 0xE9
givetocoincase 55782 ' Bear in mind, it's not in hex
nop0 ' #raw 0x0
#raw 0xE9
#raw 0xE7
#raw 0xDD
#raw 0xE2
#raw 0xDB
nop0 ' #raw 0x0
setworldmapflag 0xE7DD
#raw 0xE9
#raw 0xD5
#raw 0xE0
#raw 0xBC
#raw 0xE3
#raw 0xED
#raw 0xBB
#raw 0xD8
#raw 0xEA
#raw 0xD5
#raw 0xE2
#raw 0xD7
#raw 0xD9
#raw 0xB8
nop0 ' #raw 0x0
#raw 0xE8
#raw 0xDC
#raw 0xD9
CMD_FE 0xD8
#raw 0xD9
#raw 0xDA
#raw 0xD5
#raw 0xE9
#raw 0xE0
#raw 0xE8
nop0 ' #raw 0x0
#raw 0xE6
#raw 0xE9
#raw 0xE2
#raw 0xE2
#raw 0xDD
#raw 0xE2
#raw 0xDB
nop0 ' #raw 0x0
#raw 0xD7
#raw 0xE3
#raw 0xE2
#raw 0xE8
#raw 0xE6
#raw 0xE3
#raw 0xE0
nop0 ' #raw 0x0
#raw 0xDD
#raw 0xE7
nop0 ' #raw 0x0
#raw 0xDC
#raw 0xE3
#raw 0xE0
#raw 0xD8
#raw 0xDD
#raw 0xE2
#raw 0xDB
#raw 0xFA
#raw 0xD8
#raw 0xE3
#raw 0xEB
#raw 0xE2
nop0 ' #raw 0x0
#raw 0xE8
#raw 0xDC
#raw 0xD9
nop0 ' #raw 0x0
setcatchlocation 0xDF00 0xD9
#raw 0xED
setdoorclosed 0xBCFE 0xD5D9
#raw 0xE6
nop0 ' #raw 0x0
#raw 0xDD
#raw 0xE2
nop0 ' #raw 0x0
#raw 0xE1
#raw 0xDD
#raw 0xE2
#raw 0xD8
nop0 ' #raw 0x0
#raw 0xE8
#raw 0xDC
#raw 0xD9
nop0 ' #raw 0x0
comparehiddenvar 0xE9 0xE2E2
#raw 0xDD
#raw 0xE2
#raw 0xDB
nop0 ' #raw 0x0
setobedience 0xE3DC
#raw 0xD9
#raw 0xE7
nop0 ' #raw 0x0
#raw 0xD7
#raw 0xD5
#raw 0xE2
#raw 0xE2
#raw 0xE3
#raw 0xE8
#raw 0xFA
#raw 0xD6
#raw 0xD9
nop0 ' #raw 0x0
#raw 0xE9
#raw 0xE7
#raw 0xD9
#raw 0xD8
nop0 ' #raw 0x0
#raw 0xDD
#raw 0xE2
nop0 ' #raw 0x0
#raw 0xE1
#raw 0xE3
#raw 0xE7
#raw 0xE8
nop0 ' #raw 0x0
#raw 0xD6
#raw 0xE9
#raw 0xDD
#raw 0xE0
#raw 0xD8
#raw 0xDD
#raw 0xE2
#raw 0xDB
#raw 0xE7
setdoorclosed 0xC2FF 0xEDD9
nop0 ' #raw 0x0
#raw 0xD5
#raw 0xDB
#raw 0xD5
#raw 0xDD
#raw 0xE2
nop0 ' #raw 0x0
#raw 0xDF
#raw 0xDD
#raw 0xD8
#raw 0xD8
#raw 0xE3
setdoorclosed 0xCEFE 0xE0D5
#raw 0xDF
nop0 ' #raw 0x0
#raw 0xE8
#raw 0xE3
nop0 ' #raw 0x0
#raw 0xED
#raw 0xE3
#raw 0xE9
#raw 0xE6
nop0 ' #raw 0x0
#raw 0xE1
#raw 0xE3
#raw 0xE8
#raw 0xDC
#raw 0xD9
#raw 0xE6
nop0 ' #raw 0x0
#raw 0xDD
#raw 0xDA
nop0 ' #raw 0x0
#raw 0xED
#raw 0xE3
#raw 0xE9
nop0 ' #raw 0x0
#raw 0xEB
#raw 0xD5
#raw 0xE2
#raw 0xE8
nop0 ' #raw 0x0
#raw 0xD5
nop0 ' #raw 0x0
#raw 0xE6
#raw 0xD9
#raw 0xE7
#raw 0xE8
setdoorclosed 0xFFF 0x3100
call 0x3090874
'Call not in ROM area
release
end


#org 0x87401AA
= I can't believe you're leaving.\nI swear on my life, wherever you\lwind up, you're always my kid.\pOh! Before I forget, here's a\n\c\h01\h06Leaving Present\c\h01\h08 for you!\pI believe they're\c\h01\h06 Running Shoes\c\h01\h08.\nThere's a label attached to it too.\p\c\h01\h04If you're using VisualBoyAdvance,\nthe default running control is\lholding down the X key.


Thanks in advance. Knowing me though it was a simple mistake and I was too derpy to find it.
__________________
Eat pizza and stay punk rock

I map for the Source SDK and dabble in ROM Hacking hmu.
  #6604    
Old March 18th, 2012, 04:54 AM
Spherical Ice's Avatar
Spherical Ice
Community Supporter
 
Join Date: Nov 2007
Location: UK
Send a message via Skype™ to Spherical Ice
Um, try doing the script again and replace the offset pointers to labels (@john), then recompile.
__________________
  #6605    
Old March 18th, 2012, 09:26 AM
aljohnston112's Avatar
aljohnston112
Unhatched Egg
 
Join Date: Jul 2010
Gender: Male
Nature: Naughty
So... more problems. I got this script to work up to the point where the 2nd message happens, but the 2nd set of movements doesn't happen.

Spoiler:
#org 0x8EB1460
'-----------------------------------
lock
checkflag 0x1002
faceplayer
msgbox 0x8EB16C0 ' Watch it, maggot!
callstd MSG_LOCK ' Built-in lock command
applymovement 0x9 0x8EB14E0 ' walk_up walk_up walk...
applymovement 0x6 0x8EB14E0 ' walk_up walk_up walk...
applymovement 0x8 0x8EB14E0 ' walk_up walk_up walk...
applymovement PLAYER 0x8EB1520 ' pause walk_up pause ...
pause 0x170
msgbox 0x8EB1610 ' It's hiding in this\...
callstd MSG_LOCK ' Built-in lock command
applymovement 0x9 0x8EB1700 ' walk_up walk_up walk...
applymovement 0x6 0x8EB1700 ' walk_up walk_up walk...
applymovement 0x8 0x8EB1700 ' walk_up walk_up walk...
pause 0x40
setflag 0x1002
release
end


#org 0x8EB16C0
= Watch it, maggot!

#org 0x8EB1610
= It's hiding in this\ngrass somewhere!!\lDon't rest until it's found!\lThe phantom pokemon!!\lTo the western forest!\lCut everything down!

#org 0x8EB14E0
M walk_up walk_up walk_up walk_up walk_up walk_up walk_up walk_up walk_left walk_left walk_left walk_left walk_left walk_up walk_up walk_up walk_right walk_right walk_right walk_right walk_right walk_right look_up end

#org 0x8EB1520
M pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up end

#org 0x8EB1700
M walk_up walk_up walk_up walk_up end
__________________
Courage is not the absence of fear. Courage is the overcoming of fear.
  #6606    
Old March 18th, 2012, 09:42 AM
Magic's Avatar
Magic
 
Join Date: Jan 2009
Location: UK
Age: 23
Gender: Male
Quote:
Originally Posted by aljohnston112 View Post
So... more problems. I got this script to work up to the point where the 2nd message happens, but the 2nd set of movements doesn't happen.

Spoiler:
#org 0x8EB1460
'-----------------------------------
lock
checkflag 0x1002
faceplayer
msgbox 0x8EB16C0 ' Watch it, maggot!
callstd MSG_LOCK ' Built-in lock command
applymovement 0x9 0x8EB14E0 ' walk_up walk_up walk...
applymovement 0x6 0x8EB14E0 ' walk_up walk_up walk...
applymovement 0x8 0x8EB14E0 ' walk_up walk_up walk...
applymovement PLAYER 0x8EB1520 ' pause walk_up pause ...
pause 0x170
msgbox 0x8EB1610 ' It's hiding in this\...
callstd MSG_LOCK ' Built-in lock command
applymovement 0x9 0x8EB1700 ' walk_up walk_up walk...
applymovement 0x6 0x8EB1700 ' walk_up walk_up walk...
applymovement 0x8 0x8EB1700 ' walk_up walk_up walk...
pause 0x40
setflag 0x1002
release
end


#org 0x8EB16C0
= Watch it, maggot!

#org 0x8EB1610
= It's hiding in this\ngrass somewhere!!\lDon't rest until it's found!\lThe phantom pokemon!!\lTo the western forest!\lCut everything down!

#org 0x8EB14E0
M walk_up walk_up walk_up walk_up walk_up walk_up walk_up walk_up walk_left walk_left walk_left walk_left walk_left walk_up walk_up walk_up walk_right walk_right walk_right walk_right walk_right walk_right look_up end

#org 0x8EB1520
M pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up pause walk_up end

#org 0x8EB1700
M walk_up walk_up walk_up walk_up end
The script looks ok to me, maybe change the pause 0x40 to waitmovement 0x0? The script might be ending and passing over the movements, but waitmovement should mean it waits for the moving to finish before continuing to 'end'.
__________________
  #6607    
Old March 18th, 2012, 10:05 AM
aljohnston112's Avatar
aljohnston112
Unhatched Egg
 
Join Date: Jul 2010
Gender: Male
Nature: Naughty
Quote:
Originally Posted by SwiftSign View Post
The script looks ok to me, maybe change the pause 0x40 to waitmovement 0x0? The script might be ending and passing over the movements, but waitmovement should mean it waits for the moving to finish before continuing to 'end'.
I've already tried that, it does seem to work better at first, but it does the same thing. I doesn't apply the 2nd set of movements.
__________________
Courage is not the absence of fear. Courage is the overcoming of fear.
  #6608    
Old March 18th, 2012, 11:57 AM
Rumille's Avatar
Rumille
Togepi
 
Join Date: Feb 2012
Gender: Male
Quote:
Originally Posted by Rumille View Post
I have 2 little problem with the movement script I mentioned earlier.
I have made 3 different versions, because eventually you come to a place where you have to go left, up or right.

These are the 3 versions:
Spoiler:
Code:
'---------------
#org 0x800697
lockall
setvar 0x7000 0x0
msgbox 0x88006DF MSG_NORMAL '"Hold on!"
applymovement 0x1 0x880072C
applymovement MOVE_PLAYER 0x8800736
waitmovement 0x0
msgbox 0x8800739 MSG_NORMAL '"You need a Pokémon before you do\n..."
applymovement 0x1 0x8800776
applymovement MOVE_PLAYER 0x880077C
waitmovement 0x0
warp 0x4 0xF 0xFF 0x18 0x2
setvar 0x7000 0x1
hidesprite 0x1
updatecoins 0xE3 0xE0

'---------
' Strings
'---------
#org 0x8006DF
= Hold on!

#org 0x800739
= You need a Pokémon before you do\nanything else. Follow me.


'-----------
' Movements
'-----------
#org 0x80072C
#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 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0xFE 'End of Movements

#org 0x800736
#raw 0x2 'Face Left
#raw 0xFE 'End of Movements

#org 0x800776
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x80077C
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

Spoiler:
Code:
'---------------
#org 0x800C88
lockall
setvar 0x7001 0x0
msgbox 0x8800CD1 MSG_NORMAL '"Hold on!"
applymovement 0x1 0x8800D19
applymovement MOVE_PLAYER 0x8800D25
waitmovement 0x0
msgbox 0x8800CDC MSG_NORMAL '"You need a Pokémon before you do\n..."
applymovement 0x1 0x8800D28
applymovement MOVE_PLAYER 0x8800D5D
waitmovement 0x0
warp 0x4 0xF 0xFF 0x18 0x2
setvar 0x7001 0x1
hidesprite 0x1

'---------
' Strings
'---------
#org 0x800CD1
= Hold on!

#org 0x800CDC
= You need a Pokémon before you do\nanything else. Follow me.


'-----------
' Movements
'-----------
#org 0x800D19
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x11 'Step Up (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 0xFE 'End of Movements

#org 0x800D25
#raw 0x2 'Face Left
#raw 0xFE 'End of Movements

#org 0x800D28
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x800D5D
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

Spoiler:
Code:
'---------------
#org 0x800D65
lockall
setvar 0x7002 0x0
msgbox 0x8800DAE MSG_NORMAL '"Hold on!"
applymovement 0x1 0x8800DF6
applymovement MOVE_PLAYER 0x8800E03
waitmovement 0x0
msgbox 0x8800DB9 MSG_NORMAL '"You need a Pokémon before you do\n..."
applymovement 0x1 0x8800E33
applymovement MOVE_PLAYER 0x8800E3B
waitmovement 0x0
warp 0x4 0xF 0xFF 0x18 0x2
setvar 0x7002 0x1
hidesprite 0x1

'---------
' Strings
'---------
#org 0x800DAE
= Hold on!

#org 0x800DB9
= You need a Pokémon before you do\nanything else. Follow me.


'-----------
' Movements
'-----------
#org 0x800DF6
#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 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 0xFE 'End of Movements

#org 0x800E03
#raw 0x2 'Face Left
#raw 0xFE 'End of Movements

#org 0x800E33
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x800E3B
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements


The first version works perfectly. However, I can't seem to get the updatecoins line OUT of the code. Deleting and compiling doesn't seem to work, strange enough. Even worse, I can't seem to change anything anymore. I can delete 5 lines out of it and compile, but the next time I open it, the lines are just the way they were before the deleting.

Second of all, the second and third version work almost perfect, except that the sprite that talks to me (0x1) doesn't move. It does in the first one, but it does not in the second and third version. When I look at the place where it stands before the script is called, it's still there, so it's not invisible.

Any help?
Anyone an idea for the second problem? The sprite not moving on the 2nd and 3rd script, even though the scripts are the same as the first one?
  #6609    
Old March 18th, 2012, 01:39 PM
RetroRoller's Avatar
RetroRoller
Pop-Punk Pizza Party
 
Join Date: Jun 2011
Location: England
Gender: Male
Nature: Jolly
Problems have arisen again.
The script decompiles fine now
but the flag isn't set and I can't run -.-'

Also, I have a script here:
Spoiler:

#dyn 0x800000

#org @start
checkflag 0x202
if 0x1 goto @done
applymovement 0x1 @profalarmed
msgbox @1
callstd MSG_NORMAL
applymovement 0xFF @move
applymovement 0x1 @proflooksdown
msgbox @2
callstd MSG_NORMAL
setflag 0x202
release
end

#org @done
release
end

#org @proflooksdown
#raw 0x0
#raw 0xFE
#org @profalarmed
#raw 0x62
#raw 0x2
#raw 0xFE
#org @move
#raw 0x12
#raw 0x12
#raw 0x12
#raw 0x10
#raw 0x10
#raw 0x12
#raw 0x12
#raw 0x11
#raw 0xFE
#org @1
= \c\h01\h06 Prof. Williams\c\h01\h02:\c\h01\h08 So that move would make[.]\pOh! \v\h01!\nTake your seat.
#org @2
= \c\h01\h08Anyways, I graded all your exam\npapers.\pAll you guys did well. I just have to\nmention \v\h01 and \v\h06 though!\pYou guys were the only ones to get A's.\nI wanted to give you both a little\lpresent for doing so well[.]\nYour very own\c\h01\h08 Pokémon!\pGo home now guys. And I'll see you\ntwo in the Lab later!


I put it as a Script in A-Map. Freezes my character, but not the game. Help please. I haven't decompiled it yet.

Thanks in advance. Again.
__________________
Eat pizza and stay punk rock

I map for the Source SDK and dabble in ROM Hacking hmu.
  #6610    
Old March 18th, 2012, 01:50 PM
aljohnston112's Avatar
aljohnston112
Unhatched Egg
 
Join Date: Jul 2010
Gender: Male
Nature: Naughty
Quote:
Originally Posted by RetroRoller View Post
Problems have arisen again.
The script decompiles fine now
but the flag isn't set and I can't run -.-'

Also, I have a script here:
Spoiler:

#dyn 0x800000

#org @start
checkflag 0x202
if 0x1 goto @done
applymovement 0x1 @profalarmed
msgbox @1
callstd MSG_NORMAL
applymovement 0xFF @move
applymovement 0x1 @proflooksdown
msgbox @2
callstd MSG_NORMAL
setflag 0x202
release
end

#org @done
release
end

#org @proflooksdown
#raw 0x0
#raw 0xFE
#org @profalarmed
#raw 0x62
#raw 0x2
#raw 0xFE
#org @move
#raw 0x12
#raw 0x12
#raw 0x12
#raw 0x10
#raw 0x10
#raw 0x12
#raw 0x12
#raw 0x11
#raw 0xFE
#org @1
= \c\h01\h06 Prof. Williams\c\h01\h02:\c\h01\h08 So that move would make[.]\pOh! \v\h01!\nTake your seat.
#org @2
= \c\h01\h08Anyways, I graded all your exam\npapers.\pAll you guys did well. I just have to\nmention \v\h01 and \v\h06 though!\pYou guys were the only ones to get A's.\nI wanted to give you both a little\lpresent for doing so well[.]\nYour very own\c\h01\h08 Pokémon!\pGo home now guys. And I'll see you\ntwo in the Lab later!


I put it as a Script in A-Map. Freezes my character, but not the game. Help please. I haven't decompiled it yet.

Thanks in advance. Again.
If you want an event to happen once you have to use variables, unless you want the character talking to disappear. If so, set the flag number 202 to the person id. If you want the person to stay you'll have to use a variable and set that variable to a different value instead of setting the flag.

Oh, and you don't have a give item line in the script for the running shoes.
__________________
Courage is not the absence of fear. Courage is the overcoming of fear.
  #6611    
Old March 18th, 2012, 02:03 PM
Spherical Ice's Avatar
Spherical Ice
Community Supporter
 
Join Date: Nov 2007
Location: UK
Send a message via Skype™ to Spherical Ice
Quote:
Originally Posted by aljohnston112 View Post
If you want an event to happen once you have to use variables, unless you want the character talking to disappear. If so, set the flag number 202 to the person id. If you want the person to stay you'll have to use a variable and set that variable to a different value instead of setting the flag.

Oh, and you don't have a give item line in the script for the running shoes.
Um, no, you can use flags OR variables for events to occur once. The difference between flags and variables is basically that variables are used for level scripts and for being set at different values and flags are for hiding sprites and only have two values, true or false.

As for the actual code, I reccommend you update your XSE to version 1.1.1 RetroRoller, and then adjust your code to something like this:

Code:
#dynamic 0x800000

#org @start
checkflag 0x202
if 0x1 goto @done
applymovement 0x1 @profalarmed
waitmovement 0x0
msgbox @1 MSG_NORMAL
applymovement 0xFF @move
applymovement 0x1 @proflooksdown
waitmovement 0x0
msgbox @2 MSG_NORMAL
setflag 0x202
release
end

#org @done
release
end

#org @proflooksdown
#raw 0x0
#raw 0xFE

#org @profalarmed
#raw 0x62
#raw 0x2
#raw 0xFE

#org @move
#raw 0x12
#raw 0x12
#raw 0x12
#raw 0x10
#raw 0x10
#raw 0x12
#raw 0x12
#raw 0x11
#raw 0xFE

#org @1
= \c\h01\h06 Prof. Williams\c\h01\h02c\h01\h08 So that move would make[.]\pOh! \v\h01!\nTake your seat.

#org @2
= \c\h01\h08Anyways, I graded all your exam\npapers.\pAll you guys did well. I just have to\nmention \v\h01 and \v\h06 though!\pYou guys were the only ones to get A's.\nI wanted to give you both a little\lpresent for doing so well[.]\nYour very own\c\h01\h08 Pokémon!\pGo home now guys. And I'll see you\ntwo in the Lab later!
Also, I wouldn't recommend using the flag 202. I tend to use flags 0x850, they have proved to be quite safe and functional in most cases. So yeah.
__________________
  #6612    
Old March 18th, 2012, 02:15 PM
RetroRoller's Avatar
RetroRoller
Pop-Punk Pizza Party
 
Join Date: Jun 2011
Location: England
Gender: Male
Nature: Jolly
Quote:
Originally Posted by Spherical Ice View Post
Um, no, you can use flags OR variables for events to occur once. The difference between flags and variables is basically that variables are used for level scripts and for being set at different values and flags are for hiding sprites and only have two values, true or false.

As for the actual code, I reccommend you update your XSE to version 1.1.1 RetroRoller, and then adjust your code to something like this:

Code:
#dynamic 0x800000

#org @start
checkflag 0x202
if 0x1 goto @done
applymovement 0x1 @profalarmed
waitmovement 0x0
msgbox @1 MSG_NORMAL
applymovement 0xFF @move
applymovement 0x1 @proflooksdown
waitmovement 0x0
msgbox @2 MSG_NORMAL
setflag 0x202
release
end

#org @done
release
end

#org @proflooksdown
#raw 0x0
#raw 0xFE

#org @profalarmed
#raw 0x62
#raw 0x2
#raw 0xFE

#org @move
#raw 0x12
#raw 0x12
#raw 0x12
#raw 0x10
#raw 0x10
#raw 0x12
#raw 0x12
#raw 0x11
#raw 0xFE

#org @1
= \c\h01\h06 Prof. Williams\c\h01\h02c\h01\h08 So that move would make[.]\pOh! \v\h01!\nTake your seat.

#org @2
= \c\h01\h08Anyways, I graded all your exam\npapers.\pAll you guys did well. I just have to\nmention \v\h01 and \v\h06 though!\pYou guys were the only ones to get A's.\nI wanted to give you both a little\lpresent for doing so well[.]\nYour very own\c\h01\h08 Pokémon!\pGo home now guys. And I'll see you\ntwo in the Lab later!
Also, I wouldn't recommend using the flag 202. I tend to use flags 0x850, they have proved to be quite safe and functional in most cases. So yeah.
Aha, thanks. I already said I use PKSV, but I loaded the script into XSE and changed the flag to 0x850, still froze when I walked on the script.
Any ideas, guys?

Ooh and I would like the sprite to dissappear.
__________________
Eat pizza and stay punk rock

I map for the Source SDK and dabble in ROM Hacking hmu.
  #6613    
Old March 18th, 2012, 02:29 PM
Spherical Ice's Avatar
Spherical Ice
Community Supporter
 
Join Date: Nov 2007
Location: UK
Send a message via Skype™ to Spherical Ice
Change the Person ID of the person you want to disappear to 202. Also, does the script tile in Advance Map have the Unknown (the first one) of $03 and the Var Number of 4050? If not, change it so it does.
__________________
  #6614    
Old March 18th, 2012, 02:48 PM
aljohnston112's Avatar
aljohnston112
Unhatched Egg
 
Join Date: Jul 2010
Gender: Male
Nature: Naughty
Quote:
Originally Posted by RetroRoller View Post
Aha, thanks. I already said I use PKSV, but I loaded the script into XSE and changed the flag to 0x850, still froze when I walked on the script.
Any ideas, guys?

Ooh and I would like the sprite to dissappear.
If you want him to disappear use the flag, and set the sprite's person id to the flag number you use.
And for the frozen script tile, just use a variable (start using variables at about 7000) and put that variable in the variable number box and the var value to 0, and the unknown works with 0 too. When you want that script not to run anymore just put the line
setvar 0x7000 0x1
(7000 is the variable you put in the variable number box. 0x1 is the number stored in that variable)
into the script that you want to stop this script.
__________________
Courage is not the absence of fear. Courage is the overcoming of fear.
  #6615    
Old March 18th, 2012, 03:38 PM
Rumille's Avatar
Rumille
Togepi
 
Join Date: Feb 2012
Gender: Male
Quote:
Originally Posted by SwiftSign View Post
The best advice would be to rewrite the script with fresh @pointers so they all get assigned new offsets, then see if the problem persists.
Well, that worked. I still don't understand why the updatecoins line just appeared.

And I still dont understand the non-moving-sprite problem either.
  #6616    
Old March 18th, 2012, 04:41 PM
aljohnston112's Avatar
aljohnston112
Unhatched Egg
 
Join Date: Jul 2010
Gender: Male
Nature: Naughty
Quote:
Originally Posted by Rumille View Post
Well, that worked. I still don't understand why the updatecoins line just appeared.

And I still dont understand the non-moving-sprite problem either.
If you added stuff to the script after you 1st compiled it then it might have overwritten itself over one of the first offsets.
__________________
Courage is not the absence of fear. Courage is the overcoming of fear.
  #6617    
Old March 18th, 2012, 05:59 PM
Rumille's Avatar
Rumille
Togepi
 
Join Date: Feb 2012
Gender: Male
Since I keep getting problems with the 3 tile-script thing, I have a different question.

With the Oak-stopping-you-script, there are two different tiles where he will stop you. However, even though the script offset is different on the two tiles, most of the script is the same

Only difference:
Quote:
'---------------
#org 0x1655ED
lockall
setvar 0x4001 0x0
goto 0x8165605
vs
Quote:
'---------------
#org 0x1655F9
lockall
setvar 0x4001 0x1
goto 0x8165605
The rest of the script is the same. I want to do the same in my map, only for 3 tiles instead of 2. How do I do this? It seems to work with some kind of compare command:
For which way Oak needs to walk to you:
Quote:
compare 0x4001 0x0
if 0x1 call 0x81656B8
compare 0x4001 0x1
if 0x1 call 0x81656C3
and for which way you and Oak need to walk back to the lab:
Quote:
compare 0x4001 0x0
if 0x1 call 0x81656CE
compare 0x4001 0x1
if 0x1 call 0x81656E0

I'm guessing that the compare command checks on which of the two tiles you stand, but I can't seem to find the 4001 value anywhere on the tile. How do they do it? And is it possible for 3 tiles instead of 2? I assume it is.
  #6618    
Old March 18th, 2012, 06:42 PM
DrFuji's Avatar
DrFuji
repeat repeat repeat
Community Supporter
 
Join Date: Sep 2009
Location: Upside-downia
Age: 21
Gender: Male
Nature: Jolly
Quote:
Originally Posted by Rumille View Post
Since I keep getting problems with the 3 tile-script thing, I have a different question.

With the Oak-stopping-you-script, there are two different tiles where he will stop you. However, even though the script offset is different on the two tiles, most of the script is the same

Only difference:

vs


The rest of the script is the same. I want to do the same in my map, only for 3 tiles instead of 2. How do I do this? It seems to work with some kind of compare command:
For which way Oak needs to walk to you:

and for which way you and Oak need to walk back to the lab:



I'm guessing that the compare command checks on which of the two tiles you stand, but I can't seem to find the 4001 value anywhere on the tile. How do they do it? And is it possible for 3 tiles instead of 2? I assume it is.
That kind of 'split' scripting is used when you have a sufficiently large script where it would be best to conserve space (by not inserting it two or three times with minor changes) so you have two or more small scripts that set a variable and piggy-back off a larger one that determines which part of the script it should run based on that value. You can link this to as many scripts as you want, so long as you make sure that the larger script has enough movement variations for all possible tiles you can stand on (ie if you step on the first tile set the variable to 0x0, second tile: 0x1, third tile: 0x2 etc).

An important factor you have to remember when making a script that is split up like this is to compile the large section of your script before the smaller sections which set the variable and tell the game which tile you are standing on. For example, let's say that this is a large script that I'm going to insert:

Code:
#dynamic 0x800000

#org @start
compare 0x4001 0x0
if 0x1 goto @OnLeftTile
compare 0x4001 0x1
if 0x1 goto @OnMiddleTile
goto @OnRightTile // I can leave out the compare line since if the player is not standing on either the left or middle tile, they must be on the right-most tile

#org @OnLeftTile
applymovement 0xFF @LeftTileMovement
goto @ScriptContinue

#org @OnMiddleTile
applymovement 0xFF @MiddleTileMovement
goto @ScriptContinue

#org @OnRightTile
applymovement 0xFF @ThirdRightMovement
goto @ScriptContinue

#org @ScriptContinue
waitmovement 0x0
msgbox @talk 0x2
setvar 0x4001 0x3 // You can change the variable again to a totally unused number if you don't want the script tiles to remain active once you've finished
release
end

#org @talk
= Hello world!

#org @LeftTileMovement
#raw 0x11
#raw 0x13
#raw 0x11
#raw 0xFE

#org @MiddleTileMovement
#raw 0x11
#raw 0x11
#raw 0xFE

#org @RightTileMovement
#raw 0x11
#raw 0x12
#raw 0x11
#raw 0xFE
Yes I know it isn't actually that large, but it is good enough to show what is happening

As you can see in this large and hastily written script, I haven't included the 'setvar 0x4001 0x0/1/2' commands that determine which script tile you're standing on. Once you compile this large script, that is when you can make the smaller script that sets the variable - Don't insert this large script into a tile, just write down its address somewhere. For the purpose of this demonstration, let's say I inserted the earlier large script at the offset 0x812345:

Code:
#dynamic 0x800000

#org @start
setvar 0x4001 0x0 // Change the variable's value for each tile you have the possibility of stepping on 
call 0x8812345
When you compile this small script in XSE and then reopen it through Advance Map, you will find that the large script that was written above and compiled earlier has been added to the end of this small script. The 'call' function allows you to use scripts and data that has already been inserted into the ROM, so when the small script is played, it will automatically continue where the large script starts (hence piggy-backing off it). That's about all you have to do when you have a large script that you don't want to insert two, three or even four times because of the extraordinary amount of space they could all occupy :)


The 4001 command can't be found on the tiles in A-Map because the game is using a different variable to determine whether Professor Oak's script has been completed (0x4050), which you can find being set on the 47th line of the script.

Last edited by DrFuji; March 18th, 2012 at 06:47 PM.
  #6619    
Old March 19th, 2012, 04:13 AM
aljohnston112's Avatar
aljohnston112
Unhatched Egg
 
Join Date: Jul 2010
Gender: Male
Nature: Naughty
Quote:
Originally Posted by SwiftSign View Post
The script looks ok to me, maybe change the pause 0x40 to waitmovement 0x0? The script might be ending and passing over the movements, but waitmovement should mean it waits for the moving to finish before continuing to 'end'.
Could it have anything to do the characters changing maps?
__________________
Courage is not the absence of fear. Courage is the overcoming of fear.
  #6620    
Old March 19th, 2012, 08:19 AM
Rumille's Avatar
Rumille
Togepi
 
Join Date: Feb 2012
Gender: Male
Quote:
Originally Posted by DrFuji View Post
That kind of 'split' scripting is used when you have a sufficiently large script where it would be best to conserve space (by not inserting it two or three times with minor changes) so you have two or more small scripts that set a variable and piggy-back off a larger one that determines which part of the script it should run based on that value. You can link this to as many scripts as you want, so long as you make sure that the larger script has enough movement variations for all possible tiles you can stand on (ie if you step on the first tile set the variable to 0x0, second tile: 0x1, third tile: 0x2 etc).

An important factor you have to remember when making a script that is split up like this is to compile the large section of your script before the smaller sections which set the variable and tell the game which tile you are standing on. For example, let's say that this is a large script that I'm going to insert:
Spoiler:

Code:
#dynamic 0x800000

#org @start
compare 0x4001 0x0
if 0x1 goto @OnLeftTile
compare 0x4001 0x1
if 0x1 goto @OnMiddleTile
goto @OnRightTile // I can leave out the compare line since if the player is not standing on either the left or middle tile, they must be on the right-most tile

#org @OnLeftTile
applymovement 0xFF @LeftTileMovement
goto @ScriptContinue

#org @OnMiddleTile
applymovement 0xFF @MiddleTileMovement
goto @ScriptContinue

#org @OnRightTile
applymovement 0xFF @ThirdRightMovement
goto @ScriptContinue

#org @ScriptContinue
waitmovement 0x0
msgbox @talk 0x2
setvar 0x4001 0x3 // You can change the variable again to a totally unused number if you don't want the script tiles to remain active once you've finished
release
end

#org @talk
= Hello world!

#org @LeftTileMovement
#raw 0x11
#raw 0x13
#raw 0x11
#raw 0xFE

#org @MiddleTileMovement
#raw 0x11
#raw 0x11
#raw 0xFE

#org @RightTileMovement
#raw 0x11
#raw 0x12
#raw 0x11
#raw 0xFE


Yes I know it isn't actually that large, but it is good enough to show what is happening

As you can see in this large and hastily written script, I haven't included the 'setvar 0x4001 0x0/1/2' commands that determine which script tile you're standing on. Once you compile this large script, that is when you can make the smaller script that sets the variable - Don't insert this large script into a tile, just write down its address somewhere. For the purpose of this demonstration, let's say I inserted the earlier large script at the offset 0x812345:
Spoiler:

Code:
#dynamic 0x800000

#org @start
setvar 0x4001 0x0 // Change the variable's value for each tile you have the possibility of stepping on 
call 0x8812345


When you compile this small script in XSE and then reopen it through Advance Map, you will find that the large script that was written above and compiled earlier has been added to the end of this small script. The 'call' function allows you to use scripts and data that has already been inserted into the ROM, so when the small script is played, it will automatically continue where the large script starts (hence piggy-backing off it). That's about all you have to do when you have a large script that you don't want to insert two, three or even four times because of the extraordinary amount of space they could all occupy


The 4001 command can't be found on the tiles in A-Map because the game is using a different variable to determine whether Professor Oak's script has been completed (0x4050), which you can find being set on the 47th line of the script.
I got it to work, surprisingly enough, thank you! Only problem is that I have EXACTLY the same problem as before. The sprite will not appear on the middle and righttile. Even though it is all combined into one big script + 3 seperate small scripts. It does not skip my own movements, but it does skip the sprite movements who should stop you and take you to the location.

How can this happen? I don't get it.

Spoiler:
Code:
'---------------
#org 0x801185
lockall
msgbox 0x8801199 MSG_NORMAL '"Hold on!"
setvar 0x7001 0x0
call 0x8801039
'---------------
#org 0x801039
compare 0x7001 0x0
if 0x1 goto 0x8801055
compare 0x7001 0x1
if 0x1 goto 0x8801082
goto 0x88010AF

'---------------
#org 0x801055
applymovement 0x1 0x880112F
waitmovement 0x0
applymovement MOVE_PLAYER 0x8801151
msgbox 0x88010F2 MSG_NORMAL '"You need a Pokémon before you do\n..."
applymovement 0x1 0x8801154
applymovement MOVE_PLAYER 0x880116A
goto 0x88010DC

'---------------
#org 0x801082
applymovement 0x1 0x8801139
waitmovement 0x0
applymovement MOVE_PLAYER 0x8801151
msgbox 0x88010F2 MSG_NORMAL '"You need a Pokémon before you do\n..."
applymovement 0x1 0x880115A
applymovement MOVE_PLAYER 0x8801171
goto 0x88010DC

'---------------
#org 0x8010AF
applymovement 0x1 0x8801145
waitmovement 0x0
applymovement MOVE_PLAYER 0x8801151
msgbox 0x88010F2 MSG_NORMAL '"You need a Pokémon before you do\n..."
applymovement 0x1 0x8801162
applymovement MOVE_PLAYER 0x880117A
goto 0x88010DC

'---------------
#org 0x8010DC
waitmovement 0x0
warp 0x4 0xF 0xFF 0x18 0x2
setvar 0x7001 0x3
hidesprite 0x1
releaseall
end


'---------
' Strings
'---------
#org 0x801199
= Hold on!

#org 0x8010F2
= You need a Pokémon before you do\nanything else. Follow me.


'-----------
' Movements
'-----------
#org 0x80112F
#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 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0xFE 'End of Movements

#org 0x801151
#raw 0x2 'Face Left
#raw 0xFE 'End of Movements

#org 0x801154
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x80116A
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x801139
#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 0x10 'Step Down (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0xFE 'End of Movements

#org 0x80115A
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x801171
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x801145
#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 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0xFE 'End of Movements

#org 0x801162
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x80117A
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

This is the script as it is now. The other two versions only have a different first offset and have setvar 0x7001 0x1 (and 0x2) instead of 0x0.

Last edited by Rumille; March 19th, 2012 at 08:44 AM. Reason: Forgot a 'Thank you!'
  #6621    
Old March 19th, 2012, 08:40 AM
Magic's Avatar
Magic
 
Join Date: Jan 2009
Location: UK
Age: 23
Gender: Male
Quote:
Originally Posted by aljohnston112 View Post
Could it have anything to do the characters changing maps?
Er I don't think characters can move maps, I believe they are tied to the map they are present on in A-Map - So yes, could be.
__________________
  #6622    
Old March 19th, 2012, 08:51 AM
RetroRoller's Avatar
RetroRoller
Pop-Punk Pizza Party
 
Join Date: Jun 2011
Location: England
Gender: Male
Nature: Jolly
Okay, more problems -.-'
This is the code I put into XSE (NOT PKSV!)
Spoiler:
#dynamic 0x800000

#org @start
checkflag 0x202
if 0x1 goto @done
applymovement 0x1 @profalarmed
waitmovement 0x0
msgbox @1 MSG_NORMAL
applymovement 0xFF @move
applymovement 0x1 @proflooksdown
waitmovement 0x0
msgbox @2 MSG_NORMAL
setflag 0x202
release
end

#org @done
release
end

#org @proflooksdown
#raw 0x0
#raw 0xFE

#org @profalarmed
#raw 0x62
#raw 0x2
#raw 0xFE

#org @move
#raw 0x12
#raw 0x12
#raw 0x12
#raw 0x10
#raw 0x10
#raw 0x12
#raw 0x12
#raw 0x11
#raw 0xFE

#org @1
= \c\h01\h06 Prof. Williams\c\h01\h02c\h01\h08 So that move would make[.]\pOh! \v\h01!\nTake your seat.

#org @2
= \c\h01\h08Anyways, I graded all your exam\npapers.\pAll you guys did well. I just have to\nmention \v\h01 and \v\h06 though!\pYou guys were the only ones to get A's.\nI wanted to give you both a little\lpresent for doing so well[.]\nYour very own\c\h01\h08 Pokémon!\pGo home now guys. And I'll see you\ntwo in the Lab later!


I put in the details of the script in A-Map.
The guy has the ! sign above his head, but I don't move and the message box doesn't appear. Also, the script doesn't happen twice, so something else works.

Help?
__________________
Eat pizza and stay punk rock

I map for the Source SDK and dabble in ROM Hacking hmu.

Last edited by RetroRoller; March 19th, 2012 at 08:56 AM. Reason: Adding a lil bit more info.
  #6623    
Old March 19th, 2012, 09:47 AM
Hacks0rus's Avatar
Hacks0rus
Monster Raving Looney
 
Join Date: Jul 2011
Gender: Male
Nature: Timid
Quote:
Originally Posted by RetroRoller View Post
Okay, more problems -.-'
This is the code I put into XSE (NOT PKSV!)
Spoiler:
#dynamic 0x800000

#org @start
checkflag 0x202
if 0x1 goto @done
applymovement 0x1 @profalarmed
waitmovement 0x0
msgbox @1 MSG_NORMAL
applymovement 0xFF @move
applymovement 0x1 @proflooksdown
waitmovement 0x0
msgbox @2 MSG_NORMAL
setflag 0x202
release
end

#org @done
release
end

#org @proflooksdown
#raw 0x0
#raw 0xFE

#org @profalarmed
#raw 0x62
#raw 0x2
#raw 0xFE

#org @move
#raw 0x12
#raw 0x12
#raw 0x12
#raw 0x10
#raw 0x10
#raw 0x12
#raw 0x12
#raw 0x11
#raw 0xFE

#org @1
= \c\h01\h06 Prof. Williams\c\h01\h02c\h01\h08 So that move would make[.]\pOh! \v\h01!\nTake your seat.

#org @2
= \c\h01\h08Anyways, I graded all your exam\npapers.\pAll you guys did well. I just have to\nmention \v\h01 and \v\h06 though!\pYou guys were the only ones to get A's.\nI wanted to give you both a little\lpresent for doing so well[.]\nYour very own\c\h01\h08 Pokémon!\pGo home now guys. And I'll see you\ntwo in the Lab later!


I put in the details of the script in A-Map.
The guy has the ! sign above his head, but I don't move and the message box doesn't appear. Also, the script doesn't happen twice, so something else works.

Help?
Is this a script event? if so, you'll need to put a var number in the var number box in a-map (use var numbers 7000 and up). That is, if you haven't already.
  #6624    
Old March 19th, 2012, 01:57 PM
RetroRoller's Avatar
RetroRoller
Pop-Punk Pizza Party
 
Join Date: Jun 2011
Location: England
Gender: Male
Nature: Jolly
Quote:
Originally Posted by Hacks0rus View Post
Is this a script event? if so, you'll need to put a var number in the var number box in a-map (use var numbers 7000 and up). That is, if you haven't already.
Yeah it's a script event and stuff.
Here's the proof:
Spoiler:


Here's the Script I put into XSE:
Spoiler:
#dynamic 0x800000
#org @start
checkflag 0x850
if 0x1 goto @done
applymovement 0x1 @profalarmed
waitmovement 0x0
msgbox @professorspeech1 0x6
applymovement 0xFF @move
applymovement 0x1 @proflooksdown
waitmovement 0x0
msgbox @professorspeech2 0x6
setflag 0x850
release
end

#org @done
release
end

#org @proflooksdown
#raw 0x0
#raw 0xFE

#org @profalarmed
#raw 0x62
#raw 0x2
#raw 0xFE

#org @move
#raw 0x12
#raw 0x12
#raw 0x12
#raw 0x10
#raw 0x10
#raw 0x12
#raw 0x12
#raw 0x11
#raw 0xFE

#org @professorspeech1
= \c\h01\h06 Prof. Williams\c\h01\h02c\h01\h08 So that move would make[.]\pOh! \v\h01!\nTake your seat.

#org @professorspeech2
= \c\h01\h08Anyways, I graded all your exam\npapers.\pAll you guys did well. I just have to\nmention \v\h01 and \v\h06 though!\pYou guys were the only ones to get A's.\nI wanted to give you both a little\lpresent for doing so well[.]\nYour very own\c\h01\h08 Pokémon!\pGo home now guys. And I'll see you\ntwo in the Lab later!


And here is the script after decompiling:
Spoiler:
'-----------------------
#org 0x8009CB
checkflag 0x850
if 0x1 goto 0x8800A01
applymovement 0x1 0x8800A07
waitmovement 0x0
msgbox 0x8800A15 '"\c\h01É Prof. Williams\c\h01ÁcÀË So..."
applymovement MOVE_PLAYER 0x8800A0B
applymovement 0x1 0x8800A04
waitmovement 0x0
msgbox 0x8800A7C '"\c\h01ËAnyways, I graded all your e..."
setflag 0x850
release
end

'-----------------------
#org 0x800A01
release
end


'-----------
' Movements
'-----------
#org 0x800A07
#raw 62 'Exclamation Mark (!)
#raw 2 'Face Left
#raw FE 'End of Movements

#org 0x800A0B
#raw 12 'Step Left (Normal)
#raw 12 'Step Left (Normal)
#raw 12 'Step Left (Normal)
#raw 10 'Step Down (Normal)
#raw 10 'Step Down (Normal)
#raw 12 'Step Left (Normal)
#raw 12 'Step Left (Normal)
#raw 11 'Step Up (Normal)
#raw FE 'End of Movements

#org 0x800A04
#raw 0 'Face Down
#raw FE 'End of Movements


'---------
' Strings
'---------
#org 0x800A15
= \c\h01É Prof. Williams\c\h01ÁcÀË So that move would make[.]\pOh! [player]!\nTake your seat.

#org 0x800A7C
= \c\h01ËAnyways, I graded all your exam\npapers.\pAll you guys did well. I just have to\nmention [player] and [rival] though!\pYou guys were the only ones to get A's.\nI wanted to give you both a little\lpresent for doing so well[.]\nYour very own\c\h01Ë Pokémon!\pGo home now guys. And I'll see you\ntwo in the Lab later!


Scrolling throught the Compiling Log, I noticed no errors or warnings, so it worked fine.
I've corrected the script before, and it still doesn't work. I will try again if you ask but do you have any other solutions?
__________________
Eat pizza and stay punk rock

I map for the Source SDK and dabble in ROM Hacking hmu.
  #6625    
Old March 19th, 2012, 02:23 PM
Quickster's Avatar
Quickster
Dream or Drop?
 
Join Date: Oct 2007
Gender: Male
Nature: Quiet
Quote:
Originally Posted by RetroRoller View Post
Yeah it's a script event and stuff.
Here's the proof:
Spoiler:


Here's the Script I put into XSE:
Spoiler:
#dynamic 0x800000
#org @start
checkflag 0x850
if 0x1 goto @done
applymovement 0x1 @profalarmed
waitmovement 0x0
msgbox @professorspeech1 0x6
applymovement 0xFF @move
applymovement 0x1 @proflooksdown
waitmovement 0x0
msgbox @professorspeech2 0x6
setflag 0x850
release
end

#org @done
release
end

#org @proflooksdown
#raw 0x0
#raw 0xFE

#org @profalarmed
#raw 0x62
#raw 0x2
#raw 0xFE

#org @move
#raw 0x12
#raw 0x12
#raw 0x12
#raw 0x10
#raw 0x10
#raw 0x12
#raw 0x12
#raw 0x11
#raw 0xFE

#org @professorspeech1
= \c\h01\h06 Prof. Williams\c\h01\h02c\h01\h08 So that move would make[.]\pOh! \v\h01!\nTake your seat.

#org @professorspeech2
= \c\h01\h08Anyways, I graded all your exam\npapers.\pAll you guys did well. I just have to\nmention \v\h01 and \v\h06 though!\pYou guys were the only ones to get A's.\nI wanted to give you both a little\lpresent for doing so well[.]\nYour very own\c\h01\h08 Pokémon!\pGo home now guys. And I'll see you\ntwo in the Lab later!


And here is the script after decompiling:
Spoiler:
'-----------------------
#org 0x8009CB
checkflag 0x850
if 0x1 goto 0x8800A01
applymovement 0x1 0x8800A07
waitmovement 0x0
msgbox 0x8800A15 '"\c\h01É Prof. Williams\c\h01ÁcÀË So..."
applymovement MOVE_PLAYER 0x8800A0B
applymovement 0x1 0x8800A04
waitmovement 0x0
msgbox 0x8800A7C '"\c\h01ËAnyways, I graded all your e..."
setflag 0x850
release
end

'-----------------------
#org 0x800A01
release
end


'-----------
' Movements
'-----------
#org 0x800A07
#raw 62 'Exclamation Mark (!)
#raw 2 'Face Left
#raw FE 'End of Movements

#org 0x800A0B
#raw 12 'Step Left (Normal)
#raw 12 'Step Left (Normal)
#raw 12 'Step Left (Normal)
#raw 10 'Step Down (Normal)
#raw 10 'Step Down (Normal)
#raw 12 'Step Left (Normal)
#raw 12 'Step Left (Normal)
#raw 11 'Step Up (Normal)
#raw FE 'End of Movements

#org 0x800A04
#raw 0 'Face Down
#raw FE 'End of Movements


'---------
' Strings
'---------
#org 0x800A15
= \c\h01É Prof. Williams\c\h01ÁcÀË So that move would make[.]\pOh! [player]!\nTake your seat.

#org 0x800A7C
= \c\h01ËAnyways, I graded all your exam\npapers.\pAll you guys did well. I just have to\nmention [player] and [rival] though!\pYou guys were the only ones to get A's.\nI wanted to give you both a little\lpresent for doing so well[.]\nYour very own\c\h01Ë Pokémon!\pGo home now guys. And I'll see you\ntwo in the Lab later!


Scrolling throught the Compiling Log, I noticed no errors or warnings, so it worked fine.
I've corrected the script before, and it still doesn't work. I will try again if you ask but do you have any other solutions?
Hi, I think you should try putting 4050 as the var number instead of 7000 to see if it works.
__________________
I laugh looking at this.

But sometimes I want to come back to it...

Closed Thread
Quick Reply

Sponsored Links
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Minimum Characters Per Post: 25



All times are UTC -8. The time now is 09:44 AM.


Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2014 The PokéCommunity™, pokecommunity.com.
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, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.