SSBM Decomp
Loading...
Searching...
No Matches
types.h
Go to the documentation of this file.
1#ifndef MELEE_GM_TYPES_H
2#define MELEE_GM_TYPES_H
3
4#include <placeholder.h>
5#include <platform.h>
6
7#include "baselib/forward.h"
8
9#include "dolphin/types.h"
10
11#include <melee/ft/forward.h>
12#include <melee/gm/forward.h> // IWYU pragma: export
13#include <melee/gr/forward.h>
14#include <melee/pl/forward.h>
15#include <melee/sc/forward.h>
16
17#include <common_structs.h>
18#include <melee/mn/types.h>
19
21 u16 x0_0 : 1;
22 u16 x2;
23 int x4;
24};
25
27 /* 00 */ u32 x0;
28 /* 04 */ int x4;
29 /* 08 */ u32 x8;
30 /* 0C */ int xC;
31 /* 10 */ u32 ckind;
32 /* 14 */ u8 slot;
33 /* 15 */ u8 x15;
34 /* 16 */ u16 x16;
35 /* 18 */ u16 x18;
36};
37
38struct MinorScene {
39 /* 00 */ u8 idx;
40 /* 01 */ u8 preload;
41 /* 02 */ u16 flags;
42
43 /* 04 */ void (*Prep)(MinorScene*);
44 /* 08 */ void (*Decide)(MinorScene*);
45
47 /* 0C */ u8 class_id;
48 /* 10 */ void* unk_struct_0;
49 /* 14 */ void* unk_struct_1;
51};
52
53struct MajorScene {
55 u8 idx;
56
57 void (*Load)(void);
58 void (*Unload)(void);
59 void (*Init)(void);
60
62}; // 803DACA4
63
66
67 void (*OnFrame)(void);
68 void (*OnLoad)(void*);
69 void (*OnLeave)(void*);
70 void (*unk_func)(void);
71}; // 803DA920
72
81
82typedef struct {
86 u8 x0D;
87 u8 x0E;
88 u8 x0F;
89 u8 (*data)(void);
90} GameState;
91STATIC_ASSERT(sizeof(GameState) == 0x14);
92
93struct sceneData {
94 u32 a;
96};
97
98struct gmm_x1CB0 {
99 /* +0 */ u8 item_freq;
100 /* +1 */ u8 pad_x1[0x8 - 0x1];
101 /* +8 */ u64 item_mask;
102 /* +10 */ u8 rumble[4];
103 /* +14 */ u8 sound_balance;
104 /* +15 */ u8 deflicker;
105 /* +16 */ u8 saved_language; /* 0x1CC6 */
106 /* +18 */ u32 stage_mask;
107 /* +1C */ u8 padding_x16[0x1];
108};
109
110struct gmm_x1F2C {
111 u8 padding_x0[0x78];
112 s8 x78;
113 s8 x79;
115 s8 x7B;
116 struct {
117 u16 b0 : 1;
118 u16 b1 : 1;
119 u16 b2 : 1;
120 u16 b3 : 1;
121 u16 b4 : 1;
122 u16 b5 : 1;
123 u16 b6 : 1;
124 u16 b789 : 3;
125 u16 b10_to_12 : 3;
126 u16 b13_to_15 : 3;
127 s16 x7E;
128 u8 x80;
129 u8 x81;
130 u8 x82;
131 s8 x83;
132 s32 x84;
133 s32 x88;
134 s32 x8C;
135 s32 x90;
136 u32 x94;
137 s32 x98;
138 s32 x9C;
139 u16 xA0;
140 u16 xA2;
141 s32 xA4;
142 s32 xA8;
144};
145
147 /* 000 */ u8 padding[0x198];
148 /* 198 */ char namedata[8];
149 /* 1A0 */ s8 x1A0;
150 /* 1A1 */ u8 x1A1;
151 /* 1A2 */ s8 x1A2;
152 /* 1A3 */ u8 padding_x1A2;
153};
154
155struct gmm_x2FF8 {
157};
158
159struct GameRules {
160 /* 0x00 */ u8 unk_x0;
161 /* 0x01 */ u8 unk_x1;
162 /* 0x02 */ u8 mode;
163 /* 0x03 */ u8 time_limit;
164 /* 0x04 */ u8 stock_count;
165 /* 0x05 */ u8 handicap;
166 /* 0x06 */ u8 damage_ratio;
167 /* 0x07 */ u8 unk_x7;
168 /* 0x08 */ u8 stock_time_limit;
169 /* 0x09 */ u8 friendly_fire;
170 /* 0x0A */ u8 pause;
171 /* 0x0B */ u8 score_display;
172 /* 0x0C */ u8 unk_xc;
173 /* 0x0D */ char pad_D[3]; /* maybe part of unk_xc[4]? */
174 /* 0x10 */ u8 unk_x10;
175 /* 0x11 */ char pad_11[3]; /* maybe part of unk_x10[4]? */
176 /* 0x14 */ s32 unk_14; /* inferred */
177}; /* size = 0x18 */
178STATIC_ASSERT(sizeof(struct GameRules) == 0x18);
179
181 u32 x0;
182 u32 x4;
183 u8 padding[0x4];
184 s32 xC;
185 s32 x10;
186 s32 x14;
187 s32 x18;
188 s32 x1C;
189};
190
192 s32 x0;
193 s32 x4;
194};
195
197 s32 x0;
198 u32 x4;
199 s32 x8;
200 u32 xC;
201 int x10;
202 u32 x14;
203 u16 x18[2];
204 u8 pad_x1C[0x4C - 0x1C];
205 s32 x4C[4];
206 u8 padding_x4C[0xB0 - 0x4C - 4 * 4];
207 s32 xB0[0x19];
208 int x114[0x19];
209};
210
211struct gmm_x1868 {
212 /* 0x0000 */ u16 x1868; // unlocked characters bitmask
213 /* 0x0002 */ u16 x186A; // unlocked stages bitmask
214 /* 0x0004 */ u8 unk_4;
215 /* 0x0005 */ char pad_5[3]; /* maybe part of unk_4[4]? */
216 /* 0x0008 */ struct gmm_retval_ED98 unk_8;
217 /* 0x0028 */ struct gmm_retval_EDB0 unk_28;
218 /* 0x0030 */ struct gmm_retval_EDBC unk_30;
220 /* 0x01A8 +0 */ u32 x0;
221 /* 0x01AC +4 */ u8 x4;
222 /* 0x01AD +5 */ u8 x5;
223 /* 0x01AE +6 */ u8 x6;
225 /* 0x01B0 */ s32 x1A18;
226 /* 0x01B4 */ s32 x1A1C;
227 /* 0x01B8 */ s32 x1A20;
228 /* 0x01BC */ s32 x1A24;
229 /* 0x01C0 */ s32 x1A28;
230 /* 0x01C4 */ s32 x1A2C;
231 /* 0x01C8 */ s32 x1A30;
232 /* 0x01CC */ s32 x1A34;
233 /* 0x01D0 */ s32 x1A38;
234 /* 0x01D4 */ s32 x1A3C;
235 /* 0x01D8 */ s32 x1A40;
236 /* 0x01DC */ s32 x1A44;
237 /* 0x01E0 */ s32 x1A48;
238 /* 0x01E4 */ s32 x1A4C;
239 /* 0x01E8 */ s32 x1A50;
240 /* 0x01EC */ int x1A54;
241 /* 0x01F0 */ s32 x1A58;
242 /* 0x01F4 */ s32 x1A5C;
243 /* 0x01F8 */ s32 x1A60;
244 /* 0x01FC */ s32 x1A64;
245 /* 0x0200 */ s64 x1A68;
246 /* 0x0208 */ s32 x1A70[4];
247 /* 0x0218 */ u8 padding_x1A70[0xBC];
248 /* 0x02D4 */ u8 x1B3C;
249 /* 0x02D5 */ char pad_2D5[3]; /* maybe part of x1B3C[4]? */
250 /* 0x02D8 */ u32 x1B40[3];
251 /* 0x02E4 */ u32 x1B4C[3];
252 /* 0x02F0 */ u32 x1B58[3];
253 /* 0x02FC */ u8 padding_x1B58[0x1C];
254 /* 0x0318 */ u32 x1B80[4];
255 /* 0x0328 */ u8 padding_x1B80[0xF8];
256 /* 0x0420 */ u32 x1C88[3];
257 /* 0x042C */ u8 padding_x1C88[0x1C];
258 /* 0x0448 */ struct gmm_x1CB0 x1CB0;
259 /* 0x0468 */ s16 x1CD0;
260 /* 0x046A */ s16 x1CD2;
261 /* 0x046C */ s32 x1CD4;
262 /* 0x0470 */ u8 padding_x1CD4[0x254];
263 /* 0x06C4 */ struct gmm_x1F2C x1F2C[0x19];
264 /* 0x1790 */ struct gmm_x2FF8 x2FF8[2];
265}; /* size = 0x55E8 */
266
267struct gmm_x0 {
268 /* 0x0000 */ u8 language;
269 /* 0x0001 */ u8 unk_1;
270 /* 0x0002 */ u8 unk_2;
271 /* 0x0003 */ char pad_3[0x36]; /* maybe part of x1[0x38]? */
272 /* 0x0039 */ u8 x39[0xB];
273 /* 0x0044 */ s32 unk_44;
274 /* 0x0048 */ char pad_48[0x24]; /* maybe part of x44[0xA]? */
275 /* 0x006C */ u32 unk_6C[4];
276 /* 0x007C */ char pad_7C[0x4A0]; /* maybe part of x6C[0x4B]? */
278 /* 0x0528 */ s8 c_kind;
279 /* 0x0529 */ u8 stocks;
280 /* 0x052A */ u8 color;
281 /* 0x052B */ u8 cpu_level;
282 /* 0x052C */ u8 x4;
283 /* 0x052D */ u8 x5;
285 struct EventData {
286 /* 0x0530 */ u8 x0;
287 /* 0x0531 */ u8 x1;
288 /* 0x0532 */ s8 x2;
289 /* 0x0533 */ u8 x3;
290 /* 0x0534 */ u8 x4;
291 /* 0x0535 */ u8 unk_535;
292 /* 0x0536 */ u8 x6;
293 /* 0x0537 */ u8 x7;
294 /* 0x0538 */ s8 x8;
295 /* 0x0539 */ s8 x9;
296 /* 0x053A */ s8 xA;
297 /* 0x053B */ u8 xB_0 : 1;
298 /* 0x053B */ u8 xB_1 : 1;
299 /* 0x053B */ u8 xB_2 : 1;
300 /* 0x053B */ u8 xB_3 : 1;
301 /* 0x053B */ u8 xB_4 : 1;
302 /* 0x053B */ u8 xB_5 : 1;
303 /* 0x053B */ u8 xB_6 : 1;
304 /* 0x053B */ u8 xB_7 : 1;
305 /* 0x053C */ int xC;
306 /* 0x0540 */ int x10;
307 /* 0x0544 */ int x14;
308 /* 0x0548 */ int x18;
309 /* 0x054C */ float x1C;
310 /* 0x0550 */ int x20;
311 /* 0x0554 */ int x24;
312 /* 0x0558 */ int x28;
313 /* 0x055C */ int x2C; // timer seconds
314 /* 0x0560 */ int x30;
315 /* 0x0564 */ int x34;
316 /* 0x0568 */ u8 x38;
317 /* 0x056C */ int x3C;
318 /* 0x0570 */ int x40;
319 /* 0x0574 */ s8 x44;
320 /* 0x0575 */ u8 x45;
321 /* 0x0578 */ InternalStageId x48;
322 /* 0x057C */ s8 x4C[4];
323 /* 0x0580 */ u8 x50[4];
325 /* 0x0584 */ s8 unk_584;
326 /* 0x0585 */ u8 unk_585;
327 /* 0x0586 */ u8 unk_586;
328 /* 0x0587 */ s8 unk_587;
330 /* 0x0588 */ s8 unk_588[4]; /* inferred */
331 /* 0x0590 */ char pad_58B[4]; /* inferred */
333 /* 0x0590 */ VsModeData unk_590;
334 /* 0x06D0 */ VsModeData unk_6D0;
335 /* 0x0810 */ VsModeData unk_810;
336 /* 0x0950 */ VsModeData unk_950;
337 /* 0x0A90 */ VsModeData unk_A90;
338 /* 0x0BD0 */ VsModeData unk_BD0;
339 /* 0x0D10 */ VsModeData unk_D10;
340 /* 0x0E50 */ VsModeData unk_E50;
341 /* 0x0F90 */ VsModeData unk_F90;
342 /* 0x10D0 */ VsModeData unk_10D0;
343 /* 0x1210 */ VsModeData unk_1210;
344 /* 0x1350 */ VsModeData unk_1350;
345 /* 0x1490 */ VsModeData unk_1490;
346 /* 0x15D0 */ char pad_15D0[0x1710 - 0x15D0];
347 /* 0x17C0 */ VsModeData unk_1710;
348 /* 0x1850 */ GameRules x1850;
349 /* 0x1898 */ struct gmm_x1868 thing;
350}; /* size = 0x6E80 */
351
354 u8 x4;
355 u8 x5;
357 u32 x8;
358 u8 xC;
359 u8 xD;
360 u8 xE;
361 u8 padF[0x16 - 0xF];
362 u8 x16;
363 u8 pad17[0x24 - 0x17];
364 struct {
365 u8 x0;
366 u8 pad_x1[0xB];
367 } x24[1];
368 u8 pad30[0x58 - 0x30];
370 u8 x0;
371 u8 x1;
372 u8 x2;
373 u8 x3;
374 u8 x4;
375 u8 x5;
376 u8 x6;
377 u8 x7;
378 u8 pad8[0x20 - 8];
379 u32 x20;
380 u32 x24;
381 u32 x28;
382 u32 x2C;
383 u8 pad60[0xA8 - 0x30];
384 } x58[6];
385 u8 pad3F0[0x44C - 0x3F0 - 0x58];
387 u8 x0[0x101];
388 int x104[0x101];
389 } x44C[6];
390};
391
393 /* +0:0 */ u8 x0_b0_b2 : 3;
394 /* +0:3 */ u8 x0_b3 : 1;
395 /* +0:4 */ u8 x0_b4 : 1;
396 /* +0:5 */ u8 x0_b5 : 1;
397 /* +0:6 */ u8 x0_b6 : 1;
398 /* +0:7 */ u8 x0_b7 : 1;
399 /* +1:0 */ u8 x1_b0 : 1;
400 /* +1:1 */ u8 x1_b1 : 1;
401 /* +1:2 */ u8 x1_b2 : 1;
402 /* +1:3 */ u8 x1_b3 : 1;
403 /* +1:4 */ u8 x1_b4 : 1;
404 /* +1:5 */ u8 x1_b5 : 1;
405 /* +1:6 */ u8 x1_b6 : 1;
406 /* +1:7 */ u8 x1_b7 : 1;
407 /* +2:0 */ u8 x2_b0 : 1;
408 /* +2:1 */ u8 x2_b1 : 1;
409 /* +2:2 */ u8 x2_b2 : 1;
410 /* +2:3 */ u8 x2_b3 : 1;
411 /* +2:4 */ u8 x2_b4 : 1;
412 /* +2:5 */ u8 x2_b5 : 1;
413 /* +2:6 */ u8 x2_b6 : 1;
414 /* +2:7 */ u8 x2_b7 : 1;
415};
416
418 /* 0x0000 */ u8 unk_0;
419 /* 0x0001 */ s8 pauser;
420 /* 0x0002 */ u8 pause_timer;
421 /* 0x0003 */ u8 unk_3;
422 /* 0x0004 */ u8 unk_4;
423 /* 0x0005 */ u8 hud_enabled;
424 /* 0x0006 */ u8 terminate_match;
425 /* 0x0007 */ u8 is_singleplayer;
426 /* 0x0008 */ u8 match_result;
427 /* 0x0009 */ u8 unk_9;
428 /* 0x000A */ u8 unk_A;
429 /* 0x000B */ u8 unk_B; // end graphic / SFX type
430 /* 0x000C */ u8 unk_C;
431 /* 0x000D */ u8 unk_D;
432 /* 0x000E */ u8 match_over;
433 /* 0x000F */ u8 unk_F;
434 /* 0x0010 */ s32 unk_10;
435 /* 0x0014 */ s32 unk_14;
436 /* 0x0018 */ u8 unk_18; /* maybe part of unk_14[4]? */
437 /* 0x001C */ u32* unk_1C;
438 /* 0x0020 */ u32* unk_20;
439 /* 0x0024 */ u32 frame_count;
440 /* 0x0028 */ u32 timer_seconds;
441 /* 0x002C */ u16 unk_2C;
442 /* 0x002E */ u16 unk_2E;
443 /* 0x0030 */ u8 unk_30;
444 /* 0x0034 */ f32 unk_34;
445 /* 0x0038 */ struct {
446 u8 x0;
447 u8 x1;
450 u8 x4_b0 : 1;
451 u8 x4_b1 : 1;
452 u8 x4_b2 : 1;
453 u8 x4_b3 : 1;
454 u8 x4_b4 : 1;
455 u8 x4_b5 : 1;
456 u8 x4_b6 : 1;
457 u8 x4_b7 : 1;
458 u8 x5;
459 u16 x6;
460 u16 x8;
462 u8 xB;
463 u16 xC;
465 /* 0x0038 */ char pad_8C[0x24C - 0x8C]; /* maybe part of unk_34[0x925]? */
466 /* 0x024C */ struct lbl_8046B6A0_24C_t x24C;
467 /* 0x24C8 */ struct StartMeleeRules x24C8;
468}; /* size = 0x2528 */
469STATIC_ASSERT(sizeof(struct lbl_8046B6A0_t) == 0x2528);
470
471struct datetime {
472 u16 year;
474};
475
477 /* +0 */ s16 x0;
478 /* +2 */ s16 x2;
479 /* +4 */ s32 x4;
480 /* +8 */ s32 x8;
481 /* +C */ s32 xC;
482 /* +10 */ s32 x10;
483 /* +14 */ s32 x14;
484 /* +18 */ s16 x18;
485 /* +1A */ s16 x1A;
486 /* +1C */ s16 x1C;
487 /* +1E */ s16 x1E;
488 /* +20 */ s32 x20;
489 /* +24 */ s32 x24;
490 /* +28 */ s32 x28;
491 /* +2C */ s32 x2C;
492 /* +30 */ s32 x30;
493 /* +34 */ s32 x34;
494 /* +38 */ s32 x38;
495 /* +3C */ s32 x3C;
496 /* +40 */ s32 x40;
497};
498
500 /* +0 */ u8 x0;
501 /* +1 */ u8 x1;
502 /* +2 */ u8 _1[0xC - 0x2];
503};
504STATIC_ASSERT(sizeof(struct gm_8017DB6C_arg0_t) == 0xC);
505
507 /* 00 */ bool x0;
508 /* 04 */ bool resetting;
509 /* 08 */ bool progressive;
510 /* 0C */ bool xC; // movie playback done, maybe?
511 /* 10 */ int x10, x14;
512};
513
515
516typedef struct gm_803DF94C_t {
517 void (*x0)(HSD_GObj*);
518 void (*x4)(int);
520
528
533 u8 x3 : 6;
534 u8 x3_6 : 1;
535 u8 x3_7 : 1;
536 u8 x4;
541 u8 x9;
544 u16 xE;
545 u16 kills[4];
546 u16 x18;
547 s32 x1C;
548 s32 x20;
549 int x24;
550 u32 x28;
551 int score;
552 u8 pad_x30[0x40 - 0x30];
553 u32 x40;
554 u32 x44;
555 u32 x48;
556 u32 x4C;
557 u32 x50;
558 u32 x54;
559 u32 x58;
560 u32 x5C;
561 u32 x60;
562 u32 x64;
563 u32 x68;
564 u32 x6C;
565 u32 x70;
566 u32 x74;
567 u32 x78;
568 u32 x7C;
569 u32 x80;
570 u32 x84;
571 u32 x88;
572 u32 x8C;
573 u32 x90;
574 u32 x94;
575 u32 x98;
576 int x9C;
577 int xA0;
578 u32 xA4;
579};
580
581struct MatchEnd {
582 u32 x0;
584 u8 x5;
586 u8 x7;
588 u8 xC;
592 u8 winners[6];
596 u8 _x448[4];
598 u8 x0[0x100];
599 char pad_x100[0x508 - 0x100];
600 } x44C[4];
601 u8 pad_x186C[0x227C - 0x186C];
602};
603
610
612 u8 x0_0 : 1;
613 u8 x0_1 : 1;
614 u8 x1;
615 int x4;
617};
618
619struct Unk1PData {
620 /* 00 */ s8 ckind;
621 /* 01 */ u8 color;
622 /* 02 */ u8 cpu_level;
623 /* 03 */ u8 slot;
624 /* 04 */ u8 x4;
625 /* 05 */ u8 stocks;
626 /* 06 */ u8 x6;
627 /* 07 */ u8 x7;
628 /* 08 */ u8 x8;
629 /* 09 */ u8 x9;
630 /* 0A */ u8 xA;
631 /* 0B */ u8 xB;
632 /* 0C */ struct Unk1PData_xC {
633 /* 0C */ u8 xC;
634 /* 0D */ u8 xD;
635 /* 0E */ u8 xE;
636 /* 0F */ u8 xF;
637 /* 10 */ u8 x10;
638 /* 11 */ u8 x11;
639 /* 12 */ u8 x12;
640 /* 13 */ u8 x13;
641 /* 14 */ u16 x14;
642 /* 18 */ int x18;
643 /* 1C */ int x1C;
644 /* 20 */ u32 x20;
646 /* 24 */ s8 ckind;
647 /* 28 */ int x4;
648 /* 2C */ int x8;
649 } x24[3];
650 } xC;
651};
652
654 /* 00 */ Unk1PData x0;
655 /* 48 */ UNK_T x48;
656 /* 4C */ u8 (*x4C)(int, u8, u8);
657 /* 50 */ UNK_T x50;
658 /* 54 */ UNK_T x54;
659 /* 58 */ UNK_T x58;
660 /* 5C */ UNK_T x5C;
661 /* 60 */ UNK_T x60;
662 /* 64 */ float (*x64)(int, u8);
663 /* 68 */ float (*x68)(int, u8);
664 /* 6C */ UNK_T x6C;
665 /* 70 */ UNK_T x70;
666 /* 74 */ u8 x74;
667 /* 75 */ u8 x75;
668 /* 76 */ u8 x76;
669 /* 77 */ u8 x77;
670 /* 78 */ u8 x78;
671 /* 79 */ s8 pad_x79[0x7C - 0x79];
672 /* 7C */ u8 x7C;
673 /* 7D */ s8 pad_x7D[0x80 - 0x7D];
674};
675
677 /* 00 */ Unk1PData x0;
678 s8 pad_x0[0x74 - 0x48];
679 u16 x74;
680 u8 x76;
681 u8 x77;
682 s8 pad_x78[0x7C - 0x78];
683 u8 x7C;
684 s8 pad_x7D[0xA0 - 0x7D];
685};
686
687struct TmData {
688 int x0;
689 int x4;
690 int x8;
691 int xC;
692 int x10;
693 int x14;
694 u8 pad_x18[0x20 - 0x18];
695 int x20;
696 int x24;
697 u32 x28;
698 u8 x2C;
699 u8 x2D;
700 u8 x2E;
701 u8 x2F;
702 u8 x30;
703 u8 x31;
704 u8 x32;
705 u8 x33;
706 u8 pad_x34[0x37 - 0x34];
708 u8 x0;
709 u8 x1;
710 u8 x2;
711 u8 x3;
712 u8 x4;
713 u8 x5;
714 u8 x6;
715 u8 x7;
716 u8 x8;
717 u16 x9;
718 u8 xB;
719 u8 xC;
720 u8 xD;
721 u8 pad_xE[0x11 - 0xE];
722 } x37[16];
723 u8 pad_x158[0x4B8 - 0x158];
725 u8 x0;
726 u8 x1;
727 u8 x2;
728 u8 x3;
729 u8 x4;
730 u8 x5;
731 u16 x6;
732 u8 pad_x4[0xA - 0x8];
733 } x4B8[4];
739 u8 pad_x524[0x534 - 0x524];
741 u8 pad_x540[0x56B - 0x540];
742};
743
744struct NameData {
745 // a lot of this is shared with a struct for character stats as well
746 /* x0F0 */ s32 self_destructs;
747 /* x0F4 */ s32 attacks_hit;
748 /* x0F8 */ s32 attacks_total;
749 /* x0FC */ s32 damage_given;
750 /* x100 */ s32 damage_taken;
751 /* x104 */ s32 damage_recovered;
752 /* x108 */ s16 peak_damage;
753 /* x10A */ s16 matches;
754 /* x10C */ s16 victories;
755 /* x10E */ s16 losses;
756 /* x110 */ s32 play_time; // in minutes
757 /* x114 */ s32 x114;
758 /* x118 */ s32 ground_distance; // in meters
759 /* x11C */ s32 jump_distance;
760 /* x120 */ s32 drop_distance;
761 /* x124 */ s32 flight_distance;
762 /* x128 */ s32 coin_points;
763 /* x12C */ s32 swiped_coins;
764 /* x130 */ s32 lost_coins;
765
766 /* x1A1 */ bool rumble_toggle;
767 /* x198 */ void* x198; // some kind of text representation of the name
768};
769
771 u32* x0;
772 union {
773 struct {
777 };
779 };
780};
781
782struct TmVsData {
785 u32 char_id[4];
786 u32 color[4];
787};
788
790 /* +1 */ u8 x0;
791 /* +2 */ u8 x1;
792 /* +3 */ u8 x2;
793 /* +4 */ u8 x3;
794 /* +4 */ bool (*x4[2])(void);
795 /* +C */ UNK_T xC;
796 /* +20 */ u64 unk_20;
797 /* +28 */ u64 unk_28;
798 /* +30 */ void (*unk_30)(void);
799 /* +34 */ int unk_34;
800 /* +38 */ u8 unk_38_0 : 1;
801 /* +38 */ u8 unk_38_1 : 1;
802};
803STATIC_ASSERT(sizeof(struct gm_801677C0_s) == 0x30);
804
806 /* +0 */ u32 unk_0;
807 /* +4 */ u32 unk_4;
808 /* +8 */ u32 unk_8;
809 /* +C */ int unk_C;
810 /* +10 */ struct gm_801677C0_s unk_10;
811};
812STATIC_ASSERT(sizeof(struct gm_80479D58_t) == 0x40);
813
815 /* +00 */ u8 x0;
816 /* +01 */ u8 page;
817 /* +02 */ u16 x2;
818 /* +04 */ f32 scroll_offset;
820 /* +0C */ HSD_GObj* camera;
821 /* +10 */ HSD_Text* stats_text[3][10];
822 // /* +10 */ HSD_Text* stats_x10[10]; ///< these text arrays are the
823 // scrollable stats
824 // /* +3C */ HSD_Text* stats_x3C[10];
825 // /* +60 */ HSD_Text* stats_x60[10];
826 /* +88 */ HSD_Text* ko_count;
827 /* +8C */ HSD_Text* ko_time;
828 /* +90 */ HSD_JObj* jobjs[15];
829 /* +CC */ Vec3 stats_position;
830};
831
833 /* +00 */ u8 x0_0 : 1;
834 /* +00 */ u8 x0_1 : 1;
835 /* +00 */ u8 x0_2 : 1;
836 /* +00 */ u8 x0_3 : 1;
837 /* +00 */ u8 x0_4 : 1;
838 /* +00 */ u8 x0_5 : 1;
839 /* +00 */ u8 x0_6 : 1;
840 /* +00 */ u8 x0_7 : 1;
841
842 /* +01 */ u8 x1;
843 /* +02 */ u8 num_pages;
844 /* +03 */ char pad_03[0x4 - 0x3];
845 /* +04 */ u8 x4;
846 /* +05 */ u8 x5;
847 /* +06 */ u8 x6;
848 /* +08 */ s32 x8;
849 /* +0C */ f32 xC;
850 /* +10 */ SceneDesc* pnlsce;
851 /* +14 */ SceneDesc* flmsce;
852 /* +18 */ HSD_GObj* x18;
853 /* +1C */ HSD_CObj* cobj;
854 /* +20 */ HSD_JObj* x20;
855 /* +24 */ HSD_JObj* x24;
856 /* +28 */ HSD_JObj* x28;
857 /* +2C */ HSD_Text* x2C;
858 /* +30 */ HSD_JObj* x30;
859 /* +34 */ HSD_JObj* x34[6];
860 /* +4C */ Vec3 x4C[6];
861 /* +94 */ MatchEnd* x94;
862 /* +98 */ struct ResultsPlayerData player_data[6];
863};
864STATIC_ASSERT(sizeof(struct ResultsData) == 0x5A8);
865
867 u8 x0;
868 u8 x1; // rule flags?
869 u16 x2;
870 u16 x4;
871 u16 x6;
872 u8 x8;
873 u8 x9;
874 s8 xA[3];
875 u8 xD;
876 u8 xE;
877 u8 xF;
878};
879
881 u8 x0; // c_kind
882 u8 x1; // color
883 u8 x2; // stocks
884 u8 x3;
885 u8 x4; // c_kind
886 u8 x5;
887 u8 x6;
888 u16 x8;
889};
890
891#endif
struct gmMainLib_8046B0F0_t gmMainLib_8046B0F0
Definition gmmain_lib.static.h:10
InternalStageId
Definition forward.h:44
Gm_PKind
Definition forward.h:13
#define UNK_T
Definition placeholder.h:32
#define STATIC_ASSERT(cond)
Definition platform.h:110
int bool
A signed integer used to contain boolean values.
Definition stdbool.h:8
Definition types.h:770
HSD_Text * bottom_text
Definition types.h:776
HSD_Text * slot_a
Definition types.h:774
u32 * x0
state? gets set on button presses in OnFrame
Definition types.h:771
HSD_Text * text[3]
Definition types.h:778
HSD_Text * slot_b
Definition types.h:775
Definition types.h:26
u32 ckind
Definition types.h:31
int xC
Definition types.h:30
u16 x18
Definition types.h:35
u16 x16
Definition types.h:34
u32 x0
Definition types.h:27
u8 slot
Definition types.h:32
u32 x8
Definition types.h:29
int x4
Definition types.h:28
u8 x15
Definition types.h:33
Definition types.h:159
u8 handicap
Definition types.h:165
u8 unk_xc
Definition types.h:172
u8 mode
Definition types.h:162
u8 time_limit
Definition types.h:163
char pad_D[3]
Definition types.h:173
u8 friendly_fire
Definition types.h:169
u8 unk_x1
Definition types.h:161
u8 damage_ratio
Definition types.h:166
u8 unk_x10
Definition types.h:174
u8 unk_x0
Definition types.h:160
u8 pause
Definition types.h:170
char pad_11[3]
Definition types.h:175
u8 score_display
Definition types.h:171
u8 unk_x7
Definition types.h:167
u8 stock_time_limit
Definition types.h:168
s32 unk_14
Definition types.h:176
u8 stock_count
Definition types.h:164
Definition types.h:82
SceneNums nums
Definition types.h:83
SceneNums nums2
Definition types.h:84
u8 x0D
Definition types.h:86
u8 x0F
Definition types.h:88
u8 pending
Definition types.h:85
u8 x0E
Definition types.h:87
Definition cobj.h:39
was using this to try and fix some matches, unsuccessfully
Definition gobj.h:26
Definition jobj.h:107
Definition sislib.h:37
Definition types.h:53
u8 preload
Definition types.h:54
void(* Unload)(void)
Definition types.h:58
void(* Init)(void)
Definition types.h:59
u8 idx
Definition types.h:55
void(* Load)(void)
Definition types.h:57
MinorScene * minor_scenes
Definition types.h:61
Definition types.h:597
u8 x0[0x100]
Definition types.h:598
char pad_x100[0x508 - 0x100]
Definition types.h:599
Definition types.h:581
u8 xC
Definition types.h:588
u8 n_winners
Definition types.h:589
u8 n_team_winners
Definition types.h:590
struct MatchTeamData team_standings[5]
Definition types.h:594
u8 _x448[4]
Definition types.h:596
u32 x0
timer
Definition types.h:582
u8 x5
Definition types.h:584
u32 frame_count
Definition types.h:587
u8 loser
Definition types.h:591
u8 is_teams
Definition types.h:585
u8 result
Definition types.h:583
u8 pad_x186C[0x227C - 0x186C]
Definition types.h:601
struct MatchEnd::UnkResultPlayerData x44C[4]
u8 x7
Definition types.h:586
struct MatchPlayerData player_standings[6]
Definition types.h:595
u8 winners[6]
Definition types.h:592
u8 team_winners[5]
Definition types.h:593
Definition types.h:604
MatchEnd match_end
Definition types.h:608
int x8
Definition types.h:607
int x0
Definition types.h:605
u32 x4
remaining time shown on timer, in frames
Definition types.h:606
Definition types.h:529
s32 x20
Definition types.h:548
u32 x88
Definition types.h:571
u32 x5C
Definition types.h:560
int x9C
Definition types.h:576
u16 kills[4]
Definition types.h:545
int x24
Definition types.h:549
u16 percent
Definition types.h:543
u8 is_small_loser
Definition types.h:538
u8 x3_7
Definition types.h:535
s32 x1C
Definition types.h:547
u32 x7C
Definition types.h:568
u32 x78
Definition types.h:567
u32 x80
Definition types.h:569
u32 x58
Definition types.h:559
int score
Definition types.h:551
s8 character_kind
Definition types.h:531
u32 x84
Definition types.h:570
u32 x4C
Definition types.h:556
u8 x9
Definition types.h:541
s8 character_id
Definition types.h:532
u32 x64
Definition types.h:562
int xA0
Definition types.h:577
u16 x18
Definition types.h:546
u8 team
Definition types.h:539
u32 x48
Definition types.h:555
u16 self_destructs
Definition types.h:542
u32 x28
Definition types.h:550
u8 x3
Definition types.h:533
u32 x90
Definition types.h:573
u32 x40
Definition types.h:553
u32 x54
Definition types.h:558
u32 x50
Definition types.h:557
u32 x8C
Definition types.h:572
u8 x4
Definition types.h:536
u32 x60
Definition types.h:561
u32 x98
Definition types.h:575
u32 x70
Definition types.h:565
u8 slot_type
Definition types.h:530
u32 x74
Definition types.h:566
u32 x94
Definition types.h:574
s8 stocks
Definition types.h:540
u16 xE
Definition types.h:544
u8 is_big_loser
Definition types.h:537
u8 pad_x30[0x40 - 0x30]
Definition types.h:552
u8 x3_6
Definition types.h:534
u32 x68
Definition types.h:563
u32 xA4
Definition types.h:578
u32 x6C
Definition types.h:564
u32 x44
Definition types.h:554
Definition types.h:521
u8 active
Definition types.h:526
u8 is_small_loser
Definition types.h:525
int score
Definition types.h:522
int subscore
Definition types.h:523
u8 is_big_loser
Definition types.h:524
Definition types.h:64
u8 class_id
Definition types.h:65
void(* OnLoad)(void *)
Definition types.h:68
void(* OnLeave)(void *)
Definition types.h:69
void(* OnFrame)(void)
Definition types.h:67
void(* unk_func)(void)
Definition types.h:70
Definition types.h:46
void * unk_struct_1
data passed to OnLeave callback
Definition types.h:49
void * unk_struct_0
data passed to OnLoad callback
Definition types.h:48
u8 class_id
Definition types.h:47
Definition types.h:38
u8 idx
Definition types.h:39
struct MinorScene::MinorSceneInfo info
u16 flags
Definition types.h:41
void(* Prep)(MinorScene *)
Definition types.h:43
void(* Decide)(MinorScene *)
Definition types.h:44
u8 preload
Definition types.h:40
Definition types.h:744
s16 victories
Definition types.h:754
bool rumble_toggle
Definition types.h:766
s32 attacks_total
Definition types.h:748
s16 losses
Definition types.h:755
s32 lost_coins
Definition types.h:764
s32 damage_taken
Definition types.h:750
s32 flight_distance
Definition types.h:761
s16 matches
Definition types.h:753
s32 attacks_hit
Definition types.h:747
s32 damage_given
Definition types.h:749
void * x198
Definition types.h:767
s32 x114
Definition types.h:757
s32 swiped_coins
Definition types.h:763
s32 coin_points
Definition types.h:762
s32 damage_recovered
Definition types.h:751
s32 play_time
Definition types.h:756
s32 drop_distance
Definition types.h:760
s32 jump_distance
Definition types.h:759
s32 self_destructs
Definition types.h:746
s32 ground_distance
Definition types.h:758
s16 peak_damage
Definition types.h:752
Definition types.h:392
u8 x1_b5
Definition types.h:404
u8 x1_b3
Definition types.h:402
u8 x2_b4
Definition types.h:411
u8 x2_b2
Definition types.h:409
u8 x1_b1
Definition types.h:400
u8 x0_b4
Definition types.h:395
u8 x0_b6
Definition types.h:397
u8 x1_b2
Definition types.h:401
u8 x2_b6
Definition types.h:413
u8 x0_b3
Definition types.h:394
u8 x2_b1
Definition types.h:408
u8 x1_b0
Definition types.h:399
u8 x1_b4
Definition types.h:403
u8 x1_b7
Definition types.h:406
u8 x2_b5
Definition types.h:412
u8 x0_b7
Definition types.h:398
u8 x2_b3
Definition types.h:410
u8 x0_b0_b2
Definition types.h:393
u8 x2_b0
Definition types.h:407
u8 x0_b5
Definition types.h:396
u8 x1_b6
Definition types.h:405
u8 x2_b7
Definition types.h:414
Definition types.h:832
s32 x8
Definition types.h:848
char pad_03[0x4 - 0x3]
Definition types.h:844
Vec3 x4C[6]
Definition types.h:860
u8 x0_4
Definition types.h:837
f32 xC
Definition types.h:849
u8 x0_7
Definition types.h:840
HSD_JObj * x24
Definition types.h:855
HSD_GObj * x18
main proc?
Definition types.h:852
MatchEnd * x94
Definition types.h:861
u8 x5
team winner?
Definition types.h:846
HSD_JObj * x34[6]
Definition types.h:859
HSD_Text * x2C
Definition types.h:857
HSD_JObj * x30
Definition types.h:858
u8 x0_3
Definition types.h:836
u8 x0_5
Definition types.h:838
u8 x4
winner?
Definition types.h:845
struct ResultsPlayerData player_data[6]
Definition types.h:862
u8 x0_6
Definition types.h:839
u8 num_pages
Definition types.h:843
HSD_JObj * x20
winner logo?
Definition types.h:854
u8 x0_1
Definition types.h:834
u8 x6
also winner?
Definition types.h:847
HSD_JObj * x28
Definition types.h:856
u8 x0_2
Definition types.h:835
u8 x1
some sort of state
Definition types.h:842
SceneDesc * flmsce
Definition types.h:851
HSD_CObj * cobj
Definition types.h:853
u8 x0_0
Definition types.h:833
SceneDesc * pnlsce
Definition types.h:850
Definition types.h:611
int x4
Definition types.h:615
u8 x0_0
Definition types.h:612
MatchEnd match_end
Definition types.h:616
u8 x0_1
Definition types.h:613
u8 x1
Definition types.h:614
Definition types.h:814
f32 scroll_offset
Definition types.h:818
HSD_JObj * jobjs[15]
Definition types.h:828
HSD_GObj * fighter_gobj
Definition types.h:819
u16 x2
Definition types.h:817
HSD_Text * ko_time
Definition types.h:827
Vec3 stats_position
Definition types.h:829
u8 x0
flags
Definition types.h:815
u8 page
Definition types.h:816
HSD_Text * ko_count
Definition types.h:826
HSD_Text * stats_text[3][10]
3 pages with 10 entries?
Definition types.h:821
HSD_GObj * camera
Definition types.h:820
Definition types.h:26
Definition types.h:73
u8 prev_major
Definition types.h:76
u8 pending_minor
Definition types.h:79
u8 curr_major
Definition types.h:74
u8 prev_minor
Definition types.h:78
u8 pending_major
Definition types.h:75
u8 curr_minor
Definition types.h:77
Definition types.h:87
Definition types.h:707
u16 x9
Definition types.h:717
u8 x1
Definition types.h:709
u8 x0
Definition types.h:708
u8 x3
Definition types.h:711
u8 xC
Definition types.h:719
u8 pad_xE[0x11 - 0xE]
Definition types.h:721
u8 x6
Definition types.h:714
u8 x7
Definition types.h:715
u8 xB
Definition types.h:718
u8 xD
Definition types.h:720
u8 x2
Definition types.h:710
u8 x8
Definition types.h:716
u8 x4
Definition types.h:712
u8 x5
Definition types.h:713
Definition types.h:724
u8 x4
CPU level.
Definition types.h:729
u8 x1
CSSIconHud.
Definition types.h:726
u8 x3
color
Definition types.h:728
u16 x6
Definition types.h:731
u8 x5
Definition types.h:730
u8 x2
Definition types.h:727
u8 x0
slot type
Definition types.h:725
u8 pad_x4[0xA - 0x8]
Definition types.h:732
Definition types.h:687
u8 pad_x18[0x20 - 0x18]
Definition types.h:694
int x10
Definition types.h:692
u8 x2C
Definition types.h:698
HSD_Text * x500[6]
Definition types.h:737
u8 x2E
Definition types.h:700
HSD_Text * x4E8[6]
Definition types.h:736
u8 pad_x540[0x56B - 0x540]
Definition types.h:741
HSD_Text * x4E4
Definition types.h:735
u8 x2D
Definition types.h:699
u8 x2F
Definition types.h:701
int x14
Definition types.h:693
int x8
Definition types.h:690
int x20
Definition types.h:695
struct TmData::UnkSelections x4B8[4]
int xC
Definition types.h:691
HSD_Text * x534[3]
Definition types.h:740
u8 pad_x524[0x534 - 0x524]
Definition types.h:739
int x4
Definition types.h:689
HSD_Text * x4E0
Definition types.h:734
u8 x30
Definition types.h:702
u8 x31
Definition types.h:703
int x24
Definition types.h:696
u8 x32
Definition types.h:704
u8 x33
Definition types.h:705
HSD_Text * x518[3]
Definition types.h:738
u32 x28
stage id
Definition types.h:697
u8 pad_x158[0x4B8 - 0x158]
Definition types.h:723
u8 pad_x34[0x37 - 0x34]
Definition types.h:706
int x0
Definition types.h:688
struct TmData::TmUnkMenuData x37[16]
Definition types.h:782
Gm_PKind slot_type[4]
Definition types.h:784
u32 color[4]
Definition types.h:786
u32 char_id[4]
Definition types.h:785
u32 stage_id
Definition types.h:783
int x4
Definition types.h:647
s8 ckind
Definition types.h:646
int x8
Definition types.h:648
Definition types.h:632
u8 xC
Definition types.h:633
u8 x12
Definition types.h:639
u8 xD
Definition types.h:634
u8 x13
Definition types.h:640
int x1C
Definition types.h:643
u8 xE
Definition types.h:635
u8 xF
Definition types.h:636
u32 x20
Definition types.h:644
u16 x14
Definition types.h:641
u8 x11
Definition types.h:638
struct Unk1PData::Unk1PData_xC::Unk1PData_x24 x24[3]
u8 x10
Definition types.h:637
int x18
Definition types.h:642
Definition types.h:619
u8 xA
Definition types.h:630
u8 stocks
Definition types.h:625
u8 x6
Definition types.h:626
u8 color
Definition types.h:621
u8 x8
Definition types.h:628
s8 ckind
Definition types.h:620
u8 xB
Definition types.h:631
u8 slot
Definition types.h:623
struct Unk1PData::Unk1PData_xC xC
u8 x4
Definition types.h:624
u8 x9
Definition types.h:629
u8 cpu_level
Definition types.h:622
u8 x7
Definition types.h:627
Definition types.h:653
u8 x78
Definition types.h:670
UNK_T x60
Definition types.h:661
s8 pad_x79[0x7C - 0x79]
Definition types.h:671
u8 x77
Definition types.h:669
UNK_T x6C
Definition types.h:664
UNK_T x70
Definition types.h:665
u8 x75
Definition types.h:667
UNK_T x54
Definition types.h:658
UNK_T x50
Definition types.h:657
UNK_T x5C
Definition types.h:660
u8(* x4C)(int, u8, u8)
Definition types.h:656
u8 x76
Definition types.h:668
Unk1PData x0
Definition types.h:654
UNK_T x48
Definition types.h:655
s8 pad_x7D[0x80 - 0x7D]
Definition types.h:673
u8 x74
Definition types.h:666
float(* x68)(int, u8)
Definition types.h:663
float(* x64)(int, u8)
Definition types.h:662
UNK_T x58
Definition types.h:659
u8 x7C
CharacterKind.
Definition types.h:672
Definition types.h:676
u16 x74
Definition types.h:679
s8 pad_x7D[0xA0 - 0x7D]
Definition types.h:684
u8 x76
Definition types.h:680
s8 pad_x0[0x74 - 0x48]
Definition types.h:678
u8 x77
Definition types.h:681
Unk1PData x0
Definition types.h:677
u8 x7C
Definition types.h:683
s8 pad_x78[0x7C - 0x78]
Definition types.h:682
Definition types.h:20
u16 x2
Definition types.h:22
int x4
Definition types.h:23
u16 x0_0
Definition types.h:21
Definition types.h:180
Definition types.h:471
u8 hour
Definition types.h:473
u8 second
Definition types.h:473
u8 minute
Definition types.h:473
u8 day
Definition types.h:473
u16 year
Definition types.h:472
u8 month
Definition types.h:473
Definition types.h:476
s32 x30
Definition types.h:492
s32 x38
Definition types.h:494
s32 x24
Definition types.h:489
s16 x2
Definition types.h:478
s16 x1E
Definition types.h:487
s16 x0
Definition types.h:477
s16 x1C
Definition types.h:486
s32 x40
Definition types.h:496
s32 xC
Definition types.h:481
s16 x1A
Definition types.h:485
s32 x14
Definition types.h:483
s32 x8
Definition types.h:480
s32 x10
Definition types.h:482
s32 x3C
Definition types.h:495
s16 x18
Definition types.h:484
s32 x4
Definition types.h:479
s32 x2C
Definition types.h:491
s32 x28
Definition types.h:490
s32 x20
Definition types.h:488
s32 x34
Definition types.h:493
Definition types.h:506
int x10
Definition types.h:511
int x14
Definition types.h:511
bool xC
Definition types.h:510
bool x0
Definition types.h:507
bool progressive
true = progressive, false = interlaced
Definition types.h:509
bool resetting
reset switch pressed
Definition types.h:508
Definition types.h:789
u8 x2
Definition types.h:792
bool(* x4[2])(void)
Definition types.h:794
u8 x1
Definition types.h:791
UNK_T xC
Definition types.h:795
u8 x0
Definition types.h:790
u8 unk_38_0
Definition types.h:800
u64 unk_28
Definition types.h:797
void(* unk_30)(void)
Definition types.h:798
u8 unk_38_1
Definition types.h:801
u8 x3
Definition types.h:793
int unk_34
Definition types.h:799
u64 unk_20
Definition types.h:796
Definition types.h:499
u8 x1
Definition types.h:501
u8 x0
Definition types.h:500
u8 _1[0xC - 0x2]
Definition types.h:502
Definition types.h:866
u8 x8
Definition types.h:872
u8 xD
Definition types.h:875
u16 x4
Definition types.h:870
u8 xE
Definition types.h:876
u8 x0
Definition types.h:867
u16 x2
Definition types.h:869
u8 x1
Definition types.h:868
s8 xA[3]
CharacterKind (opponents?)
Definition types.h:874
u8 xF
Definition types.h:877
u16 x6
Definition types.h:871
u8 x9
Definition types.h:873
Definition types.h:516
void(* x4)(int)
Definition types.h:518
void(* x0)(HSD_GObj *)
Definition types.h:517
Definition types.h:805
int unk_C
Definition types.h:809
u32 unk_8
Definition types.h:808
struct gm_801677C0_s unk_10
Definition types.h:810
u32 unk_4
Definition types.h:807
u32 unk_0
Definition types.h:806
Definition types.h:180
s32 x14
Definition types.h:186
s32 xC
Definition types.h:184
u32 x4
Definition types.h:182
u32 x0
Definition types.h:181
s32 x18
Definition types.h:187
s32 x10
Definition types.h:185
u8 padding[0x4]
Definition types.h:183
s32 x1C
Definition types.h:188
Definition types.h:191
s32 x0
Definition types.h:192
s32 x4
Definition types.h:193
Definition types.h:196
u8 padding_x4C[0xB0 - 0x4C - 4 *4]
Definition types.h:206
int x114[0x19]
Definition types.h:208
s32 x0
Definition types.h:197
int x10
Definition types.h:201
s32 x8
Definition types.h:199
u8 pad_x1C[0x4C - 0x1C]
Definition types.h:204
u32 x4
Definition types.h:198
s32 xB0[0x19]
Definition types.h:207
s32 x4C[4]
Definition types.h:205
u32 x14
Definition types.h:202
u16 x18[2]
Definition types.h:203
u32 xC
Definition types.h:200
Definition types.h:324
u8 unk_586
Definition types.h:327
s8 unk_584
Definition types.h:325
u8 unk_585
Definition types.h:326
s8 unk_587
Definition types.h:328
Definition types.h:285
u8 xB_4
Definition types.h:301
int x30
Definition types.h:314
s8 xA
Definition types.h:296
u8 xB_1
Definition types.h:298
int x10
Definition types.h:306
struct gmm_x0::EventData::gmm_x0_584_t unk_584
u8 x4
Definition types.h:290
char pad_58B[4]
Definition types.h:331
u8 xB_2
Definition types.h:299
int xC
Definition types.h:305
u8 x45
Definition types.h:320
float x1C
Definition types.h:309
int x40
Definition types.h:318
u8 xB_7
Definition types.h:304
u8 x1
Definition types.h:287
int x14
Definition types.h:307
u8 xB_6
Definition types.h:303
s8 x9
Definition types.h:295
s8 x8
Definition types.h:294
u8 xB_5
Definition types.h:302
int x24
Definition types.h:311
u8 x6
Definition types.h:292
s8 x2
Definition types.h:288
InternalStageId x48
Definition types.h:321
u8 x0
Definition types.h:286
u8 unk_535
Definition types.h:291
s8 x44
Definition types.h:319
int x34
Definition types.h:315
int x28
Definition types.h:312
u8 x3
Definition types.h:289
u8 xB_0
Definition types.h:297
int x2C
Definition types.h:313
int x3C
Definition types.h:317
u8 x7
Definition types.h:293
u8 x38
Definition types.h:316
s8 unk_588[4]
Definition types.h:330
u8 x50[4]
character color
Definition types.h:323
int x20
Definition types.h:310
u8 xB_3
Definition types.h:300
s8 x4C[4]
CharacterKind.
Definition types.h:322
int x18
Definition types.h:308
Definition types.h:277
u8 x4
nametag ID
Definition types.h:282
u8 cpu_level
Definition types.h:281
u8 x5
Definition types.h:283
u8 color
Definition types.h:280
s8 c_kind
Definition types.h:278
u8 stocks
Definition types.h:279
Definition types.h:267
u32 unk_6C[4]
Definition types.h:275
char pad_48[0x24]
Definition types.h:274
VsModeData unk_10D0
stamina melee
Definition types.h:342
GameRules x1850
Definition types.h:348
VsModeData unk_BD0
single button melee
Definition types.h:338
VsModeData unk_1210
slowmo melee
Definition types.h:343
VsModeData unk_F90
giant melee
Definition types.h:341
VsModeData unk_1710
opening movie?
Definition types.h:347
struct gmm_x0::gmm_x0_528_t unk_522
VsModeData unk_D10
training mode
Definition types.h:339
struct gmm_x1868 thing
Definition types.h:349
s32 unk_44
Definition types.h:273
char pad_3[0x36]
Definition types.h:271
VsModeData unk_590
VS melee.
Definition types.h:333
VsModeData unk_950
Definition types.h:336
VsModeData unk_1350
lightning melee
Definition types.h:344
VsModeData unk_E50
tiny melee
Definition types.h:340
VsModeData unk_810
invisible melee
Definition types.h:335
VsModeData unk_1490
multiman, 3/15 min, endless, cruel
Definition types.h:345
char pad_7C[0x4A0]
Definition types.h:276
VsModeData unk_6D0
super sudden death
Definition types.h:334
struct gmm_x0::EventData unk_530
u8 x39[0xB]
Definition types.h:272
u8 unk_1
Definition types.h:269
struct gmm_x0::gmm_x0_528_t unk_51C
struct gmm_x0::gmm_x0_528_t unk_528
u8 unk_2
Definition types.h:270
char pad_15D0[0x1710 - 0x15D0]
Definition types.h:346
VsModeData unk_A90
fixed camera mode
Definition types.h:337
u8 language
Definition types.h:268
Definition types.h:219
u32 x0
Definition types.h:220
u8 x5
Definition types.h:222
u8 x6
Definition types.h:223
u8 x4
true/false
Definition types.h:221
Definition types.h:211
u8 padding_x1C88[0x1C]
Definition types.h:257
s32 x1A2C
Definition types.h:230
s32 x1A3C
Definition types.h:234
s32 x1A34
Definition types.h:232
struct gmm_x1CB0 x1CB0
Definition types.h:258
struct gmm_retval_EDBC unk_30
Definition types.h:218
s32 x1A1C
Definition types.h:226
s32 x1A58
Definition types.h:241
s32 x1A44
Definition types.h:236
s32 x1A5C
Definition types.h:242
u8 padding_x1A70[0xBC]
Definition types.h:247
s32 x1A4C
Definition types.h:238
u32 x1B58[3]
Definition types.h:252
u32 x1B80[4]
Definition types.h:254
struct gmm_x2FF8 x2FF8[2]
Definition types.h:264
char pad_2D5[3]
Definition types.h:249
u8 padding_x1CD4[0x254]
Definition types.h:262
struct gmm_x1F2C x1F2C[0x19]
Definition types.h:263
s32 x1A50
Definition types.h:239
s32 x1A30
Definition types.h:231
s16 x1CD0
Definition types.h:259
struct gmm_retval_ED98 unk_8
Definition types.h:216
s64 x1A68
Definition types.h:245
s32 x1A60
Definition types.h:243
int x1A54
Definition types.h:240
s32 x1A38
Definition types.h:233
s32 x1A70[4]
Definition types.h:246
s32 x1A28
Definition types.h:229
s32 x1A40
Definition types.h:235
u16 x1868
Definition types.h:212
char pad_5[3]
Definition types.h:215
u32 x1C88[3]
Definition types.h:256
s16 x1CD2
Definition types.h:260
u8 x1B3C
Definition types.h:248
s32 x1A48
Definition types.h:237
u8 padding_x1B58[0x1C]
Definition types.h:253
s32 x1A20
Definition types.h:227
u8 unk_4
Definition types.h:214
s32 x1A64
Definition types.h:244
u32 x1B40[3]
Definition types.h:250
struct gmm_retval_EDB0 unk_28
Definition types.h:217
struct gmm_x1868::gmm_x1868_1A8_t unk_1A8
u32 x1B4C[3]
Definition types.h:251
u8 padding_x1B80[0xF8]
Definition types.h:255
s32 x1CD4
Definition types.h:261
u16 x186A
Definition types.h:213
s32 x1A18
Definition types.h:225
s32 x1A24
Definition types.h:228
Definition types.h:98
u8 padding_x16[0x1]
Definition types.h:107
u8 pad_x1[0x8 - 0x1]
Definition types.h:100
u8 saved_language
Definition types.h:105
u8 rumble[4]
Definition types.h:102
u8 sound_balance
Definition types.h:103
u32 stage_mask
Definition types.h:106
u8 deflicker
Definition types.h:104
u64 item_mask
Definition types.h:101
u8 item_freq
Definition types.h:99
Definition types.h:110
s32 x90
Definition types.h:135
s8 x79
Definition types.h:113
u16 b5
Definition types.h:122
s32 x9C
Definition types.h:138
s32 xA4
Definition types.h:141
u16 b3
Definition types.h:120
u16 b10_to_12
stocks
Definition types.h:125
s8 x78
Definition types.h:112
u8 padding_x0[0x78]
Definition types.h:111
s32 x98
Definition types.h:137
s8 x7B
Definition types.h:115
s32 x88
Definition types.h:133
s8 x83
Definition types.h:131
struct gmm_x1F2C::@182 x7C
UnkFlagStruct x7A
Definition types.h:114
u16 b789
stocks
Definition types.h:124
u16 b2
Definition types.h:119
u16 b1
Definition types.h:118
s32 x84
Definition types.h:132
s32 x8C
Definition types.h:134
u16 b0
Definition types.h:117
u16 b6
Definition types.h:123
u16 b13_to_15
stocks
Definition types.h:126
s32 xA8
Definition types.h:142
u8 x80
Definition types.h:128
u32 x94
Definition types.h:136
u16 b4
Definition types.h:121
u8 x82
Definition types.h:130
u16 xA2
Definition types.h:140
s16 x7E
Definition types.h:127
u8 x81
Definition types.h:129
u16 xA0
Definition types.h:139
Definition types.h:146
u8 padding[0x198]
Definition types.h:147
u8 x1A1
Definition types.h:150
s8 x1A0
Definition types.h:149
u8 padding_x1A2
Definition types.h:152
s8 x1A2
Definition types.h:151
char namedata[8]
Definition types.h:148
Definition types.h:155
struct gmm_x2FF8_inner inner[19]
Definition types.h:156
int x104[0x101]
Definition types.h:388
u8 x0[0x101]
Definition types.h:387
u8 pad60[0xA8 - 0x30]
Definition types.h:383
u8 pad8[0x20 - 8]
Definition types.h:378
Definition types.h:352
u8 xC
Definition types.h:358
u8 pad_x1[0xB]
Definition types.h:366
UNK_T x0
Definition types.h:353
u8 xD
Definition types.h:359
u8 pad30[0x58 - 0x30]
Definition types.h:368
u8 is_teams
Definition types.h:356
u32 x8
Definition types.h:357
u8 pad3F0[0x44C - 0x3F0 - 0x58]
Definition types.h:385
u8 x16
Definition types.h:362
struct lbl_8046B6A0_24C_t::lbl_8046B6A0_24C_58_t x58[6]
struct lbl_8046B6A0_24C_t::lbl_8046B6A0_24C_44C_t x44C[6]
u8 xE
Definition types.h:360
u8 x5
match mode
Definition types.h:355
u8 x4
Definition types.h:354
u8 x0
Definition types.h:365
u8 pad17[0x24 - 0x17]
Definition types.h:363
struct lbl_8046B6A0_24C_t::@183 x24[1]
u8 padF[0x16 - 0xF]
Definition types.h:361
Definition types.h:417
s8 pauser
Definition types.h:419
u8 unk_F
Definition types.h:433
s32 unk_10
Definition types.h:434
u8 pause_timer
Definition types.h:420
u8 is_singleplayer
Definition types.h:425
u8 unk_C
Definition types.h:430
u8 x4_b4
Zelda/Sheik transforming on load.
Definition types.h:454
u8 hud_enabled
Definition types.h:423
u8 x1
Definition types.h:447
u8 unk_4
Definition types.h:422
u16 unk_2C
timer frames
Definition types.h:441
u8 unk_A
Definition types.h:428
u8 x4_b7
Definition types.h:457
u32 * unk_20
Definition types.h:438
u32 timer_seconds
Definition types.h:440
u8 respawn_timer
Definition types.h:461
u8 x4_b2
invisible
Definition types.h:452
u8 x0
CharacterKind.
Definition types.h:446
u16 x6
Definition types.h:459
u16 unk_2E
Definition types.h:442
struct StartMeleeRules x24C8
Definition types.h:467
u8 x5
Definition types.h:458
u8 match_result
Definition types.h:426
f32 unk_34
Definition types.h:444
u8 unk_B
Definition types.h:429
u8 x4_b5
Definition types.h:455
u8 unk_3
Definition types.h:421
u16 xC
Definition types.h:463
u8 unk_9
Definition types.h:427
char pad_8C[0x24C - 0x8C]
Definition types.h:465
u8 unk_30
Definition types.h:443
u8 unk_18
Definition types.h:436
s8 spawn_point
Definition types.h:449
u8 x4_b6
Definition types.h:456
u8 x4_b1
Definition types.h:451
u8 x4_b0
metal
Definition types.h:450
u8 x4_b3
Definition types.h:453
u8 match_over
Definition types.h:432
u32 frame_count
Definition types.h:439
u8 terminate_match
Definition types.h:424
u16 x8
Definition types.h:460
u8 unk_0
Definition types.h:418
s32 unk_14
Definition types.h:435
u8 xB
Definition types.h:462
struct lbl_8046B6A0_24C_t x24C
Definition types.h:466
struct lbl_8046B6A0_t::@184 FighterMatchInfo[6]
u32 * unk_1C
Definition types.h:437
u8 slot_type
Definition types.h:448
u8 unk_D
Definition types.h:431
Definition types.h:880
u8 x4
Definition types.h:885
u8 x0
Definition types.h:881
u8 x3
Definition types.h:884
u8 x2
Definition types.h:883
u8 x5
Definition types.h:886
u8 x6
Definition types.h:887
u8 x1
Definition types.h:882
u16 x8
Definition types.h:888
Definition types.h:93
u32 a
Definition types.h:94
u8 scene_id
Definition types.h:95
Definition common_structs.h:68