Difference between revisions of "Script Format"
Jump to navigation
Jump to search
(Updated and added commands) |
m (Added 0x0C and 0x2D, Updated 0x48) |
||
Line 118: | Line 118: | ||
| 2 | | 2 | ||
| Offset to script location | | Offset to script location | ||
|} | |||
|- | |||
| 0x0C | |||
| 8 | |||
| Trigger area | |||
{| class="wikitable" | |||
|- | |||
! Offset | |||
! Length | |||
! Name | |||
|- | |||
| 0 | |||
| 1 | |||
| Movement mask | |||
|- | |||
| 1 | |||
| 1 | |||
| Start X | |||
|- | |||
| 2 | |||
| 1 | |||
| Start Y | |||
|- | |||
| 3 | |||
| 1 | |||
| End X | |||
|- | |||
| 4 | |||
| 1 | |||
| End Y | |||
|- | |||
| 5 | |||
| 2 | |||
| Script offset | |||
|- | |||
| 7 | |||
| 1 | |||
| Unknown | |||
|} | |} | ||
Line 244: | Line 283: | ||
|} | |} | ||
|- | |||
| 0x2D | |||
| 7 | |||
| Call code when movement mask matches | |||
{| class="wikitable" | |||
|- | |||
! Offset | |||
! Length | |||
! Name | |||
|- | |||
| 0 | |||
| 2 | |||
| Movement mask | |||
|- | |||
| 2 | |||
| 2 | |||
| script offset | |||
|- | |||
| 5 | |||
| 3 | |||
| code offset | |||
|} | |||
|- | |- | ||
| 0x48 | | 0x48 | ||
| 2 | | 2 | ||
| | | Skip next opcode if event flag is unset | ||
|- | |- |
Revision as of 20:44, 1 January 2015
Scripts are parsed bytewise.
Commands
Opcode | argument length (byte) | Function | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x00 | 3 | Jump to 24byte offset
| ||||||||||||||||||||||||
0x01 | 1 | Unknown | ||||||||||||||||||||||||
0x02 | 2 | Setup a loop
| ||||||||||||||||||||||||
0x03 | 1 | Execute loop
| ||||||||||||||||||||||||
0x04 | 4 | Unknown | ||||||||||||||||||||||||
0x07 | 2 | Set event flag
| ||||||||||||||||||||||||
0x08 | 4 | Jumps to offset if flag is set
| ||||||||||||||||||||||||
0x09 | 4 | Jumps to offset if flag is not set
| ||||||||||||||||||||||||
0x0C | 8 | Trigger area
| ||||||||||||||||||||||||
0x14 | 8 | Port player
| ||||||||||||||||||||||||
0x1A | 11 | Display choice dialog
| ||||||||||||||||||||||||
0x1B | 2 | Call text script (16 byte address)
| ||||||||||||||||||||||||
0x1C | 3 | Call text script (24 byte address)
| ||||||||||||||||||||||||
0x1F | 0 | End script | ||||||||||||||||||||||||
0x21 | 2 |
| ||||||||||||||||||||||||
0x23 | 2 |
| ||||||||||||||||||||||||
0x2D | 7 | Call code when movement mask matches
| ||||||||||||||||||||||||
0x48 | 2 | Skip next opcode if event flag is unset | ||||||||||||||||||||||||
0x6E | 1 | Update scene | ||||||||||||||||||||||||
0x78 | x | Update BG fade | ||||||||||||||||||||||||
0x80 | x | Set model mode | ||||||||||||||||||||||||
0x87 | x | Move object | ||||||||||||||||||||||||
0x8F | 0 | Unknown | ||||||||||||||||||||||||
0xC1 | x | Set scene time | ||||||||||||||||||||||||
0xAA | x | Call script | ||||||||||||||||||||||||
0xB7 | 0 | Unknown |