Pseudocode decompialtion improvements and docs

This commit is contained in:
MaddoScientisto 2026-03-26 22:10:48 +01:00
commit 589bfc31ef
1898 changed files with 60634 additions and 6597 deletions

View file

@ -11,7 +11,7 @@ function miss1egg_cachein() /* entry=353 class_id=0x090D slot=0x04 */
process_exclude();
if (Egg.getEggId(arg_06) == 30) {
if (Game.isReleaseBuild()) {
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
spawn FREE.waitNTimerTicks(pid, 1, 0x00000000);
suspend;
/* pop_global global_id=0x1F size=0x1 */
/* global_address global_id=0x3C */
@ -24,10 +24,10 @@ function miss1egg_cachein() /* entry=353 class_id=0x090D slot=0x04 */
/* str_to_ptr */
/* free_stack_string value_u8=0x4 target=[SP+04h] */
suspend;
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
spawn FREE.waitNTimerTicks(pid, 1, 0x00000000);
suspend;
/* global_address global_id=0x3C */
spawn class_0A0C_slot_32(pid, 1, 0x00000000);
spawn FREE.waitNTimerTicks(pid, 1, 0x00000000);
suspend;
suspend;
}

View file

@ -10,37 +10,33 @@ function miss1egg_hatch() /* entry=353 class_id=0x090D slot=0x07 */
set_info(0x0210, *(arg_06));
process_exclude();
if (Egg.getEggId(arg_06) == 1) {
spawn class_090D_slot_21(arg_06);
spawn MISS1EGG.slot_21(arg_06);
/* global_address global_id=0x3C */
spawn class_0A11_slot_23(pid);
spawn NPC.slot_23(pid);
suspend;
return;
}
else if (Egg.getEggId(arg_06) == 2) {
if (global[0x003B]) {
/* pop_global global_id=0x3B size=0x1 */
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
/* loop_selector buster in nearby_items(shape=NPC_TECH, origin=arg_06) */
while (!condition) {
class_0A1E_slot_23(4, buster);
spawn class_090D_slot_22(buster, arg_06);
ITEM.slot_23(4, buster);
spawn MISS1EGG.slot_22(buster, arg_06);
/* loopnext */
}
}
return;
}
else if (Egg.getEggId(arg_06) == 3) {
class_0A0C_slot_41();
spawn class_090D_slot_23(pid, arg_06);
FREE.slot_41();
spawn MISS1EGG.slot_23(pid, arg_06);
suspend;
return;
}
else if (Egg.getEggId(arg_06) == 7) {
class_0A0C_slot_41();
spawn class_090D_slot_20(pid, arg_06);
FREE.slot_41();
spawn MISS1EGG.slot_20(pid, arg_06);
suspend;
return;
}

View file

@ -10,37 +10,30 @@ function miss1egg_slot_20() /* entry=353 class_id=0x090D slot=0x20 */
set_info(0x00F0, *(arg_06));
/* global_address global_id=0x3C */
while (!Actor.isBusy()) {
spawn class_0A0C_slot_32(pid, 2, 0x00000000);
spawn FREE.waitNTimerTicks(pid, 2, 0x00000000);
suspend;
}
/* global_address global_id=0x3C */
suspend;
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFC string_bytes=0x6 loop_type=0x2 */
/* loop_selector eTrigger in nearby_items(shape=PLACEHOLDER_CUBE_RED_BLACK, origin=global[0x003C]) */
while (!condition) {
/* global_address global_id=0x3C */
/* loopnext */
}
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x42 */
/* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
while (!condition) {
for item in selector_0x42(arg0=0x032A, arg1=0x0329, arg2=(100 * 32), origin=global[0x003C]) {
/* loopnext */
}
/* global_address global_id=0x3C */
spawn class_0A11_slot_22(pid, 5, 8);
spawn NPC.slot_22(pid, 5, 8);
suspend;
/* global_address global_id=0x3C */
spawn class_0A11_slot_22(pid, 8, 6);
spawn NPC.slot_22(pid, 8, 6);
suspend;
/* global_address global_id=0x3C */
spawn class_0A11_slot_22(pid, 2, 8);
spawn NPC.slot_22(pid, 2, 8);
suspend;
/* global_address global_id=0x3C */
spawn class_0A11_slot_22(pid, 2, 12);
spawn NPC.slot_22(pid, 2, 12);
suspend;
/* global_address global_id=0x3C */
suspend;
@ -62,64 +55,47 @@ function miss1egg_slot_20() /* entry=353 class_id=0x090D slot=0x20 */
suspend;
counter = 1;
while (counter > 5) {
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
spawn FREE.waitNTimerTicks(pid, 30, 0x00000000);
suspend;
counter = (1 + counter);
}
spawn class_0A1E_slot_28(pid, 1, 1, pac);
spawn ITEM.slot_28(pid, 1, 1, pac);
suspend;
spawn class_0A0C_slot_32(pid, 10, 0x00000000);
spawn FREE.waitNTimerTicks(pid, 10, 0x00000000);
suspend;
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
/* loop_selector item in nearby_items(shape=REACTOR, origin=global[0x003C]) */
while (!condition) {
spawn class_0A1E_slot_28(pid, 0, 2, item);
spawn ITEM.slot_28(pid, 0, 2, item);
suspend;
/* loopnext */
}
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
while (!condition) {
spawn class_0A1E_slot_28(pid, 1, 0, item);
for item in nearby_items(shape=REACTOR_CELL, origin=global[0x003C]) {
spawn ITEM.slot_28(pid, 1, 0, item);
suspend;
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
spawn FREE.waitNTimerTicks(pid, 30, 0x00000000);
suspend;
/* loopnext */
}
spawn class_0A0C_slot_3B(0x00000000);
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
spawn FREE.slot_3B(0x00000000);
/* loop_selector item in nearby_items(shape=NUMBERS, origin=global[0x003C]) */
while (!condition) {
spawn class_0A0C_slot_32(UCMachine.rndRange(pid, 20, 10), 0x00000000);
spawn FREE.waitNTimerTicks(UCMachine.rndRange(pid, 20, 10), 0x00000000);
suspend;
/* loopnext */
}
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
spawn FREE.waitNTimerTicks(pid, 30, 0x00000000);
suspend;
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
/* loop_selector item in nearby_items(shape=ELECTRODE, origin=global[0x003C]) */
while (!condition) {
spawn class_0A1E_slot_28(pid, 0, 0, item);
spawn ITEM.slot_28(pid, 0, 0, item);
suspend;
spawn class_0A0C_slot_32(UCMachine.rndRange(pid, 10, 5), 0x00000000);
spawn FREE.waitNTimerTicks(UCMachine.rndRange(pid, 10, 5), 0x00000000);
suspend;
/* loopnext */
}
spawn class_0A0C_slot_32(pid, 0x00C8, 0x00000000);
spawn FREE.waitNTimerTicks(pid, 0x00C8, 0x00000000);
suspend;
spawn class_0A0C_slot_26(pid, "1c", 0x00000000);
spawn FREE.slot_26(pid, "1c", 0x00000000);
/* free_stack_string value_u8=0x0 target=[SP+00h] */
suspend;
return;

View file

@ -5,17 +5,13 @@ function miss1egg_slot_21() /* entry=353 class_id=0x090D slot=0x21 */
buster; /* [BP-02h] type=0x24 */
set_info(1, 0);
spawn class_0A0C_slot_32(pid, ((5 - Game.getDifficultyLevel()) * 100), 0x00000000);
spawn FREE.waitNTimerTicks(pid, ((5 - Game.getDifficultyLevel()) * 100), 0x00000000);
suspend;
if (global[0x003B]) {
/* pop_global global_id=0x3B size=0x1 */
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */
/* loop_selector buster in nearby_items(shape=NPC_TECH, origin=global[0x003C]) */
while (!condition) {
spawn class_090D_slot_22(buster, arg_06);
spawn MISS1EGG.slot_22(buster, arg_06);
/* loopnext */
}
}

View file

@ -7,14 +7,14 @@ function miss1egg_slot_22() /* entry=353 class_id=0x090D slot=0x22 */
counter; /* [BP-04h] type=0x69 */
set_info(1, buster);
class_0A0C_slot_33(buster, 0x0205);
FREE.slot_33(buster, 0x0205);
rubberSuit = buster;
if (!Actor.isDead(rubberSuit)) {
return;
}
else {
suspend;
spawn class_0A11_slot_2A(pid, 0x00B4, rubberSuit);
spawn NPC.slot_2A(pid, 0x00B4, rubberSuit);
suspend;
if (!Actor.isDead(rubberSuit)) {
return;
@ -33,10 +33,10 @@ function miss1egg_slot_22() /* entry=353 class_id=0x090D slot=0x22 */
if ((Actor.getInCombat(rubberSuit) == 0) && (Actor.isDead(rubberSuit) != 0)) {
suspend;
}
spawn class_0A0C_slot_32(pid, 30, 0x00000000);
spawn FREE.waitNTimerTicks(pid, 30, 0x00000000);
suspend;
if ((Actor.getInCombat(rubberSuit) == 0) || (Actor.isDead(rubberSuit) != 0)) {
spawn class_0A0C_slot_3B(0x00000000);
spawn FREE.slot_3B(0x00000000);
}
}
}

View file

@ -9,12 +9,8 @@ function miss1egg_slot_23() /* entry=353 class_id=0x090D slot=0x23 */
door; /* [BP-0Ah] type=0x24 */
set_info(0x0001, *(arg_06));
spawn class_090D_slot_25(arg_06);
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */
spawn MISS1EGG.slot_25(arg_06);
/* loop_selector item in nearby_items(shape=0x04E0, origin=global[0x003C]) */
while (!condition) {
n = item;
/* loopnext */
@ -24,36 +20,28 @@ function miss1egg_slot_23() /* entry=353 class_id=0x090D slot=0x23 */
}
else {
suspend;
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */
/* loop_selector item in nearby_items(shape=door_shape_007b, origin=arg_06) */
while (!condition) {
if (Item.getQLo(item) == 23) {
door = item;
spawn class_0A06_slot_20(pid, door);
spawn DOOR.slot_20(pid, door);
suspend;
}
/* loopnext */
}
spawn class_0A11_slot_22(pid, 5, 4, n);
spawn NPC.slot_22(pid, 5, 4, n);
suspend;
suspend;
/* str_to_ptr */
/* free_stack_string value_u8=0x4 target=[SP+04h] */
suspend;
spawn class_0A0C_slot_3B(0x00000000);
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xF8 string_bytes=0x6 loop_type=0x2 */
spawn FREE.slot_3B(0x00000000);
/* loop_selector guardBoy in nearby_items(shape=npcdeath_shape_02fd, origin=global[0x003C]) */
while (!condition) {
/* loopnext */
}
/* pop_global global_id=0x2F size=0x1 */
spawn class_090D_slot_24(1, pid, n, arg_06);
spawn MISS1EGG.slot_24(1, pid, n, arg_06);
suspend;
}
return;

View file

@ -7,23 +7,19 @@ function miss1egg_slot_24() /* entry=353 class_id=0x090D slot=0x24 */
set_info(0x0001, *(arg_06));
set_info(1, 0);
spawn class_0A11_slot_22(pid, 5, 0, n);
spawn NPC.slot_22(pid, 5, 0, n);
suspend;
/* loopscr value_u8=0x24 */
/* loopscr value_u8=0x3D */
/* loopscr value_u8=0x40 */
/* loopscr value_u8=0x25 */
/* loop current_var=0xFE string_bytes=0x6 loop_type=0x2 */
/* loop_selector door in nearby_items(shape=0x00C2, origin=n) */
while (!condition) {
if (Item.getQLo(door) == 21) {
spawn class_0A06_slot_20(pid, door);
spawn DOOR.slot_20(pid, door);
suspend;
}
/* loopnext */
}
spawn class_0A11_slot_21(pid, 3, n);
spawn NPC.slot_21(pid, 3, n);
suspend;
spawn class_0A11_slot_21(pid, 2, n);
spawn NPC.slot_21(pid, 2, n);
suspend;
return;
}