ff3:ff3us:doc:asm:codes:overworld_character_script

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

ff3:ff3us:doc:asm:codes:overworld_character_script [2016/05/15 13:06]
m06
ff3:ff3us:doc:asm:codes:overworld_character_script [2019/02/12 11:19]
Line 1: Line 1:
- ===== Overworld Character Script Commands ===== 
  
-==== Graphical Actions (00-7F):==== 
-<code> 
-00-3F                   $EE7922     Graphical Actions 
-40-7F                   $EE7932     Graphical Actions, flipped horizontally 
-</code> 
- 
-==== Movement (80-9F):==== 
-<code> 
-  100nnndd 
-  ___ _ __ 
-    | |__ d: direction (0: up, 1: right, 2: down, 3: left) 
-    |____ n: number of steps (1 is added to this, so 1-8 steps possible) 
-   |_______ always 100 
- 
-Movement table in tiles: 
-1      2      3      4      5      6      7      8  
------------------------------------------------------- 
-80     84     88     8C     90     94     98     9C   | Move character up 
-81     85     89     8D     91     95     99     9D   | Move character right 
-82     86     8A     8E     92     96     9A     9E   | Move character down 
-83     87     8B     8F     93     97     9B     9F   | Move character left 
- 
-Summary: 
-80                                  Move character up 1 tile 
-81                                  Move character right 1 tile 
-82                                  Move character down 1 tile 
-83                                  Move character left 1 tile 
-84                                  Move character up 2 tiles 
-85                                  Move character right 2 tiles 
-86                                  Move character down 2 tiles 
-87                                  Move character left 2 tiles 
-88                                  Move character up 3 tiles 
-89                                  Move character right 3 tiles 
-8A                                  Move character down 3 tiles 
-8B                                  Move character left 3 tiles 
-8C                                  Move character up 4 tiles 
-8D                                  Move character right 4 tiles 
-8E                                  Move character down 4 tiles 
-8F                                  Move character left 4 tiles 
-90                                  Move character up 5 tiles 
-91                                  Move character right 5 tiles 
-92                                  Move character down 5 tiles 
-93                                  Move character left 5 tiles 
-94                                  Move character up 6 tiles 
-95                                  Move character right 6 tiles 
-96                                  Move character down 6 tiles 
-97                                  Move character left 6 tiles 
-98                                  Move character up 7 tiles 
-99                                  Move character right 7 tiles 
-9A                                  Move character down 7 tiles 
-9B                                  Move character left 7 tiles 
-9C                                  Move character up 8 tiles 
-9D                                  Move character right 8 tiles 
-9E                                  Move character down 8 tiles 
-9F                                  Move character left 8 tiles 
- 
-A0                                  Move character right/up 1x1 tiles 
-A1                                  Move character right/down 1x1 tiles 
-A2                                  Move character left/down 1x1 tiles 
-A3                                  Move character left/up 1x1 tiles 
-A4                                  Move character right/up 1x2 tiles 
-A5                                  Move character right/up 2x1 tiles 
-A6                                  Move character right/down 2x1 tiles 
-A7                                  Move character right/down 1x2 tiles 
-A8                                  Move character left/down 1x2 tiles 
-A9                                  Move character left/down 2x1 tiles 
-AA                                  Move character left/up 2x1 tiles 
-AB                                  Move character left/up 1x2 tiles 
-</code> 
- 
-==== Conditionals (B0-BF): ==== 
-<code> 
-  ci: sbbbbbbb bbbbbiii 
-      _ ___________ ___ 
-      |      |       |__ i: bit index (0-7) 
-      |      |__________ b: byte (added to $1E80) 
-      |_________________ s: if 1, check that bit is set; else, check that bit is clear 
- 
-Summary: 
-B0 c1 aaaaaa                        if(c1), goto aaaaaa 
-B1 c1 c2 aaaaaa                     if(c1 || c2), goto aaaaaa 
-B2 c1 c2 c3 aaaaaa                  if(c1 || c2 || c3), goto aaaaaa 
-B3 c1 c2 c3 c4 aaaaaa               if(c1 || c2 || c3 || c4), goto aaaaaa 
-B4 c1 c2 c3 c4 c5 aaaaaa            if(c1 || c2 || c3 || c4 || c5), goto aaaaaa 
-B5 c1 c2 c3 c4 c5 c6 aaaaaa         if(c1 || c2 || c3 || c4 || c5 || c6), goto aaaaaa 
-B6 c1 c2 c3 c4 c5 c6 c7 aaaaaa      if(c1 || c2 || c3 || c4 || c5 || c6 || c7), goto aaaaaa 
-B7 c1 c2 c3 c4 c5 c6 c7 c8 aaaaaa   if(c1 || c2 || c3 || c4 || c5 || c6 || c7 || c8), goto aaaaaa 
-B8 c1 aaaaaa                        if(c1), goto aaaaaa 
-B9 c1 c2 aaaaaa                     if(c1 && c2), goto aaaaaa 
-BA c1 c2 c3 aaaaaa                  if(c1 && c2 && c3), goto aaaaaa 
-BB c1 c2 c3 c4 aaaaaa               if(c1 && c2 && c3 && c4), goto aaaaaa 
-BC c1 c2 c3 c4 c5 aaaaaa            if(c1 && c2 && c3 && c4 && c5), goto aaaaaa 
-BD c1 c2 c3 c4 c5 c6 aaaaaa         if(c1 && c2 && c3 && c4 && c5 && c6), goto aaaaaa 
-BE c1 c2 c3 c4 c5 c6 c7 aaaaaa      if(c1 && c2 && c3 && c4 && c5 && c6 && c7), goto aaaaaa 
-BF c1 c2 c3 c4 c5 c6 c7 c8 aaaaaa   if(c1 && c2 && c3 && c4 && c5 && c6 && c7 && c8), goto aaaaaa 
-</code> 
- 
-==== Other (C0-FF) ==== 
-<code> 
-C0                                  Set entity's speed (within the event) to slowest 
-C1                                  Set entity's speed (within the event) to slow 
-C2                                  Set entity's speed (within the event) to normal 
-C3                                  Set entity's speed (within the event) to fast 
-C4                                  Set entity's speed (within the event) to fastest 
-C7 xx xx 
- 
-Bit manipulation (C8-C9): 
-  bbbbbbbb bbbbbiii 
-   ____________ ___ 
-               |__ i: bit index (0-7) 
-         |__________ b: byte (added to $1E80) 
- 
-C8 xxxx                 $EE7D46     Set event bit 
-C9 xxxx                 $EE7D6F     Clear event bit 
-CC                                  Turn character up 
-CD                                  Turn character right 
-CE                                  Turn character down 
-CF                                  Turn character left 
-D0                                  Show character 
-D1                                  Hide character 
-D2 nnnn xx yy mm                    Load map nnnn, position (xx, yy), mode mm 
-D3 nnnn xx yy mm                    Load map nnnn, position (xx, yy), mode mm 
-D4 aaaaaa                           If ($08 & 0x80 == 0), goto $aaaaaa 
-D5 xx aaaaaa                        If ($F6 != xx), goto $aaaaaa 
-D8                                  Unfade screen 
-D9                                  Fade screen 
-DD                                  Hide mini-map 
-DF                                  Show mini-map 
-E0 xx                               Pause for xx units 
-FC                                  Change character to ship graphic 
-FD                                  Show Figaro Castle submerging 
-FE                                  Show Figaro Castle emerging 
-FF                                  End Map Script 
-</code> 
  • ff3/ff3us/doc/asm/codes/overworld_character_script.txt
  • Last modified: 5 years ago
  • (external edit)