Difference between revisions of "Tech Data Notes"

From Chrono Compendium
Jump to: navigation, search
(Added section on Graphics Header)
(Updated multiple sections.)
Line 374: Line 374:
 
*16 sound effect freezes game
 
*16 sound effect freezes game
 
*17 toward enemy then to side x strike sound effect
 
*17 toward enemy then to side x strike sound effect
*18 flash animatin
+
*18 flash animation
 
*19 glitchy
 
*19 glitchy
 
*1a freezes
 
*1a freezes
Line 384: Line 384:
 
*20 move towards enemy with animation
 
*20 move towards enemy with animation
 
*21 Move towards enemy quickly
 
*21 Move towards enemy quickly
*22 move accross screen with animatoin
+
*22 move across screen with animation
 
*23 animated quick circle
 
*23 animated quick circle
 
*24 sprint away from enemy
 
*24 sprint away from enemy
 
*26 freezes
 
*26 freezes
*27 28 19 animated dissapears didn't come back
+
*27 28 19 animated disappears didn't come back
 
*2A falls to ground
 
*2A falls to ground
 
*2B spins to enemy then attacks
 
*2B spins to enemy then attacks
Line 564: Line 564:
 
Enemy Attacks Set 1: 0x0D4926, 0x0D4926, 0x0D4926<br>
 
Enemy Attacks Set 1: 0x0D4926, 0x0D4926, 0x0D4926<br>
 
Enemy Attacks Set 2: 0x0D4F26, 0x0D4F26, 0x0D4F26<br>
 
Enemy Attacks Set 2: 0x0D4F26, 0x0D4F26, 0x0D4F26<br>
 +
 +
==Targeting Data==
 +
Two byte targeting data used to determine the behavior of the target selection. Enemy Targeting mostly relies on AI, using byte 1 to find a fallback target.
 +
<pre>Byte 1:
 +
Bit 80: Hide tech selection menu when choosing target
 +
Bits 7F: Type of targeting at menu selection.
 +
Byte 2: Type of targeting at attack start.</pre>
 +
 +
===Byte 1 values for PCs===
 +
<code>00 One PC
 +
01 All PCs
 +
02 Self
 +
03 One Fallen PC
 +
04 All PCs
 +
05 Ayla
 +
06 Frog
 +
07 One Enemy (different from others)
 +
08 All Enemies
 +
09 All PCs, All Enemies
 +
0A All PCs
 +
0B All in line
 +
0C Line (up to target)
 +
0D Area around Enemy - Robo only
 +
0E One Enemy
 +
0F Horizontal Line
 +
10 One Enemy
 +
11 Area around character
 +
12 Area around enemy
 +
13 Area Around Robo
 +
14 Area Around Robo (different from 13)
 +
15 One Enemy
 +
16 One Enemy (no fallback)
 +
17 One Enemy
 +
18 Area around enemy (different from 12)
 +
19 One Enemy
 +
1A Area around enemy (different from 18)
 +
1B Area Around Magus
 +
1C One Enemy (no fallback)
 +
1D One Enemy (no fallback)
 +
1E One Enemy (no fallback)
 +
1F One Enemy (no fallback)
 +
20 One Enemy (no fallback)</pre>
 +
 +
===Byte 1 values for enemies===
 +
 +
<pre>00 One
 +
01 Multiple
 +
02 Unknown
 +
03 One
 +
04 Multiple
 +
05 One
 +
06 One
 +
07 Unknown
 +
08 Multiple
 +
09 Unknown
 +
0A Multiple
 +
0B Unknown
 +
0C Unknown
 +
0D Unknown
 +
0F Unknown
 +
10 Unknown
 +
11 Unknown
 +
12 Unknown
 +
13 Unknown
 +
14 Unknown
 +
15 Unknown
 +
1A Unknown
 +
1B Unknown
 +
32 Unknown</pre>
 +
 +
===Byte 2 values===
 +
Tested on PCs, behavior on enemies unknown.
 +
<pre>00 None
 +
01 Line (All)
 +
02 Area Around Caster
 +
03 Area Around Enemy
 +
04 Unknown
 +
05 Line (Up to target)
 +
06 Unknown
 +
07 Unknown (unused)
 +
08 Unknown
 +
09 Unknown
 +
0A Unknown
 +
0B Line (Horizontal)</pre>
  
 
==Offsets Pertinent to Techs==
 
==Offsets Pertinent to Techs==
Line 577: Line 661:
  
 
0xC0230 ~ 0xC0236: Tech learning progress (00 - 08)
 
0xC0230 ~ 0xC0236: Tech learning progress (00 - 08)
The effects of this offset range have not yet been explored thoroughly.
+
  Index of last tech learned.  
  
0xC0237 ~ 0xC023D: Techs learned (00, 80, C0, E0, F0, F8, FC, FE, FF)
+
0xC0237 ~ 0xC023D: Techs learned (bitflags)
  The effects of this offset range have not yet been explored thoroughly.
+
  Techs learned in the current group. 80 - tech 1.
  
 
0x0C15CF ~ 0x0C1ACA: Tech names (11 bytes each)
 
0x0C15CF ~ 0x0C1ACA: Tech names (11 bytes each)
Line 586: Line 670:
 
  Tech names are supported in Temporal Flux as well.
 
  Tech names are supported in Temporal Flux as well.
  
0x0C1ACD ~ 0x0?????: Tech targeting. 2 bytes each.
 
Some common values are:
 
  07 00: One enemy (Example: Confuse, Charm)
 
  08 00: All enemies (Example: Dark Matter, Ice 2, Luminaire)
 
  80 00: One ally (Example: Cure, Aura)
 
  81 00: All allies (Example: Heal Beam, Aura Whirl)
 
  03 00: One fallen ally (Example: Life)
 
  04 00: All fallen allies
 
  12 03: Enemy area (Example: Cyclone, Dark Bomb)
 
  0B 01: Enemy line (Example: Slash)
 
  0C 05: Enemy line (Example: Flame Toss)
 
  11 02: Area around character (Example: Area Bomb, Tail Spin)
 
  1B 0A: Area around character (Example: Black Hole)
 
  13 02: Area around character (Example: Max Cylone, Fire Zone)
 
  0F 0B: Horizontal line (Example: Falcon Hit)
 
  00 00: One ally status (Example: Haste, Magic Wall)
 
  01 00: All allies status (Example: Life Line)
 
  13 06: (Example: Double Bomb)
 
  0D 01: (Example: Blade Toss)
 
 
0x0C214B ~ 0x0C23EA: ST Tech power: 12 bytes per tech, 8 techs per character. 
 
  If the tech heals, 2nd byte affects power. For attack techs, 10th byte affects power.
 
0xC214B = cyclone attack
 
0xC2157 = Slash
 
0xC2163 = Lightning
 
0xC216F = Spincut
 
0xC217B = Lightning 2
 
0xC2187 = life
 
0xC2193 = confuse
 
0xC219F = lumiaire
 
0xC21AB = aura
 
0xC21B7 = provoke
 
0xC21C3 = ice
 
...
 
  
 
0x0C23EB ~ 0x0C247A: Some extra data for 12 combo techs.   
 
0x0C23EB ~ 0x0C247A: Some extra data for 12 combo techs.   
Line 647: Line 697:
 
   80 - FF: Decrease by 128 to 1
 
   80 - FF: Decrease by 128 to 1
  
 
0x0D45AD ~ 0x0D4925: Unknown tech data; 7 bytes each (127 techs). May point to graphics and sound data.
 
The bytes are structured as follows: aa bb cc dd ee ff gg
 
  aa = An unknown tech index. May point to two-byte "slots" beginning at address 0x0D5EF0
 
  bb =
 
  cc =
 
  dd =
 
  ee =
 
  ff =
 
  gg =
 
Crono's first tech, Cyclone, will be used to illustrate. Its 7 bytes in this region are: 01 DA EF 20 01 01 FF
 
  01: Points to the second "slot" in offset range 0x0D5EF0 ~ 0x??????
 
 
0x0D5EF0 ~ 0x0D5FDB: Possible pointers to sound and personal tech animations. 2 bytes per tech.
 
These do not seem to pertain to spell graphics packets (i.e., exchanging Cyclone data for
 
Lightning causes the Lightning sound to be played and causes Crono to act as if he is casting
 
Lightning, but the sparkles and Lightning bolt graphics are still Cyclone slashes).
 
The extent of this data is unclear. The ending point may not occur until 0xD612F.
 
  
 
0x3DA89D ~ 0x?????: Tech names and descriptions that appear in the character battle menus.
 
0x3DA89D ~ 0x?????: Tech names and descriptions that appear in the character battle menus.
Line 674: Line 706:
 
</pre>
 
</pre>
  
Lots of people need to be thanked for this, including Justin3009, Maelstrom, and AdNova. The list will grow...
+
Lots of people need to be thanked for this, including Justin3009, Mauron, Maelstrom, and AdNova. The list will grow...
  
 
==Tech Name Alphabet==
 
==Tech Name Alphabet==
Line 783: Line 815:
 
FF - Blank Space
 
FF - Blank Space
 
</pre>
 
</pre>
 
==Tech Addresses==
 
 
Crono
 
---------------------------------------------------------
 
CD5EE6: 09 09 - (CD45AC)Cyclone        9C 09 - Slash
 
CD5EF6: 64 0A - (CD45C1)*Lightning      B2 0B - Spin Cut    94 0C - *Lightning 2      02 0E - *Life    96 0E - Confuse (Rainbow Light 64 0a)  90 0F - Luminaire
 
 
--------------------------------------------------------------------------------
 
 
Marle/Nadia
 
------------------------------------------------------
 
CD5EF6 (End Part):  Aura - D7 0F    Provoke - 6F 10
 
CD5F06:    AB 10 - *Cure    (cd45F2 - cd4600 - For Graphics)*Ice - 36 11  *Haste- D3 11  *Cure 2 - 3D 12    *Ice 2 - E1 12  *Life 2 - 5E 13
 
 
--------------------------------------------------------------------------------
 
 
Lucca
 
-------------------------------------------------------
 
CD5F06 (End Part): 38 14 - Flame Toss    4A 15 - Hypno Wave
 
CD5F16:  6D 15 - *Fire    81 16 - Napalm    E3 17 - *Protect    64 18 - *Fire 2    FA 18 - Mega Bomb  B4 1A - Flare
 
 
--------------------------------------------------------------------------------
 
 
Robo/R-66Y
 
-------------------------------------------------------
 
CD5F16 (End Part): (cd4655)B3 1C - RocketPunch    0E 1E - Cure Beam
 
CD5F26:  AE 1E - Laser Spin    6A 12 - Heal Beam?    12 12 - Robo Tackle    A5 20 - Uzzi Punch  E4 21 - Area Bomb?  46 23 - Shock
 
 
--------------------------------------------------------------------------------
 
 
Frog/Glenn
 
-------------------------------------------------------
 
CD5F26 (End Part):  8F 23 - Slurp  97 24 - Slurp Cut 
 
CD5F36:  B9 26 - *Water  81 27 - *Heal  22 28 - Leap Slash    11 29 - *Water 2    EE 29 - *Cure 2    13 2A - Frog Squash
 
 
--------------------------------------------------------------------------------
 
 
Ayla
 
-------------------------------------------------------
 
CD5F36 (End Part): 93 2A - Kiss  00 2B - Rollo Kick?
 
CD5F46:  F2 2B - Cat Attack    67 2C - Rock Throw  F6 2C - Charm  98 2D - Triple Kick    72 2E - Tail Spin  F9 2E - Dino Tail
 
 
--------------------------------------------------------------------------------
 
 
Magus(Janus)
 
-------------------------------------------------------
 
CD5F46 (End Part):  2E 2F - *Lightning 2  74 2F - *Dark Mist 
 
CD5F56:  E1 2F - *Fire 2    2A 30 - *Dark Bomb    A3 30 - *Ice 2    D7 30 - *Magic Wall    2F 31 - *Black Hole    C9 31 - *Dark Matter
 
 
--------------------------------------------------------------------------------
 
 
Double Techs
 
-------------------------------------------------------
 
CD5F56 (End Part):  0E 32 - Aura Whirl    0D 33 - Ice Sword  (3a)
 
 
CD5F66:  9B 34 - Ice Sword 2    A9 35 - Fire Whirl cd474A - cd474f(3c)    2F 37 - Fire Sword    E6 38 - Fire Sword 2    95 3A - Rocket Roll    57 3B - Max Cyclone    E7 3B - Super Volt    9A 3C - X-Strike
 
CD5F76:  19 3D - Sword Stream    D3 3D - Spire    75 3F - Drill Kick    74 40 - Volt Bite    09 43 - Falcon Hit 
 
4C 44 - Antipode    7E 45 - Antipode 2    F8 46 - Antipode  3
 
 
CD5F86: (50) E6 47 - Aura Beam    19 48 - Ice Tackle    F3 48 - Cure Touch    FE 49 - Ice Water    FE 94 - Frog/Crono Unused Tech?    C4 4B - Glacier    4A 4D - Double Cure    1C 4F - Twin Charm    D8 4F - Ice Toss
 
 
CD5F96:  6E 51 - Cube toss    DE 52 - Fire Punch    03 55 - Fire Tackle    49 56 - DoublevBomb    E6 58 - Flame Kick        AB 5A - Blaze Kick    B7 5B - Unused Tech (Fire Twister?)  (5f) 86 5D - Blade Toss
 
 
CD5FA6:  48 5E - Bubble Snap    42 5F - Cure Wave?    76 5F - Boogie    F6 60 - Spin Kick    B0 61 - Beast Toss            49 63 - Slurp Kiss    BD 64 - Bubble Hit    1B 65 - Drop Kick   
 
 
CD5FC6 - 86 76 - Unused Fire Sword    FB 77 - Line Bomb    B6 79 - Flare Frog
 
 
--------------------------------------------------------------------------------
 
 
Triple Techs
 
-------------------------------------------------------
 
CD5FB6:  69 66 - Delta Force    31 68 - Life Line    B7 69 - Arc Impluse    AF 6B - Final Kick    AD 6D - Fire Zone      8C 6F - Delta Storm    26 70 - GatlingKick    4F 72 - Triple Raid
 
 
CD5FC6:  33 73 - Twister    80 75 - 3D Attack    1E 7A - Eternal Dream    14 7B - Omega Laser  85 7C - Ice Sword 3?
 
 
CD5FD6:  85 7E - Poyozo Dance  (79) A7 7F - Unused One  E0 81 - Life?
 
 
Unknown
 
-------------------------------------------------------
 
E0 81 - ???    6F 15 - Fire Walk?    73 36 - ???    79 D5 - Screen Fades to Dark Red as in Flare's
 
85 F2 - Boss Death (Game Freezes)    00 2B - Ayla Attack?
 
  
 
''From'': [[Offsets (Chrono Trigger)]]
 
''From'': [[Offsets (Chrono Trigger)]]

Revision as of 06:51, 7 September 2020

List of Techs

  • 01 - Cyclone
  • 02 - Slash
  • 03 - Lightning
  • 04 - Spincut
  • 05 - Lightning 2
  • 06 - life
  • 07 - confuse
  • 08 - Luminaire
  • 09 - Aura
  • 0A - Provoke
  • 0B - Ice
  • 0C - Cure
  • 0D - Haste
  • 0E - Ice 2
  • 0F - Marle's Cure 2
  • 10 - Marle's Life 2
  • 11 - Flame Toss
  • 12 - Hypno Wave
  • 13 - Fire
  • 14 - Napalm
  • 15 - Protect
  • 16 - Fire 2
  • 17 - MegaBomb
  • 18 - Lucca's Flare
  • 19 - Rocket Punch
  • 1A - Cure Beam
  • 1B - Laser Spin
  • 1C - Robo Tackle
  • 1D - Heal Beam
  • 1E - Uzzi Punch
  • 1F - Area Bomb
  • 20 - Robo's Shock
  • 21 - Slurp
  • 22 - Slurpcut
  • 23 - Water
  • 24 - Heal
  • 25 - Leap Slash
  • 26 - Water 2
  • 27 - Frog's Cure 2
  • 28 - Frog Summon
  • 29 - Kiss
  • 2A - Rollo Kick
  • 2B - Cat Attack
  • 2C - Rock Throw
  • 2D - Charm
  • 2E - Tail Spin
  • 2F - Dino Tail
  • 30 - Triple Kick
  • 31 - Lightning 2
  • 32 - Ice 2
  • 33 - Fire 2
  • 34 - Dark Bomb
  • 35 - Magic Wall
  • 36 - Dark Mist
  • 37 - Black Hole
  • 38 - Dark Matter
  • 39 - Aura Whirl
  • 3A - Dual Ice Slash
  • 3B - Dual Ice Slash 2
  • 3C - Dual Flame Whirl
  • 3D - Dual Fire Sword
  • 3E - Dual Fire Sword 2
  • 3F - Dual Rocket Roll
  • 40 - Dual Max Cyclone
  • 41 - Dual Super Volt
  • 42 - Dual X-Strike
  • 43 - Sword Stream
  • 44 - Dual Spire
  • 45 - Dual Drill Kick
  • 46 - Dual Volt Bite
  • 47 - Dual Falcon Hit
  • 48 - Dual AntiPod
  • 49 - Dual AntiPod 2
  • 4A - Dual AntiPod 3
  • 4B - Dual Aura Beam
  • 4C - Dual Ice Tackle
  • 4D - Dual Cure Touch
  • 4E - Dual Ice Water
  • 4F - Dual Glacier
  • 50 - Dual Double Cure
  • 51 - Dual Twin Charm
  • 52 - Dual Ice Toss
  • 53 - Dual Cube Toss
  • 54 - Dual Fire Punch
  • 55 - Dual Fire Tackle
  • 56 - Dual Double Bomb
  • 57 - Dual Flame Kick
  • 58 - Dual Flame Whirl
  • 59 - Dual Blaze Kick
  • 5A - Dual Blade Toss
  • 5B - Dual Bubble Snap
  • 5C - Dual Cure Wave
  • 5D - Dual Boogie
  • 5E - Dual Spin Kick
  • 5F - Dual Beast Toss
  • 60 - Dual Slurp Kiss
  • 61 - Dual Bubble Hit
  • 62 - Dual Drop Kick
  • 63 - Dual Red Pin
  • 64 - Dual Line Bomb
  • 65 - Dual Frong Flare
  • 66 - Triple Delta Force
  • 67 - Triple Life Line
  • 68 - Triple Arc Impulse
  • 69 - Triple Gatling Kick
  • 6A - Triple Fire Zone
  • 6B - Triple Delta Storm
  • 6C - Triple Final Kick
  • 6D - Triple Triple Raid
  • 6E - Triple Twister
  • 6F - Triple 3D Attack
  • 70 - Triple Dark Eternal
  • 71 - Triple Omega Flare
  • 72 - Triple Spin Strike
  • 73 - Triple Pogozo Dance
  • 74 - Triple Grand Dream
  • 75 -
  • 76 -
  • 77 -
  • 78 -
  • 79 -
  • 7A - Angel Attack
  • 7B -
  • 7C -
  • 7D -
  • 7E -
  • 7F -
  • 80 -

Special Thanks to chakrafire for the tech list!

Tech Animation Commands

00 Return - marks the end of an object.
01 End Tech - stops processing tech data.
02 aa Load Animation aa. loop
03 aa Load Animation aa, play once
04 aa Load Animation aa, play first frame.
05 aa Load Animation aa (same as 04)
06 aa Load Animation aa (same as 04)
07 Set Default Speed
08 Set speed (slowest)
09 Set speed (slow)
0A Set speed (medium)
0B Set speed (fast)
0C Set speed (fastest)
0D Set speed (fastest, short distance) - Distance used by movement commands will change.
0E Set speed (fastest, shorter distance)
0F Set speed (fastest, shortest distance)
10 xx yy Slide Sprite to Coordinates xx yy 
11 Slide sprite to stored coordinates - set by store coordinates command.
12 tt Slide sprite to target tt - Uses target routine list
13 cc xx yy Spiral Sprite to Coordinates - cc = 1 for clockwise, xx yy coordinates.
14 cc Spiral Sprite to Stored Coordinates - cc = 1 for clockwise
15 cc tt Spiral Sprite to Target - cc = 1 for clockwise
16 xx yy Move X, then Y to coordinates
17 Move X, then Y to stored coordinates
18 Move X, then Y to target
19 xx yy Teleport to coordinates xx yy
1A Teleport to stored coordinates
1B tt Teleport to target
1C oo Link effect Object to target or caster object oo. Used for movement, like Cyclone's sword effect
1D Unlink Object
1E ss perform super command ss (example cyclone)
1F Return from super command - signifies end of super command data
20 tt pause for time tt
21 Return from super command if counter 0x1F (Y coordinate) is zero.
22 cc vv Wait for counter cc to reach value vv
23 vv Wait for counter 0x1C (flow control) to reach value vv
24 vv Wait for counter 0x1D (flow control) to reach value vv
25 xx Return if target (xx + 1) is not present.
26 aa ff Load frame of animation aa - animation ff - frame
27 Unknown
28 Unknown
29 Hide Caster or Target Object
2A Show Caster or Target Object
2B Unknown
2C Unknown
2D Unknown
2E Unknown
2F End Tech - identical to 01
30 cc vv Set counter cc to value vv
31 vv Set counter 0x1C to value vv
32 vv Set counter 0x1D to value vv
33 tt Store Coordinates of Target tt
34 cc Increment counter cc
35 increment counter 0x1C
36 increment counter 0x1D
37 cc Decrement counter cc 
38 Decrement counter 0x1C
39 Decrement counter 0x1D
3A cc vv Add value vv to counter cc
3B vv Increase Counter 0x1C by vv
3C oo Increase Counter 0x1D by value, offset by oo. Details unknown
3D tt Load sprite at target tt (00 caster, 01 caster 2, 02 caster 3, 03 target 1 etc)
3E tt Load sprite at target tt (00 caster, 01 caster 2, 02 caster 3, 03 target 1 etc) (Differences Unknown)
3F tt Load sprite at target tt (00 caster, 01 caster 2, 02 caster 3, 03 target 1 etc) (Differences Unknown)
40 tt Load sprite at target tt (00 caster, 01 caster 2, 02 caster 3, 03 target 1 etc) (Differences Unknown)
41 c1 c2 Copy Counter c1 to Counter c2
42 cc Copy Counter 0x1c to Counter cc
43 tt xx yy Store Coordinates of target tt, plus or minus xx and yy.
44 Store Coordinates of Current Object
45 tt Load sprite at target tt (00 caster, 01 caster 2, 02 caster 3, 03 target 1 etc) (Differences Unknown)
46 tt Load sprite at target tt (00 caster, 01 caster 2, 02 caster 3, 03 target 1 etc) (Differences Unknown)
47 tt Store Target tt to RAM at $7E:A4EC
48 tt Store Target tt to RAM at $7E:A4ED
49 cc mv Add or Subtract value mv (max 0x7F) to/from counter cc. mv 0x80 - Subtract.
4A Swap Counters 0x1C and 0x1D
4B End Tech - Same as 01
4C End Tech - Same as 01
4D Swap Counters 0x1C and 0x1D
4E Swap Counters 0x1C and 0x1E - X Coordinate
4F Swap Counters 0x1C and 0x1F - Y Coordinate
50 Show Damage
51 Show Damage (Differences are Unknown)
52 Show Damage (Differences are Unknown)
53 Show Damage (Differences are Unknown)
54 Show Damage (Differences are Unknown)
55 Show Damage (Differences are Unknown)
56 End Tech - Same as 01
57 End Tech - Same as 01
58 End Tech - Same as 01
59 End Tech - Same as 01
5A End Tech - Same as 01
5B End Tech - Same as 01
5C End Tech - Same as 01
5D Draw target or caster object (differences between this and 2a are unknown)
5E Hide target or caster object (differences between this and 29 are unknown)
5F nn Empty Command - Does nothing
60 pp switch to pallette pp
61 xx yy zz Unknown
62 xx yy zz Unknown (Variant of 61)
63 xx yy zz Unknown (Variant of 61)
64 xx yy zz Unknown (Variant of 61)
65 Turn off 61
66 Turn off 62
67 Turn off 63
68 Turn off 64
69 pp Set Object Palette pp. Palettes start at 0x114D90, 0x18 bytes each
6A Reset Object Palette to normal
6B xx Unknown 
6C pp dd Flash Object Palette with palette pp, delay of dd. Same palettes as 69
6D Unknown
6E Draw All Effect Objects
6F Hide All Effect Objects
70 Draw Effect Object
71 Hide Effect Object
72 xx Set Object Facing. 00 North, 01 South, 02 West, 03 East, others unknown
73 xx Set Priority, 00 in front of sprite, 02 behind sprite, 03 in front of sprite, 04 behind sprite, others unknown.
74 xx Set Priority (Differences from 73 unknown)
75 oo Set Angle, Copy from Object oo.
76 t1 t2 Set Angle, Target t1 as source position, Target t2 as object to face.
77 aa Set Angle, add aa to current Angle
78 ss Play Sound ss
79 ss Play Sound ss
7A ss yy Play Sound ss
7B ss yy Play Sound ss
7C Play Regular/Ranged weapon sound
7D Play Critical/Melee weapon sound
7E End Tech - Same as 01
7F End Tech - Same as 01
80 ul vv Flash Screen Color (Variable length command) ul - Unknown 0xF0, length - 1 0x0F, vv - variable length data, details unknown.
81 tt Store Target tt to RAM at $7E:A4E8
82 tt Store Target tt to RAM at $7E:A4E9
83 tt Store Target tt to RAM at $7E:A4EA
84 tt Store Target tt to RAM at $7E:A4EB
85 aa Set Angle Absolute aa - angle
86 End Tech - Same as 01
87 End Tech - Same as 01
88 End Tech - Same as 01
89 End Tech - Same as 01
8A End Tech - Same as 01
8B End Tech - Same as 01
8C End Tech - Same as 01
8D End Tech - Same as 01
8E End Tech - Same as 01
8F End Tech - Same as 01
90 End Tech - Same as 01
91 End Tech - Same as 01
92 End Tech - Same as 01
93 End Tech - Same as 01
94 End Tech - Same as 01
95 End Tech - Same as 01
96 End Tech - Same as 01
97 End Tech - Same as 01
98 tt xx Move To (0x98 variants) tt - Target
99 Move To Stored Coordinates (0x98 variants)
9A tt xx Move To (0x98 variants) tt - Target
9B Move To Stored Coordinates (0x98 variants)
9C tt xx Move To (0x98 variants) tt - Target
9D Move To Stored Coordinates (0x98 variants)
9E End Tech - Same as 01
9F End Tech - Same as 01
A0 End Tech - Same as 01
A1 End Tech - Same as 01
A2 Move Forward Fixed distance.
A3 End Tech - Same as 01
A4 ll tt Draw Copies ll - length (Distance between copies?) tt - Transparency)
A5 Reset Copies
A6 End Tech - Same as 01
A7 End Tech - Same as 01
A8 dd Move Forward dd - Distance
A9 dd Move Forward dd - Distance
AA End Tech - Same as 01
AB End Tech - Same as 01
AC End Tech - Same as 01
AD End Tech - Same as 01
AE End Tech - Same as 01
AF End Tech - Same as 01
B0 End Tech - Same as 01
B1 End Tech - Same as 01
B2 End Tech - Same as 01
B3 End Tech - Same as 01
B4 End Tech - Same as 01
B5 End Tech - Same as 01
B6 End Tech - Same as 01
B7 End Tech - Same as 01
B8 End Tech - Same as 01
B9 End Tech - Same as 01
BA End Tech - Same as 01
BB End Tech - Same as 01
BC End Tech - Same as 01
BD End Tech - Same as 01
BE End Tech - Same as 01
BF End Tech - Same as 01
C0 ww xx yy zz Circular Sprite Movement
C1 ww xx yy Circular Sprite Movement
C2 ww xx yy zz Circular Sprite Movement
C3 ww xx yy Circular Sprite Movement
C4 xx yy 
C5 End Tech - Same as 01
C6 End Tech - Same as 01
C7 End Tech - Same as 01
C8 End Tech - Same as 01
C9 End Tech - Same as 01
CA End Tech - Same as 01
CB End Tech - Same as 01
CC End Tech - Same as 01
CD End Tech - Same as 01
CE End Tech - Same as 01
CF End Tech - Same as 01
D0 Draw Shadow
D1 Hide Shadow
D2 xx Unknown
D3 Unknown
D4 Unknown
D5 Unknown
D6 Unknown
D7 xx yy
D8 xx ss nn Shake Sprite nn times at speed ss.  xx is undocumented 
D9 xx Load Graphics Packet 1.
DA xx Unknown


The 1E XX Command

1E XX is a series of commands called by a tech. These "super commands" can be called by multiple techs for the same purpose. Sometimes it's animated in which case you must call the animation command before the 1E XX command. Here are confirmed XX's

  • 00,01 get hit
  • 02-04 get hit darker
  • 05-09 get hit side
  • 0A run to enemy
  • 0B hit side
  • 0C hit top, freeze
  • 0D-0E run up run up
  • 0F falls to ground
  • 10 - 11 fall down goes to enemy
  • 12 - flashes
  • 13 charges enemy hands out
  • 14 flashes
  • 16 sound effect freezes game
  • 17 toward enemy then to side x strike sound effect
  • 18 flash animation
  • 19 glitchy
  • 1a freezes
  • 1b flashes
  • 1c freezes
  • 1D darkens screen
  • 1E darkens screen comes back
  • 1F cyclone movement with sound
  • 20 move towards enemy with animation
  • 21 Move towards enemy quickly
  • 22 move across screen with animation
  • 23 animated quick circle
  • 24 sprint away from enemy
  • 26 freezes
  • 27 28 19 animated disappears didn't come back
  • 2A falls to ground
  • 2B spins to enemy then attacks
  • 2C down then up
  • 2D spins to enemy
  • 2E off screen
  • 2F jumps up shadow belo
  • 30 - freezes
  • 31- spins then animated
  • 32 off screen
  • 33 jump higher
  • 34 goes off screen and reappears on top animated
  • 35 freezes

Counters

Below is a list of counters used by the counter commands.

  • 00 Flash Object related
  • 01 Unknown
  • 02 Unknown
  • 03 Unknown
  • 04 Unknown
  • 05 Unknown
  • 06 Unknown
  • 07 Unknown
  • 08 Unknown
  • 09 Unknown
  • 0A Unknown
  • 0B Unknown
  • 0C Unknown
  • 0D Unknown
  • 0E Unknown
  • 0F Unknown
  • 10 Unknown
  • 11 Unknown
  • 12 Unknown
  • 13 Unknown
  • 14 Unknown
  • 15 Unknown
  • 16 Unknown
  • 17 Unknown
  • 18 Unknown
  • 19 Unknown
  • 1A Process Draw Geometry flag?
  • 1B Process Layer 3 flag
  • 1C Flow Control
  • 1D Flow Control
  • 1E X Coordinate
  • 1F Y Coordinate
  • 20 Unknown
  • 21 Unknown
  • 22 Unknown
  • 23 Unknown
  • 24 Unknown
  • 25 Unknown
  • 26 Unknown

Tech Control Header

Control headers set the basic properties of how a tech performs. They are 11 bytes long, and vary slightly in function depending the type of tech.

Byte 1: Varies depending on tech type.
	Player Attack or Tech: Determines Performance Group. Bit 0x80 is unused.
	Enemy Tech: Unused.
	Enemy Attack: Bits 8-0x80 are unknown flags, with 8-0x20 and 0x80 being possibly unused. 
                      Bits 1-4 form an unknown value.
Byte 2: Unknown. Testing appeared to have in impact on damage.
	Player Techs and Attacks:
		Bits 1-4: Unknown.
		Bit 8: Unused.
		Bit 0x10: Unused.
		Bit 0x20: Don't compare bits of byte 11 with enemy data 0x14. Applies to entire tech, 
                          not just a specific effect header.
		Bit 0x40: Ignore Hit and evade. Applies to entire tech, not just a specific 
                          effect header.
		Bit 0x80: Unused.
	Enemy Attacks: Possibly unused.
	Enemy Techs:
		Bits 1-4: Unknown.
		Bit 8: Unused
		Bit 0x10: Unused.
		Bit 0x20: Unused.
		Bit 0x40: Ignore Hit and evade. Applies to entire tech, not just a specific 
                          effect header.
		Bit 0x80: Unused.
Byte 3: Tech or Attack Type.
	Bits 1-8: Unknown.
	Bit 10: Enemy Vs Enemy Attack. Set on enemy attacks that target other enemies.
	Bit 20: Unknown.
	Bit 40: Tech. Set on every item in enemy and player techs.
	Bit 80: Player attack.
Byte 4: Bitflags. Relates to AI and element. A tech can only have one element.
	Bit 1: Unknown.
	Bit 2: Magical Attack, as used in AI.
	Bit 4: Physical Attack, as used in AI. A tech can be both magical and physical in AI 
               checks.
	Bit 8: Unknown.
	Bit 0x10: Fire elemental.
	Bit 0x20: Water elemental.
	Bit 0x40: Shadow elemental.
	Bit 0x80: Lightning elemental.
Byte 5: Unused.
Byte 6: Effect Header and MP Cost 1. For player techs, setting bit 80 will ignore the effect header
        and only load the MP cost. For enemy techs, this is done by setting a value of 0xFF.
Byte 7: Effect Header and MP Cost 2.
Byte 8: Effect Header and MP Cost 3.
Byte 9: Hit Effect 1. This loads the same data as weapon and armor effects.
Byte 10: Hit Effect 2.
Byte 11: Hit Effect 3.

The location in the ROM for each varies depending on the type. Offsets are listed in the following order: Japanese, English, Pre-release.

Player Techs: 0xC18A8, 0xC1BEB,0xC1B64
Player Attacks: At the end of Player Techs
Enemy Techs: 0x0C6FC9, 0x0C6FC9, 0x0CF608
Enemy Attacks: 0x0C8801, 0x0C88CA, 0x0C7B80

Effect Header

Each tech has certain properties associated with it. They start at 0x0C214B and are 12 bytes each.

Byte 01: Mgc Type, 01 Status Negative,  03 Time, 04 Status Positive, 46 steal.  Other values Magic Power if TechType= magic or numHits if techType=multihit 
Byte 02: Tech Type, 00 Healing, 01 Status Positive, 02 Status Negative, 03 Damage, 06 Stealing, 08 Multi Hit
Byte 03: If Tech Type is status related the bits of this determine which status gets added
Byte 04: Insignificant part of two byte hit%
Byte 05: Significant part of two byte hit%
Byte 06: Unknown
Byte 07: Higher values = less damage
Byte 08: Unknown
Byte 09: Higher values = more damage
Byte 10: Higher values make magic techtypes do more damage
Byte 11: Higher values make physical tech types do more damage
Byte 12: Unknown


Status Bits

For techs which impact status the 3rd byte of the Tech Properties will determine which statuses changed. Each bit in that byte corresponds to a status these are listed below:


           positive/negative
Bit 1(80): beserk/stop
Bit 2(40): shell/poison
Bit 3(20): regen/unknown
Bit 4(10): unknown/doom
Bit 5(08): unknown/silence
Bit 6(04): protect/confused
Bit 7(02): unknown/sleep
Bit 8(01): unknown/blind

Graphics Header

Graphics headers have all the graphics data for techs. They are 7 bytes long, with the exception of enemy attacks, which are 6 bytes long, and player attacks, which are 5 bytes long.

Graphics headers are unique to each player tech, enemy tech, and item. Enemy attacks use one of two graphics headers, depending on the attack index. Player attacks use a header determined by the weapon equipped and attack type (ranged, melee, or critical).

Byte 1: Animation Index. This controls which set of animation and sound data is loaded. 
        This is not part of the header for player attacks. It instead loads one of three 
        attack bytes.
Byte 2: Sprite Packet 1. This determines which sprites are available to effect objects.
Byte 3: Sprite Packet 2.
Byte 4: Assembly Packet. This controls sprite animation and assembly for packets 1 and 2.
Byte 5: Unknown
Byte 6: Sprite Palette.
Byte 7: Layer 3 Packet. This controls all properties for layer 3 effects, such as
        *Lightning's lightning bolt. This is not used for player or enemy attacks.

The location in the ROM for each varies depending on the type. Offsets are listed in the following order: Japanese, English, Pre-release.

Player Techs: 0xD45A6, 0xD45A6, 0xD45A6
Player Attacks: 0x0D4015, 0x0D4015, 0x0D4015
Player Ranged Attack Byte: 0x0D4000, 0x0D4000, 0x0D4000
Player Melee Attack Byte: 0x0D4007, 0x0D4007, 0x0D4007
Player Critical Attack Byte: 0x0D400E, 0x0D400E, 0x0D400E
Enemy Techs: 0x0D5526, 0x0D5526, 0x0D5526
Enemy Attacks Set 1: 0x0D4926, 0x0D4926, 0x0D4926
Enemy Attacks Set 2: 0x0D4F26, 0x0D4F26, 0x0D4F26

Targeting Data

Two byte targeting data used to determine the behavior of the target selection. Enemy Targeting mostly relies on AI, using byte 1 to find a fallback target.

Byte 1:
	Bit 80: Hide tech selection menu when choosing target
	Bits 7F: Type of targeting at menu selection.
Byte 2: Type of targeting at attack start.

Byte 1 values for PCs

00 One PC 01 All PCs 02 Self 03 One Fallen PC 04 All PCs 05 Ayla 06 Frog 07 One Enemy (different from others) 08 All Enemies 09 All PCs, All Enemies 0A All PCs 0B All in line 0C Line (up to target) 0D Area around Enemy - Robo only 0E One Enemy 0F Horizontal Line 10 One Enemy 11 Area around character 12 Area around enemy 13 Area Around Robo 14 Area Around Robo (different from 13) 15 One Enemy 16 One Enemy (no fallback) 17 One Enemy 18 Area around enemy (different from 12) 19 One Enemy 1A Area around enemy (different from 18) 1B Area Around Magus 1C One Enemy (no fallback) 1D One Enemy (no fallback) 1E One Enemy (no fallback) 1F One Enemy (no fallback) 20 One Enemy (no fallback)</pre>

Byte 1 values for enemies

00 One
01 Multiple
02 Unknown
03 One
04 Multiple
05 One
06 One
07 Unknown
08 Multiple
09 Unknown
0A Multiple
0B Unknown
0C Unknown
0D Unknown
0F Unknown
10 Unknown
11 Unknown
12 Unknown
13 Unknown
14 Unknown
15 Unknown
1A Unknown
1B Unknown
32 Unknown

Byte 2 values

Tested on PCs, behavior on enemies unknown.

00 None
01 Line (All)
02 Area Around Caster
03 Area Around Enemy
04 Unknown
05 Line (Up to target)
06 Unknown
07 Unknown (unused)
08 Unknown
09 Unknown
0A Unknown
0B Line (Horizontal)

Offsets Pertinent to Techs

All offsets given in terms of an unheadered Chrono Trigger ROM.

0x02BD40 ~ 0x?????: Tech names and descriptions that appear in the character status menus.
 The data are arranged like so: FF NN
  FF: Tech index of a character's first tech.
  NN: First tech index of the next character's first tech.
  Thus, Crono's data is 01 09; 01 is the index of Cyclone, and 09 is the index of Marle's Aura.
  Magus' techs are encompassed by 31 39; perhaps 39 pertains to the double tech Aura Whirl?

0xC0230 ~ 0xC0236: Tech learning progress (00 - 08)
  Index of last tech learned. 

0xC0237 ~ 0xC023D: Techs learned (bitflags)
 Techs learned in the current group. 80 - tech 1.

0x0C15CF ~ 0x0C1ACA: Tech names (11 bytes each)
 See the alphabet section for appropriate values.
 Tech names are supported in Temporal Flux as well.


0x0C23EB ~ 0x0C247A: Some extra data for 12 combo techs.  
 (4th = Crono's Confuse power, 5th = Triple Kick power, 9th = Double Cure?, 
  10th = Grand Dream, 11th = Twin Charm?, 12th = Slurp Kiss)

0x0C253C ~ 0x0C2573: Tech MP cost (1 byte per tech)
 56 techs total (Cyclone through Dark Matter)

0x0C2577 ~ 0x0C257F: Redundant MP Costs (Confuse, Triple Kick, Life2, Charm, Slurp Cut, Cure2, Frog Squash, Charm, Kiss)

0x0C29D7 ~ 0x0C2AD6: "Stat increase" values 
 (The "Item Secondary" byte "04" points to this array): 128 elements, 2 bytes per element
 Byte 1 = Stats to change:
  Power ~ 80
  Speed ~ 40
  Stamina ~ 20
  Hit ~ 10
  Evade ~ 8
  Magic ~ 4
  Magic Defense ~ 2

 You can combine stats to change, but they will all be changed by the same amount.

 Byte 2 = Change:
  00 - 7F: Increase by 0 to 127
  80 - FF: Decrease by 128 to 1


0x3DA89D ~ 0x?????: Tech names and descriptions that appear in the character battle menus.
 The data are arranged like so: FF NN
  FF: Tech index of a character's first tech.
  NN: First tech index of the next character's first tech.
  Thus, Crono's data is 01 09; 01 is the index of Cyclone, and 09 is the index of Marle's Aura.
  Magus' techs are encompassed by 31 39; perhaps 39 pertains to the double tech Aura Whirl?

Lots of people need to be thanked for this, including Justin3009, Mauron, Maelstrom, and AdNova. The list will grow...

Tech Name Alphabet


2F - Spell "Star" Symbol

Capital Letters

A0 - A
A1 - B
A2 - C
A3 - D
A4 - E
A5 - F
A6 - G
A7 - H
A8 - I
A9 - J
AA - K
AB - L
AC - M
AD - N
AE - O
AF - P
B0 - Q
B1 - R
B2 - S
B3 - T
B4 - U
B5 - V
B6 - W
B7 - X
B8 - Y
B9 - Z


Lower Case Letters

BA - a
BB - b
BC - c
BD - d
BE - e
BF - f
C0 - g
C1 - h
C2 - i
C3 - j
C4 - k
C5 - l
C6 - m
C7 - n
C8 - o
C9 - p
CA - q
CB - r
CC - s
CD - t
CE - u
CF - v
D0 - w
D1 - x
D2 - y
D3 – z

Numbers

D4 - 0
D5 - 1
D6 - 2
D7 - 3
D8 - 4
D9 - 5
DA - 6
DB - 7
DC - 8
DD – 9

Grammatical stuff

DE - !
DF - ?
E0 - /
E1 - ``
E2 - `` (going left)
E3 - :
Random Symbols

E4 - %
E5 - (
E6 - )
E7 - '

Grammatical

E8 - .
E9 - ,

Math Stuff

EA - =
EB - -
EC - +
ED - \

FF - Blank Space

From: Offsets (Chrono Trigger)