• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Our weekly protagonist poll is now up! Vote for your favorite Trading Card Game 2 protagonist in the poll by clicking here.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Gold scripting - Tutorials/Commands

Status
Not open for further replies.
Are you still having trouble finding the blank space?
 
Well, I'd like to say no, but yeah, I am.
I find a lot of blank spaces, but none at 0x1225A0.
But perhaps I'm looking in the wrong spot.
 
There's definitely blank space at 1225A0. Just to confirm you're using the right ROM, could you take a screenshot of your ROM information? You can get to it in VisualBoyAdvance by clicking File > Rom Information. You should get something like this:

[PokeCommunity.com] Gold scripting - Tutorials/Commands


Next, which hex editor are you using? Are you sure you're navigating to the right location? Here are some example screenshots in Windhex, Hexpose, and Translhextion.
 
Ok, I downloaded a new rom, and the numbers are different.
Maybe I was trying to hex edit an already hacked ROM.
I just checked 1225A0 and it is blank. Sorry for the trouble.
But one more question.
On my new ROM, there are some blank spots long before 1225A0. Could I write script in those? Or not? And if not why does it have to be so far down at 1225A0?
Thanks.
 
The other free space would be unsuitable because scripts have to be repointed to within their own data bank. A bank is 0x4000 bytes. This bank, for example, consists of all the data from 120000 to 123FFF. You could theoretically repoint the data to anywhere in this bank, but in the vast majority of cases it's best to use free space if it's available.
 
That's exactly right.
 
Ah, I'm catching on finally.
Wrote a script at like 1 AM. Stuff's addicting.
Anyway, I got it to work mostly. Was just a simple message script.
Thank you for all your help, =D. You've been awesome.
 
The other free space would be unsuitable because scripts have to be repointed to within their own data bank. A bank is 0x4000 bytes. This bank, for example, consists of all the data from 120000 to 123FFF. You could theoretically repoint the data to anywhere in this bank, but in the vast majority of cases it's best to use free space if it's available.
What if I made a Huge script and it accidentally enters another Bank? will it continue to work?
 
No, it will be cut off where the bank ends. At that point the game will probably crash, because it will start reading VRAM data as if it's the continuation of the script (which is something that should never happen).
 
MOVEMENTS
6A 47 4C xx xx 53 49 69 xx xx 90
Ok, New codes here. 69 is the movement of the talked-to person, and 68 is movement for any person but you have to put people no.
the command 69 requires a 2 byte pointer to the movement data and the movements are below. After you've pointed to the movements, end the movements with a 47 command. Ok, so you talk to someone, then they tell you something, and then the move around, yay! You made a movement script!
This doesn't explain how to change direction, and the compendium isn't very clear either. I try to turn to face a certain direction, but the character just turns and keeps moving down...
 
Always in order: down, up, left, right; always 4 per action

Moving scripts:
00 = Turn head
04 = ½ step
08 = slow step
0C = step
...
ie 0C = walk down, 0D = walk up, 0E = walk left, 0F = walk right
 
Something I learned today

The "text block"/"text bank" labeling in Goldmap has nothing to do with text. It's actually the two-byte pointer to the script, as you can see if you check out the scripts in hex. That labeling can be confusing... makes you wonder why the Goldmap developers called it that.
 
This isn't for sure but I think work has been stopped on it, as the last version I have was copyrighted from 2000 to 2005.
 
i found this thread very helpful in starting up the scripts but i need to know how to set up a legendary pokemon event
i.e. an overworld sprite that when talked to says 'GYOOOOOO' and starts a battle with zapdos one time only
 
i found this thread very helpful in starting up the scripts but i need to know how to set up a legendary pokemon event
i.e. an overworld sprite that when talked to says 'GYOOOOOO' and starts a battle with zapdos one time only
First realize what you need to do:

- Open text box
- Print text
- Start battle
- Set a flag so it only happens once

Now look at Tauwasser's document and see what commands you'll need. If you're having trouble, find the in-game scripts for Pokemon such as Ho-oh or Sudowoodo and see how they're built, then change it so that it'll use Zapdos.
 
First realize what you need to do:

- Open text box
- Print text
- Start battle
- Set a flag so it only happens once

Now look at Tauwasser's document and see what commands you'll need. If you're having trouble, find the in-game scripts for Pokemon such as Ho-oh or Sudowoodo and see how they're built, then change it so that it'll use Zapdos.

1) where do i find the offsets for Sudowoodo?

2) in gold map what is the 'Person Number' for the bird icon?

3) can you link me a flags tutorial?

p.s. the reason im posting here is because if someone else decides to have a go at learning script they can refer here :)
 
Last edited:
Status
Not open for further replies.
Back
Top