![]() |
That's a lot easier. I didn't know that till now. You have been very much of help Hackmew. Now it works perfectly.
If I want to replace the "pressing B" command(0x7F) and I want that when I press it, it shows me another multi choices. Like for example: Eevee Vulpix Growlithe More When I press more, it will open another multi: Charmander Cyndaquil Mew end Thanks again. |
Quote:
See the spoiler below. It should work fine. Spoiler:
|
Does boxset 0x4 open up a multi-choice box?
If so, could someone give me an example? |
Quote:
Boxset 4 is used for the player not to face you. |
There was something about boxsets in the ROM Hacking Newsletter
Ah - here it is! Quote:
|
Quote:
copyvar 0x8000 LASTRESULT compare 0x8000 0x0 if 0x1 goto @option1 You need to repeat the last two for each possible option. Obviously you have to change the compare 0x8000 line and the if 0x1 goto line. Here is a list of the different multi-choice boxes available. |
I've got a small problem...
Code:
I've tried Code:
|
Quote:
|
With your additions, it's all great if you say no. But it freezes if you say yes. Izzat a problem with the thing I'm calling to? Because I copied it right out of Thethethethe's tut.
|
Quote:
Code:
Code:
Code:
Code:
|
Does Darken and Lighten commands work in FireReD?
I want it like Ruby, in the second gym, when you battle trainers, and it's dark, the dark part starts decreasing every time you beat a trainer. |
Quote:
|
Hey all I need some help with this level script,
Code:
|
Quote:
|
Thanks I had it like that before but I had to restore from a back-up and I must of forgot to do the 0x1.
Now an even stranger thing happens, the camera doesn't move when with the player. Edit: It works now forgot to add special 0x114. stupid back up |
Can anyone help me with this movement script? It's getting kind of hard to understand.
Code:
Also, I've tried the script, with the right offset and everything (I used FSF) and whenever I try the script out all I get is a frozen character. I can't move and the textbox doesn't appear. Thank's a lot. Also, I'll get the compiled version soon if needed. I'm at school right now so not much I can do. |
Quote:
Code:
Also, "applymovement 0xFF" is very simple to understand. "Applymovement" itself is the movement command, while 0x(hex number), in this case 0xFF, means to move which sprite on the map where the script currently is, and 0xFF is to number of the player |
Hey Guys i have a problem with this level script
#dynamic 0x800000 #org @start lockall checkflag 0x828 if 0x1 goto @no setvar 4033 0x1 applymovement 0x02 @dadmove1 applymovement 0x02 @dadmove2 msgbox @dadtalk givepokemon 0x9B 0x5 0x0 0x0 0x0 0x0 applymovement 0x02 @dadmove3 releaseall end #org @no releaseall end #org @dadmove1 #raw 0x65 #raw 0xFE #org @dadmove2 #raw 11 #raw 13 #raw 13 #raw 13 #raw 13 #raw 13 #raw 01 #raw FE #org @dadmove3 #raw 12 #raw 12 #raw 12 #raw 12 #raw 12 #raw 10 #raw FE #org @dadtalk = Hey [player]\nYour mother and I have decided\lthat you are old enough to go on\n an adventure.\lSo i got you this Cinderquil. yes i know i spelt Cqindaquil wrong Heres what happens http://i40.photobucket.com/albums/e206/hackimon13/Pokemon-FireRedVersionUSA.png this just keeps repeating Please Help |
Quote:
[varNumber] [varValue] [pointerToScript] FFFF You need to change that FFFF to 0000. |
Quote:
whats the pointer? |
Quote:
Perhaps this tutorial will be able to explain it better? |
Quote:
I'll bookmark this for later reference though. I'll have to try it tomorrow. |
Who knows the warp command for XSE?
because warp 0x[bank] 0x[mapnumber] 0x[warp number] doesn't work... |
Quote:
warp 0x3(bank) 0x0(map) 0x1 (warp) 0x3(X Coordinate) 0x3(Y Coordinate) |
Quote:
|
Hackimon.
You forgot the callstd 0x6 under each msgbox command. Try using bigger stevars than 0x4033. Try 0x7000 and up. I think a lot of setvars are used by the game itself. |
Quote:
:edit: I used it in this way but it doesn't work, the () are nopt included when compiling warp 0x3(4) 0x0(1) 0x1 (0) 0x3(4) 0x3(3) It's for this warp, Map 4.1 so the bank is 1, and the warp is 0, the offset's are X 0004 Y0003.. What's wrong with what I did? |
I'm really new to scripting, and need some assistance. ^^; What am I doing wrong with this (XSE) script? I can compile it and everything, but when I go to talk to the sprite on the overworld, she does absolutely nothing except make that "beep" sound when you normally talk to a sprite. (During the course of making changes, I've gotten her to actually talk and start the battle, but all the text boxes are glitchy and she never follows any of the movement commands, meaning if you keep talking to her, you're in an endless battle loop. The script below is the one that yields the "nothing" result).
What I want the sprite to do is say a line while facing in a different direction from you, then turn and get an exclamation point over her head, while the "female rival" music plays. Then I want her to talk a bit more, after which a battle will start. After the battle, she'll talk a little more, than walk up a step, than walk left off the screen and vanish. Flags relating to having met her are either set or cleared. Thanks so much in advance! '----------------------- #org 0x1E40CF lockall msgbox 0x1E40D0 '"A dead end? Oh, no[.]and I'm afraid..." callstd 0x4 playsong 0x19F 0x1 applymovement 0x16 0x1E40D1 waitmovement 0x0 applymovement 0x16 0x1E40D2 waitmovement 0x0 applymovement 0x16 0x1E40D3 waitmovement 0x0 msgbox 0x1E40D4 '"D-don't hurt me! Please! [.] [.] [...." callstd 0x4 trainerbattle 0x3 0x005 0x0 0x1E40D5 goto 0x1E40D6 end '----------------------- #org 0x1E40D6 msgbox 0x1E40D7 '"Rosie: Even though I ended up losin..." callstd 0x4 goto 0x1E40D8 end '----------------------- #org 0x1E40D8 closeonkeypress applymovement 0x16 0x1E40D9 waitmovement 0x0 goto 0x1E578D end '----------------------- #org 0x1E578D hidesprite 0x16 clearflag 0x205 setflag 0x206 clearflag 0x207 playsong2 0x0 fadedefault releaseall end '----------- ' Movements '----------- #org 0x1E40D1 #raw 3E 'Face Player #raw FE 'End of Movements #org 0x1E40D2 #raw 56 'Exclamation Mark (!) #raw FE 'End of Movements #org 0x1E40D3 #raw 14 'Delay5 #raw 14 'Delay5 #raw 14 'Delay5 #raw FE 'End of Movements #org 0x1E40D9 #raw 5 'Step Up (Normal) #raw 6 'Step Left (Normal) #raw 6 'Step Left (Normal) #raw 6 'Step Left (Normal) #raw 6 'Step Left (Normal) #raw 6 'Step Left (Normal) #raw 6 'Step Left (Normal) #raw 6 'Step Left (Normal) #raw FE 'End of Movements (the strings follow here) |
Spoiler:
It works perfectly, but the pointer $talk0 is being said after the wrap command. Here's what it looks like in XSE. Spoiler:
The same message came twice(the large sized words). I placed it only one place. Is there a problem? Edit: Pink Parka Girl, try replacing the 0x16 with 0x10. It needs to be in hex. 16 in hex is 10. Try that. |
Edited: The first script works fine, now. But now I have a problem with another. The first part of the script works - but once the first flag is set, it stops working. Can anyone help? (Like the first, this is an XSE script.)
What I want to have happen: Lady Linwood, (the sprite in question) is seeking a runaway, who you happen to find. You have the choice of either revealing their location (and earning a Nugget) or following your morals and saying you have no idea. I want you to only be offered the Yes/No option once - not like in a typical Pokemon game (and many other RPGs, for that matter) where you'll keep getting badgered until you pick the "correct" response. If you say Yes, you'll be given a Nugget and a specific flag will not be set. If you say No, you won't get the Nugget and a specific flag WILL be set. But...I have no idea what I'm doing wrong. Can anyone help me fix up this script? '----------------------- #org 0x80048C lock faceplayer checkflag 0x44C if 0x1 goto 0x81E57A9 msgbox 0x880058C '"Upon my word! Who are you?\nI certa..." callstd 0x6 release end '----------------------- #org 0x81E57A9 lock faceplayer checkflag 0x578 if 0x1 goto 0x81E57E5 checkflag 0x514 if 0x1 goto 0x81E57B3 msgbox 0x81E57BD '"Trainer! You're back here,\nagain? Ready t..." callstd 0x5 compare LASTRESULT 0x1 if 0x1 call 0x81E57C7 compare LASTRESULT 0x0 if 0x1 call 0x81E57D1 release end '----------------------- #org 0x81E57C7 msgbox 0x81E57DB '"Oh, Lady Linwood's eyes don't\ndecieve her..." callstd 0x4 giveitem 0x6E 0x1 setflag 0x514 release end '----------------------- #org 0x81E57D1 msgbox 0x81E57F9 '"Pah! You detestable child! If you\nwon't ..." callstd 0x4 setflag 0x578 release end '----------------------- #org 0x81E57E5 msgbox 0x81E57EF '"Get out, urchin!" callstd 0x4 setflag 0x5DC release end '----------------------- #org 0x81E57B3 msgbox 0x81E5803 '"Perhaps there are still a\nfew honest Trai..." callstd 0x4 release end '--------- ' Strings '--------- (the strings follow here.) |
Quote:
|
The "runaway script" is a modified version of the one I posted earlier, in my first post on the thread. Here is the finalized version:
'----------------------- #org 0x1E40CF lockall msgbox 0x81E4235 '"A dead end? Oh, no[.]and I'm afraid..." callstd 0x4 playsong 0x19F 0x1 applymovement 0x10 0x81A0839 waitmovement 0x0 sound 0x15 applymovement 0x10 0x81A0833 waitmovement 0x0 applymovement 0x10 0x81A0835 waitmovement 0x0 msgbox 0x881B38B '"D-don't hurt me! Please!\p[.] [.]\n..." callstd 0x4 trainerbattle 0x3 0x5 0x0 0x81E420F msgbox 0x81759A1 '"Rosie: Remember your promise, pleas..." callstd 0x4 closeonkeypress pause 0x1E fadescreen 0x1 hidesprite 0x10 movesprite2 0x10 0x3F 0x19 fadescreen 0x0 setflag 0x44C fadedefault releaseall end After I compiled the "Lady Linwood" script, this is what XSE spits back at me: '----------------------- #org 0x80048C lock faceplayer checkflag 0x44C if 0x1 goto 0x81E57A9 msgbox 0x880058C '"Upon my word! Who are you?\nI certa..." callstd 0x6 release end '----------------------- #org 0x1E57A9 nop nop nop nop (and so on...for a good 200 or so lines) warp5 0x0 0x0 0x0 0x0 0xE041 I'll try using a different flag pointer (what are some good, safe values to work in?), but not sure how much good that will do...Apologies for asking so many questions, but I'm still such a newbie... ^^' |
Not really scripting help, but a question.
Without flag 0x828, how can I tell that the player has caught a pokemon? Because the player catches a Pokemon with a masterball, and I cannot set the flag 0x828 until I am 100% sure they have caught it. |
Quote:
Code:
Code:
Quote:
Basically you want to add two nop below the warp command. Quote:
Quote:
Spoiler:
Credit to thethethethe, taken from his tutorial on PHO. |
Quote:
|
Quote:
Code:
|
Quote:
|
Can someone give me the Prof. Birch Script on route 101 please, I'm working on a hack and REALLY need this.
|
Quote:
|
Quote:
|
Quote:
|
Quote:
|
Oh~~I think it's the time to ask a question:how to use the wildbattle command in XSE?I don't think it's the same as pokescript...
|
Quote:
Code:
|
Quote:
|
Quote:
|
Quote:
|
Quote:
Spoiler:
|
(Um...I'm kind of new here, so I don't know if this is necroposting...)
I need help making a Dakrai script. It's a simple battle script with text. Also, I'm having trouble with movement scripts, and animation scripts. Help? |
I put this script in using PokeSav 1.52 and my ROM died. Is there something wrong with it?
Spoiler:
|
Quote:
|
Uh, I searched for an offset with 9000000 bytes. :nervous:
So, why did it make my ROM not turn on? Like, white screen? |
Quote:
|
Spoiler:
This is a simple script I did, but the checkitem and removeitem commands don't work. Any problem? Thank you |
Quote:
Spoiler:
|
Thanks for the reply T. But I figured it out just NOW :P It always happens to me. Anyways, thanks again.
|
Wait, there's a removeitem command?
Is there a removepokemon command then? |
Quote:
RemovePokemon = Not sure, i think there is, because i think i have seen it done before. Search through the command list in XSE and see. |
With no answer,so I ask it again:
Quote:
@FrosslassSorbet:I guess there isn't enough space for GBA RAM to load such a big thing...Maybe you could separate these commands into some parts. |
Wildbattle [wildPokemon number in hex] [level] [item]
That's all there is to it. Just type in any command in the main box in XSE and press F1. It'll tell you what you need to put and stuff. |
Quote:
Code:
|
WEll, I dunno..I think it might be the shiny hack maker...
|
Quote:
Spoiler:
Hope it works. |
Quote:
Spoiler:
Few notes. Since you're using FireRed and you wanted to change the text color to just blue and red, respectively, you simply need to use the textcolor command. Proper values are: 0x0 = Blue 0x1 = Red 0x3 = Black Once you use a textcolor command, the changes will be permanent till the end of the script, or till you use another textcolor command. Also, make sure the script at 0x1A74EB looks like this: Code:
Quote:
Also, you wrote setvar 4033 0x1, while you actually meant 0x4033. 0x stands for hexadecimal, and it's not an optional, indeed. When you write 4033, that would be like typing 0xFC1 (in hex). Crearly not the right value. After each applymovement you should put a waitmovement 0x0 too. Yet another thing, some of the latest AM version will even screw up the level script structure. Hence my suggestion to load any level script directly with XSE. All you have to do is to check the Professional Header View option, copy the Map Script offset, paste it into XSE, check the Level Script option near the decompile button and then decompile it. Here's the fixed script: Spoiler:
Quote:
The most obvious way is the following: Code:
Code:
An example is the Oak script found at FR/LG beginning. Quote:
Let's take the first line for example. Code:
0x means hexadecimal. So, if you want to hide people number 16, you would do Code:
Code:
Note: to properlt hide a person forever you need to set the proper flag (People ID) after using hidesprite. I changed the flag value to 0x1001, so you'll need to change the People ID on AM accordingly. Also, you'll need to edit the rest of the string in order to make them use dynamic pointers. See the script above as example: Spoiler:
Quote:
Quote:
Proof: http://i37.tinypic.com/qz1x8x_th.png Make sure your script tile has the right values: Unknown: 0003 (older version of AM would show it as 03 00) Var Number: 40XX (older: XX 40) Var Value: 0000 XX stands for a hex value between 0x2 and 0xFF, basically. Since those values can be used by the game already, you may have to experiment a little. You may even try something like 50XX. Quote:
Now there are 2 wildbattle constructs. (Yeah, wildbattle is not a command actually). Quote:
Once you're ready, get XSE and compile this script below. Since it was a total mess, I removed any movements etc. You'll need to add them by yourself. Spoiler:
Quote:
Quote:
Being a THUMB routine, the pointer must be an even odd number. Here's the fixed version: Spoiler:
|
I tried these two fixed scripts,but the game just stopped there...
I think I should try a giveegg command to test the Shiny Hack Maker... Anyway,thanks. |
Can someone explain for me what writebytetoooffset does? I don't seem to get it. And an example would be appreciated.
Thanks. |
Quote:
I think I'm gonna try that now... I'll PM you if it should work. EDIT: Oh well, it doesn't seem to work, which means that my guess was wrong.... Well, you should wait for HackMew to reply to this. |
Quote:
Quote:
(Even I don't understand what my guess means!) Maybe the quote from XSE will help, anyways. |
Hey guys, can someone please tell me how to do a trainerbattle in XSE (I just recently converted from pokescript) and quite possibly an applying movement, I have someone looking down, and want them to move right go in the warp they are also in guarding (it's behind them)
|
Quote:
Code:
|
Quote:
|
Quote:
Type of battle 0x Battle no. (if you use PET, the trainer no. on the side.) 0x I forgot... |
Quote:
|
#org $headbutt
checkitem item no. compare LASTRESULT 0x06 if 1 jump $could ' message $question $question 1 = This tree could have a Pokemon\nin it. Slather the bark in Honey? boxset 0x5 compare LASTRESULT 0x00 if 1 jump $end message $used $used 1 = Slathered the bark in Honey. boxset 0x6 #raw 0x68 #raw 0x27 ' jump 0x1Be06F #org $could message $you $you 1 = It's a Honey Tree! boxset 0x6 release end #org $end release end this is my unteasted honey tree script for Pokescript try it please |
It looks fine to me. You got it from Dabomstew's hacking site right?
|
I'm not a pokescript scripter, but aren't you missing a few ends?
|
Hey all, I just started scripting like 2 days ago and I'm beginning to understand it. So far, I have 2 problems I couldn't work out.
I am writing these scripts for Pokemon Ruby and using Pokescript. 1. I made a givepokemon script, and everything works fine except for one thing. If you say "yes" to nicknaming your pokemon, after you nickname a textbox should come up saying "Thanks!". The same thing goes for if you say No. However, if I click yes for nicknaming the pokemon, after I nickname it the "Thanks" Textbox doesn't come up. Here is the script: Spoiler:
The other script I'm having trouble with is applymovement. Everything works fine, but after the script ends if you try to talk to the person that moved he says something like: "May: Let's go back to Professor Birch's lab" or something. Is it because I used a flag that has been already set? Also how can I add a message that the person says if you talk to him after the script had finished? Here is the script: Spoiler:
|
Quote:
|
Quote:
RAM addresses are for example 0x2XXXXXX - 0x3XXXXXX. To test the command: Code:
Finally run a script with a writebytetooffset command. You'll notice the memory will get updated. |
I have a script that works perfectly, until I reach the end of it. It's a movement script where someone comes and gives you three Pokemon, after that they go away, then when they reach their final spot the player warps into the middle of nowhere, I know they warp because I looked at the script to try and fix it with the 'Open Script' in AM, using XSE. I didn't add the warp, but everytime I remove it and fix the end it comes back up in the game and then the script.
I don't know whats causing the problem or have any idea about it, but it would be good if someone can help me here. I don't think anythings wrong with the script but if you need it I can post it. |
Quote:
|
Hey all. I have 2 more questions.
1. How do I continue a script after a warp? I heard it's called a level script or something.. How would I go about making a level script? 2. In the beginning of Firered, Professor oak is hidden until you try to go into the grass. (meaning his sprite was hidden, it was visible in Advancemap but not in the game itself). I know you are supposed to use the command hidesprite or something like that.. but how on earth was the sprite hidden without there being a script to hide him in the first place? |
Quote:
there's a lot of useful and knowledgeable tutorials there like how to apply Level Scripts... |
Quote:
|
Quote:
Can you show us the script please? |
Is it possible to use the same script twice even if one of the times you have set something so you can't get it again there. Like:
First 'A' press: Player found a pokeball Second 'A' press: There is nothing but books here now and have that script on different things? |
Quote:
Example: Spoiler:
Hope that helps. |
This is the script:
Code:
Code:
|
Quote:
I don't see anything wrong with it :\ Do you have the un-compiled script? The original? Spoiler:
Try this, it's XSE. |
Quote:
|
Quote:
|
Quote:
|
Quote:
|
So. Does anyone have any ideas on how to force the seagallop to go wherever you want it to with "special 0x17B"? I'd like it to NOT go to Vermillion or those seven islands.
I read the romhacking newsletter issue two, and it still confused the dickens out of me, so if anyone could help me out, I would be quite grateful. |
Quote:
|
I just learned how to make level scripts, and everything is working fine except for one problem I'm running into. You see I set a flag in the beginning of the game to hide a sprite in one of the houses in pallet town. That flag was 112. So the sprite was hidden. Then I went and made a script that when I talk to a man he leads him to his house, and in his house I put a level script where he gives me a Pokemon (celebi). It all works fine, and I get the Celebi and everything. I made it so that the flag I set in the beginning of the game is cleared when I talk to the man, because I want the sprite in the house that he's leading me to to be visible again. So, the sprite is visible again and all works fine. HOWEVER, my problem is that when I go into the house without talking to the old man, as soon as I enter the house, the game freezes... Or at least the character freezes.
Here are my 2 scripts: The first one, when the old man leads me to his house (this one works fine) Spoiler:
Here is the LEVEL script: Spoiler:
|
Quote:
|
Oooohohohohhohhoooo! You people are going to cry for joy when you get the new XSE...
Anyways... (snicker)... is there a way to have the script check to see if 2 variables are the same, and if soo, continue the script from a different pointer? Like a checkflag, only for 2 pointers? if so, can I get an example? If it is comparevars, please tell me how exactly to use it |
2 Attachment(s)
For some reason, this script wont compile. It keeps saying,Run time error 9. Subscript out of range. Heres my script
|
Quote:
setflag 0x230 setflag 0x231 warp 0x6 0x0 0xFF #raw 0x07 0x00 0x0E 0x00 end You should add an end. How do you compile it? Do you: Right click on the script( saved as.rbc), and press compile. You click Assign and search for your rom. Then you press Look(flashlight looking), and copy an offset, and press Assign. Then File>Burn. Is that what you do? |
| All times are GMT -8. The time now is 2:35 AM. |
![]()
© 2002 - 2018 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 - 2016 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.
Acknowledgements
Use of PokéCommunity Assets
vB Optimise by DragonByte Technologies Ltd © 2023.