• 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 places on the 'net to talk Pokémon and more! Community members will not see the bottom screen advertisements.
  • Want to share your adventures playing Pokémon?
    Check out our new Travel Journals forum for sharing playthroughs of ROM Hacks, Fan Games, and other Pokémon content!
  • IMPORTANT: Following a takedown request, the following hacks have been delisted from PokéCommunity:

    • Pokémon Glazed
    • Pokémon: Giratina Strikes Back
    • Pokémon Flora Sky
    • Pokémon Stranded
    The downloads and discussion threads for these hacks will no longer be accessible, and staff will be unable to return questions regarding accessing this content.

Script Help Thread (DO NOT REQUEST SCRIPTS)

Status
Not open for further replies.
2
Posts
15
Years
  • Seen Jan 25, 2009
Code:
#org $start
lock
checkflag 0x1000
if 0x1 goto $end
message $where
boxset 6
setflag 0x1000
release
end

#org $where
$where = Where...\pWhere am I...?

#org $end
release
end
 

TB Pro

Old-timer
2,708
Posts
19
Years
You posted a PoketScript script. It clearly says (in my post) I'm using XSE. Anyway, how the hell is that suppose to help me?
Umm, if you use your brain, wonderful things happen. XSE and Pokescript vary only a small bit. He was trying to help, quit being a dick, please.

Code:
#org @start
lock
checkflag 0x1000
if 0x1 goto @end
message @where 0x6
setflag 0x1000
release
end

#org @where
= Where...\pWhere am I...?

#org @end
release
end

See, what's different? "$" = "@" and "$where =" = "=", so yeah.


once again i have another script
(im a bad scripter xD)
Code:
#dynamic 0x26D9C0

#org @start
lock
faceplayer
msgbox @hello 
boxset 0x6
msgbox @go 
boxset 0x5
[B]compare 0x800D 0x1[/B] or [B]compare LASTRESULT 1[/B]
if 0x[B]0[/B] goto @end
[B]message @go2 0x6[/B]
applymovement 0x10 @move2
applymovement 0xFF @move3
applymovement 0xFF @move
waitmovement 0x0
fadescreen 0x0
warp 0x3 0x1 0x0 0x23 0x11
release
end


#org @hello
= Hello [PLAYER].\nThis [blue_fr]UNDERWATER TUNNEL[black_fr]Leads To\lThe Underwater Haven of\l[blue_fr]OCEANIA CITY.\l

#org @go
= [PLAYER], Would You Like To Vist\n[blue_fr]OCEANIA CITY[black_fr] via [blue_fr]UNDERWATER\lTUNNEL?

#org @move2
#raw 0x0C 0x0E 0x02 0xFE

#org @move3
#raw 0x1D 0xFE

#org @go2
= Okay!\nTake This [blue_fr]DIVING GEAR[black_fr]and..\lDIVE!

#org @move
#raw 0x66 0x1E 0x15 0x60 0xFE

#org @end
release
end

Problem: Once It Reaches The boxset 0x5
if 0x0 goto @go2
if 0x1 goto @end
it just stops when you press yes or no
(and btw which is which; is 0x0 yes and 0x1 no?)

Fixes in bold. I'm not exactly sure what you want with this, but this should work. 0x1 = Yes, 0x0 = No
 
Last edited:
75
Posts
15
Years
  • Age 34
  • UK
  • Seen Apr 25, 2009
Hi, i'm really new to scripting. Had a quick look through this thread and read a couple of XSE tutorials.

But couldn't find out what i want.
I want to know if its possible in firered to make the RIVAL appear from nowhere.
So once OAK takes you into the lab and you approach him, the RIVAL appears.

any form of help is appreciated. thank you
 

Andryandrew

Italian Asm Hacker
117
Posts
16
Years
  • Age 30
  • Seen Jul 4, 2015
Hi, i'm really new to scripting. Had a quick look through this thread and read a couple of XSE tutorials.

But couldn't find out what i want.
I want to know if its possible in firered to make the RIVAL appear from nowhere.
So once OAK takes you into the lab and you approach him, the RIVAL appears.

any form of help is appreciated. thank you
it's possible, of course... you have to create a Rival's sprite in A.Map in a place that you want. Then, you set Its peopleID to a value between 2000-3000. Make a script somewhere in the game BEFORE you can enter the first time in OAK's Lab (Ex. in your room, a script next to the stairs) that set this id:
Setflag 0xrival'sPeopleID
Where rival'sPeopleID isthe number you've chosen before.
Then, when you want Rival to appear, just deactivate this command:
Clearflag 0xrival'sPeopleID
 

пзо

zzirRusty
223
Posts
15
Years
  • Age 28
  • Seen Jun 2, 2010
Dont start

Base: FireRed
Script compiler: XSE
Type: Levelscript..
Problem: This script dont start.. Why?

Spoiler:
 

hot_kage

I am like a rose cute and calm
35
Posts
15
Years
omfg sorry i have another script
Code:
#dynamic 0x2ECA30

#org @start
lock
faceplayer
checkflag 0x2030
if 0x1 goto @emit
setflag 0x2030
msgbox @emit 0x6
cry 0x26 0x0
wildbattle 0x26 0x23 0xD7  
fadescreen 0x1
fadescreen 0x0
hidesprite 0x800F
release
end

#org @emit
= A [red_fr]Fierce Fiery[black_fr] Power Emits\nFrom This Stone..
Problem: The Script Doesn't Start
any ideas
 
Last edited:

colcolstyles

Yours truly
1,588
Posts
15
Years
Base: FireRed
Script compiler: XSE
Type: Levelscript..
Problem: This script dont start.. Why?

Spoiler:
Well, seeing how it's a level script, you probably didn't insert it correctly. Don't ask me to explain it. Cooley wrote a tutorial on it so look it up.

Anyways, here are some tips:
- Your "checkflag" does absolutely nothing
- Don't use multiple "msgbox" commands in a row, just make one.
- Your current fanfare playing part of the script will be awkward ingame
- Your "setvar" variable should probably be "0x7000" not "7000". The way you have it, it will use the decimal 7000 as a variable instead of the hexadecimal value (which is 28672 in decimal format). I'm not really going to explain that either. Google it.

All of those won't prevent a script from starting though. Usually when a script fails to activate, something is wrong with the way the script it being used, not the script itself (unless you really screwed something up). I can't really help you much more that that.
 

Andryandrew

Italian Asm Hacker
117
Posts
16
Years
  • Age 30
  • Seen Jul 4, 2015
omfg sorry i have another script
Code:
#dynamic 0x2ECA30

#org @start
lock
faceplayer
checkflag 0x2030
if 0x1 goto @emit
setflag 0x2030
msgbox @msg 0x6
cry 0x26 0x0
wildbattle 0x26 0x23 0xD7  
fadescreen [B]0x0[/B]
fadescreen [B]0x1[/B]
hidesprite 0x800F
release
end
[B]
#org @emit
msgbox @msg 6
release
end

#org @msg[/B]
= A [red_fr]Fierce Fiery[black_fr] Power Emits\nFrom This Stone..
Problem: The Script Doesn't Start
any ideas
changes are in bold... I think you went wrong with fadescreen, so I corrected it
 

Aljam

[i]Sweepin' ain't easy...[/i]
615
Posts
15
Years
i looked through all the tutorials and understood th gist of it and was wonder if anyone could help me wit flags. i want to know how to make a flag in your room and then when your about to go down the stairs it says "[player], are you finished packing? [rival] was here an hour ago and left because you were still sleeping." i have the script but when i use the check flag and go to the stairs the game messes up. can somebody help?
 

Andryandrew

Italian Asm Hacker
117
Posts
16
Years
  • Age 30
  • Seen Jul 4, 2015
i looked through all the tutorials and understood th gist of it and was wonder if anyone could help me wit flags. i want to know how to make a flag in your room and then when your about to go down the stairs it says "[player], are you finished packing? [rival] was here an hour ago and left because you were still sleeping." i have the script but when i use the check flag and go to the stairs the game messes up. can somebody help?
The checkflag construct is simply:
checkflag [flag number]'this check if a certain flag is activated
compare LASTRESULT 0x1'this compare the value of previous flag (that is 0=not set, 1=set)
if B_TRUE goto @example'this go to @example if previous compare returns TRUE (so, if the flag is set)
where [flag number] is a number between 0x0000 and 0xFFFF (but you can use numbers between 0x1000 and 0x1500, that aren't used by the game).
To set a flag (so, to make its value = 0x1) you have to use setflag [flag number]
To clear a flag (so, to make its value = 0x0) you have to use clearflag [flag number]
 

Aljam

[i]Sweepin' ain't easy...[/i]
615
Posts
15
Years
ok thks also what is a go byte to look for for free space? when i try to do a script of any sort the game freezes or the person event i set does nothing. also after i write my script and compile it
i try to open it and it dosent show my script it just says" '----------------------------"
#org 0x(offset)

anyways i think it might be all related and i need help

ps sorry for posting alot! i am finally trying to script!
 

Quickster

Dream or Drop?
351
Posts
16
Years
  • Seen Apr 4, 2016
heres an event tile script on fire red,with xse

Spoiler:


i step on the tile and the sprite does both movements right away then my sprite freezes.
whats wrong with it?
 

hot_kage

I am like a rose cute and calm
35
Posts
15
Years
uggh sorry im suck a bad scripter
Code:
#dynamic 0x2D511B

#org @start
checkflag 0x1555
if 0x1 goto @end
msgbox @havarna 0x6
msgbox @ticket 0x6
msgbox @737 0x6
fanfare 0x13E
waitfanfare 
setflag 0x1555
special 0x17B
warp 0x3 0x58 0x1 0x10 0x18
release
end

#org @move
#raw 0x01 0xFE

#org @havarna 
= Your Going To HAVARNA ACADEMY?\nOkay! Good Luck [PLAYER] !\l

#org @ticket
= I Almost Forgot [Player]!\lThe Last SHUTTLE Left.\lYou'll Have To Wait.\l

#org @737
= [red_fr]................................\n................................\lHAVARNA SHUTTLE 737 DOCKED.\l

#org @end
release
end
Problem: When it gets to the warp it warps to the wrong place
any ideas?
 
152
Posts
15
Years
Ok, so I made a quiz script... and theres several things I've found wrong with it...
>If you get a question wrong, she does not let you retake the quiz (though the setflag should only activate if you get it right) and when you beat the quiz, she repeats the '@winner' message twice and does not give you the prize. Then when you try to talk to her, she says nothing.

Anyways, I took out the messages but hopefully it's still fixable :/ I'll be trying to fix it. Thanks for any help!
Spoiler:
still need help :(
 
Last edited:

colcolstyles

Yours truly
1,588
Posts
15
Years
heres an event tile script on fire red,with xse

Spoiler:


i step on the tile and the sprite does both movements right away then my sprite freezes.
whats wrong with it?
At the end of your movements, you need a "#raw 0xFE" to tell the script that that's the last movement. For example, your movements should be:
Code:
#org @move
#raw 0x13
#raw 0x13
#raw 0x01
[B]#raw 0xFE[/B]

#org @move1
#raw 0x12
#raw 0x12
[B]#raw 0xFE[/B]
 

Larsie13

Guest
0
Posts
At the end of your movements, you need a "#raw 0xFE" to tell the script that that's the last movement. For example, your movements should be:
Code:
#org @move
#raw 0x13
#raw 0x13
#raw 0x01
[B]#raw 0xFE[/B]

#org @move1
#raw 0x12
#raw 0x12
[B]#raw 0xFE[/B]
Not only that, it also needs a waitmovement 0 after the last applymovement.

uggh sorry im suck a bad scripter
Code:
#dynamic 0x2D511B

#org @start
checkflag 0x1555
if 0x1 goto @end
msgbox @havarna 0x6
msgbox @ticket 0x6
msgbox @737 0x6
fanfare 0x13E
waitfanfare 
setflag 0x1555
special 0x17B
warp 0x3 0x58 0x1 0x10 0x18
release
end

#org @move
#raw 0x01 0xFE

#org @havarna 
= Your Going To HAVARNA ACADEMY?\nOkay! Good Luck [PLAYER] !\l

#org @ticket
= I Almost Forgot [Player]!\lThe Last SHUTTLE Left.\lYou'll Have To Wait.\l

#org @737
= [red_fr]................................\n................................\lHAVARNA SHUTTLE 737 DOCKED.\l

#org @end
release
end
Problem: When it gets to the warp it warps to the wrong place
any ideas?

You're warping to map 3.88, which doesn't exist normally. If you want a hex number, put 0x in front of it. If you want the number as it's there, so decimal, leave the 0x. Also, if you want to warp to a specific X/Y-coordinate, you don't put a warp number in there, but replace that with 0xFF (warp 0x3 0x58 0xFF 0x10 0x18)
 
39
Posts
16
Years
I wonder how to change the appearance of a certain sprite in a script? I find a setvar command in the rival's appearance script(in Emerald) may have something to do with this...
 

Full Metal

C(++) Developer.
810
Posts
16
Years
[solved]
Game: Fire Red
Type: Person script
Script editor: PKSV (can post the xse script if needed)
description:
Spoiler:
Here is what i already have
Spoiler:
 
Last edited:
38
Posts
15
Years
  • Seen Aug 27, 2009
I have questions regarding scripts in my very first hack

First question

placing trainers in my hack; now ive read the tutorial by thethethethe (sorry if i misspelled your username) but I dont understand certain aspects of it:

Game: pokemon firered
personscript
using pokescript
Script: trainer script
Spoiler:


the #raw 0x68
what happens here?

giveitem 0x147 1

I understand a certain item is given here, other than the badge (badge is setflag0x820)

my question is where can i find a list which specifies which item is which code. like code 0.01 is item x?

Question 2

how do I place items on the ground for the player to pick up? So the player can pick up potions etc.



Thanks in advance
 
Status
Not open for further replies.
Back
Top