forked from WAZAAAAA0/TekkenBot
-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathMoveInfoEnums.py
More file actions
353 lines (299 loc) · 8.8 KB
/
MoveInfoEnums.py
File metadata and controls
353 lines (299 loc) · 8.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
from enum import Enum
class AttackType(Enum):
"""
"""
# Doesn't hit characters on the ground?
# Very rare, appears on Alisa's chainsaw stance f+2
ANTIAIR_ONLY = 0x10000B1A # 11
# This is only the attack type *during* the throw animation
THROW = 0x60000A1D # 10
# Yoshimitsu's 10 hit combo 2 has one
LOW_UNBLOCKABLE = 0x2000091A # 9
# Akuma's focus attack
HIGH_UNBLOCKABLE = 0x2000081B # 8
MID_UNBLOCKABLE = 0xC000071A # 7
# UNKNOWN_6 = 6 # ????? may not exist
HIGH = 0xA000050F # 5
SMID = 0x60000402 # 4
# Special mids that can't be parried.
# Unknown if/what other properties they share.
PROJ = 0x10000302 # 3
MID = 0x8000020A # 2
LOW = 0x20000112 # 1
# This move is not an attack
NA = 0xC000001D # 0
class SimpleMoveStates(Enum):
"""
"""
UNINITIALIZED = 0
STANDING_FORWARD = 1
STANDING_BACK = 2
STANDING = 3
STEVE = 4 # steve?
CROUCH_FORWARD = 5
CROUCH_BACK = 6
CROUCH = 7
UNKNOWN_TYPE_9 = 9 # Seen on Ling
GROUND_FACEUP = 12
GROUND_FACEDOWN = 13
JUGGLED = 14
KNOCKDOWN = 15
# THE UNDERSTANDING OF THE FOLLOWING VALUES IS NOT COMPLETE
OFF_AXIS_GETUP = 8
UNKNOWN_10 = 10 # Yoshimitsu
UNKNOWN_GETUP_11 = 11
WALL_SPLAT_18 = 18
WALL_SPLAT_19 = 19
TECH_ROLL_OR_FLOOR_BREAK = 20
UNKNOWN_23 = 23 # Kuma
AIRBORNE_24 = 24 # Yoshimitsu
AIRBORNE = 25
AIRBORNE_26 = 26 # Eliza, Chloe
FLY = 27 # Devil Jin 3+4
class ComplexMoveStates(Enum):
"""
These are tracking states>
"""
# This doubles as the nothing state and an attack_starting state.
# Occurs on kazuya's hellsweep
F_MINUS = 0
S_PLUS = 1 # Homing
# Homing, often with screw, seems to more often end up slightly off-axis?
S = 2
A = 3 # This move 'realigns' if you pause before throwing it out
UN04 = 4 # Extremely rare, eliza ff+4, 2 has this
# Realigns either slightly worse or slightly better than C, hard to tell
C_MINUS = 5
A_PLUS = 6 # Realigns very well. Alisa's b+2, 1 has this, extremely rare
C = 7 # This realigns worse than 'A'
# After startup
# Kazuya's ff+3 doesn't have a startup or attack ending flag,
# it's just 0 the whole way through ???
# Lili's d/b+4 doesn't have it after being blocked
END1 = 10
BLOCK = 11
WALK = 12 # Applies to dashing and walking
SIDEROLL_GETUP = 13 # Only happens after side rolling???
SIDEROLL_STAYDOWN = 14
SS = 15 # Sidestep left or right, also applies to juggle techs
# Happens after you stop walking forward or backward, jumping, getting hit,
# going into a stance, and some other places
RECOVERING = 16
UN17 = 17 # f+4 with Ling
UN18 = 18 # King's 1+2+3+4 ki charge
UN20 = 20 # Dragunov's d+3+4 ground stomp
UN22 = 22 # Eddy move
UN23 = 23 # Steve 3+4, 1
SW = 28 # Sidewalk left or right
UNKN = 999999 # Used to indicate a non standard tracking move
class ThrowTechs(Enum):
NONE = 0xC000001D # value 0 encrypted
TE1 = 0xD000001C # value 1 encrypted
TE2 = 0xE000001F # value 2 encrypted
TE1_2 = 0xF000001E # value 3 encrypted
# Both, 1 and 2 seem to sometimes include normal throws that can be broken
# with either
class StunStates(Enum):
NONE = 0
UNKNOWN_2 = 2 # Lili BT/Jumping/Kicks?
BLOCK = 0x01000100
GETTING_HIT = 0x100
DOING_THE_HITTING = 0x10000
# One frame at the begining of a punish #Also appears during simultaneous
# couterhits
BEING_PUNISHED = 0x10100
BLOCK_NO_HIT = 0x1000000 # Law's UF+4, sometimes???? Proximity guard maybe?
class RawCancelStates(Enum):
STUCK = 0 # Pressing buttons doesn't do anything
# 1 frame occurs during Alisa's u/f 1+2 command grab, also occurs during
# Asuka's parry escapes
UNKNOWN_1 = 1
CANCELABLE = 0x00010000
# Coming out of attack for sure, probably block and hit stun too?
BUFFERABLE = 0x01010000
# Alisa's d+3 and chainsaw stance moves cause this, maybe it's a conditional
# buffer? Also triggers during normal throws
UNKNOWN_2 = 2
# ??? 3 frames at the end of cancel window??? Alisa d+2
MOVE_ENDING_1 = 0x00010001
#??? 1 frame near the end (or at the end?) of cancelable moves
MOVE_ENDING_2 = 0x00010002
# Theory: 1 and 2 refer to 'parryable' states, these include the active
# frames of moves and the throw tech windows of moves
# the next bit is the cancelable/not cancelable bit and finally there's a
# 'is being buffered' bit
# EDIT: Doesn't seem to be parryyable state. Mostly correspond to active
# frames, but not entirely.
class CancelStatesBitmask(Enum):
CANCELABLE = 0x00010000
BUFFERABLE = 0x01000000
PARRYABLE_1 = 0x00000001
PARRYABLE_2 = 0x00000002
class HitOutcome(Enum):
"""
# Note that this information resides on the player BEING hit not the player
# doing the hitting. Also note that there's no counter hit state for side or
# back attacks.
"""
NONE = 0
BLOCKED_STANDING = 1
BLOCKED_CROUCHING = 2
JUGGLE = 3
SCREW = 4
# Xiaoyu's sample combo 3 ends with this, off-axis or right side maybe?
UNKNOWN_SCREW_5 = 5
UNKNOWN_6 = 6 # May not exist???
UNKNOWN_SCREW_7 = 7 # Xiaoyu's sample combo 3 includes this
GROUNDED_FACE_DOWN = 8
GROUNDED_FACE_UP = 9
COUNTER_HIT_STANDING = 10
COUNTER_HIT_CROUCHING = 11
NORMAL_HIT_STANDING = 12
NORMAL_HIT_CROUCHING = 13
NORMAL_HIT_STANDING_LEFT = 14
NORMAL_HIT_CROUCHING_LEFT = 15
NORMAL_HIT_STANDING_BACK = 16
NORMAL_HIT_CROUCHING_BACK = 17
NORMAL_HIT_STANDING_RIGHT = 18
NORMAL_HIT_CROUCHING_RIGHT = 19
class JumpFlagBitmask(Enum):
# GROUND = 0x800000
# LANDING_OR_STANDING = 0x810000
JUMP = 0x820000
class InputDirectionCodes(Enum):
NULL = 0
N = 0x20
u = 0x100
ub = 0x80
uf = 0x200
f = 0x40
b = 0x10
d = 4
df = 8
db = 2
class InputAttackCodes(Enum):
N = 0
x1 = 512
x2 = 1024
x3 = 2048
x4 = 4096
x1x2 = 1536
x1x3 = 2560
x1x4 = 4608
x2x3 = 3072
x2x4 = 5120
x3x4 = 6144
x1x2x3 = 3584
x1x2x4 = 5632
x1x3x4 = 6656
x2x3x4 = 7168
x1x2x3x4 = 7680
xRAGE = 8192
class CharacterCodes(Enum):
PAUL = 0
LAW = 1
KING = 2
YOSHIMITSU = 3
HWOARANG = 4
XIAOYU = 5
JIN = 6
BRYAN = 7
HEIHACHI = 8
KAZUYA = 9 # Also True Devil Kayuza
STEVE = 10
JACK_7 = 11
ASUKA = 12
DEVIL_JIN = 13
FENG = 14
LILI = 15
DRAGUNOV = 16
LEO = 17
LARS = 18
ALISA = 19
CLAUDIO = 20
KATARINA = 21
LUCKY_CHLOE = 22
SHAHEEN = 23
JOSIE = 24
GIGAS = 25
KAZUMI = 26
DEVIL_KAZUMI = 27 # Not selectable
NINA = 28
MASTER_RAVEN = 29
LEE = 30
BOB = 31
AKUMA = 32
KUMA = 33
PANDA = 34
EDDY = 35
ELIZA = 36 # DLC
MIGUEL = 37
TEKKEN_FORCE = 38 # Not selectable
KID_KAZUYA = 39 # Not selectable
JACK_4 = 40 # Not selectable
YOUNG_HEIHACHI = 41 # Not selectable
TRAINING_DUMMY = 42 # Not selectable
GEESE = 43 # DLC
NOCTIS = 44 # DLC
ANNA = 45 # DLC
LEI = 46 # DLC
MARDUK = 47 # DLC
ARMOR_KING = 48 # DLC
JULIA = 49 # DLC
NEGAN = 50 # DLC
# Value when a match starts for (??) frames until char_id loads
NOT_YET_LOADED = 71
NO_SELECTION = 255 # Value if cursor is not shown
class StageIDs(Enum):
"""
"""
MISHIMA_DOJO = 0
FORGOTTEN_REALM = 1
JUNGLE_OUTPOST = 2
ARCTIC_SNOWFALL = 3
TWILIGHT_CONFLICT = 4
DRAGON_NEST = 5
SOUQ = 6
DEVILS_PIT = 7
MISHIMA_BUILDING = 8
ABANDONED_TEMPLE = 9
DUOMO_DI_SIRIO = 30
ARENA = 31
G_CORP_HELIPAD = 32
G_CORP_HELIPAD_NIGHT = 33
BRIMSTONE_AND_FIRE = 35
PRECIPICE_OF_FATE = 36
VIOLET_SYSTEMS = 37
KINDER_GYM = 39
INFINITE_AZURE = 40
GEOMETRIC_PLANE = 41
WARM_UP = 42 # Not selectable
HOWARD_ESTATE = 51
HAMMERHEAD = 52
JUNGLE_OUTPOST_2 = 53
TWILIGHT_CONFLICT_2 = 54
INFINITE_AZURE_2 = 55
LAST_DAY_ON_EARTH = 56 # DLC
class MainMenuIDs(Enum):
"""
"""
STORY = 0
ONLINE = 1
OFFLINE = 2
CUSTOMIZATION = 3
GALLERY = 5
OPTIONS = 6
PLAYER_INFORMATION = 7
STORE = 8
ULTIMATE_TEKKEN_BOWL = 10
QUIT = 11
class OfflineMainMenuIDs(Enum):
"""
"""
ARCADE_BATTLE = 0
TREASURE_BATTLE = 1
VS_BATTLE = 2
PRACTICE = 3
class UniversalAnimationCodes(Enum):
NEUTRAL = 32769
CROUCHING_NEUTRAL = 32770