diff --git a/decompiler/ObjectFile/ObjectFileDB.cpp b/decompiler/ObjectFile/ObjectFileDB.cpp index 693b36516e..f99d4f29d2 100644 --- a/decompiler/ObjectFile/ObjectFileDB.cpp +++ b/decompiler/ObjectFile/ObjectFileDB.cpp @@ -380,7 +380,8 @@ std::string ObjectFileDB::generate_obj_listing() { std::string dgos = "["; for (auto& y : x.dgo_names) { assert(y.length() >= 5); - dgos += "\"" + y.substr(0, y.length() - 4) + "\", "; + std::string new_str = y == "NO-XGO" ? y : y.substr(0, y.length() - 4); + dgos += "\"" + new_str + "\", "; } dgos.pop_back(); dgos.pop_back(); diff --git a/decompiler/config/jak1_ntsc_black_label/var_names.jsonc b/decompiler/config/jak1_ntsc_black_label/var_names.jsonc index e9a469b681..00f9274401 100644 --- a/decompiler/config/jak1_ntsc_black_label/var_names.jsonc +++ b/decompiler/config/jak1_ntsc_black_label/var_names.jsonc @@ -3643,5 +3643,11 @@ } }, + "(method 15 level)": { + "vars": { + "v1-5": ["s5-1", "(inline-array box8s)"] + } + }, + "aaaaaaaaaaaaaaaaaaaaaaa": {} } diff --git a/decompiler/config/jak1_sced.jsonc b/decompiler/config/jak1_sced.jsonc new file mode 100644 index 0000000000..ea2e4fc031 --- /dev/null +++ b/decompiler/config/jak1_sced.jsonc @@ -0,0 +1,81 @@ +{ + "game_version": 1, + + // if you want to filter to only some object names. + // it will make the decompiler much faster. + "allowed_objects": [], + "banned_objects": [], + + //////////////////////////// + // CODE ANALYSIS OPTIONS + //////////////////////////// + + // set to true to generate plain .asm files with MIPS disassembly, with no fancy decompilation. + // this is fast and should succeed 100% of the time. + "disassemble_code": false, + + // Run the decompiler + "decompile_code": true, + + //////////////////////////// + // DATA ANALYSIS OPTIONS + //////////////////////////// + + // set to true to generate plain .asm files for data files. + // this will display most data as hex, but will add labels/references/type pointers/strings + // this generates a huge amount of output if you run it on the entire game. + "disassemble_data": false, + + // unpack textures to assets folder + "process_tpages": false, + // unpack game text to assets folder + "process_game_text": false, + // unpack game count to assets folder + "process_game_count": false, + + /////////////////////////// + // WEIRD OPTIONS + /////////////////////////// + + // these options are used rarely and should usually be left at false + + // output a file type_defs.gc which is used for the types part of all-types.gc + "regenerate_all_types": false, + + // generate the symbol_map.json file. + // this is a guess at where each symbol is first defined/used. + "generate_symbol_definition_map": false, + + // debug option for instruction decoder + "write_hex_near_instructions": false, + + // experimental tool to extract linked lists used for region scripting in Jak 2 and Jak 3. + "write_scripts": false, + + // hex dump of code/data files. + "hexdump_code": false, + "hexdump_data": false, + // dump raw obj files + "dump_objs": false, + // print control flow graph + "print_cfgs": false, + + // set to true for PAL versions. this will forcefully skip files that have some data missing at the end. + "is_pal": false, + + //////////////////////////// + // CONFIG FILES + //////////////////////////// + + "type_casts_file": "decompiler/config/jak1_sced/type_casts.jsonc", + "anonymous_function_types_file": "decompiler/config/jak1_sced/anonymous_function_types.jsonc", + "var_names_file": "decompiler/config/jak1_sced/var_names.jsonc", + "label_types_file": "decompiler/config/jak1_sced/label_types.jsonc", + "stack_structures_file": "decompiler/config/jak1_sced/stack_structures.jsonc", + "hacks_file": "decompiler/config/jak1_sced/hacks.jsonc", + "inputs_file": "decompiler/config/jak1_sced/inputs.jsonc", + + // optional: a predetermined object file name map from a file. + // this will make decompilation naming consistent even if you only run on some objects. + "obj_file_name_map_file": "decompiler/config/jak1_sced/all_objs.json" +} diff --git a/decompiler/config/jak1_sced/all_objs.json b/decompiler/config/jak1_sced/all_objs.json new file mode 100644 index 0000000000..26543d164b --- /dev/null +++ b/decompiler/config/jak1_sced/all_objs.json @@ -0,0 +1,1516 @@ +[["gcommon", "gcommon", 3, ["KERNEL"], ""], +["gstring-h", "gstring-h", 3, ["KERNEL"], ""], +["gkernel-h", "gkernel-h", 3, ["KERNEL"], ""], +["gkernel", "gkernel", 3, ["KERNEL"], ""], +["pskernel", "pskernel", 3, ["KERNEL"], ""], +["gstring", "gstring", 3, ["KERNEL"], ""], +["dgo-h", "dgo-h", 3, ["KERNEL"], ""], +["gstate", "gstate", 3, ["KERNEL"], ""], +["types-h", "types-h", 3, ["GAME"], ""], +["vu1-macros", "vu1-macros", 3, ["GAME"], ""], +["math", "math", 3, ["GAME"], ""], +["vector-h", "vector-h", 3, ["GAME"], ""], +["gravity-h", "gravity-h", 3, ["GAME"], ""], +["bounding-box-h", "bounding-box-h", 3, ["GAME"], ""], +["matrix-h", "matrix-h", 3, ["GAME"], ""], +["quaternion-h", "quaternion-h", 3, ["GAME"], ""], +["euler-h", "euler-h", 3, ["GAME"], ""], +["transform-h", "transform-h", 3, ["GAME"], ""], +["geometry-h", "geometry-h", 3, ["GAME"], ""], +["trigonometry-h", "trigonometry-h", 3, ["GAME"], ""], +["transformq-h", "transformq-h", 3, ["GAME"], ""], +["bounding-box", "bounding-box", 3, ["GAME"], ""], +["matrix", "matrix", 3, ["GAME"], ""], +["transform", "transform", 3, ["GAME"], ""], +["quaternion", "quaternion", 3, ["GAME"], ""], +["euler", "euler", 3, ["GAME"], ""], +["geometry", "geometry", 3, ["GAME"], ""], +["trigonometry", "trigonometry", 3, ["GAME"], ""], +["gsound-h", "gsound-h", 3, ["GAME"], ""], +["timer-h", "timer-h", 3, ["GAME"], ""], +["timer", "timer", 3, ["GAME"], ""], +["vif-h", "vif-h", 3, ["GAME"], ""], +["dma-h", "dma-h", 3, ["GAME"], ""], +["video-h", "video-h", 3, ["GAME"], ""], +["vu1-user-h", "vu1-user-h", 3, ["GAME"], ""], +["dma", "dma", 3, ["GAME"], ""], +["dma-buffer", "dma-buffer", 3, ["GAME"], ""], +["dma-bucket", "dma-bucket", 3, ["GAME"], ""], +["dma-disasm", "dma-disasm", 3, ["GAME"], ""], +["pad", "pad", 3, ["GAME"], ""], +["gs", "gs", 3, ["GAME"], ""], +["display-h", "display-h", 3, ["GAME"], ""], +["vector", "vector", 3, ["GAME"], ""], +["file-io", "file-io", 3, ["GAME"], ""], +["loader-h", "loader-h", 3, ["GAME"], ""], +["texture-h", "texture-h", 3, ["GAME"], ""], +["level-h", "level-h", 3, ["GAME"], ""], +["math-camera-h", "math-camera-h", 3, ["GAME"], ""], +["math-camera", "math-camera", 3, ["GAME"], ""], +["font-h", "font-h", 3, ["GAME"], ""], +["decomp-h", "decomp-h", 3, ["GAME"], ""], +["display", "display", 3, ["GAME"], ""], +["connect", "connect", 3, ["GAME"], ""], +["text-h", "text-h", 3, ["GAME"], ""], +["settings-h", "settings-h", 3, ["GAME"], ""], +["capture", "capture", 3, ["GAME"], ""], +["memory-usage-h", "memory-usage-h", 3, ["GAME"], ""], +["texture", "texture", 3, ["GAME"], ""], +["main-h", "main-h", 3, ["GAME"], ""], +["mspace-h", "mspace-h", 3, ["GAME"], ""], +["drawable-h", "drawable-h", 3, ["GAME"], ""], +["drawable-group-h", "drawable-group-h", 3, ["GAME"], ""], +["drawable-inline-array-h", "drawable-inline-array-h", 3, ["GAME"], ""], +["draw-node-h", "draw-node-h", 3, ["GAME"], ""], +["drawable-tree-h", "drawable-tree-h", 3, ["GAME"], ""], +["drawable-actor-h", "drawable-actor-h", 3, ["GAME"], ""], +["drawable-ambient-h", "drawable-ambient-h", 3, ["GAME"], ""], +["game-task-h", "game-task-h", 3, ["GAME"], ""], +["hint-control-h", "hint-control-h", 3, ["GAME"], ""], +["generic-h", "generic-h", 3, ["GAME"], ""], +["lights-h", "lights-h", 3, ["GAME"], ""], +["ocean-h", "ocean-h", 3, ["GAME"], ""], +["ocean-trans-tables", "ocean-trans-tables", 3, ["GAME"], ""], +["ocean-tables", "ocean-tables", 3, ["GAME"], ""], +["ocean-frames", "ocean-frames", 3, ["GAME"], ""], +["sky-h", "sky-h", 3, ["GAME"], ""], +["mood-h", "mood-h", 3, ["GAME"], ""], +["time-of-day-h", "time-of-day-h", 3, ["GAME"], ""], +["art-h", "art-h", 3, ["GAME"], ""], +["generic-vu1-h", "generic-vu1-h", 3, ["GAME"], ""], +["merc-h", "merc-h", 3, ["GAME"], ""], +["generic-merc-h", "generic-merc-h", 3, ["GAME"], ""], +["generic-tie-h", "generic-tie-h", 3, ["GAME"], ""], +["generic-work-h", "generic-work-h", 3, ["GAME"], ""], +["shadow-cpu-h", "shadow-cpu-h", 3, ["GAME"], ""], +["shadow-vu1-h", "shadow-vu1-h", 3, ["GAME"], ""], +["memcard-h", "memcard-h", 3, ["GAME"], ""], +["game-info-h", "game-info-h", 3, ["GAME"], ""], +["wind-h", "wind-h", 3, ["GAME"], ""], +["prototype-h", "prototype-h", 3, ["GAME"], ""], +["joint-h", "joint-h", 3, ["GAME"], ""], +["bones-h", "bones-h", 3, ["GAME"], ""], +["engines", "engines", 3, ["GAME"], ""], +["res-h", "res-h", 3, ["GAME"], ""], +["res", "res", 3, ["GAME"], ""], +["lights", "lights", 3, ["GAME"], ""], +["dynamics-h", "dynamics-h", 3, ["GAME"], ""], +["surface-h", "surface-h", 3, ["GAME"], ""], +["pat-h", "pat-h", 3, ["GAME"], ""], +["fact-h", "fact-h", 3, ["GAME"], ""], +["aligner-h", "aligner-h", 3, ["GAME"], ""], +["game-h", "game-h", 3, ["GAME"], ""], +["generic-obs-h", "generic-obs-h", 3, ["GAME"], ""], +["pov-camera-h", "pov-camera-h", 3, ["GAME"], ""], +["sync-info-h", "sync-info-h", 3, ["GAME"], ""], +["smush-control-h", "smush-control-h", 3, ["GAME"], ""], +["trajectory-h", "trajectory-h", 3, ["GAME"], ""], +["debug-h", "debug-h", 3, ["GAME"], ""], +["joint-mod-h", "joint-mod-h", 3, ["GAME"], ""], +["collide-func-h", "collide-func-h", 3, ["GAME"], ""], +["collide-mesh-h", "collide-mesh-h", 3, ["GAME"], ""], +["collide-shape-h", "collide-shape-h", 3, ["GAME"], ""], +["collide-target-h", "collide-target-h", 3, ["GAME"], ""], +["collide-touch-h", "collide-touch-h", 3, ["GAME"], ""], +["collide-edge-grab-h", "collide-edge-grab-h", 3, ["GAME"], ""], +["process-drawable-h", "process-drawable-h", 3, ["GAME"], ""], +["effect-control-h", "effect-control-h", 3, ["GAME"], ""], +["collide-frag-h", "collide-frag-h", 3, ["GAME"], ""], +["projectiles-h", "projectiles-h", 3, ["GAME"], ""], +["target-h", "target-h", 3, ["GAME"], ""], +["depth-cue-h", "depth-cue-h", 3, ["GAME"], ""], +["stats-h", "stats-h", 3, ["GAME"], ""], +["bsp-h", "bsp-h", 3, ["GAME"], ""], +["collide-cache-h", "collide-cache-h", 3, ["GAME"], ""], +["collide-h", "collide-h", 3, ["GAME"], ""], +["shrubbery-h", "shrubbery-h", 3, ["GAME"], ""], +["tie-h", "tie-h", 3, ["GAME"], ""], +["tfrag-h", "tfrag-h", 3, ["GAME"], ""], +["background-h", "background-h", 3, ["GAME"], ""], +["subdivide-h", "subdivide-h", 3, ["GAME"], ""], +["entity-h", "entity-h", 3, ["GAME"], ""], +["sprite-h", "sprite-h", 3, ["GAME"], ""], +["shadow-h", "shadow-h", 3, ["GAME"], ""], +["eye-h", "eye-h", 3, ["GAME"], ""], +["sparticle-launcher-h", "sparticle-launcher-h", 3, ["GAME"], ""], +["sparticle-h", "sparticle-h", 3, ["GAME"], ""], +["actor-link-h", "actor-link-h", 3, ["GAME"], ""], +["camera-h", "camera-h", 3, ["GAME"], ""], +["cam-debug-h", "cam-debug-h", 3, ["GAME"], ""], +["cam-interface-h", "cam-interface-h", 3, ["GAME"], ""], +["cam-update-h", "cam-update-h", 3, ["GAME"], ""], +["assert-h", "assert-h", 3, ["GAME"], ""], +["hud-h", "hud-h", 3, ["GAME"], ""], +["progress-h", "progress-h", 3, ["GAME"], ""], +["rpc-h", "rpc-h", 3, ["GAME"], ""], +["path-h", "path-h", 3, ["GAME"], ""], +["navigate-h", "navigate-h", 3, ["GAME"], ""], +["load-dgo", "load-dgo", 3, ["GAME"], ""], +["ramdisk", "ramdisk", 3, ["GAME"], ""], +["gsound", "gsound", 3, ["GAME"], ""], +["transformq", "transformq", 3, ["GAME"], ""], +["collide-func", "collide-func", 3, ["GAME"], ""], +["joint", "joint", 3, ["GAME"], ""], +["cylinder", "cylinder", 3, ["GAME"], ""], +["wind", "wind", 3, ["GAME"], ""], +["bsp", "bsp", 3, ["GAME"], ""], +["subdivide", "subdivide", 3, ["GAME"], ""], +["sprite", "sprite", 3, ["GAME"], ""], +["sprite-distort", "sprite-distort", 3, ["GAME"], ""], +["debug-sphere", "debug-sphere", 3, ["GAME"], ""], +["debug", "debug", 3, ["GAME"], ""], +["merc-vu1", "merc-vu1", 3, ["GAME"], ""], +["merc-blend-shape", "merc-blend-shape", 3, ["GAME"], ""], +["merc", "merc", 3, ["GAME"], ""], +["ripple", "ripple", 3, ["GAME"], ""], +["bones", "bones", 3, ["GAME"], ""], +["generic-vu0", "generic-vu0", 3, ["GAME"], ""], +["generic", "generic", 3, ["GAME"], ""], +["generic-vu1", "generic-vu1", 3, ["GAME"], ""], +["generic-effect", "generic-effect", 3, ["GAME"], ""], +["generic-merc", "generic-merc", 3, ["GAME"], ""], +["generic-tie", "generic-tie", 3, ["GAME"], ""], +["shadow-cpu", "shadow-cpu", 3, ["GAME"], ""], +["shadow-vu1", "shadow-vu1", 3, ["GAME"], ""], +["depth-cue", "depth-cue", 3, ["GAME"], ""], +["font", "font", 3, ["GAME"], ""], +["decomp", "decomp", 3, ["GAME"], ""], +["background", "background", 3, ["GAME"], ""], +["draw-node", "draw-node", 3, ["GAME"], ""], +["shrubbery", "shrubbery", 3, ["GAME"], ""], +["shrub-work", "shrub-work", 3, ["GAME"], ""], +["tfrag-near", "tfrag-near", 3, ["GAME"], ""], +["tfrag", "tfrag", 3, ["GAME"], ""], +["tfrag-methods", "tfrag-methods", 3, ["GAME"], ""], +["tfrag-work", "tfrag-work", 3, ["GAME"], ""], +["tie", "tie", 3, ["GAME"], ""], +["tie-near", "tie-near", 3, ["GAME"], ""], +["tie-work", "tie-work", 3, ["GAME"], ""], +["tie-methods", "tie-methods", 3, ["GAME"], ""], +["sync-info", "sync-info", 3, ["GAME"], ""], +["trajectory", "trajectory", 3, ["GAME"], ""], +["sparticle-launcher", "sparticle-launcher", 3, ["GAME"], ""], +["sparticle", "sparticle", 3, ["GAME"], ""], +["entity-table", "entity-table", 3, ["GAME"], ""], +["loader", "loader", 3, ["GAME"], ""], +["task-control-h", "task-control-h", 3, ["GAME"], ""], +["game-info", "game-info", 3, ["GAME"], ""], +["game-save", "game-save", 3, ["GAME"], ""], +["settings", "settings", 3, ["GAME"], ""], +["mood-tables", "mood-tables", 3, ["GAME"], ""], +["mood", "mood", 3, ["GAME"], ""], +["weather-part", "weather-part", 3, ["GAME"], ""], +["time-of-day", "time-of-day", 3, ["GAME"], ""], +["sky-utils", "sky-utils", 3, ["GAME"], ""], +["sky", "sky", 3, ["GAME"], ""], +["sky-tng", "sky-tng", 3, ["GAME"], ""], +["load-boundary-h", "load-boundary-h", 3, ["GAME"], ""], +["load-boundary", "load-boundary", 3, ["GAME"], ""], +["load-boundary-data", "load-boundary-data", 3, ["GAME"], ""], +["level-info", "level-info", 3, ["GAME"], ""], +["level", "level", 3, ["GAME"], ""], +["text", "text", 3, ["GAME"], ""], +["collide-probe", "collide-probe", 3, ["GAME"], ""], +["collide-frag", "collide-frag", 3, ["GAME"], ""], +["collide-mesh", "collide-mesh", 3, ["GAME"], ""], +["collide-touch", "collide-touch", 3, ["GAME"], ""], +["collide-edge-grab", "collide-edge-grab", 3, ["GAME"], ""], +["collide-shape", "collide-shape", 3, ["GAME"], ""], +["collide-shape-rider", "collide-shape-rider", 3, ["GAME"], ""], +["collide", "collide", 3, ["GAME"], ""], +["collide-planes", "collide-planes", 3, ["GAME"], ""], +["merc-death", "merc-death", 3, ["GAME"], ""], +["water-h", "water-h", 3, ["GAME"], ""], +["camera", "camera", 3, ["GAME"], ""], +["cam-interface", "cam-interface", 3, ["GAME"], ""], +["cam-master", "cam-master", 3, ["GAME"], ""], +["cam-states", "cam-states", 3, ["GAME"], ""], +["cam-states-dbg", "cam-states-dbg", 3, ["GAME"], ""], +["cam-combiner", "cam-combiner", 3, ["GAME"], ""], +["cam-update", "cam-update", 3, ["GAME"], ""], +["vol-h", "vol-h", 3, ["GAME"], ""], +["cam-layout", "cam-layout", 3, ["GAME"], ""], +["cam-debug", "cam-debug", 3, ["GAME"], ""], +["cam-start", "cam-start", 3, ["GAME"], ""], +["process-drawable", "process-drawable", 3, ["GAME"], ""], +["hint-control", "hint-control", 3, ["GAME"], ""], +["ambient", "ambient", 3, ["GAME"], ""], +["assert", "assert", 3, ["GAME"], ""], +["generic-obs", "generic-obs", 3, ["GAME"], ""], +["target-util", "target-util", 3, ["GAME"], ""], +["target-part", "target-part", 3, ["GAME"], ""], +["collide-reaction-target", "collide-reaction-target", 3, ["GAME"], ""], +["logic-target", "logic-target", 3, ["GAME"], ""], +["sidekick", "sidekick", 3, ["GAME"], ""], +["voicebox", "voicebox", 3, ["GAME"], ""], +["target-handler", "target-handler", 3, ["GAME"], ""], +["target", "target", 3, ["GAME"], ""], +["target2", "target2", 3, ["GAME"], ""], +["target-death", "target-death", 3, ["GAME"], ""], +["menu", "menu", 3, ["GAME"], ""], +["drawable", "drawable", 3, ["GAME"], ""], +["drawable-group", "drawable-group", 3, ["GAME"], ""], +["drawable-inline-array", "drawable-inline-array", 3, ["GAME"], ""], +["drawable-tree", "drawable-tree", 3, ["GAME"], ""], +["prototype", "prototype", 3, ["GAME"], ""], +["main-collide", "main-collide", 3, ["GAME"], ""], +["video", "video", 3, ["GAME"], ""], +["main", "main", 3, ["GAME"], ""], +["collide-cache", "collide-cache", 3, ["GAME"], ""], +["relocate", "relocate", 3, ["GAME"], ""], +["memory-usage", "memory-usage", 3, ["GAME"], ""], +["entity", "entity", 3, ["GAME"], ""], +["path", "path", 3, ["GAME"], ""], +["vol", "vol", 3, ["GAME"], ""], +["navigate", "navigate", 3, ["GAME"], ""], +["aligner", "aligner", 3, ["GAME"], ""], +["effect-control", "effect-control", 3, ["GAME"], ""], +["water", "water", 3, ["GAME"], ""], +["collectables-part", "collectables-part", 3, ["GAME"], ""], +["collectables", "collectables", 3, ["GAME"], ""], +["task-control", "task-control", 3, ["GAME"], ""], +["process-taskable", "process-taskable", 3, ["GAME"], ""], +["pov-camera", "pov-camera", 3, ["GAME"], ""], +["powerups", "powerups", 3, ["GAME"], ""], +["crates", "crates", 3, ["GAME"], ""], +["hud", "hud", 3, ["GAME"], ""], +["hud-classes", "hud-classes", 3, ["GAME"], ""], +["progress-static", "progress-static", 3, ["GAME"], ""], +["progress-part", "progress-part", 3, ["GAME"], ""], +["progress-draw", "progress-draw", 3, ["GAME"], ""], +["progress", "progress", 3, ["GAME"], ""], +["credits", "credits", 3, ["GAME"], ""], +["projectiles", "projectiles", 3, ["GAME"], ""], +["ocean", "ocean", 3, ["GAME"], ""], +["ocean-vu0", "ocean-vu0", 3, ["GAME"], ""], +["ocean-texture", "ocean-texture", 3, ["GAME"], ""], +["ocean-mid", "ocean-mid", 3, ["GAME"], ""], +["ocean-transition", "ocean-transition", 3, ["GAME"], ""], +["ocean-near", "ocean-near", 3, ["GAME"], ""], +["shadow", "shadow", 3, ["GAME"], ""], +["eye", "eye", 3, ["GAME"], ""], +["glist-h", "glist-h", 3, ["GAME"], ""], +["glist", "glist", 3, ["GAME"], ""], +["anim-tester", "anim-tester", 3, ["GAME"], ""], +["viewer", "viewer", 3, ["GAME"], ""], +["part-tester", "part-tester", 3, ["GAME"], ""], +["default-menu", "default-menu", 3, ["GAME"], ""], +["dir-tpages", "dir-tpages", 4, ["GAME"], ""], +["tpage-463", "tpage-463", 4, ["GAME"], ""], +["tpage-2", "tpage-2", 4, ["GAME"], ""], +["tpage-880", "tpage-880", 4, ["GAME"], ""], +["tpage-256", "tpage-256", 4, ["GAME"], ""], +["tpage-1278", "tpage-1278", 4, ["GAME"], ""], +["texture-upload", "texture-upload", 3, ["GAME"], ""], +["tpage-1032", "tpage-1032", 4, ["GAME"], ""], +["tpage-62", "tpage-62", 4, ["GAME"], ""], +["tpage-1532", "tpage-1532", 4, ["GAME"], ""], +["fuel-cell-ag", "fuel-cell", 4, ["GAME"], ""], +["money-ag", "money", 4, ["GAME"], ""], +["buzzer-ag", "buzzer", 4, ["GAME"], ""], +["ecovalve-ag", "ecovalve", 4, ["GAME"], ""], +["crate-ag", "crate", 4, ["GAME"], ""], +["speaker-ag", "speaker", 4, ["GAME"], ""], +["fuelcell-naked-ag", "fuelcell-naked", 4, ["GAME"], ""], +["eichar-ag", "eichar", 4, ["GAME"], ""], +["sidekick-ag", "sidekick", 4, ["GAME"], ""], +["deathcam-ag", "deathcam", 4, ["GAME"], ""], +["game-cnt", "game-cnt", 4, ["GAME"], ""], +["rigid-body-h", "rigid-body-h", 3, ["GAME"], ""], +["water-anim", "water-anim", 3, ["GAME"], ""], +["dark-eco-pool", "dark-eco-pool", 3, ["GAME"], ""], +["rigid-body", "rigid-body", 3, ["GAME"], ""], +["nav-enemy-h", "nav-enemy-h", 3, ["GAME"], ""], +["nav-enemy", "nav-enemy", 3, ["GAME"], ""], +["baseplat", "baseplat", 3, ["GAME"], ""], +["basebutton", "basebutton", 3, ["GAME"], ""], +["tippy", "tippy", 3, ["GAME"], ""], +["joint-exploder", "joint-exploder", 3, ["GAME"], ""], +["babak", "babak", 3, ["GAME"], ""], +["sharkey", "sharkey", 3, ["GAME"], ""], +["orb-cache", "orb-cache", 3, ["GAME"], ""], +["plat", "plat", 3, ["GAME"], ""], +["plat-button", "plat-button", 3, ["GAME"], ""], +["plat-eco", "plat-eco", 3, ["GAME"], ""], +["ropebridge", "ropebridge", 3, ["GAME"], ""], +["ticky", "ticky", 3, ["GAME"], ""], +["demo-obs", "demo-obs", 3, ["DEM", "DEM~"], ""], +["tpage-1485", "tpage-1485", 4, ["DEM", "DEM~"], ""], +["tpage-1486-DEM", "tpage-1486", 4, ["DEM"], ""], +["tpage-1486-DEM~", "tpage-1486", 4, ["DEM~"], ""], +["tpage-1487", "tpage-1487", 4, ["DEM", "DEM~"], ""], +["tpage-1599", "tpage-1599", 4, ["DEM", "DEM~"], ""], +["tpage-1600", "tpage-1600", 4, ["DEM", "DEM~"], ""], +["tpage-1601", "tpage-1601", 4, ["DEM", "DEM~"], ""], +["tpage-1602", "tpage-1602", 4, ["DEM", "DEM~"], ""], +["tpage-1603", "tpage-1603", 4, ["DEM", "DEM~"], ""], +["tpage-1604", "tpage-1604", 4, ["DEM", "DEM~"], ""], +["tpage-1605", "tpage-1605", 4, ["DEM", "DEM~"], ""], +["tpage-1606", "tpage-1606", 4, ["DEM", "DEM~"], ""], +["tpage-1607", "tpage-1607", 4, ["DEM", "DEM~"], ""], +["static-screen", "static-screen", 3, ["DEM", "DEM~"], ""], +["tpage-1480", "tpage-1480", 4, ["DEM", "DEM~"], ""], +["tpage-1479", "tpage-1479", 4, ["DEM", "DEM~"], ""], +["demo-vis", "demo-vis", 4, ["DEM", "DEM~"], ""], +["target-racer-h", "target-racer-h", 3, ["MIS"], ""], +["racer-part", "racer-part", 3, ["MIS"], ""], +["racer", "racer", 3, ["MIS"], ""], +["target-racer", "target-racer", 3, ["MIS"], ""], +["racer-states", "racer-states", 3, ["MIS"], ""], +["collide-reaction-racer", "collide-reaction-racer", 3, ["MIS"], ""], +["eichar-racer+0-ag", "eichar-racer+0", 4, ["MIS"], ""], +["tpage-1119", "tpage-1119", 4, ["MIS"], ""], +["battlecontroller", "battlecontroller", 3, ["MIS"], ""], +["mistycannon", "mistycannon", 3, ["MIS"], ""], +["babak-with-cannon", "babak-with-cannon", 3, ["MIS"], ""], +["blocking-plane", "blocking-plane", 3, ["MIS"], ""], +["misty-obs", "misty-obs", 3, ["MIS"], ""], +["misty-warehouse", "misty-warehouse", 3, ["MIS"], ""], +["misty-conveyor", "misty-conveyor", 3, ["MIS"], ""], +["mud", "mud", 3, ["MIS"], ""], +["muse", "muse", 3, ["MIS"], ""], +["bonelurker", "bonelurker", 3, ["MIS"], ""], +["quicksandlurker", "quicksandlurker", 3, ["MIS"], ""], +["misty-teetertotter", "misty-teetertotter", 3, ["MIS"], ""], +["balloonlurker", "balloonlurker", 3, ["MIS"], ""], +["misty-part", "misty-part", 3, ["MIS"], ""], +["sidekick-human", "sidekick-human", 3, ["MIS"], ""], +["tpage-516", "tpage-516", 4, ["MIS"], ""], +["tpage-521", "tpage-521", 4, ["MIS"], ""], +["tpage-518", "tpage-518", 4, ["MIS"], ""], +["tpage-520", "tpage-520", 4, ["MIS"], ""], +["babak-ag", "babak", 4, ["MIS"], ""], +["balloonlurker-ag", "balloonlurker", 4, ["MIS"], ""], +["boatpaddle-ag", "boatpaddle", 4, ["MIS"], ""], +["bonelurker-ag", "bonelurker", 4, ["MIS"], ""], +["breakaway-left-ag", "breakaway-left", 4, ["MIS"], ""], +["breakaway-mid-ag", "breakaway-mid", 4, ["MIS"], ""], +["breakaway-right-ag", "breakaway-right", 4, ["MIS"], ""], +["darkecocan-ag", "darkecocan", 4, ["MIS"], ""], +["ef-plane-ag", "ef-plane", 4, ["MIS"], ""], +["keg-ag", "keg", 4, ["MIS"], ""], +["keg-conveyor-ag", "keg-conveyor", 4, ["MIS"], ""], +["keg-conveyor-paddle-ag", "keg-conveyor-paddle", 4, ["MIS"], ""], +["mis-bone-bridge-ag", "mis-bone-bridge", 4, ["MIS"], ""], +["mis-bone-platform-ag", "mis-bone-platform", 4, ["MIS"], ""], +["mistycam-ag", "mistycam", 4, ["MIS"], ""], +["mistycannon-ag", "mistycannon", 4, ["MIS"], ""], +["muse-ag", "muse", 4, ["MIS"], ""], +["orb-cache-top-ag-MIS", "orb-cache-top", 4, ["MIS"], ""], +["orb-cache-top-ag-VI1", "orb-cache-top", 4, ["VI1"], ""], +["plat-eco-ag", "plat-eco", 4, ["MIS"], ""], +["quicksandlurker-ag", "quicksandlurker", 4, ["MIS"], ""], +["racer-ag", "racer", 4, ["MIS"], ""], +["ropebridge-36-ag", "ropebridge-36", 4, ["MIS"], ""], +["rounddoor-ag", "rounddoor", 4, ["MIS"], ""], +["sack-ag", "sack", 4, ["MIS"], ""], +["sharkey-ag-MIS", "sharkey", 4, ["MIS"], ""], +["sharkey-ag-VI1", "sharkey", 4, ["VI1"], ""], +["sidekick-human-ag", "sidekick-human", 4, ["MIS"], ""], +["silostep-ag", "silostep", 4, ["MIS"], ""], +["teetertotter-ag", "teetertotter", 4, ["MIS"], ""], +["water-anim-misty-ag", "water-anim-misty", 4, ["MIS"], ""], +["wheel-ag", "wheel", 4, ["MIS"], ""], +["windturbine-ag", "windturbine", 4, ["MIS"], ""], +["misty-vis", "misty-vis", 4, ["MIS"], ""], +["villagep-obs", "villagep-obs", 3, ["VI1"], ""], +["oracle", "oracle", 3, ["VI1"], ""], +["farmer", "farmer", 3, ["VI1"], ""], +["explorer", "explorer", 3, ["VI1"], ""], +["assistant", "assistant", 3, ["VI1"], ""], +["sage", "sage", 3, ["VI1"], ""], +["yakow", "yakow", 3, ["VI1"], ""], +["village-obs", "village-obs", 3, ["VI1"], ""], +["fishermans-boat", "fishermans-boat", 3, ["VI1"], ""], +["village1-part", "village1-part", 3, ["VI1"], ""], +["village1-part2", "village1-part2", 3, ["VI1"], ""], +["sequence-a-village1", "sequence-a-village1", 3, ["VI1"], ""], +["tpage-398", "tpage-398", 4, ["VI1"], ""], +["tpage-400", "tpage-400", 4, ["VI1"], ""], +["tpage-399", "tpage-399", 4, ["VI1"], ""], +["tpage-401", "tpage-401", 4, ["VI1"], ""], +["tpage-1470", "tpage-1470", 4, ["VI1"], ""], +["assistant-ag", "assistant", 4, ["VI1"], ""], +["evilplant-ag", "evilplant", 4, ["VI1"], ""], +["explorer-ag", "explorer", 4, ["VI1"], ""], +["farmer-ag", "farmer", 4, ["VI1"], ""], +["fishermans-boat-ag", "fishermans-boat", 4, ["VI1"], ""], +["hutlamp-ag", "hutlamp", 4, ["VI1"], ""], +["mayorgears-ag", "mayorgears", 4, ["VI1"], ""], +["medres-beach-ag", "medres-beach", 4, ["VI1"], ""], +["medres-beach1-ag", "medres-beach1", 4, ["VI1"], ""], +["medres-beach2-ag", "medres-beach2", 4, ["VI1"], ""], +["medres-beach3-ag", "medres-beach3", 4, ["VI1"], ""], +["medres-jungle-ag", "medres-jungle", 4, ["VI1"], ""], +["medres-jungle1-ag", "medres-jungle1", 4, ["VI1"], ""], +["medres-jungle2-ag", "medres-jungle2", 4, ["VI1"], ""], +["medres-misty-ag", "medres-misty", 4, ["VI1"], ""], +["medres-training-ag", "medres-training", 4, ["VI1"], ""], +["medres-village11-ag", "medres-village11", 4, ["VI1"], ""], +["medres-village12-ag", "medres-village12", 4, ["VI1"], ""], +["medres-village13-ag", "medres-village13", 4, ["VI1"], ""], +["oracle-ag", "oracle", 4, ["VI1"], ""], +["reflector-middle-ag", "reflector-middle", 4, ["VI1"], ""], +["revcycle-ag", "revcycle", 4, ["VI1"], ""], +["revcycleprop-ag", "revcycleprop", 4, ["VI1"], ""], +["ropebridge-32-ag", "ropebridge-32", 4, ["VI1"], ""], +["sage-ag", "sage", 4, ["VI1"], ""], +["sagesail-ag", "sagesail", 4, ["VI1"], ""], +["villa-starfish-ag", "villa-starfish", 4, ["VI1"], ""], +["village-cam-ag", "village-cam", 4, ["VI1"], ""], +["village1cam-ag", "village1cam", 4, ["VI1"], ""], +["warp-gate-switch-ag", "warp-gate-switch", 4, ["VI1"], ""], +["warpgate-ag", "warpgate", 4, ["VI1"], ""], +["water-anim-village1-ag", "water-anim-village1", 4, ["VI1"], ""], +["windmill-sail-ag", "windmill-sail", 4, ["VI1"], ""], +["windspinner-ag", "windspinner", 4, ["VI1"], ""], +["yakow-ag", "yakow", 4, ["VI1"], ""], +["village1-vis", "village1-vis", 4, ["VI1"], ""], +["0COMMON", "0COMMON", 2, ["NO-XGO"], ""], +["1COMMON", "1COMMON", 2, ["NO-XGO"], ""], +["2COMMON", "2COMMON", 2, ["NO-XGO"], ""], +["3COMMON", "3COMMON", 2, ["NO-XGO"], ""], +["4COMMON", "4COMMON", 2, ["NO-XGO"], ""], +["5COMMON", "5COMMON", 2, ["NO-XGO"], ""], +["6COMMON", "6COMMON", 2, ["NO-XGO"], ""], +["balloon-fuel-cell+0", "balloon-fuel-cell+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-4+0", "swamp-tetherrock-explode-4+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-3+0", "swamp-tetherrock-explode-3+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-2+0", "swamp-tetherrock-explode-2+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-1+0", "swamp-tetherrock-explode-1+0", 2, ["NO-XGO"], ""], +["snowcam-ram-boss-snow-ball-fuel-cell+0", "snowcam-ram-boss-snow-ball-fuel-cell+0", 2, ["NO-XGO"], ""], +["snowcam-ram-boss-ice-pond-fuel-cell+0", "snowcam-ram-boss-ice-pond-fuel-cell+0", 2, ["NO-XGO"], ""], +["snowcam-ram-boss-in-cave-fuel-cell+0", "snowcam-ram-boss-in-cave-fuel-cell+0", 2, ["NO-XGO"], ""], +["oracle-reminder-3+0", "oracle-reminder-3+0", 2, ["NO-XGO"], ""], +["oracle-reminder-3+1", "oracle-reminder-3+1", 2, ["NO-XGO"], ""], +["oracle-reminder-2+0", "oracle-reminder-2+0", 2, ["NO-XGO"], ""], +["oracle-reminder-2+1", "oracle-reminder-2+1", 2, ["NO-XGO"], ""], +["mistycam-cannon+0", "mistycam-cannon+0", 2, ["NO-XGO"], ""], +["beachcam-cannon+0", "beachcam-cannon+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-swamprockexplode-4+0", "swamp-tetherrock-swamprockexplode-4+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-swamprockexplode-3+0", "swamp-tetherrock-swamprockexplode-3+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-swamprockexplode-2+0", "swamp-tetherrock-swamprockexplode-2+0", 2, ["NO-XGO"], ""], +["swamprockexplode-4+0", "swamprockexplode-4+0", 2, ["NO-XGO"], ""], +["swamprockexplode-3+0", "swamprockexplode-3+0", 2, ["NO-XGO"], ""], +["swamprockexplode-2+0", "swamprockexplode-2+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-swamprockexplode-1+0", "swamp-tetherrock-swamprockexplode-1+0", 2, ["NO-XGO"], ""], +["oracle-right-eye+0", "oracle-right-eye+0", 2, ["NO-XGO"], ""], +["oracle-left-eye+0", "oracle-left-eye+0", 2, ["NO-XGO"], ""], +["swamprockexplode-1+0", "swamprockexplode-1+0", 2, ["NO-XGO"], ""], +["maincavecam-gnawer-fuel-cell+0", "maincavecam-gnawer-fuel-cell+0", 2, ["NO-XGO"], ""], +["gnawer-fuel-cell+0", "gnawer-fuel-cell+0", 2, ["NO-XGO"], ""], +["oracle-right-eye-3+0", "oracle-right-eye-3+0", 2, ["NO-XGO"], ""], +["oracle-right-eye-3+1", "oracle-right-eye-3+1", 2, ["NO-XGO"], ""], +["oracle-right-eye-2+0", "oracle-right-eye-2+0", 2, ["NO-XGO"], ""], +["oracle-right-eye-2+1", "oracle-right-eye-2+1", 2, ["NO-XGO"], ""], +["oracle-right-eye-1+0", "oracle-right-eye-1+0", 2, ["NO-XGO"], ""], +["oracle-right-eye-1+1", "oracle-right-eye-1+1", 2, ["NO-XGO"], ""], +["oracle-reminder-1+0", "oracle-reminder-1+0", 2, ["NO-XGO"], ""], +["oracle-reminder-1+1", "oracle-reminder-1+1", 2, ["NO-XGO"], ""], +["oracle-reminder-1+2", "oracle-reminder-1+2", 2, ["NO-XGO"], ""], +["oracle-reminder-1+3", "oracle-reminder-1+3", 2, ["NO-XGO"], ""], +["oracle-left-eye-3+0", "oracle-left-eye-3+0", 2, ["NO-XGO"], ""], +["oracle-left-eye-3+1", "oracle-left-eye-3+1", 2, ["NO-XGO"], ""], +["oracle-left-eye-2+0", "oracle-left-eye-2+0", 2, ["NO-XGO"], ""], +["oracle-left-eye-2+1", "oracle-left-eye-2+1", 2, ["NO-XGO"], ""], +["oracle-intro-3+0", "oracle-intro-3+0", 2, ["NO-XGO"], ""], +["oracle-intro-3+1", "oracle-intro-3+1", 2, ["NO-XGO"], ""], +["oracle-intro-3+2", "oracle-intro-3+2", 2, ["NO-XGO"], ""], +["oracle-intro-3+3", "oracle-intro-3+3", 2, ["NO-XGO"], ""], +["oracle-intro-2+0", "oracle-intro-2+0", 2, ["NO-XGO"], ""], +["oracle-intro-2+1", "oracle-intro-2+1", 2, ["NO-XGO"], ""], +["oracle-intro-2+2", "oracle-intro-2+2", 2, ["NO-XGO"], ""], +["oracle-intro-2+3", "oracle-intro-2+3", 2, ["NO-XGO"], ""], +["death-0202+0", "death-0202+0", 2, ["NO-XGO"], ""], +["race-ring-second-anim+0", "race-ring-second-anim+0", 2, ["NO-XGO"], ""], +["race-ring-second-anim+1", "race-ring-second-anim+1", 2, ["NO-XGO"], ""], +["race-ring-anim+0", "race-ring-anim+0", 2, ["NO-XGO"], ""], +["race-ring-anim+1", "race-ring-anim+1", 2, ["NO-XGO"], ""], +["eichar-fish+0", "eichar-fish+0", 2, ["NO-XGO"], ""], +["oracle-left-eye-1+0", "oracle-left-eye-1+0", 2, ["NO-XGO"], ""], +["oracle-left-eye-1+1", "oracle-left-eye-1+1", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-4+0", "swamp-tetherrock-explode-final-4+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-4+1", "swamp-tetherrock-explode-final-4+1", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-4+2", "swamp-tetherrock-explode-final-4+2", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-3+0", "swamp-tetherrock-explode-final-3+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-3+1", "swamp-tetherrock-explode-final-3+1", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-3+2", "swamp-tetherrock-explode-final-3+2", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-2+0", "swamp-tetherrock-explode-final-2+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-2+1", "swamp-tetherrock-explode-final-2+1", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-2+2", "swamp-tetherrock-explode-final-2+2", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-1+0", "swamp-tetherrock-explode-final-1+0", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-1+1", "swamp-tetherrock-explode-final-1+1", 2, ["NO-XGO"], ""], +["swamp-tetherrock-explode-final-1+2", "swamp-tetherrock-explode-final-1+2", 2, ["NO-XGO"], ""], +["oracle-intro-1+0", "oracle-intro-1+0", 2, ["NO-XGO"], ""], +["oracle-intro-1+1", "oracle-intro-1+1", 2, ["NO-XGO"], ""], +["oracle-intro-1+2", "oracle-intro-1+2", 2, ["NO-XGO"], ""], +["oracle-intro-1+3", "oracle-intro-1+3", 2, ["NO-XGO"], ""], +["oracle-intro-1+4", "oracle-intro-1+4", 2, ["NO-XGO"], ""], +["eichar-ice+0", "eichar-ice+0", 2, ["NO-XGO"], ""], +["eichar-ambient-3+0", "eichar-ambient-3+0", 2, ["NO-XGO"], ""], +["death-0191+0", "death-0191+0", 2, ["NO-XGO"], ""], +["death-0186+0", "death-0186+0", 2, ["NO-XGO"], ""], +["death-0187+0", "death-0187+0", 2, ["NO-XGO"], ""], +["eichar-ambient-4+0", "eichar-ambient-4+0", 2, ["NO-XGO"], ""], +["eichar-pole+0", "eichar-pole+0", 2, ["NO-XGO"], ""], +["race-ring-anim-second+0", "race-ring-anim-second+0", 2, ["NO-XGO"], ""], +["race-ring-anim-second+1", "race-ring-anim-second+1", 2, ["NO-XGO"], ""], +["race-ring-anim-2+0", "race-ring-anim-2+0", 2, ["NO-XGO"], ""], +["race-ring-anim-2+1", "race-ring-anim-2+1", 2, ["NO-XGO"], ""], +["death-0184+0", "death-0184+0", 2, ["NO-XGO"], ""], +["death-0181+0", "death-0181+0", 2, ["NO-XGO"], ""], +["pelican-spit-ext+0", "pelican-spit-ext+0", 2, ["NO-XGO"], ""], +["pelican-spit-ext+1", "pelican-spit-ext+1", 2, ["NO-XGO"], ""], +["death-0195+0", "death-0195+0", 2, ["NO-XGO"], ""], +["eichar-ambient-2+0", "eichar-ambient-2+0", 2, ["NO-XGO"], ""], +["fisher-reminder-1+0", "fisher-reminder-1+0", 2, ["NO-XGO"], ""], +["death-0182+0", "death-0182+0", 2, ["NO-XGO"], ""], +["billy-reminder-1+0", "billy-reminder-1+0", 2, ["NO-XGO"], ""], +["billy-reminder-1+1", "billy-reminder-1+1", 2, ["NO-XGO"], ""], +["happy-plant-open+0", "happy-plant-open+0", 2, ["NO-XGO"], ""], +["happy-plant-open+1", "happy-plant-open+1", 2, ["NO-XGO"], ""], +["eichar-tube+0", "eichar-tube+0", 2, ["NO-XGO"], ""], +["sculptor-reminder-1+0", "sculptor-reminder-1+0", 2, ["NO-XGO"], ""], +["sculptor-reminder-1+1", "sculptor-reminder-1+1", 2, ["NO-XGO"], ""], +["death-0197+0", "death-0197+0", 2, ["NO-XGO"], ""], +["death-0197+1", "death-0197+1", 2, ["NO-XGO"], ""], +["death-0193+0", "death-0193+0", 2, ["NO-XGO"], ""], +["death-0193+1", "death-0193+1", 2, ["NO-XGO"], ""], +["eichar-ambient-1+0", "eichar-ambient-1+0", 2, ["NO-XGO"], ""], +["farmer-reminder-2+0", "farmer-reminder-2+0", 2, ["NO-XGO"], ""], +["farmer-reminder-2+1", "farmer-reminder-2+1", 2, ["NO-XGO"], ""], +["farmer-reminder-1+0", "farmer-reminder-1+0", 2, ["NO-XGO"], ""], +["farmer-reminder-1+1", "farmer-reminder-1+1", 2, ["NO-XGO"], ""], +["death-0199+0", "death-0199+0", 2, ["NO-XGO"], ""], +["death-0199+1", "death-0199+1", 2, ["NO-XGO"], ""], +["geologist-reminder-money+0", "geologist-reminder-money+0", 2, ["NO-XGO"], ""], +["geologist-reminder-money+1", "geologist-reminder-money+1", 2, ["NO-XGO"], ""], +["billy-resolution+0", "billy-resolution+0", 2, ["NO-XGO"], ""], +["billy-resolution+1", "billy-resolution+1", 2, ["NO-XGO"], ""], +["gambler-reminder-money+0", "gambler-reminder-money+0", 2, ["NO-XGO"], ""], +["gambler-reminder-money+1", "gambler-reminder-money+1", 2, ["NO-XGO"], ""], +["big-adventure+0", "big-adventure+0", 2, ["NO-XGO"], ""], +["big-adventure+1", "big-adventure+1", 2, ["NO-XGO"], ""], +["big-adventure+2", "big-adventure+2", 2, ["NO-XGO"], ""], +["big-adventure+3", "big-adventure+3", 2, ["NO-XGO"], ""], +["big-adventure+4", "big-adventure+4", 2, ["NO-XGO"], ""], +["big-adventure+5", "big-adventure+5", 2, ["NO-XGO"], ""], +["big-adventure+6", "big-adventure+6", 2, ["NO-XGO"], ""], +["big-adventure+7", "big-adventure+7", 2, ["NO-XGO"], ""], +["fuel-cell-racer-victory-1+0", "fuel-cell-racer-victory-1+0", 2, ["NO-XGO"], ""], +["fuel-cell-racer-victory-1+1", "fuel-cell-racer-victory-1+1", 2, ["NO-XGO"], ""], +["billy-reject+0", "billy-reject+0", 2, ["NO-XGO"], ""], +["billy-reject+1", "billy-reject+1", 2, ["NO-XGO"], ""], +["billy-reject+2", "billy-reject+2", 2, ["NO-XGO"], ""], +["warrior-reminder-1+0", "warrior-reminder-1+0", 2, ["NO-XGO"], ""], +["warrior-reminder-1+1", "warrior-reminder-1+1", 2, ["NO-XGO"], ""], +["warrior-reminder-1+2", "warrior-reminder-1+2", 2, ["NO-XGO"], ""], +["billy-accept+0", "billy-accept+0", 2, ["NO-XGO"], ""], +["billy-accept+1", "billy-accept+1", 2, ["NO-XGO"], ""], +["billy-accept+2", "billy-accept+2", 2, ["NO-XGO"], ""], +["sage-village3-reminder-1-dark-eco+0", "sage-village3-reminder-1-dark-eco+0", 2, ["NO-XGO"], ""], +["sage-village3-reminder-1-dark-eco+1", "sage-village3-reminder-1-dark-eco+1", 2, ["NO-XGO"], ""], +["assistant-reminder-1-generic+0", "assistant-reminder-1-generic+0", 2, ["NO-XGO"], ""], +["assistant-reminder-1-generic+1", "assistant-reminder-1-generic+1", 2, ["NO-XGO"], ""], +["fisher-reject+0", "fisher-reject+0", 2, ["NO-XGO"], ""], +["fisher-reject+1", "fisher-reject+1", 2, ["NO-XGO"], ""], +["gambler-reminder-race+0", "gambler-reminder-race+0", 2, ["NO-XGO"], ""], +["gambler-reminder-race+1", "gambler-reminder-race+1", 2, ["NO-XGO"], ""], +["geologist-resolution-money+0", "geologist-resolution-money+0", 2, ["NO-XGO"], ""], +["geologist-resolution-money+1", "geologist-resolution-money+1", 2, ["NO-XGO"], ""], +["lrocklrg-falling+0", "lrocklrg-falling+0", 2, ["NO-XGO"], ""], +["lrocklrg-falling+1", "lrocklrg-falling+1", 2, ["NO-XGO"], ""], +["lrocklrg-falling+2", "lrocklrg-falling+2", 2, ["NO-XGO"], ""], +["lrocklrg-falling+3", "lrocklrg-falling+3", 2, ["NO-XGO"], ""], +["explorer-reminder-2+0", "explorer-reminder-2+0", 2, ["NO-XGO"], ""], +["explorer-reminder-2+1", "explorer-reminder-2+1", 2, ["NO-XGO"], ""], +["explorer-reminder-2+2", "explorer-reminder-2+2", 2, ["NO-XGO"], ""], +["geologist-reminder-moles+0", "geologist-reminder-moles+0", 2, ["NO-XGO"], ""], +["geologist-reminder-moles+1", "geologist-reminder-moles+1", 2, ["NO-XGO"], ""], +["geologist-reminder-moles+2", "geologist-reminder-moles+2", 2, ["NO-XGO"], ""], +["fuel-cell-victory+0", "fuel-cell-victory+0", 2, ["NO-XGO"], ""], +["fuel-cell-victory+1", "fuel-cell-victory+1", 2, ["NO-XGO"], ""], +["minershort-reminder-1-orbs+0", "minershort-reminder-1-orbs+0", 2, ["NO-XGO"], ""], +["minershort-reminder-1-orbs+1", "minershort-reminder-1-orbs+1", 2, ["NO-XGO"], ""], +["minershort-reminder-1-orbs+2", "minershort-reminder-1-orbs+2", 2, ["NO-XGO"], ""], +["sage-village3-reminder-1-rams+0", "sage-village3-reminder-1-rams+0", 2, ["NO-XGO"], ""], +["sage-village3-reminder-1-rams+1", "sage-village3-reminder-1-rams+1", 2, ["NO-XGO"], ""], +["sage-village3-reminder-1-rams+2", "sage-village3-reminder-1-rams+2", 2, ["NO-XGO"], ""], +["assistant-village2-reminder-1-flutflut+0", "assistant-village2-reminder-1-flutflut+0", 2, ["NO-XGO"], ""], +["assistant-village2-reminder-1-flutflut+1", "assistant-village2-reminder-1-flutflut+1", 2, ["NO-XGO"], ""], +["assistant-village2-reminder-1-flutflut+2", "assistant-village2-reminder-1-flutflut+2", 2, ["NO-XGO"], ""], +["fuel-cell-victory-2+0", "fuel-cell-victory-2+0", 2, ["NO-XGO"], ""], +["fuel-cell-victory-2+1", "fuel-cell-victory-2+1", 2, ["NO-XGO"], ""], +["minershort-reminder-1-gnawers+0", "minershort-reminder-1-gnawers+0", 2, ["NO-XGO"], ""], +["minershort-reminder-1-gnawers+1", "minershort-reminder-1-gnawers+1", 2, ["NO-XGO"], ""], +["minershort-reminder-1-gnawers+2", "minershort-reminder-1-gnawers+2", 2, ["NO-XGO"], ""], +["gambler-resolution-money+0", "gambler-resolution-money+0", 2, ["NO-XGO"], ""], +["gambler-resolution-money+1", "gambler-resolution-money+1", 2, ["NO-XGO"], ""], +["assistant-village3-reminder+0", "assistant-village3-reminder+0", 2, ["NO-XGO"], ""], +["assistant-village3-reminder+1", "assistant-village3-reminder+1", 2, ["NO-XGO"], ""], +["assistant-village3-reminder+2", "assistant-village3-reminder+2", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+0", "sidekick-human-intro-sequence-a+0", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+1", "sidekick-human-intro-sequence-a+1", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+2", "sidekick-human-intro-sequence-a+2", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+3", "sidekick-human-intro-sequence-a+3", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+4", "sidekick-human-intro-sequence-a+4", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+5", "sidekick-human-intro-sequence-a+5", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+6", "sidekick-human-intro-sequence-a+6", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+7", "sidekick-human-intro-sequence-a+7", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+8", "sidekick-human-intro-sequence-a+8", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+9", "sidekick-human-intro-sequence-a+9", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+10", "sidekick-human-intro-sequence-a+10", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+11", "sidekick-human-intro-sequence-a+11", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+12", "sidekick-human-intro-sequence-a+12", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+13", "sidekick-human-intro-sequence-a+13", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+14", "sidekick-human-intro-sequence-a+14", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+15", "sidekick-human-intro-sequence-a+15", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+16", "sidekick-human-intro-sequence-a+16", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+17", "sidekick-human-intro-sequence-a+17", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+18", "sidekick-human-intro-sequence-a+18", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+19", "sidekick-human-intro-sequence-a+19", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+20", "sidekick-human-intro-sequence-a+20", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-a+21", "sidekick-human-intro-sequence-a+21", 2, ["NO-XGO"], ""], +["fisher-accept+0", "fisher-accept+0", 2, ["NO-XGO"], ""], +["fisher-accept+1", "fisher-accept+1", 2, ["NO-XGO"], ""], +["fisher-accept+2", "fisher-accept+2", 2, ["NO-XGO"], ""], +["fisher-accept+3", "fisher-accept+3", 2, ["NO-XGO"], ""], +["fisher-accept+4", "fisher-accept+4", 2, ["NO-XGO"], ""], +["fisher-accept+5", "fisher-accept+5", 2, ["NO-XGO"], ""], +["finalbosscam-white-eco+0", "finalbosscam-white-eco+0", 2, ["NO-XGO"], ""], +["finalbosscam-white-eco+1", "finalbosscam-white-eco+1", 2, ["NO-XGO"], ""], +["finalbosscam-white-eco+2", "finalbosscam-white-eco+2", 2, ["NO-XGO"], ""], +["farmer-resolution+0", "farmer-resolution+0", 2, ["NO-XGO"], ""], +["farmer-resolution+1", "farmer-resolution+1", 2, ["NO-XGO"], ""], +["farmer-resolution+2", "farmer-resolution+2", 2, ["NO-XGO"], ""], +["farmer-resolution+3", "farmer-resolution+3", 2, ["NO-XGO"], ""], +["assistant-reminder-1-race-bike+0", "assistant-reminder-1-race-bike+0", 2, ["NO-XGO"], ""], +["assistant-reminder-1-race-bike+1", "assistant-reminder-1-race-bike+1", 2, ["NO-XGO"], ""], +["assistant-reminder-1-race-bike+2", "assistant-reminder-1-race-bike+2", 2, ["NO-XGO"], ""], +["mayor-reminder-donation+0", "mayor-reminder-donation+0", 2, ["NO-XGO"], ""], +["mayor-reminder-donation+1", "mayor-reminder-donation+1", 2, ["NO-XGO"], ""], +["mayor-reminder-donation+2", "mayor-reminder-donation+2", 2, ["NO-XGO"], ""], +["gambler-resolution-race+0", "gambler-resolution-race+0", 2, ["NO-XGO"], ""], +["gambler-resolution-race+1", "gambler-resolution-race+1", 2, ["NO-XGO"], ""], +["gambler-resolution-race+2", "gambler-resolution-race+2", 2, ["NO-XGO"], ""], +["fuel-cell-flut-victory-1+0", "fuel-cell-flut-victory-1+0", 2, ["NO-XGO"], ""], +["fuel-cell-flut-victory-1+1", "fuel-cell-flut-victory-1+1", 2, ["NO-XGO"], ""], +["fuel-cell-victory-5+0", "fuel-cell-victory-5+0", 2, ["NO-XGO"], ""], +["fuel-cell-victory-5+1", "fuel-cell-victory-5+1", 2, ["NO-XGO"], ""], +["sage-bluehut-reminder-1-crop-dusting+0", "sage-bluehut-reminder-1-crop-dusting+0", 2, ["NO-XGO"], ""], +["sage-bluehut-reminder-1-crop-dusting+1", "sage-bluehut-reminder-1-crop-dusting+1", 2, ["NO-XGO"], ""], +["sage-bluehut-reminder-1-crop-dusting+2", "sage-bluehut-reminder-1-crop-dusting+2", 2, ["NO-XGO"], ""], +["flying-lurker-intro+0", "flying-lurker-intro+0", 2, ["NO-XGO"], ""], +["flying-lurker-intro+1", "flying-lurker-intro+1", 2, ["NO-XGO"], ""], +["sage-reminder-1-ecorocks+0", "sage-reminder-1-ecorocks+0", 2, ["NO-XGO"], ""], +["sage-reminder-1-ecorocks+1", "sage-reminder-1-ecorocks+1", 2, ["NO-XGO"], ""], +["sage-reminder-1-ecorocks+2", "sage-reminder-1-ecorocks+2", 2, ["NO-XGO"], ""], +["sage-reminder-1-ecorocks+3", "sage-reminder-1-ecorocks+3", 2, ["NO-XGO"], ""], +["assistant-village2-reminder-1-robbers+0", "assistant-village2-reminder-1-robbers+0", 2, ["NO-XGO"], ""], +["assistant-village2-reminder-1-robbers+1", "assistant-village2-reminder-1-robbers+1", 2, ["NO-XGO"], ""], +["assistant-village2-reminder-1-robbers+2", "assistant-village2-reminder-1-robbers+2", 2, ["NO-XGO"], ""], +["minershort-reminder-2-orbs+0", "minershort-reminder-2-orbs+0", 2, ["NO-XGO"], ""], +["minershort-reminder-2-orbs+1", "minershort-reminder-2-orbs+1", 2, ["NO-XGO"], ""], +["mayor-reminder-beams+0", "mayor-reminder-beams+0", 2, ["NO-XGO"], ""], +["mayor-reminder-beams+1", "mayor-reminder-beams+1", 2, ["NO-XGO"], ""], +["mayor-reminder-beams+2", "mayor-reminder-beams+2", 2, ["NO-XGO"], ""], +["logo-intro-2+0", "logo-intro-2+0", 2, ["NO-XGO"], ""], +["logo-intro-2+1", "logo-intro-2+1", 2, ["NO-XGO"], ""], +["logo-intro-2+2", "logo-intro-2+2", 2, ["NO-XGO"], ""], +["logo-intro-2+3", "logo-intro-2+3", 2, ["NO-XGO"], ""], +["logo-intro-2+4", "logo-intro-2+4", 2, ["NO-XGO"], ""], +["logo-intro-2+5", "logo-intro-2+5", 2, ["NO-XGO"], ""], +["logo-intro-2+6", "logo-intro-2+6", 2, ["NO-XGO"], ""], +["logo-intro-2+7", "logo-intro-2+7", 2, ["NO-XGO"], ""], +["logo-intro-2+8", "logo-intro-2+8", 2, ["NO-XGO"], ""], +["logo-intro-2+9", "logo-intro-2+9", 2, ["NO-XGO"], ""], +["logo-intro-2+10", "logo-intro-2+10", 2, ["NO-XGO"], ""], +["logo-intro-2+11", "logo-intro-2+11", 2, ["NO-XGO"], ""], +["logo-intro-2+12", "logo-intro-2+12", 2, ["NO-XGO"], ""], +["logo-intro-2+13", "logo-intro-2+13", 2, ["NO-XGO"], ""], +["logo-intro-2+14", "logo-intro-2+14", 2, ["NO-XGO"], ""], +["sage-reminder-1-generic+0", "sage-reminder-1-generic+0", 2, ["NO-XGO"], ""], +["sage-reminder-1-generic+1", "sage-reminder-1-generic+1", 2, ["NO-XGO"], ""], +["sage-reminder-1-generic+2", "sage-reminder-1-generic+2", 2, ["NO-XGO"], ""], +["bird-lady-reminder-1+0", "bird-lady-reminder-1+0", 2, ["NO-XGO"], ""], +["bird-lady-reminder-1+1", "bird-lady-reminder-1+1", 2, ["NO-XGO"], ""], +["bird-lady-reminder-1+2", "bird-lady-reminder-1+2", 2, ["NO-XGO"], ""], +["bird-lady-reminder-1+3", "bird-lady-reminder-1+3", 2, ["NO-XGO"], ""], +["assistant-village2-reminder-1-room+0", "assistant-village2-reminder-1-room+0", 2, ["NO-XGO"], ""], +["assistant-village2-reminder-1-room+1", "assistant-village2-reminder-1-room+1", 2, ["NO-XGO"], ""], +["assistant-village2-reminder-1-room+2", "assistant-village2-reminder-1-room+2", 2, ["NO-XGO"], ""], +["assistant-reminder-1-blue-eco-switch+0", "assistant-reminder-1-blue-eco-switch+0", 2, ["NO-XGO"], ""], +["assistant-reminder-1-blue-eco-switch+1", "assistant-reminder-1-blue-eco-switch+1", 2, ["NO-XGO"], ""], +["assistant-reminder-1-blue-eco-switch+2", "assistant-reminder-1-blue-eco-switch+2", 2, ["NO-XGO"], ""], +["logo-loop+0", "logo-loop+0", 2, ["NO-XGO"], ""], +["logo-loop+1", "logo-loop+1", 2, ["NO-XGO"], ""], +["logo-loop+2", "logo-loop+2", 2, ["NO-XGO"], ""], +["logo-loop+3", "logo-loop+3", 2, ["NO-XGO"], ""], +["logo-loop+4", "logo-loop+4", 2, ["NO-XGO"], ""], +["logo-loop+5", "logo-loop+5", 2, ["NO-XGO"], ""], +["logo-loop+6", "logo-loop+6", 2, ["NO-XGO"], ""], +["logo-loop+7", "logo-loop+7", 2, ["NO-XGO"], ""], +["logo-loop+8", "logo-loop+8", 2, ["NO-XGO"], ""], +["logo-loop+9", "logo-loop+9", 2, ["NO-XGO"], ""], +["logo-loop+10", "logo-loop+10", 2, ["NO-XGO"], ""], +["logo-loop+11", "logo-loop+11", 2, ["NO-XGO"], ""], +["logo-loop+12", "logo-loop+12", 2, ["NO-XGO"], ""], +["logo-loop+13", "logo-loop+13", 2, ["NO-XGO"], ""], +["logo-loop+14", "logo-loop+14", 2, ["NO-XGO"], ""], +["logo-loop+15", "logo-loop+15", 2, ["NO-XGO"], ""], +["logo-loop+16", "logo-loop+16", 2, ["NO-XGO"], ""], +["farmer-introduction+0", "farmer-introduction+0", 2, ["NO-XGO"], ""], +["farmer-introduction+1", "farmer-introduction+1", 2, ["NO-XGO"], ""], +["farmer-introduction+2", "farmer-introduction+2", 2, ["NO-XGO"], ""], +["farmer-introduction+3", "farmer-introduction+3", 2, ["NO-XGO"], ""], +["farmer-introduction+4", "farmer-introduction+4", 2, ["NO-XGO"], ""], +["geologist-resolution-moles+0", "geologist-resolution-moles+0", 2, ["NO-XGO"], ""], +["geologist-resolution-moles+1", "geologist-resolution-moles+1", 2, ["NO-XGO"], ""], +["geologist-resolution-moles+2", "geologist-resolution-moles+2", 2, ["NO-XGO"], ""], +["v1-in+0", "v1-in+0", 2, ["NO-XGO"], ""], +["v1-in+1", "v1-in+1", 2, ["NO-XGO"], ""], +["fuel-cell-victory-4+0", "fuel-cell-victory-4+0", 2, ["NO-XGO"], ""], +["fuel-cell-victory-4+1", "fuel-cell-victory-4+1", 2, ["NO-XGO"], ""], +["sage-introduction-ecorocks+0", "sage-introduction-ecorocks+0", 2, ["NO-XGO"], ""], +["sage-introduction-ecorocks+1", "sage-introduction-ecorocks+1", 2, ["NO-XGO"], ""], +["sage-introduction-ecorocks+2", "sage-introduction-ecorocks+2", 2, ["NO-XGO"], ""], +["sage-introduction-ecorocks+3", "sage-introduction-ecorocks+3", 2, ["NO-XGO"], ""], +["sage-introduction-ecorocks+4", "sage-introduction-ecorocks+4", 2, ["NO-XGO"], ""], +["sage-introduction-ecorocks+5", "sage-introduction-ecorocks+5", 2, ["NO-XGO"], ""], +["sage-introduction-ecorocks+6", "sage-introduction-ecorocks+6", 2, ["NO-XGO"], ""], +["sage-introduction-ecorocks+7", "sage-introduction-ecorocks+7", 2, ["NO-XGO"], ""], +["minershort-reminder-1-switch+0", "minershort-reminder-1-switch+0", 2, ["NO-XGO"], ""], +["minershort-reminder-1-switch+1", "minershort-reminder-1-switch+1", 2, ["NO-XGO"], ""], +["minershort-reminder-1-switch+2", "minershort-reminder-1-switch+2", 2, ["NO-XGO"], ""], +["minershort-reminder-1-switch+3", "minershort-reminder-1-switch+3", 2, ["NO-XGO"], ""], +["minershort-reminder-1-switch+4", "minershort-reminder-1-switch+4", 2, ["NO-XGO"], ""], +["logo-intro+0", "logo-intro+0", 2, ["NO-XGO"], ""], +["logo-intro+1", "logo-intro+1", 2, ["NO-XGO"], ""], +["logo-intro+2", "logo-intro+2", 2, ["NO-XGO"], ""], +["sage-reminder-2-generic+0", "sage-reminder-2-generic+0", 2, ["NO-XGO"], ""], +["sage-reminder-2-generic+1", "sage-reminder-2-generic+1", 2, ["NO-XGO"], ""], +["sage-reminder-2-generic+2", "sage-reminder-2-generic+2", 2, ["NO-XGO"], ""], +["sage-reminder-2-generic+3", "sage-reminder-2-generic+3", 2, ["NO-XGO"], ""], +["muse-victory+0", "muse-victory+0", 2, ["NO-XGO"], ""], +["muse-victory+1", "muse-victory+1", 2, ["NO-XGO"], ""], +["sage-reminder-1-misty-cannon+0", "sage-reminder-1-misty-cannon+0", 2, ["NO-XGO"], ""], +["sage-reminder-1-misty-cannon+1", "sage-reminder-1-misty-cannon+1", 2, ["NO-XGO"], ""], +["sage-reminder-1-misty-cannon+2", "sage-reminder-1-misty-cannon+2", 2, ["NO-XGO"], ""], +["sage-reminder-1-misty-cannon+3", "sage-reminder-1-misty-cannon+3", 2, ["NO-XGO"], ""], +["sage-reminder-1-misty-cannon+4", "sage-reminder-1-misty-cannon+4", 2, ["NO-XGO"], ""], +["fuel-cell-victory-7+0", "fuel-cell-victory-7+0", 2, ["NO-XGO"], ""], +["fuel-cell-victory-7+1", "fuel-cell-victory-7+1", 2, ["NO-XGO"], ""], +["minershort-resolution-1-orbs+0", "minershort-resolution-1-orbs+0", 2, ["NO-XGO"], ""], +["minershort-resolution-1-orbs+1", "minershort-resolution-1-orbs+1", 2, ["NO-XGO"], ""], +["fuel-cell-victory-8+0", "fuel-cell-victory-8+0", 2, ["NO-XGO"], ""], +["fuel-cell-victory-8+1", "fuel-cell-victory-8+1", 2, ["NO-XGO"], ""], +["bird-lady-reminder-2+0", "bird-lady-reminder-2+0", 2, ["NO-XGO"], ""], +["bird-lady-reminder-2+1", "bird-lady-reminder-2+1", 2, ["NO-XGO"], ""], +["bird-lady-reminder-2+2", "bird-lady-reminder-2+2", 2, ["NO-XGO"], ""], +["bird-lady-reminder-2+3", "bird-lady-reminder-2+3", 2, ["NO-XGO"], ""], +["bird-lady-reminder-2+4", "bird-lady-reminder-2+4", 2, ["NO-XGO"], ""], +["fuel-cell-victory-6+0", "fuel-cell-victory-6+0", 2, ["NO-XGO"], ""], +["fuel-cell-victory-6+1", "fuel-cell-victory-6+1", 2, ["NO-XGO"], ""], +["fuel-cell-victory-3+0", "fuel-cell-victory-3+0", 2, ["NO-XGO"], ""], +["fuel-cell-victory-3+1", "fuel-cell-victory-3+1", 2, ["NO-XGO"], ""], +["plunger-lurker-blowup+0", "plunger-lurker-blowup+0", 2, ["NO-XGO"], ""], +["plunger-lurker-blowup+1", "plunger-lurker-blowup+1", 2, ["NO-XGO"], ""], +["plunger-lurker-blowup+2", "plunger-lurker-blowup+2", 2, ["NO-XGO"], ""], +["plunger-lurker-blowup+3", "plunger-lurker-blowup+3", 2, ["NO-XGO"], ""], +["plant-boss-main+0", "plant-boss-main+0", 2, ["NO-XGO"], ""], +["warrior-resolution+0", "warrior-resolution+0", 2, ["NO-XGO"], ""], +["warrior-resolution+1", "warrior-resolution+1", 2, ["NO-XGO"], ""], +["warrior-resolution+2", "warrior-resolution+2", 2, ["NO-XGO"], ""], +["warrior-resolution+3", "warrior-resolution+3", 2, ["NO-XGO"], ""], +["warrior-resolution+4", "warrior-resolution+4", 2, ["NO-XGO"], ""], +["warrior-resolution+5", "warrior-resolution+5", 2, ["NO-XGO"], ""], +["eichar-racer+0", "eichar-racer+0", 2, ["NO-XGO"], ""], +["mayor-resolution-donation+0", "mayor-resolution-donation+0", 2, ["NO-XGO"], ""], +["mayor-resolution-donation+1", "mayor-resolution-donation+1", 2, ["NO-XGO"], ""], +["mayor-resolution-donation+2", "mayor-resolution-donation+2", 2, ["NO-XGO"], ""], +["mayor-resolution-donation+3", "mayor-resolution-donation+3", 2, ["NO-XGO"], ""], +["mayor-resolution-donation+4", "mayor-resolution-donation+4", 2, ["NO-XGO"], ""], +["mayor-resolution-beams+0", "mayor-resolution-beams+0", 2, ["NO-XGO"], ""], +["mayor-resolution-beams+1", "mayor-resolution-beams+1", 2, ["NO-XGO"], ""], +["mayor-resolution-beams+2", "mayor-resolution-beams+2", 2, ["NO-XGO"], ""], +["mayor-resolution-beams+3", "mayor-resolution-beams+3", 2, ["NO-XGO"], ""], +["mayor-resolution-beams+4", "mayor-resolution-beams+4", 2, ["NO-XGO"], ""], +["mayor-resolution-beams+5", "mayor-resolution-beams+5", 2, ["NO-XGO"], ""], +["minershort-introduction-switch+0", "minershort-introduction-switch+0", 2, ["NO-XGO"], ""], +["minershort-introduction-switch+1", "minershort-introduction-switch+1", 2, ["NO-XGO"], ""], +["minershort-introduction-switch+2", "minershort-introduction-switch+2", 2, ["NO-XGO"], ""], +["minershort-introduction-switch+3", "minershort-introduction-switch+3", 2, ["NO-XGO"], ""], +["minershort-introduction-switch+4", "minershort-introduction-switch+4", 2, ["NO-XGO"], ""], +["minershort-introduction-switch+5", "minershort-introduction-switch+5", 2, ["NO-XGO"], ""], +["minershort-introduction-switch+6", "minershort-introduction-switch+6", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1+0", "fishermans-boat-ride-to-village1+0", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1+1", "fishermans-boat-ride-to-village1+1", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1+2", "fishermans-boat-ride-to-village1+2", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-misty+0", "fishermans-boat-ride-to-misty+0", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-misty+1", "fishermans-boat-ride-to-misty+1", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-misty+2", "fishermans-boat-ride-to-misty+2", 2, ["NO-XGO"], ""], +["sage-bluehut-reminder-1-prec-arm+0", "sage-bluehut-reminder-1-prec-arm+0", 2, ["NO-XGO"], ""], +["sage-bluehut-reminder-1-prec-arm+1", "sage-bluehut-reminder-1-prec-arm+1", 2, ["NO-XGO"], ""], +["sage-bluehut-reminder-1-prec-arm+2", "sage-bluehut-reminder-1-prec-arm+2", 2, ["NO-XGO"], ""], +["sage-bluehut-reminder-1-prec-arm+3", "sage-bluehut-reminder-1-prec-arm+3", 2, ["NO-XGO"], ""], +["ndi-intro+0", "ndi-intro+0", 2, ["NO-XGO"], ""], +["ndi-intro+1", "ndi-intro+1", 2, ["NO-XGO"], ""], +["ndi-intro+2", "ndi-intro+2", 2, ["NO-XGO"], ""], +["ndi-intro+3", "ndi-intro+3", 2, ["NO-XGO"], ""], +["gondola-ride-down+0", "gondola-ride-down+0", 2, ["NO-XGO"], ""], +["gondola-ride-down+1", "gondola-ride-down+1", 2, ["NO-XGO"], ""], +["gondola-ride-down+2", "gondola-ride-down+2", 2, ["NO-XGO"], ""], +["gondola-ride-up+0", "gondola-ride-up+0", 2, ["NO-XGO"], ""], +["gondola-ride-up+1", "gondola-ride-up+1", 2, ["NO-XGO"], ""], +["gondola-ride-up+2", "gondola-ride-up+2", 2, ["NO-XGO"], ""], +["sage-village3-introduction-rams+0", "sage-village3-introduction-rams+0", 2, ["NO-XGO"], ""], +["sage-village3-introduction-rams+1", "sage-village3-introduction-rams+1", 2, ["NO-XGO"], ""], +["sage-village3-introduction-rams+2", "sage-village3-introduction-rams+2", 2, ["NO-XGO"], ""], +["sage-village3-introduction-rams+3", "sage-village3-introduction-rams+3", 2, ["NO-XGO"], ""], +["sage-village3-introduction-rams+4", "sage-village3-introduction-rams+4", 2, ["NO-XGO"], ""], +["sage-village3-introduction-rams+5", "sage-village3-introduction-rams+5", 2, ["NO-XGO"], ""], +["yellowsage-resolution+0", "yellowsage-resolution+0", 2, ["NO-XGO"], ""], +["yellowsage-resolution+1", "yellowsage-resolution+1", 2, ["NO-XGO"], ""], +["yellowsage-resolution+2", "yellowsage-resolution+2", 2, ["NO-XGO"], ""], +["yellowsage-resolution+3", "yellowsage-resolution+3", 2, ["NO-XGO"], ""], +["yellowsage-resolution+4", "yellowsage-resolution+4", 2, ["NO-XGO"], ""], +["yellowsage-resolution+5", "yellowsage-resolution+5", 2, ["NO-XGO"], ""], +["eichar-flut+0", "eichar-flut+0", 2, ["NO-XGO"], ""], +["green-sagecage-daxter-sacrifice+0", "green-sagecage-daxter-sacrifice+0", 2, ["NO-XGO"], ""], +["green-sagecage-daxter-sacrifice+1", "green-sagecage-daxter-sacrifice+1", 2, ["NO-XGO"], ""], +["green-sagecage-daxter-sacrifice+2", "green-sagecage-daxter-sacrifice+2", 2, ["NO-XGO"], ""], +["green-sagecage-daxter-sacrifice+3", "green-sagecage-daxter-sacrifice+3", 2, ["NO-XGO"], ""], +["green-sagecage-daxter-sacrifice+4", "green-sagecage-daxter-sacrifice+4", 2, ["NO-XGO"], ""], +["green-sagecage-daxter-sacrifice+5", "green-sagecage-daxter-sacrifice+5", 2, ["NO-XGO"], ""], +["explorer-reminder-1+0", "explorer-reminder-1+0", 2, ["NO-XGO"], ""], +["explorer-reminder-1+1", "explorer-reminder-1+1", 2, ["NO-XGO"], ""], +["explorer-reminder-1+2", "explorer-reminder-1+2", 2, ["NO-XGO"], ""], +["explorer-reminder-1+3", "explorer-reminder-1+3", 2, ["NO-XGO"], ""], +["explorer-reminder-1+4", "explorer-reminder-1+4", 2, ["NO-XGO"], ""], +["sculptor-resolution+0", "sculptor-resolution+0", 2, ["NO-XGO"], ""], +["sculptor-resolution+1", "sculptor-resolution+1", 2, ["NO-XGO"], ""], +["sculptor-resolution+2", "sculptor-resolution+2", 2, ["NO-XGO"], ""], +["sculptor-resolution+3", "sculptor-resolution+3", 2, ["NO-XGO"], ""], +["fisher-resolution+0", "fisher-resolution+0", 2, ["NO-XGO"], ""], +["fisher-resolution+1", "fisher-resolution+1", 2, ["NO-XGO"], ""], +["fisher-resolution+2", "fisher-resolution+2", 2, ["NO-XGO"], ""], +["fisher-resolution+3", "fisher-resolution+3", 2, ["NO-XGO"], ""], +["sidekick-human-intro-test+0", "sidekick-human-intro-test+0", 2, ["NO-XGO"], ""], +["sidekick-human-intro-test+1", "sidekick-human-intro-test+1", 2, ["NO-XGO"], ""], +["sidekick-human-intro-test+2", "sidekick-human-intro-test+2", 2, ["NO-XGO"], ""], +["sidekick-human-intro-test+3", "sidekick-human-intro-test+3", 2, ["NO-XGO"], ""], +["sidekick-human-intro-test+4", "sidekick-human-intro-test+4", 2, ["NO-XGO"], ""], +["sidekick-human-intro-test+5", "sidekick-human-intro-test+5", 2, ["NO-XGO"], ""], +["gambler-introduction-1+0", "gambler-introduction-1+0", 2, ["NO-XGO"], ""], +["gambler-introduction-1+1", "gambler-introduction-1+1", 2, ["NO-XGO"], ""], +["gambler-introduction-1+2", "gambler-introduction-1+2", 2, ["NO-XGO"], ""], +["gambler-introduction-1+3", "gambler-introduction-1+3", 2, ["NO-XGO"], ""], +["gambler-introduction-1+4", "gambler-introduction-1+4", 2, ["NO-XGO"], ""], +["gambler-introduction-1+5", "gambler-introduction-1+5", 2, ["NO-XGO"], ""], +["gambler-introduction-1+6", "gambler-introduction-1+6", 2, ["NO-XGO"], ""], +["gambler-introduction-1+7", "gambler-introduction-1+7", 2, ["NO-XGO"], ""], +["gambler-introduction-1+8", "gambler-introduction-1+8", 2, ["NO-XGO"], ""], +["explorer-resolution+0", "explorer-resolution+0", 2, ["NO-XGO"], ""], +["explorer-resolution+1", "explorer-resolution+1", 2, ["NO-XGO"], ""], +["explorer-resolution+2", "explorer-resolution+2", 2, ["NO-XGO"], ""], +["explorer-resolution+3", "explorer-resolution+3", 2, ["NO-XGO"], ""], +["explorer-resolution+4", "explorer-resolution+4", 2, ["NO-XGO"], ""], +["minershort-resolution-2-orbs+0", "minershort-resolution-2-orbs+0", 2, ["NO-XGO"], ""], +["minershort-resolution-2-orbs+1", "minershort-resolution-2-orbs+1", 2, ["NO-XGO"], ""], +["minershort-resolution-2-orbs+2", "minershort-resolution-2-orbs+2", 2, ["NO-XGO"], ""], +["minershort-resolution-2-orbs+3", "minershort-resolution-2-orbs+3", 2, ["NO-XGO"], ""], +["minershort-resolution-2-orbs+4", "minershort-resolution-2-orbs+4", 2, ["NO-XGO"], ""], +["minershort-resolution-2-orbs+5", "minershort-resolution-2-orbs+5", 2, ["NO-XGO"], ""], +["assistant-introduction-race-bike+0", "assistant-introduction-race-bike+0", 2, ["NO-XGO"], ""], +["assistant-introduction-race-bike+1", "assistant-introduction-race-bike+1", 2, ["NO-XGO"], ""], +["assistant-introduction-race-bike+2", "assistant-introduction-race-bike+2", 2, ["NO-XGO"], ""], +["assistant-introduction-race-bike+3", "assistant-introduction-race-bike+3", 2, ["NO-XGO"], ""], +["assistant-introduction-race-bike+4", "assistant-introduction-race-bike+4", 2, ["NO-XGO"], ""], +["assistant-introduction-race-bike+5", "assistant-introduction-race-bike+5", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-enough-cells+0", "green-sagecage-outro-beat-boss-enough-cells+0", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-enough-cells+1", "green-sagecage-outro-beat-boss-enough-cells+1", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-enough-cells+2", "green-sagecage-outro-beat-boss-enough-cells+2", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-enough-cells+3", "green-sagecage-outro-beat-boss-enough-cells+3", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-enough-cells+4", "green-sagecage-outro-beat-boss-enough-cells+4", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-enough-cells+5", "green-sagecage-outro-beat-boss-enough-cells+5", 2, ["NO-XGO"], ""], +["billy-introduction+0", "billy-introduction+0", 2, ["NO-XGO"], ""], +["billy-introduction+1", "billy-introduction+1", 2, ["NO-XGO"], ""], +["billy-introduction+2", "billy-introduction+2", 2, ["NO-XGO"], ""], +["billy-introduction+3", "billy-introduction+3", 2, ["NO-XGO"], ""], +["billy-introduction+4", "billy-introduction+4", 2, ["NO-XGO"], ""], +["billy-introduction+5", "billy-introduction+5", 2, ["NO-XGO"], ""], +["billy-introduction+6", "billy-introduction+6", 2, ["NO-XGO"], ""], +["billy-introduction+7", "billy-introduction+7", 2, ["NO-XGO"], ""], +["billy-introduction+8", "billy-introduction+8", 2, ["NO-XGO"], ""], +["billy-introduction+9", "billy-introduction+9", 2, ["NO-XGO"], ""], +["billy-introduction+10", "billy-introduction+10", 2, ["NO-XGO"], ""], +["billy-introduction+11", "billy-introduction+11", 2, ["NO-XGO"], ""], +["billy-introduction+12", "billy-introduction+12", 2, ["NO-XGO"], ""], +["billy-introduction+13", "billy-introduction+13", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-need-cells+0", "green-sagecage-outro-beat-boss-need-cells+0", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-need-cells+1", "green-sagecage-outro-beat-boss-need-cells+1", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-need-cells+2", "green-sagecage-outro-beat-boss-need-cells+2", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-need-cells+3", "green-sagecage-outro-beat-boss-need-cells+3", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-need-cells+4", "green-sagecage-outro-beat-boss-need-cells+4", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-need-cells+5", "green-sagecage-outro-beat-boss-need-cells+5", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-need-cells+6", "green-sagecage-outro-beat-boss-need-cells+6", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-need-cells+7", "green-sagecage-outro-beat-boss-need-cells+7", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-robbers+0", "assistant-village2-introduction-robbers+0", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-robbers+1", "assistant-village2-introduction-robbers+1", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-robbers+2", "assistant-village2-introduction-robbers+2", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-robbers+3", "assistant-village2-introduction-robbers+3", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-robbers+4", "assistant-village2-introduction-robbers+4", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-robbers+5", "assistant-village2-introduction-robbers+5", 2, ["NO-XGO"], ""], +["green-sagecage-outro-big-finish+0", "green-sagecage-outro-big-finish+0", 2, ["NO-XGO"], ""], +["green-sagecage-outro-big-finish+1", "green-sagecage-outro-big-finish+1", 2, ["NO-XGO"], ""], +["green-sagecage-outro-big-finish+2", "green-sagecage-outro-big-finish+2", 2, ["NO-XGO"], ""], +["green-sagecage-outro-big-finish+3", "green-sagecage-outro-big-finish+3", 2, ["NO-XGO"], ""], +["green-sagecage-outro-big-finish+4", "green-sagecage-outro-big-finish+4", 2, ["NO-XGO"], ""], +["green-sagecage-outro-big-finish+5", "green-sagecage-outro-big-finish+5", 2, ["NO-XGO"], ""], +["green-sagecage-outro-big-finish+6", "green-sagecage-outro-big-finish+6", 2, ["NO-XGO"], ""], +["redsage-resolution+0", "redsage-resolution+0", 2, ["NO-XGO"], ""], +["redsage-resolution+1", "redsage-resolution+1", 2, ["NO-XGO"], ""], +["redsage-resolution+2", "redsage-resolution+2", 2, ["NO-XGO"], ""], +["redsage-resolution+3", "redsage-resolution+3", 2, ["NO-XGO"], ""], +["redsage-resolution+4", "redsage-resolution+4", 2, ["NO-XGO"], ""], +["redsage-resolution+5", "redsage-resolution+5", 2, ["NO-XGO"], ""], +["redsage-resolution+6", "redsage-resolution+6", 2, ["NO-XGO"], ""], +["redsage-resolution+7", "redsage-resolution+7", 2, ["NO-XGO"], ""], +["redsage-resolution+8", "redsage-resolution+8", 2, ["NO-XGO"], ""], +["bluesage-resolution+0", "bluesage-resolution+0", 2, ["NO-XGO"], ""], +["bluesage-resolution+1", "bluesage-resolution+1", 2, ["NO-XGO"], ""], +["bluesage-resolution+2", "bluesage-resolution+2", 2, ["NO-XGO"], ""], +["bluesage-resolution+3", "bluesage-resolution+3", 2, ["NO-XGO"], ""], +["bluesage-resolution+4", "bluesage-resolution+4", 2, ["NO-XGO"], ""], +["bluesage-resolution+5", "bluesage-resolution+5", 2, ["NO-XGO"], ""], +["bluesage-resolution+6", "bluesage-resolution+6", 2, ["NO-XGO"], ""], +["bluesage-resolution+7", "bluesage-resolution+7", 2, ["NO-XGO"], ""], +["bluesage-resolution+8", "bluesage-resolution+8", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-prec-arm+0", "sage-bluehut-introduction-prec-arm+0", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-prec-arm+1", "sage-bluehut-introduction-prec-arm+1", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-prec-arm+2", "sage-bluehut-introduction-prec-arm+2", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-prec-arm+3", "sage-bluehut-introduction-prec-arm+3", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-prec-arm+4", "sage-bluehut-introduction-prec-arm+4", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-prec-arm+5", "sage-bluehut-introduction-prec-arm+5", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-prec-arm+6", "sage-bluehut-introduction-prec-arm+6", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-prec-arm+7", "sage-bluehut-introduction-prec-arm+7", 2, ["NO-XGO"], ""], +["evilbro-misty-end+0", "evilbro-misty-end+0", 2, ["NO-XGO"], ""], +["evilbro-misty-end+1", "evilbro-misty-end+1", 2, ["NO-XGO"], ""], +["evilbro-misty-end+2", "evilbro-misty-end+2", 2, ["NO-XGO"], ""], +["evilbro-misty-end+3", "evilbro-misty-end+3", 2, ["NO-XGO"], ""], +["evilbro-misty-end+4", "evilbro-misty-end+4", 2, ["NO-XGO"], ""], +["evilbro-misty-end+5", "evilbro-misty-end+5", 2, ["NO-XGO"], ""], +["evilbro-misty-end+6", "evilbro-misty-end+6", 2, ["NO-XGO"], ""], +["evilbro-misty-end+7", "evilbro-misty-end+7", 2, ["NO-XGO"], ""], +["evilbro-misty-end+8", "evilbro-misty-end+8", 2, ["NO-XGO"], ""], +["assistant-village2-resolution+0", "assistant-village2-resolution+0", 2, ["NO-XGO"], ""], +["assistant-village2-resolution+1", "assistant-village2-resolution+1", 2, ["NO-XGO"], ""], +["assistant-village2-resolution+2", "assistant-village2-resolution+2", 2, ["NO-XGO"], ""], +["assistant-village2-resolution+3", "assistant-village2-resolution+3", 2, ["NO-XGO"], ""], +["assistant-village2-resolution+4", "assistant-village2-resolution+4", 2, ["NO-XGO"], ""], +["assistant-village2-resolution+5", "assistant-village2-resolution+5", 2, ["NO-XGO"], ""], +["assistant-village2-resolution+6", "assistant-village2-resolution+6", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+0", "sage-introduction-misty-cannon+0", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+1", "sage-introduction-misty-cannon+1", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+2", "sage-introduction-misty-cannon+2", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+3", "sage-introduction-misty-cannon+3", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+4", "sage-introduction-misty-cannon+4", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+5", "sage-introduction-misty-cannon+5", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+6", "sage-introduction-misty-cannon+6", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+7", "sage-introduction-misty-cannon+7", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+8", "sage-introduction-misty-cannon+8", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+9", "sage-introduction-misty-cannon+9", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+10", "sage-introduction-misty-cannon+10", 2, ["NO-XGO"], ""], +["sage-introduction-misty-cannon+11", "sage-introduction-misty-cannon+11", 2, ["NO-XGO"], ""], +["minershort-introduction-gnawers+0", "minershort-introduction-gnawers+0", 2, ["NO-XGO"], ""], +["minershort-introduction-gnawers+1", "minershort-introduction-gnawers+1", 2, ["NO-XGO"], ""], +["minershort-introduction-gnawers+2", "minershort-introduction-gnawers+2", 2, ["NO-XGO"], ""], +["minershort-introduction-gnawers+3", "minershort-introduction-gnawers+3", 2, ["NO-XGO"], ""], +["minershort-introduction-gnawers+4", "minershort-introduction-gnawers+4", 2, ["NO-XGO"], ""], +["minershort-introduction-gnawers+5", "minershort-introduction-gnawers+5", 2, ["NO-XGO"], ""], +["minershort-introduction-gnawers+6", "minershort-introduction-gnawers+6", 2, ["NO-XGO"], ""], +["minershort-introduction-gnawers+7", "minershort-introduction-gnawers+7", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-a+0", "green-sagecage-outro-beat-boss-a+0", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-a+1", "green-sagecage-outro-beat-boss-a+1", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-a+2", "green-sagecage-outro-beat-boss-a+2", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-a+3", "green-sagecage-outro-beat-boss-a+3", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-a+4", "green-sagecage-outro-beat-boss-a+4", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-a+5", "green-sagecage-outro-beat-boss-a+5", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-a+6", "green-sagecage-outro-beat-boss-a+6", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-a+7", "green-sagecage-outro-beat-boss-a+7", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+0", "green-sagecage-introduction+0", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+1", "green-sagecage-introduction+1", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+2", "green-sagecage-introduction+2", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+3", "green-sagecage-introduction+3", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+4", "green-sagecage-introduction+4", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+5", "green-sagecage-introduction+5", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+6", "green-sagecage-introduction+6", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+7", "green-sagecage-introduction+7", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+8", "green-sagecage-introduction+8", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+9", "green-sagecage-introduction+9", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+10", "green-sagecage-introduction+10", 2, ["NO-XGO"], ""], +["green-sagecage-introduction+11", "green-sagecage-introduction+11", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+0", "sage-intro-sequence-e+0", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+1", "sage-intro-sequence-e+1", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+2", "sage-intro-sequence-e+2", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+3", "sage-intro-sequence-e+3", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+4", "sage-intro-sequence-e+4", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+5", "sage-intro-sequence-e+5", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+6", "sage-intro-sequence-e+6", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+7", "sage-intro-sequence-e+7", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+8", "sage-intro-sequence-e+8", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+9", "sage-intro-sequence-e+9", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+10", "sage-intro-sequence-e+10", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+11", "sage-intro-sequence-e+11", 2, ["NO-XGO"], ""], +["sage-intro-sequence-e+12", "sage-intro-sequence-e+12", 2, ["NO-XGO"], ""], +["sage-village3-introduction-dark-eco+0", "sage-village3-introduction-dark-eco+0", 2, ["NO-XGO"], ""], +["sage-village3-introduction-dark-eco+1", "sage-village3-introduction-dark-eco+1", 2, ["NO-XGO"], ""], +["sage-village3-introduction-dark-eco+2", "sage-village3-introduction-dark-eco+2", 2, ["NO-XGO"], ""], +["sage-village3-introduction-dark-eco+3", "sage-village3-introduction-dark-eco+3", 2, ["NO-XGO"], ""], +["sage-village3-introduction-dark-eco+4", "sage-village3-introduction-dark-eco+4", 2, ["NO-XGO"], ""], +["sage-village3-introduction-dark-eco+5", "sage-village3-introduction-dark-eco+5", 2, ["NO-XGO"], ""], +["sage-village3-introduction-dark-eco+6", "sage-village3-introduction-dark-eco+6", 2, ["NO-XGO"], ""], +["sage-village3-introduction-dark-eco+7", "sage-village3-introduction-dark-eco+7", 2, ["NO-XGO"], ""], +["sage-village3-introduction-dark-eco+8", "sage-village3-introduction-dark-eco+8", 2, ["NO-XGO"], ""], +["assistant-firecanyon-resolution+0", "assistant-firecanyon-resolution+0", 2, ["NO-XGO"], ""], +["assistant-firecanyon-resolution+1", "assistant-firecanyon-resolution+1", 2, ["NO-XGO"], ""], +["assistant-firecanyon-resolution+2", "assistant-firecanyon-resolution+2", 2, ["NO-XGO"], ""], +["assistant-firecanyon-resolution+3", "assistant-firecanyon-resolution+3", 2, ["NO-XGO"], ""], +["assistant-firecanyon-resolution+4", "assistant-firecanyon-resolution+4", 2, ["NO-XGO"], ""], +["assistant-firecanyon-resolution+5", "assistant-firecanyon-resolution+5", 2, ["NO-XGO"], ""], +["assistant-firecanyon-resolution+6", "assistant-firecanyon-resolution+6", 2, ["NO-XGO"], ""], +["assistant-firecanyon-resolution+7", "assistant-firecanyon-resolution+7", 2, ["NO-XGO"], ""], +["assistant-firecanyon-resolution+8", "assistant-firecanyon-resolution+8", 2, ["NO-XGO"], ""], +["assistant-firecanyon-resolution+9", "assistant-firecanyon-resolution+9", 2, ["NO-XGO"], ""], +["assistant-firecanyon-resolution+10", "assistant-firecanyon-resolution+10", 2, ["NO-XGO"], ""], +["explorer-introduction+0", "explorer-introduction+0", 2, ["NO-XGO"], ""], +["explorer-introduction+1", "explorer-introduction+1", 2, ["NO-XGO"], ""], +["explorer-introduction+2", "explorer-introduction+2", 2, ["NO-XGO"], ""], +["explorer-introduction+3", "explorer-introduction+3", 2, ["NO-XGO"], ""], +["explorer-introduction+4", "explorer-introduction+4", 2, ["NO-XGO"], ""], +["explorer-introduction+5", "explorer-introduction+5", 2, ["NO-XGO"], ""], +["explorer-introduction+6", "explorer-introduction+6", 2, ["NO-XGO"], ""], +["explorer-introduction+7", "explorer-introduction+7", 2, ["NO-XGO"], ""], +["explorer-introduction+8", "explorer-introduction+8", 2, ["NO-XGO"], ""], +["explorer-introduction+9", "explorer-introduction+9", 2, ["NO-XGO"], ""], +["explorer-introduction+10", "explorer-introduction+10", 2, ["NO-XGO"], ""], +["bird-lady-introduction+0", "bird-lady-introduction+0", 2, ["NO-XGO"], ""], +["bird-lady-introduction+1", "bird-lady-introduction+1", 2, ["NO-XGO"], ""], +["bird-lady-introduction+2", "bird-lady-introduction+2", 2, ["NO-XGO"], ""], +["bird-lady-introduction+3", "bird-lady-introduction+3", 2, ["NO-XGO"], ""], +["bird-lady-introduction+4", "bird-lady-introduction+4", 2, ["NO-XGO"], ""], +["bird-lady-introduction+5", "bird-lady-introduction+5", 2, ["NO-XGO"], ""], +["bird-lady-introduction+6", "bird-lady-introduction+6", 2, ["NO-XGO"], ""], +["bird-lady-introduction+7", "bird-lady-introduction+7", 2, ["NO-XGO"], ""], +["bird-lady-introduction+8", "bird-lady-introduction+8", 2, ["NO-XGO"], ""], +["bird-lady-introduction+9", "bird-lady-introduction+9", 2, ["NO-XGO"], ""], +["bird-lady-introduction+10", "bird-lady-introduction+10", 2, ["NO-XGO"], ""], +["fisher-introduction+0", "fisher-introduction+0", 2, ["NO-XGO"], ""], +["fisher-introduction+1", "fisher-introduction+1", 2, ["NO-XGO"], ""], +["fisher-introduction+2", "fisher-introduction+2", 2, ["NO-XGO"], ""], +["fisher-introduction+3", "fisher-introduction+3", 2, ["NO-XGO"], ""], +["fisher-introduction+4", "fisher-introduction+4", 2, ["NO-XGO"], ""], +["fisher-introduction+5", "fisher-introduction+5", 2, ["NO-XGO"], ""], +["fisher-introduction+6", "fisher-introduction+6", 2, ["NO-XGO"], ""], +["fisher-introduction+7", "fisher-introduction+7", 2, ["NO-XGO"], ""], +["fisher-introduction+8", "fisher-introduction+8", 2, ["NO-XGO"], ""], +["mayor-introduction+0", "mayor-introduction+0", 2, ["NO-XGO"], ""], +["mayor-introduction+1", "mayor-introduction+1", 2, ["NO-XGO"], ""], +["mayor-introduction+2", "mayor-introduction+2", 2, ["NO-XGO"], ""], +["mayor-introduction+3", "mayor-introduction+3", 2, ["NO-XGO"], ""], +["mayor-introduction+4", "mayor-introduction+4", 2, ["NO-XGO"], ""], +["mayor-introduction+5", "mayor-introduction+5", 2, ["NO-XGO"], ""], +["mayor-introduction+6", "mayor-introduction+6", 2, ["NO-XGO"], ""], +["mayor-introduction+7", "mayor-introduction+7", 2, ["NO-XGO"], ""], +["mayor-introduction+8", "mayor-introduction+8", 2, ["NO-XGO"], ""], +["mayor-introduction+9", "mayor-introduction+9", 2, ["NO-XGO"], ""], +["mayor-introduction+10", "mayor-introduction+10", 2, ["NO-XGO"], ""], +["mayor-introduction+11", "mayor-introduction+11", 2, ["NO-XGO"], ""], +["mayor-introduction+12", "mayor-introduction+12", 2, ["NO-XGO"], ""], +["mayor-introduction+13", "mayor-introduction+13", 2, ["NO-XGO"], ""], +["mayor-introduction+14", "mayor-introduction+14", 2, ["NO-XGO"], ""], +["mayor-introduction+15", "mayor-introduction+15", 2, ["NO-XGO"], ""], +["sculptor-introduction+0", "sculptor-introduction+0", 2, ["NO-XGO"], ""], +["sculptor-introduction+1", "sculptor-introduction+1", 2, ["NO-XGO"], ""], +["sculptor-introduction+2", "sculptor-introduction+2", 2, ["NO-XGO"], ""], +["sculptor-introduction+3", "sculptor-introduction+3", 2, ["NO-XGO"], ""], +["sculptor-introduction+4", "sculptor-introduction+4", 2, ["NO-XGO"], ""], +["sculptor-introduction+5", "sculptor-introduction+5", 2, ["NO-XGO"], ""], +["sculptor-introduction+6", "sculptor-introduction+6", 2, ["NO-XGO"], ""], +["sculptor-introduction+7", "sculptor-introduction+7", 2, ["NO-XGO"], ""], +["sculptor-introduction+8", "sculptor-introduction+8", 2, ["NO-XGO"], ""], +["sculptor-introduction+9", "sculptor-introduction+9", 2, ["NO-XGO"], ""], +["sculptor-introduction+10", "sculptor-introduction+10", 2, ["NO-XGO"], ""], +["sculptor-introduction+11", "sculptor-introduction+11", 2, ["NO-XGO"], ""], +["sculptor-introduction+12", "sculptor-introduction+12", 2, ["NO-XGO"], ""], +["sculptor-introduction+13", "sculptor-introduction+13", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-flutflut+0", "assistant-village2-introduction-flutflut+0", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-flutflut+1", "assistant-village2-introduction-flutflut+1", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-flutflut+2", "assistant-village2-introduction-flutflut+2", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-flutflut+3", "assistant-village2-introduction-flutflut+3", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-flutflut+4", "assistant-village2-introduction-flutflut+4", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-flutflut+5", "assistant-village2-introduction-flutflut+5", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-flutflut+6", "assistant-village2-introduction-flutflut+6", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-flutflut+7", "assistant-village2-introduction-flutflut+7", 2, ["NO-XGO"], ""], +["assistant-lavatube-end-resolution+0", "assistant-lavatube-end-resolution+0", 2, ["NO-XGO"], ""], +["assistant-lavatube-end-resolution+1", "assistant-lavatube-end-resolution+1", 2, ["NO-XGO"], ""], +["assistant-lavatube-end-resolution+2", "assistant-lavatube-end-resolution+2", 2, ["NO-XGO"], ""], +["assistant-lavatube-end-resolution+3", "assistant-lavatube-end-resolution+3", 2, ["NO-XGO"], ""], +["assistant-lavatube-end-resolution+4", "assistant-lavatube-end-resolution+4", 2, ["NO-XGO"], ""], +["assistant-lavatube-end-resolution+5", "assistant-lavatube-end-resolution+5", 2, ["NO-XGO"], ""], +["assistant-lavatube-end-resolution+6", "assistant-lavatube-end-resolution+6", 2, ["NO-XGO"], ""], +["assistant-lavatube-end-resolution+7", "assistant-lavatube-end-resolution+7", 2, ["NO-XGO"], ""], +["assistant-lavatube-end-resolution+8", "assistant-lavatube-end-resolution+8", 2, ["NO-XGO"], ""], +["assistant-lavatube-end-resolution+9", "assistant-lavatube-end-resolution+9", 2, ["NO-XGO"], ""], +["assistant-lavatube-end-resolution+10", "assistant-lavatube-end-resolution+10", 2, ["NO-XGO"], ""], +["assistant-lavatube-start-resolution+0", "assistant-lavatube-start-resolution+0", 2, ["NO-XGO"], ""], +["assistant-lavatube-start-resolution+1", "assistant-lavatube-start-resolution+1", 2, ["NO-XGO"], ""], +["assistant-lavatube-start-resolution+2", "assistant-lavatube-start-resolution+2", 2, ["NO-XGO"], ""], +["assistant-lavatube-start-resolution+3", "assistant-lavatube-start-resolution+3", 2, ["NO-XGO"], ""], +["assistant-lavatube-start-resolution+4", "assistant-lavatube-start-resolution+4", 2, ["NO-XGO"], ""], +["assistant-lavatube-start-resolution+5", "assistant-lavatube-start-resolution+5", 2, ["NO-XGO"], ""], +["assistant-lavatube-start-resolution+6", "assistant-lavatube-start-resolution+6", 2, ["NO-XGO"], ""], +["assistant-lavatube-start-resolution+7", "assistant-lavatube-start-resolution+7", 2, ["NO-XGO"], ""], +["assistant-lavatube-start-resolution+8", "assistant-lavatube-start-resolution+8", 2, ["NO-XGO"], ""], +["assistant-lavatube-start-resolution+9", "assistant-lavatube-start-resolution+9", 2, ["NO-XGO"], ""], +["assistant-lavatube-start-resolution+10", "assistant-lavatube-start-resolution+10", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-room+0", "assistant-village2-introduction-room+0", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-room+1", "assistant-village2-introduction-room+1", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-room+2", "assistant-village2-introduction-room+2", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-room+3", "assistant-village2-introduction-room+3", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-room+4", "assistant-village2-introduction-room+4", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-room+5", "assistant-village2-introduction-room+5", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-room+6", "assistant-village2-introduction-room+6", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-room+7", "assistant-village2-introduction-room+7", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-room+8", "assistant-village2-introduction-room+8", 2, ["NO-XGO"], ""], +["assistant-village2-introduction-room+9", "assistant-village2-introduction-room+9", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+0", "green-sagecage-resolution+0", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+1", "green-sagecage-resolution+1", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+2", "green-sagecage-resolution+2", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+3", "green-sagecage-resolution+3", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+4", "green-sagecage-resolution+4", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+5", "green-sagecage-resolution+5", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+6", "green-sagecage-resolution+6", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+7", "green-sagecage-resolution+7", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+8", "green-sagecage-resolution+8", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+9", "green-sagecage-resolution+9", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+10", "green-sagecage-resolution+10", 2, ["NO-XGO"], ""], +["green-sagecage-resolution+11", "green-sagecage-resolution+11", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+0", "sage-bluehut-introduction-crop-dusting+0", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+1", "sage-bluehut-introduction-crop-dusting+1", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+2", "sage-bluehut-introduction-crop-dusting+2", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+3", "sage-bluehut-introduction-crop-dusting+3", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+4", "sage-bluehut-introduction-crop-dusting+4", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+5", "sage-bluehut-introduction-crop-dusting+5", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+6", "sage-bluehut-introduction-crop-dusting+6", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+7", "sage-bluehut-introduction-crop-dusting+7", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+8", "sage-bluehut-introduction-crop-dusting+8", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+9", "sage-bluehut-introduction-crop-dusting+9", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+10", "sage-bluehut-introduction-crop-dusting+10", 2, ["NO-XGO"], ""], +["sage-bluehut-introduction-crop-dusting+11", "sage-bluehut-introduction-crop-dusting+11", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-b+0", "sidekick-human-intro-sequence-b+0", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-b+1", "sidekick-human-intro-sequence-b+1", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-b+2", "sidekick-human-intro-sequence-b+2", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-b+3", "sidekick-human-intro-sequence-b+3", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-b+4", "sidekick-human-intro-sequence-b+4", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-b+5", "sidekick-human-intro-sequence-b+5", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-b+6", "sidekick-human-intro-sequence-b+6", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-b+7", "sidekick-human-intro-sequence-b+7", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-b+8", "sidekick-human-intro-sequence-b+8", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-b+9", "sidekick-human-intro-sequence-b+9", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-b+10", "sidekick-human-intro-sequence-b+10", 2, ["NO-XGO"], ""], +["assistant-introduction-blue-eco-switch+0", "assistant-introduction-blue-eco-switch+0", 2, ["NO-XGO"], ""], +["assistant-introduction-blue-eco-switch+1", "assistant-introduction-blue-eco-switch+1", 2, ["NO-XGO"], ""], +["assistant-introduction-blue-eco-switch+2", "assistant-introduction-blue-eco-switch+2", 2, ["NO-XGO"], ""], +["assistant-introduction-blue-eco-switch+3", "assistant-introduction-blue-eco-switch+3", 2, ["NO-XGO"], ""], +["assistant-introduction-blue-eco-switch+4", "assistant-introduction-blue-eco-switch+4", 2, ["NO-XGO"], ""], +["assistant-introduction-blue-eco-switch+5", "assistant-introduction-blue-eco-switch+5", 2, ["NO-XGO"], ""], +["assistant-introduction-blue-eco-switch+6", "assistant-introduction-blue-eco-switch+6", 2, ["NO-XGO"], ""], +["assistant-introduction-blue-eco-switch+7", "assistant-introduction-blue-eco-switch+7", 2, ["NO-XGO"], ""], +["assistant-introduction-blue-eco-switch+8", "assistant-introduction-blue-eco-switch+8", 2, ["NO-XGO"], ""], +["assistant-introduction-blue-eco-switch+9", "assistant-introduction-blue-eco-switch+9", 2, ["NO-XGO"], ""], +["assistant-introduction-blue-eco-switch+10", "assistant-introduction-blue-eco-switch+10", 2, ["NO-XGO"], ""], +["bird-lady-beach-resolution+0", "bird-lady-beach-resolution+0", 2, ["NO-XGO"], ""], +["bird-lady-beach-resolution+1", "bird-lady-beach-resolution+1", 2, ["NO-XGO"], ""], +["bird-lady-beach-resolution+2", "bird-lady-beach-resolution+2", 2, ["NO-XGO"], ""], +["bird-lady-beach-resolution+3", "bird-lady-beach-resolution+3", 2, ["NO-XGO"], ""], +["bird-lady-beach-resolution+4", "bird-lady-beach-resolution+4", 2, ["NO-XGO"], ""], +["bird-lady-beach-resolution+5", "bird-lady-beach-resolution+5", 2, ["NO-XGO"], ""], +["bird-lady-beach-resolution+6", "bird-lady-beach-resolution+6", 2, ["NO-XGO"], ""], +["bird-lady-beach-resolution+7", "bird-lady-beach-resolution+7", 2, ["NO-XGO"], ""], +["bird-lady-beach-resolution+8", "bird-lady-beach-resolution+8", 2, ["NO-XGO"], ""], +["bird-lady-beach-resolution+9", "bird-lady-beach-resolution+9", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+0", "fishermans-boat-ride-to-village1-alt+0", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+1", "fishermans-boat-ride-to-village1-alt+1", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+2", "fishermans-boat-ride-to-village1-alt+2", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+3", "fishermans-boat-ride-to-village1-alt+3", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+4", "fishermans-boat-ride-to-village1-alt+4", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+5", "fishermans-boat-ride-to-village1-alt+5", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+6", "fishermans-boat-ride-to-village1-alt+6", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+7", "fishermans-boat-ride-to-village1-alt+7", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+8", "fishermans-boat-ride-to-village1-alt+8", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+9", "fishermans-boat-ride-to-village1-alt+9", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+10", "fishermans-boat-ride-to-village1-alt+10", 2, ["NO-XGO"], ""], +["fishermans-boat-ride-to-village1-alt+11", "fishermans-boat-ride-to-village1-alt+11", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+0", "assistant-village2-introduction+0", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+1", "assistant-village2-introduction+1", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+2", "assistant-village2-introduction+2", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+3", "assistant-village2-introduction+3", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+4", "assistant-village2-introduction+4", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+5", "assistant-village2-introduction+5", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+6", "assistant-village2-introduction+6", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+7", "assistant-village2-introduction+7", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+8", "assistant-village2-introduction+8", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+9", "assistant-village2-introduction+9", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+10", "assistant-village2-introduction+10", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+11", "assistant-village2-introduction+11", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+12", "assistant-village2-introduction+12", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+13", "assistant-village2-introduction+13", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+14", "assistant-village2-introduction+14", 2, ["NO-XGO"], ""], +["assistant-village2-introduction+15", "assistant-village2-introduction+15", 2, ["NO-XGO"], ""], +["geologist-introduction+0", "geologist-introduction+0", 2, ["NO-XGO"], ""], +["geologist-introduction+1", "geologist-introduction+1", 2, ["NO-XGO"], ""], +["geologist-introduction+2", "geologist-introduction+2", 2, ["NO-XGO"], ""], +["geologist-introduction+3", "geologist-introduction+3", 2, ["NO-XGO"], ""], +["geologist-introduction+4", "geologist-introduction+4", 2, ["NO-XGO"], ""], +["geologist-introduction+5", "geologist-introduction+5", 2, ["NO-XGO"], ""], +["geologist-introduction+6", "geologist-introduction+6", 2, ["NO-XGO"], ""], +["geologist-introduction+7", "geologist-introduction+7", 2, ["NO-XGO"], ""], +["geologist-introduction+8", "geologist-introduction+8", 2, ["NO-XGO"], ""], +["geologist-introduction+9", "geologist-introduction+9", 2, ["NO-XGO"], ""], +["geologist-introduction+10", "geologist-introduction+10", 2, ["NO-XGO"], ""], +["geologist-introduction+11", "geologist-introduction+11", 2, ["NO-XGO"], ""], +["geologist-introduction+12", "geologist-introduction+12", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+0", "sage-intro-sequence-d1+0", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+1", "sage-intro-sequence-d1+1", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+2", "sage-intro-sequence-d1+2", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+3", "sage-intro-sequence-d1+3", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+4", "sage-intro-sequence-d1+4", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+5", "sage-intro-sequence-d1+5", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+6", "sage-intro-sequence-d1+6", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+7", "sage-intro-sequence-d1+7", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+8", "sage-intro-sequence-d1+8", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+9", "sage-intro-sequence-d1+9", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+10", "sage-intro-sequence-d1+10", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+11", "sage-intro-sequence-d1+11", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+12", "sage-intro-sequence-d1+12", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+13", "sage-intro-sequence-d1+13", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+14", "sage-intro-sequence-d1+14", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+15", "sage-intro-sequence-d1+15", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d1+16", "sage-intro-sequence-d1+16", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+0", "sage-intro-sequence-a+0", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+1", "sage-intro-sequence-a+1", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+2", "sage-intro-sequence-a+2", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+3", "sage-intro-sequence-a+3", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+4", "sage-intro-sequence-a+4", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+5", "sage-intro-sequence-a+5", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+6", "sage-intro-sequence-a+6", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+7", "sage-intro-sequence-a+7", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+8", "sage-intro-sequence-a+8", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+9", "sage-intro-sequence-a+9", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+10", "sage-intro-sequence-a+10", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+11", "sage-intro-sequence-a+11", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+12", "sage-intro-sequence-a+12", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+13", "sage-intro-sequence-a+13", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+14", "sage-intro-sequence-a+14", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+15", "sage-intro-sequence-a+15", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+16", "sage-intro-sequence-a+16", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+17", "sage-intro-sequence-a+17", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+18", "sage-intro-sequence-a+18", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+19", "sage-intro-sequence-a+19", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+20", "sage-intro-sequence-a+20", 2, ["NO-XGO"], ""], +["sage-intro-sequence-a+21", "sage-intro-sequence-a+21", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+0", "sidekick-human-intro-sequence-c+0", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+1", "sidekick-human-intro-sequence-c+1", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+2", "sidekick-human-intro-sequence-c+2", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+3", "sidekick-human-intro-sequence-c+3", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+4", "sidekick-human-intro-sequence-c+4", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+5", "sidekick-human-intro-sequence-c+5", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+6", "sidekick-human-intro-sequence-c+6", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+7", "sidekick-human-intro-sequence-c+7", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+8", "sidekick-human-intro-sequence-c+8", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+9", "sidekick-human-intro-sequence-c+9", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+10", "sidekick-human-intro-sequence-c+10", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+11", "sidekick-human-intro-sequence-c+11", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+12", "sidekick-human-intro-sequence-c+12", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+13", "sidekick-human-intro-sequence-c+13", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+14", "sidekick-human-intro-sequence-c+14", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+15", "sidekick-human-intro-sequence-c+15", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+16", "sidekick-human-intro-sequence-c+16", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+17", "sidekick-human-intro-sequence-c+17", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+18", "sidekick-human-intro-sequence-c+18", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+19", "sidekick-human-intro-sequence-c+19", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+20", "sidekick-human-intro-sequence-c+20", 2, ["NO-XGO"], ""], +["sidekick-human-intro-sequence-c+21", "sidekick-human-intro-sequence-c+21", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+0", "minershort-introduction-orbs+0", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+1", "minershort-introduction-orbs+1", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+2", "minershort-introduction-orbs+2", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+3", "minershort-introduction-orbs+3", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+4", "minershort-introduction-orbs+4", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+5", "minershort-introduction-orbs+5", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+6", "minershort-introduction-orbs+6", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+7", "minershort-introduction-orbs+7", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+8", "minershort-introduction-orbs+8", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+9", "minershort-introduction-orbs+9", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+10", "minershort-introduction-orbs+10", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+11", "minershort-introduction-orbs+11", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+12", "minershort-introduction-orbs+12", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+13", "minershort-introduction-orbs+13", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+14", "minershort-introduction-orbs+14", 2, ["NO-XGO"], ""], +["minershort-introduction-orbs+15", "minershort-introduction-orbs+15", 2, ["NO-XGO"], ""], +["warrior-introduction+0", "warrior-introduction+0", 2, ["NO-XGO"], ""], +["warrior-introduction+1", "warrior-introduction+1", 2, ["NO-XGO"], ""], +["warrior-introduction+2", "warrior-introduction+2", 2, ["NO-XGO"], ""], +["warrior-introduction+3", "warrior-introduction+3", 2, ["NO-XGO"], ""], +["warrior-introduction+4", "warrior-introduction+4", 2, ["NO-XGO"], ""], +["warrior-introduction+5", "warrior-introduction+5", 2, ["NO-XGO"], ""], +["warrior-introduction+6", "warrior-introduction+6", 2, ["NO-XGO"], ""], +["warrior-introduction+7", "warrior-introduction+7", 2, ["NO-XGO"], ""], +["warrior-introduction+8", "warrior-introduction+8", 2, ["NO-XGO"], ""], +["warrior-introduction+9", "warrior-introduction+9", 2, ["NO-XGO"], ""], +["warrior-introduction+10", "warrior-introduction+10", 2, ["NO-XGO"], ""], +["warrior-introduction+11", "warrior-introduction+11", 2, ["NO-XGO"], ""], +["warrior-introduction+12", "warrior-introduction+12", 2, ["NO-XGO"], ""], +["warrior-introduction+13", "warrior-introduction+13", 2, ["NO-XGO"], ""], +["warrior-introduction+14", "warrior-introduction+14", 2, ["NO-XGO"], ""], +["warrior-introduction+15", "warrior-introduction+15", 2, ["NO-XGO"], ""], +["warrior-introduction+16", "warrior-introduction+16", 2, ["NO-XGO"], ""], +["warrior-introduction+17", "warrior-introduction+17", 2, ["NO-XGO"], ""], +["warrior-introduction+18", "warrior-introduction+18", 2, ["NO-XGO"], ""], +["warrior-introduction+19", "warrior-introduction+19", 2, ["NO-XGO"], ""], +["warrior-introduction+20", "warrior-introduction+20", 2, ["NO-XGO"], ""], +["warrior-introduction+21", "warrior-introduction+21", 2, ["NO-XGO"], ""], +["warrior-introduction+22", "warrior-introduction+22", 2, ["NO-XGO"], ""], +["warrior-introduction+23", "warrior-introduction+23", 2, ["NO-XGO"], ""], +["warrior-introduction+24", "warrior-introduction+24", 2, ["NO-XGO"], ""], +["warrior-introduction+25", "warrior-introduction+25", 2, ["NO-XGO"], ""], +["warrior-introduction+26", "warrior-introduction+26", 2, ["NO-XGO"], ""], +["warrior-introduction+27", "warrior-introduction+27", 2, ["NO-XGO"], ""], +["warrior-introduction+28", "warrior-introduction+28", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+0", "sage-intro-sequence-d2+0", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+1", "sage-intro-sequence-d2+1", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+2", "sage-intro-sequence-d2+2", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+3", "sage-intro-sequence-d2+3", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+4", "sage-intro-sequence-d2+4", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+5", "sage-intro-sequence-d2+5", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+6", "sage-intro-sequence-d2+6", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+7", "sage-intro-sequence-d2+7", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+8", "sage-intro-sequence-d2+8", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+9", "sage-intro-sequence-d2+9", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+10", "sage-intro-sequence-d2+10", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+11", "sage-intro-sequence-d2+11", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+12", "sage-intro-sequence-d2+12", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+13", "sage-intro-sequence-d2+13", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+14", "sage-intro-sequence-d2+14", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+15", "sage-intro-sequence-d2+15", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+16", "sage-intro-sequence-d2+16", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+17", "sage-intro-sequence-d2+17", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+18", "sage-intro-sequence-d2+18", 2, ["NO-XGO"], ""], +["sage-intro-sequence-d2+19", "sage-intro-sequence-d2+19", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+0", "green-sagecage-outro-preboss+0", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+1", "green-sagecage-outro-preboss+1", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+2", "green-sagecage-outro-preboss+2", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+3", "green-sagecage-outro-preboss+3", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+4", "green-sagecage-outro-preboss+4", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+5", "green-sagecage-outro-preboss+5", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+6", "green-sagecage-outro-preboss+6", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+7", "green-sagecage-outro-preboss+7", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+8", "green-sagecage-outro-preboss+8", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+9", "green-sagecage-outro-preboss+9", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+10", "green-sagecage-outro-preboss+10", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+11", "green-sagecage-outro-preboss+11", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+12", "green-sagecage-outro-preboss+12", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+13", "green-sagecage-outro-preboss+13", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+14", "green-sagecage-outro-preboss+14", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+15", "green-sagecage-outro-preboss+15", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+16", "green-sagecage-outro-preboss+16", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+17", "green-sagecage-outro-preboss+17", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+18", "green-sagecage-outro-preboss+18", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+19", "green-sagecage-outro-preboss+19", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+20", "green-sagecage-outro-preboss+20", 2, ["NO-XGO"], ""], +["green-sagecage-outro-preboss+21", "green-sagecage-outro-preboss+21", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+0", "green-sagecage-outro-beat-boss-b+0", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+1", "green-sagecage-outro-beat-boss-b+1", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+2", "green-sagecage-outro-beat-boss-b+2", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+3", "green-sagecage-outro-beat-boss-b+3", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+4", "green-sagecage-outro-beat-boss-b+4", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+5", "green-sagecage-outro-beat-boss-b+5", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+6", "green-sagecage-outro-beat-boss-b+6", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+7", "green-sagecage-outro-beat-boss-b+7", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+8", "green-sagecage-outro-beat-boss-b+8", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+9", "green-sagecage-outro-beat-boss-b+9", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+10", "green-sagecage-outro-beat-boss-b+10", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+11", "green-sagecage-outro-beat-boss-b+11", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+12", "green-sagecage-outro-beat-boss-b+12", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+13", "green-sagecage-outro-beat-boss-b+13", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+14", "green-sagecage-outro-beat-boss-b+14", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+15", "green-sagecage-outro-beat-boss-b+15", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+16", "green-sagecage-outro-beat-boss-b+16", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+17", "green-sagecage-outro-beat-boss-b+17", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+18", "green-sagecage-outro-beat-boss-b+18", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+19", "green-sagecage-outro-beat-boss-b+19", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+20", "green-sagecage-outro-beat-boss-b+20", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+21", "green-sagecage-outro-beat-boss-b+21", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+22", "green-sagecage-outro-beat-boss-b+22", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+23", "green-sagecage-outro-beat-boss-b+23", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+24", "green-sagecage-outro-beat-boss-b+24", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+25", "green-sagecage-outro-beat-boss-b+25", 2, ["NO-XGO"], ""], +["green-sagecage-outro-beat-boss-b+26", "green-sagecage-outro-beat-boss-b+26", 2, ["NO-XGO"], ""], +["sage-village3-introduction+0", "sage-village3-introduction+0", 2, ["NO-XGO"], ""], +["sage-village3-introduction+1", "sage-village3-introduction+1", 2, ["NO-XGO"], ""], +["sage-village3-introduction+2", "sage-village3-introduction+2", 2, ["NO-XGO"], ""], +["sage-village3-introduction+3", "sage-village3-introduction+3", 2, ["NO-XGO"], ""], +["sage-village3-introduction+4", "sage-village3-introduction+4", 2, ["NO-XGO"], ""], +["sage-village3-introduction+5", "sage-village3-introduction+5", 2, ["NO-XGO"], ""], +["sage-village3-introduction+6", "sage-village3-introduction+6", 2, ["NO-XGO"], ""], +["sage-village3-introduction+7", "sage-village3-introduction+7", 2, ["NO-XGO"], ""], +["sage-village3-introduction+8", "sage-village3-introduction+8", 2, ["NO-XGO"], ""], +["sage-village3-introduction+9", "sage-village3-introduction+9", 2, ["NO-XGO"], ""], +["sage-village3-introduction+10", "sage-village3-introduction+10", 2, ["NO-XGO"], ""], +["sage-village3-introduction+11", "sage-village3-introduction+11", 2, ["NO-XGO"], ""], +["sage-village3-introduction+12", "sage-village3-introduction+12", 2, ["NO-XGO"], ""], +["sage-village3-introduction+13", "sage-village3-introduction+13", 2, ["NO-XGO"], ""], +["sage-village3-introduction+14", "sage-village3-introduction+14", 2, ["NO-XGO"], ""], +["sage-village3-introduction+15", "sage-village3-introduction+15", 2, ["NO-XGO"], ""], +["sage-village3-introduction+16", "sage-village3-introduction+16", 2, ["NO-XGO"], ""], +["sage-village3-introduction+17", "sage-village3-introduction+17", 2, ["NO-XGO"], ""], +["sage-village3-introduction+18", "sage-village3-introduction+18", 2, ["NO-XGO"], ""], +["sage-village3-introduction+19", "sage-village3-introduction+19", 2, ["NO-XGO"], ""], +["sage-village3-introduction+20", "sage-village3-introduction+20", 2, ["NO-XGO"], ""], +["sage-village3-introduction+21", "sage-village3-introduction+21", 2, ["NO-XGO"], ""], +["sage-village3-introduction+22", "sage-village3-introduction+22", 2, ["NO-XGO"], ""], +["sage-village3-introduction+23", "sage-village3-introduction+23", 2, ["NO-XGO"], ""], +["sage-village3-introduction+24", "sage-village3-introduction+24", 2, ["NO-XGO"], ""], +["sage-village3-introduction+25", "sage-village3-introduction+25", 2, ["NO-XGO"], ""], +["sage-village3-introduction+26", "sage-village3-introduction+26", 2, ["NO-XGO"], ""], +["sage-village3-introduction+27", "sage-village3-introduction+27", 2, ["NO-XGO"], ""], +["sage-village3-introduction+28", "sage-village3-introduction+28", 2, ["NO-XGO"], ""], +["sage-village3-introduction+29", "sage-village3-introduction+29", 2, ["NO-XGO"], ""], +["sage-village3-introduction+30", "sage-village3-introduction+30", 2, ["NO-XGO"], ""], +["sage-village3-introduction+31", "sage-village3-introduction+31", 2, ["NO-XGO"], ""], +["sage-village3-introduction+32", "sage-village3-introduction+32", 2, ["NO-XGO"], ""], +["sage-village3-introduction+33", "sage-village3-introduction+33", 2, ["NO-XGO"], ""], +["sage-village3-introduction+34", "sage-village3-introduction+34", 2, ["NO-XGO"], ""], +["sage-village3-introduction+35", "sage-village3-introduction+35", 2, ["NO-XGO"], ""], +["sage-village3-introduction+36", "sage-village3-introduction+36", 2, ["NO-XGO"], ""], +["sage-village3-introduction+37", "sage-village3-introduction+37", 2, ["NO-XGO"], ""], +["sage-village3-introduction+38", "sage-village3-introduction+38", 2, ["NO-XGO"], ""], +["sage-village3-introduction+39", "sage-village3-introduction+39", 2, ["NO-XGO"], ""], +["sage-village3-introduction+40", "sage-village3-introduction+40", 2, ["NO-XGO"], ""], +["sage-village3-introduction+41", "sage-village3-introduction+41", 2, ["NO-XGO"], ""], +["sage-village3-introduction+42", "sage-village3-introduction+42", 2, ["NO-XGO"], ""], +["sage-village3-introduction+43", "sage-village3-introduction+43", 2, ["NO-XGO"], ""], +["sage-village3-introduction+44", "sage-village3-introduction+44", 2, ["NO-XGO"], ""], +["sage-village3-introduction+45", "sage-village3-introduction+45", 2, ["NO-XGO"], ""], +["sage-village3-introduction+46", "sage-village3-introduction+46", 2, ["NO-XGO"], ""], +["sage-village3-introduction+47", "sage-village3-introduction+47", 2, ["NO-XGO"], ""], +["sage-village3-introduction+48", "sage-village3-introduction+48", 2, ["NO-XGO"], ""], +["sage-village3-introduction+49", "sage-village3-introduction+49", 2, ["NO-XGO"], ""], +["sage-village3-introduction+50", "sage-village3-introduction+50", 2, ["NO-XGO"], ""], +["sage-village3-introduction+51", "sage-village3-introduction+51", 2, ["NO-XGO"], ""], +["sage-village3-introduction+52", "sage-village3-introduction+52", 2, ["NO-XGO"], ""], +["sage-village3-introduction+53", "sage-village3-introduction+53", 2, ["NO-XGO"], ""], +["sage-village3-introduction+54", "sage-village3-introduction+54", 2, ["NO-XGO"], ""], +["sage-village3-introduction+55", "sage-village3-introduction+55", 2, ["NO-XGO"], ""], +["sage-village3-introduction+56", "sage-village3-introduction+56", 2, ["NO-XGO"], ""], +["sage-village3-introduction+57", "sage-village3-introduction+57", 2, ["NO-XGO"], ""]] diff --git a/decompiler/config/jak1_sced/anonymous_function_types.jsonc b/decompiler/config/jak1_sced/anonymous_function_types.jsonc new file mode 100644 index 0000000000..cb434cc4f4 --- /dev/null +++ b/decompiler/config/jak1_sced/anonymous_function_types.jsonc @@ -0,0 +1,811 @@ +{ + "gkernel": [ + [16, "(function process symbol)"], + [22, "(function process symbol)"], + [25, "(function process symbol)"], + [28, "(function process symbol)"], + [30, "(function process symbol)"], + [32, "(function process symbol)"] + ], + + "hud": [[10, "(function none :behavior hud)"]], + + "main": [[4, "(function none :behavior process)"]], + + "process-drawable": [[29, "(function string symbol)"]], + + "task-control": [ + [9, "(function task-control symbol)"], + [10, "(function task-control symbol)"], + [11, "(function task-control symbol)"], + [12, "(function task-control symbol)"], + [13, "(function task-control symbol)"], + [14, "(function task-control symbol)"], + [15, "(function task-control symbol)"], + [16, "(function task-control symbol)"], + [17, "(function task-control symbol)"], + [18, "(function task-control symbol)"], + [19, "(function task-control symbol)"], + [20, "(function task-control symbol)"], + [21, "(function task-control symbol)"], + [22, "(function task-control symbol)"], + [23, "(function task-control symbol)"], + [24, "(function task-control symbol)"], + [25, "(function task-control symbol)"], + [26, "(function task-control symbol)"], + [27, "(function task-control symbol)"], + [28, "(function task-control symbol)"], + [29, "(function task-control symbol)"], + [30, "(function task-control symbol)"], + [31, "(function task-control symbol)"], + [32, "(function task-control symbol)"], + [33, "(function task-control symbol)"], + [34, "(function task-control symbol)"], + [35, "(function task-control symbol)"], + [36, "(function task-control symbol)"], + [37, "(function task-control symbol)"], + [38, "(function task-control symbol)"], + [39, "(function task-control symbol)"], + [40, "(function task-control symbol)"], + [41, "(function task-control symbol)"], + [42, "(function task-control symbol)"], + [43, "(function task-control symbol)"], + [44, "(function task-control symbol)"], + [45, "(function task-control symbol)"], + [46, "(function task-control symbol)"], + [47, "(function task-control symbol)"], + [48, "(function task-control symbol)"], + [49, "(function task-control symbol)"], + [50, "(function task-control symbol)"], + [51, "(function task-control symbol)"], + [52, "(function task-control symbol)"], + [53, "(function task-control symbol)"], + [54, "(function task-control symbol)"], + [55, "(function task-control symbol)"], + [56, "(function task-control symbol)"], + [57, "(function task-control symbol)"], + [58, "(function task-control symbol)"], + [59, "(function task-control symbol)"], + [60, "(function task-control symbol)"], + [61, "(function task-control symbol)"], + [62, "(function task-control symbol)"], + [63, "(function task-control symbol)"], + [64, "(function task-control symbol)"], + [65, "(function task-control symbol)"], + [66, "(function task-control symbol)"], + [67, "(function task-control symbol)"], + [68, "(function task-control symbol)"], + [69, "(function task-control symbol)"], + [70, "(function task-control symbol)"], + [71, "(function task-control symbol)"], + [72, "(function task-control symbol)"], + [73, "(function task-control symbol)"], + [74, "(function task-control symbol)"], + [75, "(function task-control symbol)"], + [76, "(function task-control symbol)"], + [77, "(function task-control symbol)"], + [78, "(function task-control symbol)"], + [79, "(function task-control symbol)"], + [80, "(function task-control symbol)"], + [81, "(function task-control symbol)"], + [82, "(function task-control symbol)"], + [83, "(function task-control symbol)"], + [84, "(function task-control symbol)"], + [85, "(function task-control symbol)"], + [86, "(function task-control symbol)"], + [87, "(function task-control symbol)"], + [88, "(function task-control symbol)"], + [89, "(function task-control symbol)"], + [90, "(function task-control symbol)"], + [91, "(function task-control symbol)"], + [92, "(function task-control symbol)"], + [93, "(function task-control symbol)"], + [94, "(function task-control symbol)"], + [95, "(function task-control symbol)"], + [96, "(function task-control symbol)"], + [97, "(function task-control symbol)"], + [98, "(function task-control symbol)"], + [99, "(function task-control symbol)"], + [100, "(function task-control symbol)"], + [101, "(function task-control symbol)"], + [102, "(function task-control symbol)"], + [103, "(function task-control symbol)"], + [104, "(function task-control symbol)"], + [105, "(function task-control symbol)"], + [106, "(function task-control symbol)"], + [107, "(function task-control symbol)"], + [108, "(function task-control symbol)"], + [109, "(function task-control symbol)"], + [110, "(function task-control symbol)"], + [111, "(function task-control symbol)"], + [112, "(function task-control symbol)"], + [113, "(function task-control symbol)"], + [114, "(function task-control symbol)"], + [115, "(function task-control symbol)"], + [116, "(function task-control symbol)"], + [117, "(function task-control symbol)"], + [118, "(function task-control symbol)"], + [119, "(function task-control symbol)"], + [120, "(function task-control symbol)"], + [121, "(function task-control symbol)"], + [122, "(function task-control symbol)"], + [123, "(function task-control symbol)"], + [124, "(function task-control symbol)"], + [125, "(function task-control symbol)"], + [126, "(function task-control symbol)"], + [127, "(function task-control symbol)"], + [128, "(function task-control symbol)"], + [129, "(function task-control symbol)"], + [130, "(function task-control symbol)"], + [131, "(function task-control symbol)"], + [132, "(function task-control symbol)"], + [133, "(function task-control symbol)"], + [134, "(function task-control symbol)"], + [135, "(function task-control symbol)"], + [136, "(function task-control symbol)"], + [137, "(function task-control symbol)"], + [138, "(function task-control symbol)"], + [139, "(function task-control symbol)"], + [140, "(function task-control symbol)"], + [141, "(function task-control symbol)"], + [142, "(function task-control symbol)"], + [143, "(function task-control symbol)"], + [144, "(function task-control symbol)"], + [145, "(function task-control symbol)"], + [146, "(function task-control symbol)"], + [147, "(function task-control symbol)"], + [148, "(function task-control symbol)"], + [149, "(function task-control symbol)"], + [150, "(function task-control symbol)"], + [151, "(function task-control symbol)"], + [152, "(function task-control symbol)"], + [153, "(function task-control symbol)"], + [154, "(function task-control symbol)"], + [155, "(function task-control symbol)"], + [156, "(function task-control symbol)"], + [157, "(function task-control symbol)"], + [158, "(function task-control symbol)"], + [159, "(function task-control symbol)"], + [160, "(function task-control symbol)"], + [161, "(function task-control symbol)"], + [162, "(function task-control symbol)"], + [163, "(function task-control symbol)"], + [164, "(function task-control symbol)"], + [165, "(function task-control symbol)"], + [166, "(function task-control symbol)"], + [167, "(function task-control symbol)"], + [168, "(function task-control symbol)"], + [169, "(function task-control symbol)"], + [170, "(function task-control symbol)"], + [171, "(function task-control symbol)"], + [172, "(function task-control symbol)"], + [173, "(function task-control symbol)"], + [174, "(function task-control symbol)"], + [175, "(function task-control symbol)"], + [176, "(function task-control symbol)"], + [177, "(function task-control symbol)"], + [178, "(function task-control symbol)"], + [179, "(function task-control symbol)"], + [180, "(function task-control symbol)"], + [181, "(function task-control symbol)"], + [182, "(function task-control symbol)"], + [183, "(function task-control symbol)"], + [184, "(function task-control symbol)"], + [185, "(function task-control symbol)"], + [186, "(function task-control symbol)"], + [187, "(function task-control symbol)"], + [188, "(function task-control symbol)"], + [189, "(function task-control symbol)"], + [190, "(function task-control symbol)"], + [191, "(function task-control symbol)"], + [192, "(function task-control symbol)"], + [193, "(function task-control symbol)"], + [194, "(function task-control symbol)"], + [195, "(function task-control symbol)"], + [196, "(function task-control symbol)"], + [197, "(function task-control symbol)"], + [198, "(function task-control symbol)"], + [199, "(function task-control symbol)"], + [200, "(function task-control symbol)"], + [201, "(function task-control symbol)"], + [202, "(function task-control symbol)"], + [203, "(function task-control symbol)"], + [204, "(function task-control symbol)"], + [205, "(function task-control symbol)"], + [206, "(function task-control symbol)"], + [207, "(function task-control symbol)"], + [208, "(function task-control symbol)"], + [209, "(function task-control symbol)"], + [210, "(function task-control symbol)"], + [211, "(function task-control symbol)"], + [212, "(function task-control symbol)"], + [213, "(function task-control symbol)"], + [214, "(function task-control symbol)"], + [215, "(function task-control symbol)"], + [216, "(function task-control symbol)"], + [217, "(function task-control symbol)"], + [218, "(function task-control symbol)"], + [219, "(function task-control symbol)"], + [220, "(function task-control symbol)"], + [221, "(function task-control symbol)"], + [222, "(function task-control symbol)"], + [223, "(function task-control symbol)"], + [224, "(function task-control symbol)"], + [225, "(function task-control symbol)"], + [226, "(function task-control symbol)"], + [227, "(function task-control symbol)"], + [228, "(function task-control symbol)"], + [229, "(function task-control symbol)"], + [230, "(function task-control symbol)"], + [231, "(function task-control symbol)"], + [232, "(function task-control symbol)"], + [233, "(function task-control symbol)"], + [234, "(function task-control symbol)"], + [235, "(function task-control symbol)"], + [236, "(function task-control symbol)"], + [237, "(function task-control symbol)"], + [238, "(function task-control symbol)"], + [239, "(function task-control symbol)"], + [240, "(function task-control symbol)"], + [241, "(function task-control symbol)"], + [242, "(function task-control symbol)"], + [243, "(function task-control symbol)"], + [244, "(function task-control symbol)"], + [245, "(function task-control symbol)"], + [246, "(function task-control symbol)"], + [247, "(function task-control symbol)"], + [248, "(function task-control symbol)"], + [249, "(function task-control symbol)"], + [250, "(function task-control symbol)"], + [251, "(function task-control symbol)"], + [252, "(function task-control symbol)"], + [253, "(function task-control symbol)"], + [254, "(function task-control symbol)"], + [255, "(function task-control symbol)"], + [256, "(function task-control symbol)"], + [257, "(function task-control symbol)"], + [258, "(function task-control symbol)"], + [259, "(function task-control symbol)"], + [260, "(function task-control symbol)"], + [261, "(function task-control symbol)"], + [262, "(function task-control symbol)"], + [263, "(function task-control symbol)"], + [264, "(function task-control symbol)"], + [265, "(function task-control symbol)"], + [266, "(function task-control symbol)"], + [267, "(function task-control symbol)"], + [268, "(function task-control symbol)"], + [269, "(function task-control symbol)"], + [270, "(function task-control symbol)"], + [271, "(function task-control symbol)"], + [272, "(function task-control symbol)"], + [273, "(function task-control symbol)"], + [274, "(function task-control symbol)"], + [275, "(function task-control symbol)"], + [276, "(function task-control symbol)"], + [277, "(function task-control symbol)"], + [278, "(function task-control symbol)"], + [279, "(function task-control symbol)"], + [280, "(function task-control symbol)"], + [281, "(function task-control symbol)"], + [282, "(function task-control symbol)"], + [283, "(function task-control symbol)"], + [284, "(function task-control symbol)"], + [285, "(function task-control symbol)"], + [286, "(function task-control symbol)"], + [287, "(function task-control symbol)"], + [288, "(function task-control symbol)"], + [289, "(function task-control symbol)"], + [290, "(function task-control symbol)"], + [291, "(function task-control symbol)"], + [292, "(function task-control symbol)"], + [293, "(function task-control symbol)"], + [294, "(function task-control symbol)"], + [295, "(function task-control symbol)"], + [296, "(function task-control symbol)"], + [297, "(function task-control symbol)"], + [298, "(function task-control symbol)"], + [299, "(function task-control symbol)"], + [300, "(function task-control symbol)"], + [301, "(function task-control symbol)"], + [302, "(function task-control symbol)"], + [303, "(function task-control symbol)"], + [304, "(function task-control symbol)"], + [305, "(function task-control symbol)"], + [306, "(function task-control symbol)"], + [307, "(function task-control symbol)"], + [308, "(function task-control symbol)"], + [309, "(function task-control symbol)"], + [310, "(function task-control symbol)"], + [311, "(function task-control symbol)"], + [312, "(function task-control symbol)"], + [313, "(function task-control symbol)"], + [314, "(function task-control symbol)"], + [315, "(function task-control symbol)"], + [316, "(function task-control symbol)"], + [317, "(function task-control symbol)"], + [318, "(function task-control symbol)"], + [319, "(function task-control symbol)"], + [320, "(function task-control symbol)"], + [321, "(function task-control symbol)"], + [322, "(function task-control symbol)"], + [323, "(function task-control symbol)"], + [324, "(function task-control symbol)"], + [325, "(function task-control symbol)"], + [326, "(function task-control symbol)"], + [327, "(function task-control symbol)"], + [328, "(function task-control symbol)"], + [329, "(function task-control symbol)"], + [330, "(function task-control symbol)"], + [331, "(function task-control symbol)"], + [332, "(function task-control symbol)"], + [333, "(function task-control symbol)"], + [334, "(function task-control symbol)"], + [335, "(function task-control symbol)"], + [336, "(function task-control task-control symbol)"], + [337, "(function task-control task-control symbol)"], + [338, "(function task-control symbol)"], + [339, "(function task-control symbol)"], + [340, "(function task-control symbol)"], + [341, "(function task-control symbol)"], + [342, "(function task-control symbol)"], + [343, "(function task-control symbol)"], + [344, "(function task-control symbol)"], + [345, "(function task-control symbol)"], + [346, "(function task-control symbol)"], + [347, "(function task-control symbol)"], + [348, "(function task-control symbol)"], + [349, "(function task-control symbol)"], + [350, "(function task-control symbol)"], + [351, "(function task-control symbol)"], + [352, "(function task-control symbol)"], + [353, "(function task-control symbol)"], + [354, "(function task-control symbol)"], + [355, "(function task-control symbol)"], + [356, "(function task-control symbol)"], + [357, "(function task-control symbol)"], + [358, "(function task-control symbol)"], + [359, "(function task-control symbol)"], + [360, "(function task-control symbol)"], + [361, "(function task-control symbol)"], + [362, "(function task-control task-control symbol)"], + [363, "(function task-control task-control symbol)"], + [364, "(function task-control task-control symbol)"], + [365, "(function task-control task-control symbol)"], + [366, "(function task-control symbol)"], + [367, "(function task-control symbol)"], + [368, "(function task-control symbol)"], + [369, "(function task-control symbol)"], + [370, "(function task-control symbol)"], + [371, "(function task-control symbol)"], + [372, "(function task-control symbol)"], + [373, "(function task-control symbol)"], + [374, "(function task-control symbol)"], + [375, "(function task-control symbol)"], + [376, "(function task-control symbol)"], + [377, "(function task-control symbol)"], + [378, "(function task-control symbol)"], + [379, "(function task-control symbol)"], + [380, "(function task-control symbol)"], + [381, "(function task-control symbol)"], + [382, "(function task-control symbol)"], + [383, "(function task-control symbol)"], + [384, "(function task-control symbol)"], + [385, "(function task-control symbol)"], + [386, "(function task-control symbol)"], + [387, "(function task-control symbol)"], + [388, "(function task-control symbol)"], + [389, "(function task-control symbol)"], + [390, "(function task-control symbol)"], + [391, "(function task-control symbol)"], + [392, "(function task-control symbol)"], + [393, "(function task-control symbol)"], + [394, "(function task-control symbol)"], + [395, "(function task-control symbol)"], + [396, "(function task-control symbol)"], + [397, "(function task-control symbol)"], + [398, "(function task-control symbol)"], + [399, "(function task-control symbol)"], + [400, "(function task-control symbol)"], + [401, "(function task-control symbol)"], + [402, "(function task-control symbol)"], + [403, "(function task-control symbol)"], + [404, "(function task-control symbol)"], + [405, "(function task-control symbol)"], + [406, "(function task-control symbol)"], + [407, "(function task-control symbol)"], + [408, "(function task-control symbol)"], + [409, "(function task-control symbol)"], + [410, "(function task-control symbol)"], + [411, "(function task-control symbol)"], + [412, "(function task-control symbol)"], + [413, "(function task-control symbol)"], + [414, "(function task-control task-control symbol)"], + [415, "(function task-control task-control symbol)"], + [416, "(function task-control symbol)"], + [417, "(function task-control symbol)"], + [418, "(function task-control symbol)"], + [419, "(function task-control symbol)"], + [420, "(function task-control symbol)"], + [421, "(function task-control symbol)"], + [422, "(function task-control symbol)"], + [423, "(function task-control symbol)"], + [424, "(function task-control symbol)"], + [425, "(function task-control task-control symbol)"], + [426, "(function task-control task-control symbol)"], + [427, "(function task-control symbol)"], + [428, "(function task-control symbol)"], + [429, "(function task-control symbol)"], + [430, "(function task-control symbol)"], + [431, "(function task-control symbol)"], + [432, "(function task-control task-control symbol)"], + [433, "(function task-control task-control symbol)"], + [434, "(function task-control task-control symbol)"], + [435, "(function task-control symbol)"], + [436, "(function task-control task-control symbol)"], + [437, "(function task-control task-control symbol)"], + [438, "(function task-control task-control symbol)"], + [439, "(function task-control symbol)"], + [440, "(function task-control symbol)"], + [441, "(function task-control symbol)"], + [442, "(function task-control symbol)"], + [443, "(function task-control task-control symbol)"], + [444, "(function task-control task-control symbol)"], + [445, "(function task-control symbol)"], + [446, "(function task-control task-control symbol)"], + [447, "(function task-control task-control symbol)"], + [448, "(function task-control task-control symbol)"], + [449, "(function task-control symbol)"], + [450, "(function task-control symbol)"], + [451, "(function task-control symbol)"], + [452, "(function task-control symbol)"], + [453, "(function task-control task-control symbol)"], + [454, "(function task-control task-control symbol)"], + [455, "(function task-control symbol)"], + [456, "(function task-control task-control symbol)"], + [457, "(function task-control task-control symbol)"], + [458, "(function task-control task-control symbol)"], + [459, "(function task-control symbol)"], + [460, "(function task-control symbol)"], + [461, "(function task-control symbol)"], + [462, "(function task-control symbol)"], + [463, "(function task-control symbol)"], + [464, "(function task-control symbol)"], + [465, "(function task-control symbol)"], + [466, "(function task-control symbol)"], + [467, "(function task-control symbol)"], + [468, "(function task-control symbol)"], + [469, "(function task-control symbol)"], + [470, "(function task-control symbol)"], + [471, "(function task-control symbol)"], + [472, "(function task-control symbol)"], + [473, "(function task-control symbol)"], + [474, "(function task-control task-control symbol)"], + [475, "(function task-control task-control symbol)"], + [476, "(function task-control task-control symbol)"], + [477, "(function task-control task-control symbol)"], + [478, "(function task-control symbol)"], + [479, "(function task-control symbol)"], + [480, "(function task-control symbol)"], + [481, "(function task-control symbol)"], + [482, "(function task-control symbol)"], + [483, "(function task-control symbol)"], + [484, "(function task-control symbol)"], + [485, "(function task-control symbol)"], + [486, "(function task-control symbol)"], + [487, "(function task-control symbol)"], + [488, "(function task-control symbol)"], + [489, "(function task-control symbol)"], + [490, "(function task-control symbol)"], + [491, "(function task-control symbol)"], + [492, "(function task-control symbol)"], + [493, "(function task-control symbol)"], + [494, "(function task-control symbol)"], + [495, "(function task-control symbol)"], + [496, "(function task-control symbol)"] + ], + + "game-info": [ + [17, "(function symbol symbol continue-point symbol none)"], + [6, "(function process-drawable none)"], + [7, "(function none :behavior process-drawable)"], + [8, "(function object)"] + ], + + "default-menu": [ + [3, "(function none)"], + [4, "(function int int symbol)"], // TODO - first arg is ignored - i think there's a decomp bug here + [5, "(function int int symbol)"], // TODO - first arg is ignored + [6, "(function int int target)"], // TODO - first arg is ignored + [8, "(function int)"], + [9, "(function continue-point)"], + [10, "(function none)"], + [11, "(function object)"], + [12, "(function object)"], + [13, "(function object)"], + [14, "(function quaternion)"], + [15, "(function quaternion)"], + [16, "(function int int basic)"], // TODO - first arg is ignored + [17, "(function int)"], + [18, "(function int)"], + [19, "(function int)"], + [20, "(function none)"], + [21, "(function int int basic)"], // TODO - first arg is ignored + [22, "(function int int basic)"], // TODO - first arg is ignored + [23, "(function int int basic)"], // TODO - first arg is ignored + [24, "(function int int float float)"], // TODO - first arg is ignored + [25, "(function int int float float)"], // TODO - first arg is ignored + [26, "(function int int float float)"], // TODO - first arg is ignored + [27, "(function int int target)"], // TODO - first arg is ignored + [28, "(function none)"], + [29, "(function none)"], + [30, "(function none)"], + [31, "(function none)"], + [32, "(function none)"], + [33, "(function none)"], + [34, "(function int)"], + [35, "(function int)"], + [60, "(function debug-menu int float float object)"], // TODO - instance type blocking this one, not 100% sure about the debug-menu, but it has a string at offset 0 + [61, "(function debug-menu int float float object)"], // TODO - instance type blocking this one, not 100% sure about the debug-menu, but it has a string at offset 0 + [63, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [64, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [65, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [66, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [67, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [68, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [69, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [70, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [71, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [72, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [73, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [74, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [75, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [76, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [77, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [78, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [79, "(function symbol int int basic object)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) and a3 is a default return value it seems + [80, "(function object)"], + [81, "(function object)"], + [82, "(function symbol int float float none)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) + [84, "(function symbol int none)"], // TODO - i don't know the first (is a basic/struct with an int32 at offset 0) + [88, "(function debug-menu debug-menu symbol)"], // not 100% sure about the debug-menu, but it has a string at offset 0 + [89, "(function debug-menu debug-menu symbol)"], // not 100% sure about the debug-menu, but it has a string at offset 0 + [90, "(function debug-menu debug-menu symbol)"] // not 100% sure about the debug-menu, but it has a string at offset 0 + ], + "memory-usage": [ + [3, "(function basic symbol)"], + [2, "(function process symbol)"] + ], + + "anim-tester": [ + [11, "(function none :behavior anim-tester)"], + [12, "(function none :behavior anim-tester)"], + [13, "(function none :behavior anim-tester)"] + ], + "cam-combiner": [ + [1, "(function none :behavior camera-combiner)"], + [ + 2, + "(function basic int basic event-message-block object :behavior camera-combiner)" + ] + ], + + "title-obs": [[0, "(function none)"]], + + "title-obs": [[0, "(function none)"]], + + "misty-warehouse": [ + [3, "(function symbol none :behavior silostep)"], + [4, "(function none :behavior silostep)"], + [6, "(function none :behavior camera-tracker)"], + [7, "(function none :behavior silostep)"], + [ + 8, + "(function process int symbol event-message-block none :behavior silostep)" + ] + ], + + "rigid-body": [ + [5, "(function none :behavior rigid-body-platform)"], + [6, "(function none :behavior rigid-body-platform)"], + [7, "(function none :behavior rigid-body-platform)"], + [8, "(function none :behavior rigid-body-platform)"] + ], + + "sunken-elevator": [ + [3, "(function object :behavior sunken-elevator)"], + [4, "(function int :behavior sunken-elevator)"], + [5, "(function symbol :behavior sunken-elevator)"], + [6, "(function int :behavior sunken-elevator)"] + ], + + "nav-enemy": [ + [8, "(function none :behavior nav-enemy)"], + [9, "(function none)"], // stubbed + [10, "(function uint :behavior nav-enemy)"], + [11, "(function object :behavior nav-enemy)"], + [12, "(function none :behavior nav-enemy)"], + [13, "(function object :behavior nav-enemy)"], + [14, "(function uint :behavior nav-enemy)"], + [15, "(function object :behavior nav-enemy)"], + [16, "(function object :behavior nav-enemy)"], + [17, "(function vector :behavior nav-enemy)"], + [19, "(function object :behavior nav-enemy)"], + [20, "(function uint :behavior nav-enemy)"], + [21, "(function none :behavior nav-enemy)"], + [28, "(function symbol :behavior nav-enemy)"], + [29, "(function symbol :behavior nav-enemy)"], + [30, "(function object :behavior nav-enemy)"], + [31, "(function object :behavior nav-enemy)"], + [32, "(function vector :behavior nav-enemy)"], + [33, "(function object :behavior nav-enemy)"], + [34, "(function object :behavior nav-enemy)"], + [35, "(function object :behavior nav-enemy)"], + [36, "(function uint :behavior nav-enemy)"], + [37, "(function object :behavior nav-enemy)"], + [38, "(function object :behavior nav-enemy)"], + [39, "(function uint :behavior nav-enemy)"], + [40, "(function vector :behavior nav-enemy)"], + [41, "(function none :behavior nav-enemy)"], + [42, "(function object :behavior nav-enemy)"], + [43, "(function uint :behavior nav-enemy)"], + [44, "(function none :behavior nav-enemy)"], + [45, "(function object :behavior nav-enemy)"], + [46, "(function none :behavior nav-enemy)"], + [50, "(function none :behavior nav-enemy)"], + [51, "(function object :behavior nav-enemy)"], + [52, "(function uint :behavior nav-enemy)"], + [54, "(function object :behavior nav-enemy)"], + [55, "(function uint :behavior nav-enemy)"], + [56, "(function none :behavior nav-enemy)"], + [57, "(function object :behavior nav-enemy)"], + [58, "(function uint :behavior nav-enemy)"], + [59, "(function uint :behavior nav-enemy)"], + [60, "(function none :behavior nav-enemy)"], + [61, "(function object :behavior nav-enemy)"], + [62, "(function int :behavior nav-enemy)"] + ], + + "oracle": [ + [1, "(function sparticle-launch-group :behavior oracle)"], + [2, "(function sparticle-launch-group :behavior oracle)"], + [3, "(function none :behavior oracle)"] + ], + + "time-of-day": [ + [10, "(function none :behavior time-of-day-proc)"], + [12, "(function sparticle-system sparticle-cpuinfo none)"] + ], + + "basebutton": [[1, "(function symbol :behavior target)"]], + + "entity": [[10, "(function process-drawable none)"]], + + "beach-rocks": [ + [2, "(function none :behavior beach-rock)"], + [3, "(function none :behavior beach-rock)"], + [4, "(function none :behavior beach-rock)"], + [5, "(function none :behavior beach-rock)"], + [6, "(function none :behavior beach-rock)"], + [ + 7, + "(function process int symbol event-message-block none :behavior beach-rock)" + ] + ], + + "projectiles": [[27, "(function projectile int)"]], + + "sidekick-human": [ + [7, "(function sparticle-launch-control :behavior sequenceC)"], + [15, "(function sparticle-launch-control :behavior sequenceB)"], + [16, "(function sparticle-launch-control :behavior sequenceB)"] + ], + + "demo-obs": [[1, "(function target)"]], + + "final-door": [ + [11, "(function final-door symbol)"], + [12, "(function final-door symbol)"] + ], + + "plat-eco": [ + [4, "(function none :behavior plat-eco)"], // trans + [5, "(function int float :behavior plat-eco)"], // enter + [6, "(function none :behavior plat-eco)"], // post + [7, "(function handle none :behavior plat-eco)"], // code + [8, "(function none :behavior plat-eco)"], // trans + [ + 9, + "(function process int symbol event-message-block object :behavior plat-eco)" + ], // event + [10, "(function symbol :behavior plat-eco)"], // code + [11, "(function none :behavior plat-eco)"], // trans + [12, "(function int :behavior plat-eco)"], // enter + [ + 13, + "(function process int symbol event-message-block object :behavior plat-eco)" + ] // event + ], + + "plat-flip": [ + [1, "(function none :behavior plat-flip)"], // code + [ + 2, + "(function process int symbol event-message-block object :behavior plat-flip)" + ] // event + ], + + "pov-camera": [ + [ + 1, + "(function process int symbol event-message-block object :behavior pov-camera)" + ] + ], + + "flying-lurker": [ + [37, "(function uint :behavior manipy)"], + [12, "(function uint :behavior manipy)"], + [11, "(function none :behavior process)"] + ], + + "ambient": [ + [ + 29, + "(function process int symbol event-message-block object :behavior level-hint)" + ] + ], + + "process-taskable": [[46, "(function process-taskable symbol)"]], + + "fishermans-boat": [ + [5, "(function none :behavior fishermans-boat)"], + [21, "(function none :behavior fishermans-boat)"], + [29, "(function none :behavior fishermans-boat)"] + ], + + "muse": [[3, "(function none :behavior muse)"]], + + "relocate": [[6, "(function sparticle-system sparticle-cpuinfo none)"]], + + "fisher-JUN": [ + [27, "(function none :behavior process)"], + [28, "(function none :behavior fisher)"], + [20, "(function none :behavior fisher-fish)"], + [1, "(function none :behavior target)"] + ], + "fisher-JUNGLE-L1": [ + [27, "(function none :behavior process)"], + [28, "(function none :behavior fisher)"], + [20, "(function none :behavior fisher-fish)"], + [1, "(function none :behavior target)"] + ], + + "robotboss-misc": [ + [5, "(function sparticle-launch-control :behavior finalbosscam)"] + ], + + "sage-finalboss-FIN": [ + [21, "(function none :behavior sage-finalboss)"], + [22, "(function none :behavior sage-finalboss)"], + [15, "(function final-door symbol)"], + [16, "(function final-door symbol)"], + [7, "(function final-door symbol)"], + [6, "(function final-door symbol)"] + ], + "sage-finalboss-L1": [ + [21, "(function none :behavior sage-finalboss)"], + [22, "(function none :behavior sage-finalboss)"], + [15, "(function final-door symbol)"], + [16, "(function final-door symbol)"], + [7, "(function final-door symbol)"], + [6, "(function final-door symbol)"] + ], + + "racer-states-FIC-LAV-MIS-OGR-ROL": [ + [17, "(function (pointer process) :behavior racer)"], + [45, "(function joint-mod :behavior manipy)"], + [46, "(function float :behavior manipy)"] + ], + + "placeholder-do-not-add-below": [] +} diff --git a/decompiler/config/jak1_sced/hacks.jsonc b/decompiler/config/jak1_sced/hacks.jsonc new file mode 100644 index 0000000000..bdf1358bdc --- /dev/null +++ b/decompiler/config/jak1_sced/hacks.jsonc @@ -0,0 +1,561 @@ +{ + //////////////////////////// + // HACKS and ASM FUNCTIONS + //////////////////////////// + + "types_with_bad_inspect_methods": [ + "engine", + "bsp-header", + "joint-anim-matrix", + "part-tracker" + ], + + "no_type_analysis_functions_by_name": [], + + // this limits the number of cases in a cond. The first argument is the name of the function. + // the second argument is the name of the first condition in the cond. Use print_cfg to find it out. + // The third argument is the number of cases. If you set it too small it may fail to build the CFG. + "cond_with_else_max_lengths": [ + ["(method 20 res-lump)", "b0", 2], + ["(method 11 res-lump)", "b0", 1], + ["(method 12 res-lump)", "b0", 1] + ], + + // if a cond with an else case is being used a value in a place where it looks wrong + // you can add the function name to this list and it will more aggressively reject this rewrite. + "aggressively_reject_cond_to_value_rewrite": [ + "(method 10 res-lump)", + "(method 11 res-lump)", + "(method 12 res-lump)", + "(method 7 texture-page)" + ], + + // this provides a hint to the decompiler that these functions will have a lot of inline assembly. + // currently it just leaves pcpyld as an asm op. + "hint_inline_assembly_functions": ["matrix-transpose!"], + + "asm_functions_by_name": [ + // gcommon + "quad-copy!", + + // gkernel + "(method 11 cpu-thread)", + "throw", + "return-from-thread", + "return-from-thread-dead", + "reset-and-call", + "(method 10 cpu-thread)", + "(method 0 catch-frame)", + "throw-dispatch", + "set-to-run-bootstrap", + "run-function-in-process", // not asm, but it uses the stack. + + // pskernel + "return-from-exception", // F: eret + "kernel-read-function", // F: delay slot tricks + "kernel-write-function", // F: delay slot tricks + "kernel-copy-function", + "kernel-check-hardwired-addresses", + + // math + "rand-uint31-gen", + + // bounding box + "(method 9 bounding-box)", // F: asm branching + "(method 14 bounding-box)", + + // matrix + "(method 9 matrix)", // F: asm branching + "matrix-axis-sin-cos!", // F: asm branching + "matrix-axis-sin-cos-vu!", + + // geometry + "circle-circle-xz-intersect", // F: asm branching + + // trigonometry + "exp", // BUG: cfg is wrong. + "atan0", // P: manual use of stack + "sincos!", // P: manual use of stack + "sincos-rad!", + + // dma-h + "dma-count-until-done", // F: asm branching + "dma-sync-with-count", // F: asm branching + "dma-send-no-scratch", // F: asm branching + "dma-sync-fast", + + // dma + "symlink3", // F: asm branching + "symlink2", // F: asm branching + "dma-sync-hang", + + // display + "vblank-handler", // F: weird asm for interrupt handler + "vif1-handler", // F: weird asm for interrupt handler + "vif1-handler-debug", + + // vector + "vector=", // asm branching + + // collide-mesh-h + "(method 11 collide-mesh-cache)", + + // collide-func + "moving-sphere-triangle-intersect", // P: weird branching + "collide-do-primitives", // P: asm branching + + // joint + "calc-animation-from-spr", // F: asm branching + "decompress-frame-data-pair-to-accumulator", // P: asm calling + "decompress-frame-data-to-accumulator", // P: asm calling + "decompress-fixed-data-to-accumulator", // P: asm calling + "normalize-frame-quaternions", // F: asm branching, return + "clear-frame-accumulator", // F: asm branching + "cspace<-parented-transformq-joint!", + + // sprite + + // merc-blend-shape + "setup-blerc-chains-for-one-fragment", // F: asm branching + "merc-dma-chain-to-spr", // F: asm branching + "blerc-a-fragment", + + // ripple + "ripple-matrix-scale", + "ripple-apply-wave-table", + "ripple-create-wave-table", + "ripple-execute-init", + + // bones + "draw-bones-hud", + "draw-bones", + "draw-bones-check-longest-edge-asm", + "draw-bones-merc", + "bones-mtx-calc-execute", + "bones-mtx-calc", + "texscroll-execute", + + // generic-effect + "generic-debug-light-proc", + "generic-none-dma-wait", + "generic-copy-vtx-dclr-dtex", + "generic-light", + "generic-envmap-only-proc", + "generic-no-light", + "generic-no-light+envmap", + "generic-no-light-dproc", + "generic-no-light-dproc-only", + "generic-no-light-proc", + "generic-interp-dproc", + "generic-envmap-dproc", + "generic-prepare-dma-single", + "generic-prepare-dma-double", + "generic-envmap-proc", + "generic-light-proc", + "generic-dma-from-spr", + "upload-vu0-program", + + // generic-merc + "generic-merc-execute-all", + "generic-merc-execute-asm", + "high-speed-reject", + "mercneric-convert", + "mercneric-bittable-asm", + "mercneric-shader-asm", + "mercneric-matrix-asm", + "generic-merc-init-asm", + + // generic-tie + "generic-tie-convert", + "generic-tie-convert-proc", + "generic-tie-upload-next", + "generic-tie-decompress", + "generic-tie-dma-to-spad-sync", + + // shadow-cpu + "shadow-execute", + "shadow-add-double-edges", + "shadow-add-double-tris", + "shadow-add-single-edges", + "shadow-add-facing-single-tris", + "shadow-add-verts", + "shadow-find-double-edges", + "shadow-find-facing-double-tris", + "shadow-find-single-edges", + "shadow-find-facing-single-tris", + "shadow-scissor-top", + "shadow-scissor-edges", + "shadow-calc-dual-verts", + + // background + "background-upload-vu0", + + // draw-node + "draw-node-cull", + + // shrubbery + "test-func", + "draw-inline-array-instance-shrub", + + // tfrag + "stats-tfrag-asm", + "draw-inline-array-tfrag-near", + "draw-inline-array-tfrag", + + // tie-methods + "draw-inline-array-prototype-tie-near-asm", + "draw-inline-array-prototype-tie-asm", + "draw-inline-array-prototype-tie-generic-asm", + "draw-inline-array-instance-tie", + + // sparticle-launcher + "sp-init-fields!", + + // sparticle + "memcpy", + "sp-process-block-3d", + "sp-process-block-2d", + "sp-launch-particles-var", + "particle-adgif", + "sp-init-fields!", + + // time-of-day + "time-of-day-interp-colors-scratch", + "time-of-day-interp-colors", + + // sky-tng + "clip-polygon-against-negative-hyperplane", + "clip-polygon-against-positive-hyperplane", + "draw-large-polygon", + + // load-boundary + "render-boundary-tri", + "render-boundary-quad", + "draw-boundary-polygon", + + // collide-probe + "collide-probe-instance-tie", + "collide-probe-node", + + // collide-mesh + "(method 10 collide-mesh)", + "(method 13 collide-mesh)", + "(method 9 collide-mesh-cache)", + "(method 15 collide-mesh)", + "(method 14 collide-mesh)", + "(method 11 collide-mesh)", + "(method 12 collide-mesh)", + + // collide-edge-grab + "(method 13 collide-edge-work)", + "(method 17 collide-edge-work)", + "(method 15 collide-edge-work)", + "(method 16 collide-edge-work)", + "(method 9 edge-grab-info)", // maybe bug + "(method 18 collide-edge-work)", + "(method 10 collide-edge-hold-list)", + + // collide-shape + "(method 15 collide-shape-prim-mesh)", // BUG: + "(method 15 collide-shape-prim-sphere)", // BUG: + "(method 16 collide-shape-prim)", + "(method 15 collide-shape-prim-group)", + "(method 45 collide-shape)", + "(method 28 collide-shape-prim-mesh)", // BUG: + "(method 29 collide-shape-prim-group)", + "(method 20 collide-shape-prim-group)", + "(method 19 collide-shape-prim-sphere)", + "(method 18 collide-shape-prim-sphere)", + "(method 23 collide-shape-prim-sphere)", + "(method 23 collide-shape-prim-mesh)", // BUG: maybe + "(method 24 collide-shape-prim)", + "(method 23 collide-shape-prim-group)", + "(method 42 collide-shape)", + + // collide-shape-rider + "(method 35 collide-shape)", + + // process-drawable BUG + "cspace-inspect-tree", // BUG: + "process-drawable-birth-fuel-cell", // BUG: + "(method 19 process-drawable)", + + // ambient + "ambient-inspect", + + // generic-obs BUG + "camera-change-to", + + // target BUG + "target-falling-anim-trans", + + // target2 BUG + "(anon-function 33 target2)", // BUG: + "(anon-function 67 target2)", // BUG: + "look-for-points-of-interest", + + // drawable-tree + "(method 16 drawable-tree)", + + // collide-cache + "(method 10 collide-puss-work)", + "(method 9 collide-puss-work)", + "(method 19 collide-cache)", + "(method 10 collide-cache-prim)", + "(method 9 collide-cache-prim)", + "(method 30 collide-cache)", + "(method 13 collide-shape-prim-group)", + "(method 13 collide-shape-prim-sphere)", + "(method 13 collide-shape-prim-mesh)", + "(method 14 collide-shape-prim-group)", + "(method 14 collide-shape-prim-sphere)", + "(method 14 collide-shape-prim-mesh)", + "(method 12 collide-shape-prim-group)", // BUG: maybe + "(method 12 collide-shape-prim-sphere)", + "(method 12 collide-shape-prim-mesh)", + "(method 29 collide-cache)", + "(method 27 collide-cache)", + "(method 14 collide-cache)", + "(method 28 collide-cache)", + "(method 26 collide-cache)", + "(method 21 collide-cache)", + "(method 32 collide-cache)", + + // memory-usage BUG + //"(method 14 level)", + + // navigate BUG + "(method 32 nav-control)", + + // collectables BUG + "add-blue-motion", + + // ocean + "draw-large-polygon-ocean", + + // ocean-vu0 + "ocean-generate-verts", + "ocean-interp-wave", + + // nav-enemy BUG + // "(anon-function 28 nav-enemy)", + + // orb-cache BUG + "(method 27 orb-cache-top)", + + // ropebridge BUG + "(method 27 ropebridge)", + + // all unchecked and in level DGO code + "(anon-function 21 plant-boss)", + "(anon-function 10 ice-cube)", + "(anon-function 15 ice-cube)", + "(anon-function 45 lavatube-energy)", + "mistycannon-find-best-solution", + "target-flut-falling-anim-trans", + "kermit-check-to-hit-player?", + "(anon-function 6 title-obs)", + "(anon-function 36 mistycannon)", + "(anon-function 43 maincave-obs)", + "(anon-function 2 target-tube)", + "(anon-function 5 orbit-plat)", + "(anon-function 2 ogreboss)" + + ], + + // these functions use pairs and the decompiler + // will be less picky about types related to pairs. + "pair_functions_by_name": [ + "ref", + "last", + "member", + "nmember", + "assoc", + "assoce", + "append!", + "delete!", + "delete-car!", + "insert-cons!", + "sort", + "unload-package", + "(method 4 pair)", + "nassoc", + "nassoce", + "lookup-level-info", + "(method 21 level-group)", + "(method 12 level)", + "update-sound-banks", + "(method 16 level-group)", + "bg", + "(method 18 game-info)", + "debug-menu-context-default-selection", + "debug-menu-rebuild", + "debug-menu-func-decode", + "debug-menu-make-from-template", + "debug-menu-render", + "debug-menu-context-select-next-or-prev-item", + "debug-menu-context-select-new-item", + "debug-menu-send-msg", + "debug-menu-find-from-template", + "build-continue-menu", + "(method 8 process-tree)", + "(method 16 load-state)", + "(method 15 load-state)", + "build-continue-menu", + "entity-remap-names", + "(method 21 swamp-rat-nest-dummy-a)", + "(method 21 swamp-rat-nest-dummy-b)", + "(method 21 swamp-rat-nest-dummy-c)", + "(method 27 battlecontroller)", + "load-boundary-from-template", + "command-get-time", + "command-get-param", + "command-get-quoted-param" + ], + + // If format is used with the wrong number of arguments, + // it will often mess up the decompilation, as the decompiler assumes + // that they used the correct number. This will override the decompiler's + // automatic detection. + "bad_format_strings": { + "ERROR: dma tag has data in reserved bits ~X~%": 0, + "#: value of symbol ~A in task-controls is not a task-control~%": 0, + "~0K~10,'-S--~5,'-DK-of-~5,'-DK--~5,'-DK-of-~5,'-DK--": 5, + " bsp ~192H~5DK ~280Hdebug~456H~5DK~%": 2, + " bsp-leaf-vis-iop ~192H~5DK~%": 1, + " bsp-leaf-vis-adj ~192H~5DK~%": 1, + " level-code ~192H~5DK~%": 1, + " tfrag ~192H~5DK ~280Htfragment~456H~5DK~%": 2, + " tie-proto ~192H~5DK ~280Hsky~456H~5DK~%": 2, + " tie-instance ~192H~5DK ~280Htie-fragment~456H~5DK~%": 2, + " shrub-proto ~192H~5DK ~280Htie-near~456H~5DK~%": 2, + " shrub-instance ~192H~5DK ~280Hshrubbery~456H~5DK~%": 2, + " collision ~192H~5DK ~280Htie-generic~456H~5DK~%": 2, + " pris-geo ~192H~5DK ~280Hpris-fragment~456H~5DK~%": 2, + " pris-anim ~192H~5DK ~280Hpris-generic~456H~5DK~%": 2, + " textures ~192H~5DK ~280Htextures~456H~5DK~%": 2, + " entity ~192H~5DK~%": 2, + " misc ~192H~5DK ~280Hsprite~456H~5DK~%": 2, + "ERROR: ~A in spool anim loop for ~A ~D, but not loaded.~": 3, + "~0k~5d/~d ~6d/~d ~6d/~d ": 6, + "~0k~s~%": 1 + }, + + "blocks_ending_in_asm_branch": { + "closest-pt-in-triangle": [17], + + // this one is all asm branches + "circle-circle-xz-intersect": [ + 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 + ], + + "find-knot-span": [0, 1, 2, 3, 5, 6, 7, 8, 9], + + "curve-evaluate!": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], + + "(method 9 texture-page-dir)": [4, 5], + + "adgif-shader<-texture-with-update!": [0, 1], + + "display-loop": [44, 49, 66, 96], + + "load-game-text-info": [12, 13, 14, 18], + + "real-main-draw-hook": [75, 77], + + "(method 12 perf-stat)": [0], + "(method 11 perf-stat)": [0], + "raw-ray-sphere-intersect": [0, 1, 2, 3, 4, 5], + "ray-cylinder-intersect": [0, 1, 2, 3, 4, 5], + "ray-triangle-intersect": [0, 1, 2, 3, 4], + "bsp-camera-asm": [1, 2, 3], + "level-remap-texture": [2, 3, 4, 5, 6], + "start-perf-stat-collection": [26], + "end-perf-stat-collection": [0], + "sprite-draw-distorters": [4, 5], + "draw-string": [ + 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 + ], + "get-string-length": [ + 0, 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 + ], + "unpack-comp-rle": [1, 3, 5, 6], + "(method 16 level)": [1, 5, 13, 14, 15, 19, 26, 53], + "unpack-comp-huf": [2, 4, 5, 6, 7, 8, 9], + "blerc-execute": [ + 0, 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 + ], + "(method 11 fact-info-target)": [42], + "(anon-function 9 game-save)": [3, 4, 5, 6, 7, 8, 10], + //"(anon-function 9 game-save)":[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14], + "particle-adgif": [0, 1, 2, 3, 4, 5, 7], + "sp-launch-particles-var": [ + 0, 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 + ], + "(method 11 sparticle-launch-control)": [27, 28, 35, 46, 48, 49, 77], + "upload-vis-bits": [0, 1, 2, 3, 4, 5, 6] + }, + + // Sometimes the game might use format strings that are fetched dynamically, + // for example using the game text lookup method + // Add information about those format instructions here. + // e.g. "function-name":[[op, argc], [op, argc], ...] + // where "op" is the op number for the call to format. + "dynamic_format_arg_counts": { + "(method 35 progress)": [ + [44, 1], + [92, 1] + ], + "(method 49 progress)": [[35, 1]], + "(method 37 progress)": [[41, 1]], + "(method 38 progress)": [[106, 1]], + "(method 39 progress)": [[56, 1], [83, 1]], + "(method 41 progress)": [[73, 1]], + "(method 42 progress)": [[41, 1]], + "(method 43 progress)": [ + [51, 1], + [94, 1] + ], + "": [] + }, + + "mips2c_functions_by_name": [ + "sp-init-fields!", + "particle-adgif", + "sp-launch-particles-var", + "sp-process-block-2d", + "sp-process-block-3d", + "draw-large-polygon", + "clip-polygon-against-positive-hyperplane", + "clip-polygon-against-negative-hyperplane", + "render-sky-quad", + "render-sky-tri", + "init-sky-regs", + "set-tex-offset", + "adgif-shader<-texture-with-update!", + "init-boundary-regs", + "draw-boundary-polygon", + "render-boundary-quad", + "render-boundary-tri" + ] +} + + diff --git a/decompiler/config/jak1_sced/inputs.jsonc b/decompiler/config/jak1_sced/inputs.jsonc new file mode 100644 index 0000000000..3ef3a4d596 --- /dev/null +++ b/decompiler/config/jak1_sced/inputs.jsonc @@ -0,0 +1,239 @@ +{ + ////////////////////// + // INPUT FILES + ////////////////////// + + // input is GOAL object files, possibly in containers. + // most objects are part of CGO/DGO files (both go in dgo_names). This includes levels and the engine + // the DGOs will be processed in this order. Usually it's best to have KERNEL, ENGINE, then the levels when + // you want to run on the entire game. + "dgo_names": [ + "CGO/KERNEL.CGO", + "CGO/GAME.CGO", + "DGO/DEM.DGO", + "DGO/DEM~.DGO", + "DGO/MIS.DGO", + "DGO/VI1.DGO" + ], + + // some objects are part of STR files (streaming data). In Jak 1 this is just animations + "str_file_names": [ + "STR/BAFCELL.STR", + "STR/SWTE4.STR", + "STR/SWTE3.STR", + "STR/SWTE2.STR", + "STR/SWTE1.STR", + "STR/SNRBSBFC.STR", + "STR/SNRBIPFC.STR", + "STR/SNRBICFC.STR", + "STR/ORR3.STR", + "STR/ORR2.STR", + "STR/MICANNON.STR", + "STR/BECANNON.STR", + "STR/SWTS4.STR", + "STR/SWTS3.STR", + "STR/SWTS2.STR", + "STR/SW4.STR", + "STR/SW3.STR", + "STR/SW2.STR", + "STR/SWTS1.STR", + "STR/ORREYE.STR", + "STR/ORLEYE.STR", + "STR/SW1.STR", + "STR/MAGFCELL.STR", + "STR/GNFCELL.STR", + "STR/ORRE3.STR", + "STR/ORRE2.STR", + "STR/ORRE1.STR", + "STR/ORR1.STR", + "STR/ORLE3.STR", + "STR/ORLE2.STR", + "STR/ORI3.STR", + "STR/ORI2.STR", + "STR/DE0202.STR", + "STR/RARSANIM.STR", + "STR/RARANIM.STR", + "STR/EIFISH.STR", + "STR/ORLE1.STR", + "STR/SWTEF4.STR", + "STR/SWTEF3.STR", + "STR/SWTEF2.STR", + "STR/SWTEF1.STR", + "STR/ORI1.STR", + "STR/EIICE.STR", + "STR/EIA3.STR", + "STR/DE0191.STR", + "STR/DE0186.STR", + "STR/DE0187.STR", + "STR/EIA4.STR", + "STR/EIPOLE.STR", + "STR/RARASECO.STR", + "STR/RARA2.STR", + "STR/DE0184.STR", + "STR/DE0181.STR", + "STR/PESEXT.STR", + "STR/DE0195.STR", + "STR/EIA2.STR", + "STR/FIR1.STR", + "STR/DE0182.STR", + "STR/BIR1.STR", + "STR/HAPOPEN.STR", + "STR/EITUBE.STR", + "STR/SCR1.STR", + "STR/DE0197.STR", + "STR/DE0193.STR", + "STR/EIA1.STR", + "STR/FAR2.STR", + "STR/FAR1.STR", + "STR/DE0199.STR", + "STR/GERMONEY.STR", + "STR/BIRESOLU.STR", + "STR/GARMONEY.STR", + "STR/BIADVENT.STR", + "STR/FUCRV1.STR", + "STR/BIREJECT.STR", + "STR/WAR1.STR", + "STR/BIACCEPT.STR", + "STR/SA3R1DEC.STR", + "STR/ASR1GENE.STR", + "STR/FIREJECT.STR", + "STR/GARRACE.STR", + "STR/GEZMONEY.STR", + "STR/LRFALLIN.STR", + "STR/EXR2.STR", + "STR/GERMOLES.STR", + "STR/FUCVICTO.STR", + "STR/MIR1ORBS.STR", + "STR/SA3R1RAM.STR", + "STR/AS2R1FLU.STR", + "STR/FUCV2.STR", + "STR/MIR1GNAW.STR", + "STR/GAZMONEY.STR", + "STR/AS3REMIN.STR", + "STR/SIHISA.STR", + "STR/FIACCEPT.STR", + "STR/FIWECO.STR", + "STR/FARESOLU.STR", + "STR/ASR1RBIK.STR", + "STR/MARDONAT.STR", + "STR/GAZRACE.STR", + "STR/FUCFV1.STR", + "STR/FUCV5.STR", + "STR/SABR1CDU.STR", + "STR/FLLINTRO.STR", + "STR/SAR1ECOR.STR", + "STR/AS2R1ROB.STR", + "STR/MIR2ORBS.STR", + "STR/MARBEAMS.STR", + "STR/LOI2.STR", + "STR/SAR1GENE.STR", + "STR/BILR1.STR", + "STR/AS2R1ROO.STR", + "STR/ASR1BESW.STR", + "STR/LOLOOP.STR", + "STR/FAINTROD.STR", + "STR/GEZMOLES.STR", + "STR/V1IN.STR", + "STR/FUCV4.STR", + "STR/SAIECORO.STR", + "STR/MIR1SWIT.STR", + "STR/LOINTRO.STR", + "STR/SAR2GENE.STR", + "STR/MUVICTOR.STR", + "STR/SAR1MCAN.STR", + "STR/FUCV7.STR", + "STR/MIZ1ORBS.STR", + "STR/FUCV8.STR", + "STR/BILR2.STR", + "STR/FUCV6.STR", + "STR/FUCV3.STR", + "STR/PLLBLOWU.STR", + "STR/PLBMAIN.STR", + "STR/WARESOLU.STR", + "STR/EIRACER.STR", + "STR/MAZDONAT.STR", + "STR/MAZBEAMS.STR", + "STR/MIISWITC.STR", + "STR/FIBRTVIL.STR", + "STR/FIBRTMIS.STR", + "STR/SABR1PAR.STR", + "STR/NDINTRO.STR", + "STR/GORDOWN.STR", + "STR/GORUP.STR", + "STR/SA3IRAMS.STR", + "STR/YERESOLU.STR", + "STR/EIFLUT.STR", + "STR/GRSDSACR.STR", + "STR/EXR1.STR", + "STR/SCRESOLU.STR", + "STR/FIRESOLU.STR", + "STR/SIHITEST.STR", + "STR/GAI1.STR", + "STR/EXRESOLU.STR", + "STR/MIZ2ORBS.STR", + "STR/ASIRBIKE.STR", + "STR/GRSOBBEC.STR", + "STR/BIINTROD.STR", + "STR/GRSOBBNC.STR", + "STR/AS2IROBB.STR", + "STR/GRSOBFIN.STR", + "STR/RERESOLU.STR", + "STR/BLRESOLU.STR", + "STR/SABIPARM.STR", + "STR/EVMEND.STR", + "STR/AS2RESOL.STR", + "STR/SAIMCANN.STR", + "STR/MIIGNAWE.STR", + "STR/GRSOBBA.STR", + "STR/GRSINTRO.STR", + "STR/SAISE.STR", + "STR/SA3IDECO.STR", + "STR/ASFRESOL.STR", + "STR/EXINTROD.STR", + "STR/BILINTRO.STR", + "STR/FIINTROD.STR", + "STR/MAINTROD.STR", + "STR/SCINTROD.STR", + "STR/AS2IFLUT.STR", + "STR/ASLERESO.STR", + "STR/ASLSRESO.STR", + "STR/AS2IROOM.STR", + "STR/GRSRESOL.STR", + "STR/SABICDUS.STR", + "STR/SIHISB.STR", + "STR/ASIBESWI.STR", + "STR/BILBRESO.STR", + "STR/FIBRT1AL.STR", + "STR/AS2INTRO.STR", + "STR/GEINTROD.STR", + "STR/SAISD1.STR", + "STR/SAISA.STR", + "STR/SIHISC.STR", + "STR/MIIORBS.STR", + "STR/WAINTROD.STR", + "STR/SAISD2.STR", + "STR/GRSOPREB.STR", + "STR/GRSOBBB.STR", + "STR/SA3INTRO.STR" + ], + + // some objects are directly stored as files on the DVD. This is just text files. + "object_file_names": [ + "TEXT/0COMMON.TXT", + "TEXT/1COMMON.TXT", + "TEXT/2COMMON.TXT", + "TEXT/3COMMON.TXT", + "TEXT/4COMMON.TXT", + "TEXT/5COMMON.TXT", + "TEXT/6COMMON.TXT" + ], + + // uncomment the next line to extract audio to wave files. + //"audio_dir_file_name": "jak1/VAG", + "audio_dir_file_name": "", + + "streamed_audio_file_names": [ + "VAGWAD.ENG", + "VAGWAD.JAP" + ] +} diff --git a/decompiler/config/jak1_sced/label_types.jsonc b/decompiler/config/jak1_sced/label_types.jsonc new file mode 100644 index 0000000000..334ab99a6b --- /dev/null +++ b/decompiler/config/jak1_sced/label_types.jsonc @@ -0,0 +1,1150 @@ +// the format is [label_name, type, special] + +// if the type is pointer or inline array, special should be an integer size. +// if the type is a value type (like rgba), special should be true. + +{ + "vector-h": [ + ["L32", "vector"], + ["L31", "vector"], + ["L30", "vector"], + ["L29", "vector"], + ["L28", "vector"], + ["L27", "vector"], + ["L26", "vector"] + ], + + "quaternion-h": [["L1", "quaternion"]], + + "quaternion": [ + ["L67", "vector"], + ["L68", "vector"], + ["L69", "vector"], + ["L70", "vector"], + ["L71", "vector"], + ["L72", "vector"] + ], + + "geometry": [["L112", "(pointer float)", 4]], + + "trigonometry": [ + ["L98", "(pointer float)", 32], + ["L99", "(pointer float)", 32], + ["L102", "vector"], + ["L101", "vector"], + ["L100", "vector"] + ], + + "video-h": [["L1", "video-parms"]], + + "font-h": [ + ["L18", "matrix"], + ["L17", "font-work"] + ], + + "display": [["L76", "(pointer uint32)", 2]], + + "capture": [["L12", "gs-store-image-packet"]], + + "main-h": [["L1", "frame-stats"]], + + "ocean-trans-tables": [ + ["L1", "(inline-array vector)", 4], + ["L2", "(pointer float)", 160], + ["L3", "(pointer float)", 100], + ["L4", "(pointer float)", 72], + ["L5", "(pointer float)", 72], + ["L6", "(pointer float)", 72], + ["L7", "(pointer float)", 72], + ["L8", "(pointer float)", 44], + ["L9", "(pointer float)", 44], + ["L10", "(pointer float)", 44], + ["L11", "(pointer float)", 44], + ["L12", "(pointer float)", 40], + ["L13", "(pointer float)", 40], + ["L14", "(pointer float)", 40], + ["L15", "(pointer float)", 40], + ["L16", "(pointer float)", 28], + ["L17", "(pointer float)", 28], + ["L18", "(pointer float)", 28], + ["L19", "(pointer float)", 28] + ], + + "pat-h": [["L1", "(inline-array pat-mode-info)", 4]], + + "joint-mod-h": [ + ["L89", "(inline-array vector)", 6], + ["L90", "(inline-array vector)", 3] + ], + + "collide-edge-grab-h": [["L1", "collide-edge-work"]], + + "assert-h": [["L4", "__assert-info-private-struct"]], + + "hud-h": [["L1", "hud-parts"]], + + "transformq": [ + ["L39", "vector"], + ["L40", "vector"] + ], + + "cylinder": [ + ["L54", "vector"], + ["L57", "vector"], + ["L56", "vector"], + ["L53", "vector"] + ], + + "sprite": [["L58", "vu-function"]], + + "sprite-distort": [["L27", "vu-function"]], + + "merc-vu1": [["L1", "vu-function"]], + + "background": [["L51", "vu-function"]], + + "debug": [ + ["L179", "vector2h"], + ["L176", "(inline-array vector)", 8], + ["L180", "vector"], + ["L181", "vector"], + ["L182", "vector"], + ["L183", "vector"], + ["L223", "rgba", true], + ["L225", "rgba", true], + ["L224", "rgba", true], + ["L222", "rgba", true], + ["L226", "rgba", true] + ], + + "shrub-work": [["L3", "instance-shrub-work"]], + + "game-info": [ + ["L466", "rgba", true], + ["L468", "rgba", true], + ["L462", "vector2h"], + ["L467", "rgba", true] + ], + + "tfrag-work": [["L1", "tfrag-work"]], + + "tie-work": [ + ["L1", "prototype-tie-work"], + ["L2", "instance-tie-work"] + ], + + "mood": [ + ["L256", "vector"], + ["L257", "vector"], + ["L258", "vector"], + ["L259", "vector"], + ["L260", "vector"], + ["L261", "vector"], + ["L262", "(inline-array vector)", 2], + ["L263", "light-ellipse"], + ["L264", "(inline-array vector)", 4], + ["L265", "vector"], + ["L266", "(inline-array vector)", 11], + ["L267", "vector"], + ["L268", "vector"], + ["L269", "vector"], + ["L270", "vector"], + ["L271", "vector"], + ["L272", "vector"], + ["L273", "vector"], + ["L274", "vector"], + ["L275", "vector"], + ["L276", "vector"], + ["L277", "vector"], + ["L278", "vector"], + ["L279", "vector"] + ], + + "mood-tables": [ + ["L12", "mood-sun-table"], + ["L13", "mood-lights-table"], + ["L14", "mood-fog-table"], + ["L15", "mood-fog-table"], + ["L16", "mood-sun-table"], + ["L17", "mood-sun-table"], + ["L18", "mood-lights-table"], + ["L19", "mood-fog-table"], + ["L20", "mood-lights-table"], + ["L21", "mood-fog-table"], + ["L22", "mood-lights-table"], + ["L23", "mood-fog-table"], + ["L24", "mood-lights-table"], + ["L25", "mood-lights-table"], + ["L26", "mood-fog-table"], + ["L27", "mood-sun-table"], + ["L28", "mood-lights-table"], + ["L29", "mood-fog-table"], + ["L30", "mood-sun-table"], + ["L31", "mood-lights-table"], + ["L32", "mood-fog-table"], + ["L33", "mood-sun-table"], + ["L34", "mood-lights-table"], + ["L35", "mood-fog-table"], + ["L36", "mood-sun-table"], + ["L37", "mood-lights-table"], + ["L38", "mood-fog-table"], + ["L39", "mood-sun-table"], + ["L40", "mood-lights-table"], + ["L41", "mood-fog-table"], + ["L42", "mood-sun-table"], + ["L43", "mood-lights-table"], + ["L44", "mood-fog-table"], + ["L45", "mood-sun-table"], + ["L46", "mood-lights-table"], + ["L47", "mood-fog-table"], + ["L48", "mood-fog-table"], + ["L49", "mood-sun-table"], + ["L50", "mood-lights-table"], + ["L51", "mood-fog-table"], + ["L52", "mood-sun-table"], + ["L53", "mood-lights-table"], + ["L54", "mood-fog-table"], + ["L55", "mood-sun-table"], + ["L56", "mood-lights-table"], + ["L57", "mood-fog-table"], + ["L58", "mood-fog-table"], + ["L59", "mood-sun-table"], + ["L60", "mood-lights-table"], + ["L61", "mood-fog-table"], + ["L62", "sky-color-day"], + ["L63", "sky-color-day"], + ["L64", "sky-color-day"], + ["L65", "sky-color-day"], + ["L66", "sky-color-day"], + ["L67", "sky-color-day"], + ["L68", "sky-color-day"] + ], + + "camera": [ + ["L257", "(inline-array qword)", 1], + ["L258", "(inline-array qword)", 1] + ], + + "target-util": [ + ["L180", "vector"], + ["L181", "vector"], + ["L182", "vector"], + ["L183", "vector"], + ["L184", "vector"], + ["L186", "vector"], + ["L187", "vector"], + ["L188", "vector"], + ["L189", "vector"], + ["L190", "vector"], + ["L225", "rgba", true] + ], + + "logic-target": [ + ["L227", "attack-info"], + ["L231", "(pointer uint64)", 1] + ], + + "progress-static": [["L121", "(array game-text-id)"]], + + "rigid-body": [["L89", "rigid-body-platform-constants"]], + + "nav-enemy": [["L349", "attack-info"]], + + "basebutton": [ + ["L97", "vector"], + ["L102", "vector"] + ], + + "bird-lady": [["L29", "vector"]], + + "bird-lady-beach": [["L26", "vector"]], + + "mayor": [["L57", "vector"]], + + "sculptor": [["L89", "vector"]], + + "oracle": [ + ["L55", "vector"], + ["L56", "vector"], + ["L58", "vector"] + ], + + "evilbro": [ + ["L25", "vector"], + ["L30", "vector"] + ], + + "explorer": [["L77", "vector"]], + + "sage": [["L91", "vector"]], + + "misty-teetertotter": [ + ["L26", "attack-info"], + ["L27", "attack-info"] + ], + + "farmer": [["L28", "vector"]], + + "gambler": [["L52", "vector"]], + + "warrior": [["L30", "vector"]], + + "geologist": [["L38", "vector"]], + + "font": [ + ["L95", "(inline-array vector)", 250], + ["L94", "(inline-array vector)", 289] + ], + + "text": [ + ["L66", "vector"], + ["L67", "matrix"], + ["L68", "vector4w"] + ], + + "ocean-tables": [ + // see comment in ocean-tables.gc + ["L26", "ocean-spheres"], + ["L25", "ocean-colors"], + ["L23", "ocean-near-indices"], // ok + ["L22", "ocean-trans-indices"], + ["L21", "ocean-mid-indices"], + ["L19", "ocean-mid-masks"], + ["L18", "ocean-spheres"], + ["L17", "ocean-colors"], + ["L15", "ocean-near-indices"], + ["L9", "ocean-near-indices"], + + ["L14", "ocean-trans-indices"], + ["L8", "ocean-trans-indices"], + + ["L13", "ocean-mid-indices"], + ["L7", "ocean-mid-indices"], + + ["L11", "ocean-mid-masks"], + ["L5", "ocean-mid-masks"], + ["L4", "ocean-map"], + ["L3", "ocean-map"], + ["L2", "ocean-map"] + ], + + "ocean-frames": [["L1", "(pointer uint32)", 16384]], + + "eye": [["L36", "eye-work"]], + + "shadow-cpu": [["L122", "shadow-data"]], + + "load-boundary": [ + ["L327", "(inline-array lbvtx)", 12], + ["L324", "vector"] + ], + + "default-menu": [ + ["L6251", "float", true], + ["L6252", "float", true], + ["L6253", "float", true], + ["L6254", "float", true], + ["L6256", "float", true], + ["L6257", "float", true], + ["L6264", "float", true], + ["L6267", "float", true], + ["L6265", "float", true], + ["L6266", "float", true], + ["L6259", "float", true], + ["L6268", "float", true], + ["L6263", "float", true], + ["L6262", "float", true], + ["L6261", "float", true], + ["L6255", "float", true], + ["L6260", "float", true], + ["L6258", "float", true], + ["L6272", "uint64", true], + ["L6273", "uint64", true], + ["L6270", "uint64", true], + ["L6269", "uint64", true], + ["L6271", "uint64", true] + // ["L6268", "(array int)", true, 1] // printed as a float + ], + + // "default-menu": [ + // ["L519", "pair", true], + // ["L1550", "pair", true], + // ["L1552", "pair", true] + // ], + + // "generic-vu1": [ + // ["L12", "gif-tag64", true], + // ["L15", "gif-tag64", true], + // ["L14", "gif-tag-regs", true] + // ], + + "merc-blend-shape": [["L62", "(pointer int16)", 32]], + + "miners": [ + ["L111", "vector"], + ["L281", "vector"] + ], + + "entity": [ + ["L483", "vector2h"], + ["L482", "vector2h"], + ["L480", "vector2h"], + ["L479", "vector2h"], + ["L478", "vector2h"], + ["L477", "vector2h"], + ["L476", "vector2h"], + ["L475", "vector4w"], + ["L474", "vector4w"], + ["L473", "vector4w"], + ["L472", "vector4w"], + ["L471", "vector4w"] + ], + + "assistant": [["L71", "vector"]], + + "progress": [ + ["L674", "uint64", true], + ["L593", "float", true], + ["L594", "float", true], + ["L595", "float", true], + ["L596", "float", true], + ["L597", "float", true], + ["L598", "float", true], + ["L599", "float", true], + ["L600", "float", true], + ["L601", "float", true], + ["L602", "float", true], + ["L603", "float", true], + ["L604", "float", true], + ["L605", "float", true], + ["L606", "float", true], + ["L607", "float", true], + ["L608", "float", true], + ["L609", "float", true], + ["L610", "float", true], + ["L611", "float", true], + ["L612", "float", true], + ["L613", "float", true], + ["L614", "float", true], + ["L615", "float", true], + ["L617", "float", true], + ["L616", "float", true], + ["L618", "float", true], + ["L619", "float", true], + ["L620", "float", true], + ["L621", "float", true], + ["L622", "float", true], + ["L623", "float", true], + ["L624", "float", true], + ["L625", "float", true], + ["L626", "float", true], + ["L627", "float", true], + ["L628", "float", true], + ["L629", "float", true], + ["L630", "float", true], + ["L631", "float", true], + ["L632", "float", true], + ["L633", "float", true], + ["L634", "float", true], + ["L635", "float", true], + ["L636", "float", true], + ["L637", "float", true], + ["L638", "float", true], + ["L639", "float", true], + ["L640", "float", true], + ["L641", "float", true], + ["L642", "float", true], + ["L590", "vector"], + ["L588", "vector"], + ["L586", "vector"], + ["L584", "vector"], + ["L580", "vector"], + ["L582", "vector"], + ["L643", "uint64", true], + ["L644", "uint64", true], + ["L645", "uint64", true], + ["L646", "uint64", true], + ["L647", "uint64", true], + ["L648", "uint64", true], + ["L649", "uint64", true], + ["L650", "uint64", true], + ["L651", "uint64", true], + ["L652", "uint64", true], + ["L653", "uint64", true], + ["L654", "uint64", true], + ["L655", "uint64", true], + ["L656", "uint64", true] + ], + + "target-part": [ + ["L336", "float", true], + ["L337", "float", true], + ["L338", "float", true], + ["L339", "float", true], + ["L340", "float", true], + ["L341", "uint64", true] + ], + + "projectiles": [["L150", "attack-info"]], + + "generic-obs": [["L455", "quaternion"]], + + "blocking-plane": [ + ["L18", "vector"], + ["L19", "vector"], + ["L20", "vector"] + ], + + "sidekick-human": [ + ["L131", "vector"], + ["L350", "vector"], + ["L940", "float", true], + ["L941", "float", true], + ["L942", "float", true], + ["L943", "float", true], + ["L944", "float", true], + ["L945", "float", true], + ["L946", "float", true], + ["L990", "float", true], + ["L991", "uint64", true], + ["L992", "uint64", true], + ["L993", "uint64", true], + ["L994", "uint64", true] + ], + + "assistant-firecanyon": [["L71", "vector"]], + + "sage-bluehut": [["L82", "vector"]], + + "flutflut-bluehut": [["L34", "vector"]], + + "sharkey": [["L101", "attack-info"]], + + "assistant-citadel": [["L28", "vector"]], + + "robotboss-h": [ + ["L67", "float", true], + ["L68", "uint64", true], + ["L69", "uint64", true] + ], + + "final-door": [ + ["L59", "vector"], + ["L60", "vector"] + ], + + "crates": [ + ["L242", "float", true], + ["L243", "float", true], + ["L245", "float", true], + ["L263", "float", true] + ], + + "flying-lurker": [ + ["L197", "(pointer uint32)", 26], + ["L187", "vector"] + ], + + "ambient": [ + ["L326", "vector2h"], + ["L322", "vector2h"], + ["L321", "vector2h"], + ["L324", "vector2h"], + ["L323", "vector2h"] + ], + + "hint-control": [["L45", "(array task-hint-control-group)"]], + + "cam-master": [ + ["L356", "vector"], + ["L357", "vector"] + ], + + "cam-states": [ + ["L630", "vector"], + ["L631", "vector"], + ["L632", "vector"], + ["L633", "vector"], + ["L672", "float", true], + ["L673", "float", true], + ["L674", "float", true], + ["L675", "float", true], + ["L676", "float", true], + ["L677", "float", true], + ["L678", "float", true], + ["L679", "float", true], + ["L680", "float", true], + ["L681", "float", true], + ["L682", "float", true], + ["L683", "float", true], + ["L684", "float", true], + ["L685", "float", true], + ["L686", "float", true], + ["L687", "float", true], + ["L688", "float", true], + ["L689", "float", true], + ["L690", "float", true], + ["L691", "float", true], + ["L692", "float", true], + ["L693", "float", true], + ["L694", "float", true], + ["L695", "float", true], + ["L696", "float", true], + ["L697", "float", true], + ["L698", "float", true], + ["L699", "float", true], + ["L700", "float", true], + ["L701", "float", true], + ["L702", "float", true], + ["L703", "float", true], + ["L704", "float", true], + ["L705", "float", true], + ["L706", "float", true], + ["L707", "float", true], + ["L708", "float", true], + ["L709", "float", true], + ["L710", "float", true], + ["L711", "float", true], + ["L712", "float", true], + ["L713", "float", true], + ["L714", "float", true], + ["L715", "float", true], + ["L716", "float", true], + ["L717", "float", true], + ["L718", "float", true], + ["L719", "float", true], + ["L720", "float", true], + ["L721", "float", true], + ["L722", "float", true], + ["L723", "float", true], + ["L724", "float", true], + ["L725", "float", true], + ["L726", "float", true], + ["L727", "float", true], + ["L728", "float", true], + ["L729", "float", true], + ["L730", "float", true], + ["L731", "float", true], + ["L732", "float", true], + ["L733", "float", true], + ["L734", "float", true], + ["L735", "float", true], + ["L736", "float", true], + ["L737", "float", true], + ["L738", "float", true], + ["L739", "float", true], + ["L740", "float", true], + ["L741", "float", true], + ["L742", "float", true], + ["L743", "float", true], + ["L744", "float", true], + ["L745", "float", true], + ["L790", "uint64", true], + ["L791", "uint64", true], + ["L792", "uint64", true], + ["L793", "uint64", true] + ], + + "cam-states-dbg": [["L78", "camera-orbit-info"]], + + "cam-layout": [ + ["L766", "quaternion"], + ["L768", "vector"], + ["L775", "vector4w"], + ["L777", "vector4w"], + ["L779", "vector4w"], + ["L781", "vector4w"], + ["L783", "vector4w"], + ["L785", "vector4w"], + ["L787", "vector4w"], + ["L788", "vector4w"], + ["L789", "vector4w"], + ["L790", "vector4w"], + ["L791", "vector"], + ["L792", "vector"], + ["L793", "vector4w"], + ["L794", "vector"], + ["L795", "vector4w"], + ["L796", "vector"], + ["L797", "vector"], + ["L798", "vector4w"], + ["L799", "vector"], + ["L800", "vector4w"], + ["L801", "vector"], + ["L802", "vector"], + ["L803", "vector4w"], + ["L804", "vector"], + ["L805", "vector"], + ["L806", "vector4w"], + ["L807", "vector4w"], + ["L808", "vector"], + ["L809", "vector"], + ["L810", "vector4w"], + ["L811", "vector4w"], + ["L812", "vector"], + ["L813", "vector"], + ["L814", "vector4w"], + ["L815", "vector"], + ["L816", "vector"], + ["L817", "vector4w"], + ["L818", "vector"], + ["L819", "vector"], + ["L820", "vector4w"], + ["L821", "vector"], + ["L822", "vector"], + ["L823", "vector"], + ["L824", "vector"], + ["L832", "vector4w"], + ["L872", "float", true], + ["L873", "float", true], + ["L874", "float", true], + ["L875", "float", true], + ["L876", "float", true], + ["L877", "float", true], + ["L878", "float", true], + ["L879", "float", true], + ["L880", "float", true], + ["L881", "(pointer float)", 1], + ["L882", "float", true], + ["L883", "float", true], + ["L884", "(pointer float)", 1], + ["L885", "(pointer float)", 1], + ["L886", "float", true], + ["L887", "float", true], + ["L888", "(pointer float)", 1], + ["L889", "(pointer float)", 1], + ["L890", "(pointer float)", 1], + ["L891", "(pointer float)", 1], + ["L892", "(pointer float)", 1], + ["L893", "float", true], + ["L894", "float", true], + ["L895", "float", true], + ["L896", "(pointer float)", 1], + ["L897", "(pointer float)", 1], + ["L898", "(pointer float)", 1], + ["L899", "float", true], + ["L900", "(pointer float)", 1], + ["L901", "uint64", true], + ["L904", "uint64", true], + ["L905", "uint64", true], + ["L906", "uint64", true], + ["L907", "uint64", true], + ["L908", "uint64", true], + ["L909", "uint64", true], + ["L910", "uint64", true] + ], + + "cam-debug": [ + ["L174", "vector4w"], + ["L175", "vector4w"], + ["L176", "vector4w"], + ["L177", "vector4w"], + ["L178", "vector4w"], + ["L209", "vector4w"], + ["L210", "vector4w"], + ["L211", "vector4w"], + ["L212", "vector4w"], + ["L213", "vector4w"], + ["L214", "vector4w"], + ["L215", "vector4w"], + ["L216", "vector4w"], + ["L217", "vector4w"], + ["L218", "vector4w"], + ["L219", "vector4w"], + ["L220", "vector4w"], + ["L221", "vector4w"], + ["L222", "vector4w"], + ["L223", "vector4w"], + ["L224", "vector4w"], + ["L225", "vector4w"], + ["L226", "vector4w"], + ["L227", "vector4w"], + ["L228", "vector4w"], + ["L229", "vector4w"], + ["L230", "vector4w"], + ["L231", "vector4w"], + ["L232", "vector4w"], + ["L233", "vector4w"], + ["L234", "vector4w"], + ["L239", "vector4w"], + ["L240", "vector4w"], + ["L241", "vector4w"], + ["L242", "vector4w"], + ["L243", "vector"], + ["L244", "vector"], + ["L245", "vector4w"], + ["L246", "vector"], + ["L247", "vector"], + ["L254", "vector"], + ["L255", "vector"], + ["L256", "vector"], + ["L257", "vector"], + ["L263", "vector4w"] + ], + + "sparticle-launcher": [["L192", "adgif-shader"]], + + "process-taskable": [["L251", "attack-info"]], + + "babak-with-cannon": [["L92", "vector"]], + + "flutflut": [["L94", "vector"]], + + "fishermans-boat": [ + ["L210", "vector"], + ["L410", "attack-info"], + ["L411", "vector"], + ["L412", "vector"], + ["L413", "vector"], + ["L431", "(pointer float)", 32], + ["L432", "(pointer float)", 32], + ["L434", "rigid-body-platform-constants"] + ], + + "training-obs": [["L175", "rigid-body-platform-constants"]], + + "bonelurker": [ + ["L72", "attack-info"], + ["L73", "attack-info"] + ], + + "balloonlurker": [ + ["L105", "vector"], + ["L113", "rigid-body-platform-constants"] + ], + + "assistant-village2": [ + ["L177", "vector"], + ["L219", "attack-info"], + ["L268", "vector"] + ], + + "citb-plat": [["L155", "rigid-body-platform-constants"]], + + "qbert-plat": [["L99", "rigid-body-platform-constants"]], + + "misty-conveyor": [ + ["L60", "vector"], + ["L65", "vector"], + ["L66", "vector"], + ["L71", "vector"], + ["L73", "attack-info"] + ], + + "swamp-bat": [ + ["L88", "matrix"], + ["L99", "vector"], + ["L102", "vector"], + ["L103", "attack-info"] + ], + + "cavecrystal-light": [ + ["L45", "vector"], + ["L46", "vector"] + ], + + "gnawer": [["L216", "(inline-array gnawer-segment-info)", 10]], + + "target-tube": [["L142", "vector"]], + + "assistant-village3": [["L43", "vector"]], + + "sage-village3": [["L74", "vector"]], + + "target-snowball": [["L23", "vector"]], + + "ice-cube": [ + ["L212", "attack-info"], + ["L213", "attack-info"], + ["L215", "attack-info"] + ], + + "assistant-lavatube": [["L30", "vector"]], + + "citadel-part": [ + ["L235", "float", true], + ["L236", "float", true], + ["L237", "float", true], + ["L238", "float", true], + ["L242", "uint64", true] + ], + + "village1-part": [ + ["L238", "float", true], + ["L239", "float", true], + ["L240", "float", true], + ["L241", "float", true], + ["L245", "uint64", true] + ], + + "sunken-part": [["L220", "uint64", true]], + + "ogre-part": [["L93", "uint64", true]], + + "collectables-part": [ + ["L309", "float", true], + ["L310", "float", true] + ], + + "village1-part2": [ + ["L122", "float", true], + ["L123", "float", true], + ["L124", "float", true], + ["L125", "uint64", true] + ], + + "village2-part": [ + ["L226", "float", true], + ["L227", "float", true], + ["L228", "float", true], + ["L229", "uint64", true], + ["L233", "uint64", true] + ], + + "village3-part": [["L244", "uint64", true]], + + "lavatube-part": [["L110", "uint64", true]], + + "hud-classes": [ + ["L279", "vector"], + ["L310", "vector"], + ["L318", "vector"] + ], + + "collectables": [ + ["L611", "(pointer float)", true, 1], + ["L649", "(pointer float)", true, 1], + ["L656", "(pointer float)", true, 1], + ["L657", "(pointer float)", true, 1], + ["L658", "(pointer float)", true, 1], + ["L660", "(pointer float)", true, 1], + ["L663", "(pointer float)", true, 1], + ["L585", "vector"], + ["L725", "float", true], + ["L726", "float", true], + ["L727", "float", true], + ["L728", "uint64", true], + ["L729", "uint64", true], + ["L730", "uint64", true], + ["L731", "uint64", true], + ["L732", "uint64", true], + ["L733", "uint64", true] + ], + + "sky": [["L13", "vu-function"]], + + "sky-tng": [ + ["L82", "sky-work"], + // 576 bytes, 32 bytes each + ["L81", "(inline-array sky-vertex)", 12], + ["L80", "(inline-array sky-vertex)", 12], + ["L79", "(inline-array sky-vertex)", 72], + ["L78", "(pointer uint8)", 48], + ["L77", "vector"], + ["L76", "vector"] + ], + + "effect-control": [ + ["L300", "float", true], + ["L301", "float", true], + ["L302", "float", true], + ["L306", "float", true], + ["L307", "float", true], + ["L309", "float", true], + ["L310", "float", true], + ["L312", "float", true], + ["L314", "float", true] + ], + + "seagull": [["L226", "(inline-array air-box)", 20]], + + "rolling-race-ring": [ + ["L94", "vector"], + ["L95", "vector"], + ["L96", "vector"], + ["L97", "vector"], + ["L98", "vector"], + ["L99", "vector"], + ["L100", "vector"] + ], + + "part-tester": [["L32", "uint64", true]], + + "anim-tester": [ + ["L509", "(inline-array list-field)", 12], + ["L523", "vector"], + ["L524", "vector"], + ["L649", "(pointer float)", 1], + ["L650", "(pointer float)", 1], + ["L651", "(pointer float)", 1], + ["L652", "(pointer float)", 1], + ["L653", "(pointer float)", 1], + ["L654", "(pointer float)", 1], + ["L655", "(pointer float)", 1], + ["L656", "(pointer float)", 1], + ["L657", "uint64", true], + ["L658", "uint64", true], + ["L663", "uint64", true], + ["L664", "uint64", true], + ["L665", "uint64", true], + ["L666", "uint64", true], + ["L667", "uint64", true], + ["L668", "uint64", true], + ["L669", "uint64", true], + ["L670", "uint64", true] + ], + + "fisher-JUN": [ + ["L262", "vector"], + ["L463", "(array (inline-array fisher-params))"] + ], + "fisher-JUNGLE-L1": [ + ["L262", "vector"], + ["L463", "(array (inline-array fisher-params))"] + ], + + "robotboss-weapon": [ + ["L122", "attack-info"], + ["L127", "attack-info"], + ["L138", "attack-info"], + ["L144", "vector4w"], + ["L145", "vector"] + ], + + "robotboss-misc": [["L99", "vector"]], + + "robotboss": [ + ["L646", "attack-info"], + ["L647", "attack-info"], + ["L651", "vector"], + ["L654", "vector"], + ["L655", "vector"], + ["L656", "vector"], + ["L657", "vector"], + ["L658", "vector"], + ["L659", "vector"], + ["L660", "vector"], + ["L661", "vector"], + ["L662", "vector"], + ["L678", "vector"], + ["L669", "vector"], + ["L701", "vector"], + ["L702", "vector"], + ["L703", "vector"], + ["L705", "vector"], + ["L642", "robotboss-dda"], + ["L643", "robotboss-dda"], + ["L644", "robotboss-dda"], + ["L645", "robotboss-dda"], + ["L632", "robotboss-dda"], + ["L713", "float", true], + ["L714", "float", true], + ["L715", "float", true], + ["L716", "float", true], + ["L717", "float", true], + ["L718", "float", true], + ["L719", "float", true], + ["L720", "float", true], + ["L721", "float", true], + ["L722", "float", true], + ["L723", "float", true], + ["L724", "float", true], + ["L725", "float", true], + ["L726", "float", true], + ["L727", "float", true], + ["L728", "float", true], + ["L729", "float", true], + ["L730", "float", true], + ["L731", "float", true], + ["L732", "float", true], + ["L733", "float", true], + ["L734", "float", true], + ["L735", "float", true], + ["L736", "float", true], + ["L737", "float", true], + ["L738", "float", true], + ["L739", "float", true], + ["L740", "float", true], + ["L741", "float", true], + ["L742", "float", true], + ["L743", "float", true], + ["L744", "float", true], + ["L745", "float", true], + ["L746", "float", true], + ["L747", "float", true], + ["L748", "float", true], + ["L749", "float", true], + ["L750", "float", true], + ["L751", "float", true], + ["L752", "float", true], + ["L753", "float", true], + ["L754", "float", true], + ["L755", "float", true], + ["L756", "float", true], + ["L757", "float", true], + ["L758", "float", true], + ["L759", "float", true], + ["L760", "float", true], + ["L761", "float", true], + ["L762", "float", true], + ["L763", "float", true], + ["L764", "float", true], + ["L765", "float", true], + ["L766", "float", true], + ["L767", "float", true], + ["L768", "(pointer float)", 1], + ["L769", "float", true], + ["L770", "float", true], + ["L771", "float", true], + ["L772", "float", true], + ["L773", "float", true], + ["L774", "float", true], + ["L775", "float", true], + ["L776", "float", true], + ["L777", "float", true], + ["L778", "float", true], + ["L779", "float", true], + ["L780", "float", true], + ["L781", "float", true], + ["L782", "float", true], + ["L783", "float", true], + ["L784", "float", true], + ["L785", "float", true], + ["L786", "float", true], + ["L787", "float", true], + ["L788", "float", true], + ["L789", "float", true], + ["L790", "float", true], + ["L791", "float", true], + ["L792", "float", true], + ["L793", "float", true], + ["L794", "float", true], + ["L795", "float", true], + ["L796", "float", true], + ["L797", "float", true], + ["L798", "float", true], + ["L799", "float", true], + ["L800", "float", true], + ["L801", "uint64", true], + ["L802", "uint64", true], + ["L803", "uint64", true], + ["L804", "uint64", true], + ["L814", "float", true], + ["L815", "uint64", true], + ["L816", "uint64", true] + ], + + "sage-finalboss-FIN": [ + ["L528", "vector"], + ["L272", "vector"], + ["L527", "quaternion"] + ], + "sage-finalboss-L1": [ + ["L528", "vector"], + ["L272", "vector"], + ["L527", "quaternion"] + ], + + // please do not add things after this entry! git is dumb. + "object-file-that-doesnt-actually-exist-and-i-just-put-this-here-to-prevent-merge-conflicts-with-this-file": [] +} diff --git a/decompiler/config/jak1_sced/stack_structures.jsonc b/decompiler/config/jak1_sced/stack_structures.jsonc new file mode 100644 index 0000000000..fe6bb5e48d --- /dev/null +++ b/decompiler/config/jak1_sced/stack_structures.jsonc @@ -0,0 +1,2751 @@ +{ + "run-function-in-process": [ + [16, ["array", "uint64", 6]], + [64, "catch-frame"] + ], + + "matrixp*!": [[16, "matrix"]], + + "vector3s-matrix*!": [[16, "vector"]], + + "vector3s-rotate*!": [[16, "vector"]], + + "matrix-rotate-zyx!": [ + [16, "matrix"], + [80, "matrix"] + ], + "matrix-rotate-xyz!": [ + [16, "matrix"], + [80, "matrix"] + ], + "matrix-rotate-zxy!": [ + [16, "matrix"], + [80, "matrix"] + ], + "matrix-rotate-yxz!": [ + [16, "matrix"], + [80, "matrix"] + ], + "matrix-rotate-yzx!": [ + [16, "matrix"], + [80, "matrix"] + ], + "matrix-rotate-yxy!": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + "matrix-rotate-yx!": [[16, "matrix"]], + "transform-matrix-calc!": [ + [16, "matrix"], + [80, "matrix"] + ], + "transform-matrix-parent-calc!": [ + [16, "matrix"], + [80, "matrix"] + ], + "matrix-with-scale->quaternion": [[16, "matrix"]], + "quaternion-exp!": [[16, "vector"]], + "quaternion-slerp!": [[16, "vector"]], + "quaternion-zxy!": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + "vector-x-quaternion!": [[16, "matrix"]], + "vector-y-quaternion!": [[16, "matrix"]], + "vector-z-quaternion!": [[16, "matrix"]], + "quaternion-y-angle": [[16, "vector"]], + "quaternion-rotate-local-x!": [[16, "quaternion"]], + "quaternion-rotate-local-y!": [[16, "quaternion"]], + "quaternion-rotate-local-z!": [[16, "quaternion"]], + "quaternion-rotate-y!": [[16, "quaternion"]], + "quaternion-rotate-x!": [ + [16, "quaternion"], + [32, "vector"] + ], + "quaternion-rotate-z!": [ + [16, "quaternion"], + [32, "vector"] + ], + "quaternion-delta-y": [ + [16, "vector"], + [32, "vector"] + ], + "quaternion-rotate-y-to-vector!": [ + [16, "quaternion"], + [32, "vector"], + [48, "quaternion"] + ], + "quaternion-xz-angle": [ + [16, "matrix"], + [80, "vector"] + ], + "vector-rotate-y!": [ + [16, "quaternion"], + [32, "matrix"] + ], + "eul->matrix": [[16, "vector"]], + "eul->quat": [[16, "matrix"]], + "quat->eul": [[16, "matrix"]], + "vector-line-distance": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + "vector-line-distance-point!": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + "forward-up-nopitch->inv-matrix": [[16, "vector"]], + "forward-up-nopitch->quaternion": [[16, "matrix"]], + "forward-up->quaternion": [ + [16, "matrix"], + [80, "vector"] + ], + "quaternion-from-two-vectors!": [[16, "vector"]], + "quaternion-from-two-vectors-max-angle!": [[16, "vector"]], + "matrix-from-two-vectors!": [[16, "vector"]], + "matrix-from-two-vectors-max-angle!": [[16, "vector"]], + "matrix-from-two-vectors-max-angle-partial!": [[16, "vector"]], + "matrix-from-two-vectors-partial-linear!": [[16, "vector"]], + "matrix-remove-z-rot": [ + [16, "vector"], + [32, "matrix"] + ], + "matrix-rot-diff!": [ + [16, "quaternion"], + [32, "quaternion"], + [48, "quaternion"] + ], + "quaternion-seek": [ + [16, "matrix"], + [80, "matrix"], + [144, "quaternion"] + ], + "vector-deg-seek": [[16, "matrix"]], + "vector-deg-slerp": [ + [16, "matrix"], + [80, "vector"], + [96, "vector"] + ], + "circle-test": [ + [16, "sphere"], + [32, "sphere"], + [48, "vector"], + [64, "vector"] + ], + "move-target-from-pad": [ + [16, "vector"], + [32, "vector"], + [48, "matrix"] + ], + "draw-sprite2d-xy": [[16, "draw-context"]], + "screen-gradient": [[16, "draw-context"]], + "(method 10 oscillating-vector)": [[16, "vector"]], + "show-mc-info": [[16, "mc-slot-info"]], + "update-mood-erase-color2": [[16, "mood-fog"]], + "make-light-kit": [[16, "matrix"]], + "matrix<-parented-transformq!": [[16, "vector"]], + "(method 20 trsqv)": [[16, "vector"]], + "(method 19 trsqv)": [[16, "vector"]], + "(method 17 trsqv)": [ + [16, "quaternion"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"] + ], + "(method 25 trsqv)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + "(method 16 trsqv)": [ + [16, "matrix"], + [80, "matrix"] + ], + "(method 14 trsqv)": [[16, "vector"]], + "(method 13 trsqv)": [[16, "vector"]], + "(method 12 trsqv)": [ + [16, "vector"], + [32, "vector"] + ], + "(method 11 trsqv)": [[16, "vector"]], + "(method 10 trsqv)": [ + [16, "vector"], + [32, "vector"] + ], + + "(method 23 trsqv)": [[16, "vector"]], + "(method 24 trsqv)": [[16, "vector"]], + + "vector-sincos!": [[16, "vector"]], + + "init-for-transform": [ + [16, "matrix"], + [80, "matrix"], + [144, "vector4s-3"], + [192, "vector"], + [208, "vector4s-3"] + ], + "string->sound-name": [[16, "qword"]], + "(method 15 trajectory)": [ + [16, "vector"], + [32, "vector"] + ], + "ripple-add-debug-sphere": [[16, "vector"]], + "camera-teleport-to-entity": [ + [16, "transformq"], + [64, "event-message-block"] + ], + "(method 10 cam-vector-seeker)": [[16, "vector"]], + "joint-mod-look-at-handler": [ + [16, "vector"], + [32, "vector"], + [64, "vector"], + [80, "vector"], + [96, "vector"] + ], + "joint-mod-world-look-at-handler": [ + [16, "vector"], + [32, "vector"], + [64, "vector"], + [80, "matrix"], + [144, "vector"], + [160, "vector"], + [176, "matrix"] + ], + "joint-mod-rotate-handler": [ + [16, "quaternion"], + [32, "quaternion"], + [48, "quaternion"] + ], + "joint-mod-wheel-callback": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + "draw-end-credits": [[16, "font-context"]], + "draw-title-credits": [[16, "font-context"]], + "moving-sphere-sphere-intersect": [[16, "vector"]], + "moving-sphere-moving-sphere-intersect": [ + [16, "vector"], + [32, "vector"] + ], + "(method 9 cylinder-flat)": [ + [16, "vector"], + [32, "vector"], + [48, "cylinder-flat-verts"], + [208, "cylinder-flat-verts"], + [368, "matrix"], + [432, "vector"] + ], + "(method 9 cylinder)": [ + [16, "vector"], + [32, "vector"], + [48, "cylinder-verts"], + [432, "cylinder-verts"], + [816, "matrix"], + [880, "matrix"] + ], + "ray-arbitrary-circle-intersect": [ + [16, "vector"], + [32, "vector"] + ], + "(method 10 cylinder-flat)": [ + [16, "vector"], + [32, "vector"] + ], + "(method 10 cylinder)": [ + [16, "vector"], + [32, "vector"] + ], + "add-debug-sphere-from-table": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + "make-debug-sphere-table": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + "(method 20 actor-link-info)": [[16, "event-message-block"]], + "(method 21 actor-link-info)": [[16, "event-message-block"]], + "(method 23 actor-link-info)": [[16, "event-message-block"]], + "(method 24 actor-link-info)": [[16, "event-message-block"]], + "internal-draw-debug-line": [ + [16, "vector4w-2"], + [48, "vector4w-2"] + ], + "internal-draw-debug-text-3d": [ + [16, "vector4w"], + [32, "font-context"] + ], + "add-debug-triangle-normal": [ + [16, "vector"], + [32, "vector"] + ], + "add-debug-flat-triangle": [ + [16, "vector4w-3"], + [64, "vector4w-3"] + ], + "add-debug-point": [[16, "vector4w-2"]], + "add-debug-line2d": [ + [16, "vector4w"], + [32, "vector4w"] + ], + "add-debug-box": [ + [16, "vector"], + [32, "vector"] + ], + "add-debug-x": [ + [16, "vector"], + [32, "vector"] + ], + "add-debug-sphere-with-transform": [[16, "vector"]], + "add-debug-circle": [ + [16, "vector"], + [32, "vector"] + ], + "add-debug-vector": [[16, "vector"]], + "add-debug-yrot-vector": [[16, "vector"]], + "add-debug-arc": [ + [16, "vector"], + [32, "vector"] + ], + "add-debug-curve": [ + [16, "vector"], + [32, "vector"] + ], + "add-debug-points": [[16, "vector"]], + "add-debug-light": [[16, "vector"]], + "dma-timeout-cam": [ + [16, "vector"], + [32, "matrix"] + ], + + "(method 18 tracking-spline)": [ + [16, "tracking-spline-sampler"], + [32, "tracking-spline-sampler"] + ], + + "draw-ocean-transition": [[16, "sphere"]], + + "dm-cam-mode-func": [[16, "event-message-block"]], + "ocean-trans-add-upload-table": [[16, "vector"]], + + "dm-cam-settings-func": [[16, "event-message-block"]], + + "dm-cam-render-float": [[16, "event-message-block"]], + + "debug-create-cam-restore": [[16, "euler-angles"]], + + "dm-task-resolution": [[16, "event-message-block"]], + + "dm-task-get-money": [[16, "event-message-block"]], + + "dm-give-all-cells": [[16, "event-message-block"]], + + "dm-give-cell": [[16, "event-message-block"]], + + "(anon-function 13 default-menu)": [[16, "event-message-block"]], + + "(anon-function 12 default-menu)": [[16, "event-message-block"]], + + "(anon-function 11 default-menu)": [[16, "event-message-block"]], + + "(method 22 level)": [[16, "event-message-block"]], + "(method 9 level)": [[16, "event-message-block"]], + "(method 10 load-state)": [[16, "event-message-block"]], + "cam-slave-get-rot": [[16, "quaternion"]], + + "draw-joint-spheres": [[16, "vector"]], + "(method 16 process-drawable)": [ + [16, "matrix"], + [80, "matrix"], + [144, "vector"], + [160, "vector"] + ], + "(anon-function 494 task-control)": [[16, "event-message-block"]], + "(anon-function 493 task-control)": [[16, "event-message-block"]], + "(anon-function 480 task-control)": [[16, "event-message-block"]], + "(anon-function 477 task-control)": [[16, "event-message-block"]], + "(anon-function 476 task-control)": [[16, "event-message-block"]], + "(anon-function 475 task-control)": [[16, "event-message-block"]], + "(anon-function 474 task-control)": [[16, "event-message-block"]], + "(anon-function 455 task-control)": [[16, "event-message-block"]], + "(anon-function 445 task-control)": [[16, "event-message-block"]], + "(anon-function 435 task-control)": [[16, "event-message-block"]], + "(anon-function 426 task-control)": [[16, "event-message-block"]], + "(anon-function 425 task-control)": [[16, "event-message-block"]], + "(anon-function 415 task-control)": [[16, "event-message-block"]], + "(anon-function 414 task-control)": [[16, "event-message-block"]], + "(anon-function 403 task-control)": [[16, "event-message-block"]], + "(anon-function 400 task-control)": [[16, "event-message-block"]], + "(anon-function 393 task-control)": [[16, "event-message-block"]], + "(anon-function 390 task-control)": [[16, "event-message-block"]], + "(anon-function 383 task-control)": [[16, "event-message-block"]], + "(anon-function 380 task-control)": [[16, "event-message-block"]], + "(anon-function 369 task-control)": [[16, "event-message-block"]], + "(anon-function 368 task-control)": [[16, "event-message-block"]], + "(anon-function 367 task-control)": [[16, "event-message-block"]], + "(anon-function 366 task-control)": [[16, "event-message-block"]], + "(anon-function 365 task-control)": [[16, "event-message-block"]], + "(anon-function 364 task-control)": [[16, "event-message-block"]], + "(anon-function 363 task-control)": [[16, "event-message-block"]], + "(anon-function 362 task-control)": [[16, "event-message-block"]], + "(anon-function 337 task-control)": [[16, "event-message-block"]], + "(anon-function 336 task-control)": [[16, "event-message-block"]], + "(anon-function 286 task-control)": [[16, "event-message-block"]], + "(anon-function 227 task-control)": [[16, "event-message-block"]], + "(anon-function 38 task-control)": [[16, "event-message-block"]], + "(anon-function 28 task-control)": [[16, "event-message-block"]], + "(method 10 border-plane)": [[16, "vector"]], + "(method 9 game-info)": [[16, "event-message-block"]], + "(method 9 continue-point)": [[16, "vector"]], + "(method 9 game-save)": [[16, "file-stream"]], + "(method 10 game-save)": [[16, "file-stream"]], + "vector-vector-deg-slerp!": [ + [16, "vector"], + [32, "vector"], + [48, "quaternion"], + [64, "quaternion"], + [80, "quaternion"], + [96, "vector"] + ], + "closest-pt-in-triangle": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + "vector-circle-tangent-new": [ + [16, "sphere"], + [32, "vector"], + [48, "vector"] + ], + "vector-circle-tangent": [ + [16, "sphere"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + "vector-plane-distance": [[16, "vector"]], + "curve-length": [ + [16, "vector"], + [32, "vector"] + ], + "curve-closest-point": [ + [16, "vector"], + [32, "vector"] + ], + "(method 27 seagull)": [ + [16, "vector"], + [32, "vector"] + ], + "add-debug-air-box": [ + [16, "vector"], + [32, "vector"] + ], + "mem-size": [[16, "memory-usage-block"]], + "display-loop": [[16, "sphere"]], + "(method 14 curve-control)": [[16, "vector"]], + "(method 19 path-control)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + "progress-allowed?": [[16, "event-message-block"]], + "(method 9 align-control)": [ + [16, "matrix"], + [80, "quaternion"] + ], + "(method 10 align-control)": [[16, "vector"]], + "(method 15 load-state)": [ + [16, "event-message-block"], + [96, "event-message-block"] + ], + + "(method 43 farmer)": [[16, "vector"]], + + "yakow-post": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"], + [96, "vector"] + ], + + "anim-tester-save-object-seqs": [[16, "file-stream"]], + "anim-test-obj-list-handler": [[16, "event-message-block"]], + "anim-test-anim-list-handler": [[16, "event-message-block"]], + "anim-test-sequence-list-handler": [[16, "event-message-block"]], + "anim-test-edit-seq-insert-item": [[16, "event-message-block"]], + "anim-test-edit-sequence-list-handler": [ + [112, "event-message-block"], + [16, "font-context"] + ], + "anim-tester-add-newobj": [[16, "event-message-block"]], + "anim-tester-start": [[16, "event-message-block"]], + "anim-tester-add-sequence": [[16, "event-message-block"]], + + "instance-tfragment-add-debug-sphere": [[16, "vector"]], + + "cam-state-from-entity": [[16, "curve"]], + + "(method 9 cam-index)": [[16, "vector"]], + + "(method 10 cam-index)": [[16, "vector"]], + + "(method 15 tracking-spline)": [ + [16, "tracking-spline-sampler"], + [32, "tracking-point"] + ], + "(method 16 tracking-spline)": [ + [16, "tracking-spline-sampler"], + [32, "vector"] + ], + "(method 20 tracking-spline)": [ + [16, "vector"], + [32, "vector"] + ], + "(method 21 tracking-spline)": [ + [16, "tracking-spline-sampler"], + [32, "vector"] + ], + "(method 22 tracking-spline)": [ + [16, "tracking-spline-sampler"], + [32, "vector"] + ], + "cam-slave-init": [[16, "event-message-block"]], + "cam-curve-pos": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + "cam-calc-follow!": [ + [16, "event-message-block"], + [96, "vector"], + [112, "vector"], + [128, "vector"], + [144, "vector"] + ], + "mat-remove-z-rot": [ + [16, "vector"], + [32, "matrix"] + ], + "slave-matrix-blend-2": [ + [16, "vector"], + [32, "quaternion"], + [48, "quaternion"], + [64, "quaternion"] + ], + "vector-into-frustum-nosmooth!": [ + [16, "matrix"], + [80, "vector"], + [96, "vector"] + ], + "slave-set-rotation!": [ + [16, "vector"], + [32, "matrix"], + [96, "vector"], + [112, "matrix"], + [176, "vector"] + ], + "v-slrp2!": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "matrix"], + [128, "vector"] + ], + "v-slrp3!": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "matrix"], + [128, "vector"] + ], + + "(code cam-combiner-active)": [ + [16, "vector"], + [32, "matrix"], + [80, "vector"], + [96, "matrix"] + ], + "cam-master-init": [ + [16, "vector"], + [32, "vector"] + ], + "plane-from-points": [[16, "vector"]], + "update-view-planes": [ + [16, "view-frustum"], + [144, "vector"], + [160, "vector"], + [176, "vector"], + [192, "vector"], + [208, "vector"], + [224, "vector"] + ], + "move-camera-from-pad": [[16, "vector"]], + "cam-free-floating-move": [[16, "camera-free-floating-move-info"]], + "update-camera": [ + [16, "vector"], + [32, "quaternion"], + [48, "vector"] + ], + + "ocean-make-trans-camera-masks": [ + [16, "vector"], + [32, "vector"] + ], + + "update-mood-prt-color": [[16, "vector"]], + + "update-mood-swamp": [[16, "vector"]], + + "update-mood-village1": [[16, "vector"]], + + "update-mood-maincave": [[16, "vector"]], + + "update-mood-ogre": [[16, "vector"]], + + "update-mood-finalboss": [ + [16, "vector"], + [32, "vector"] + ], + + "update-mood-darkcave": [ + [16, "vector"], + [32, "vector"] + ], + + "update-mood-citadel": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"], + [96, "vector"], + [112, "vector"], + [128, "vector"] + ], + + "update-mood-jungleb": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "update-mood-sunken": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + + "update-mood-village2": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + + "update-mood-rolling": [ + [16, "vector"] // TODO - really not sure about this one + ], + + "update-mood-village3": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"], + [96, "vector"] + ], + + "ocean-transition-check": [[16, "vector"]], + + "ocean-trans-add-upload-strip": [[16, "vector"]], + + "draw-ocean-transition-seams": [[16, "sphere"]], + + "(method 32 mayor)": [[16, "event-message-block"]], + + "(method 43 mayor)": [[16, "vector"]], + + "(method 10 tippy)": [[16, "vector"]], + + "compute-and-draw-shadow": [ + [16, "vector"], + [32, "vector"], + [48, "sparticle-cpuinfo"] // kinda a guess + ], + + "find-ground-and-draw-shadow": [ + [16, "vector"], + [32, "vector"], + [48, "collide-tri-result"] + ], + + "(method 20 collide-cache)": [[16, "vector"]], + + "(method 12 wobbler)": [[16, "vector"]], + + "(method 12 twister)": [[16, "matrix"]], + + "target-on-end-of-teetertotter?": [ + [16, "vector"], + [32, "vector"] + ], + + "(event teetertotter-launch)": [[16, "event-message-block"]], + + "(method 17 rigid-body)": [[16, "vector"]], + + "matrix-3x3-triple-transpose-product": [ + [16, "matrix"], + [80, "matrix"] + ], + + "(method 10 rigid-body)": [[16, "quaternion"]], + + "(method 13 rigid-body)": [ + [16, "vector"], + [32, "vector"] + ], + + "(method 16 rigid-body)": [ + [16, "vector"], + [32, "vector"] + ], + + "(method 14 rigid-body)": [ + [16, "vector"], + [32, "vector"] + ], + + "(method 18 rigid-body)": [[16, "vector"]], + + "(method 24 rigid-body-platform)": [[16, "vector"]], + + "(method 26 rigid-body-platform)": [[16, "vector"]], + + "(method 27 rigid-body-platform)": [[16, "vector"]], + + "(method 22 water-anim)": [[16, "vector"]], + + "(anon-function 9 plat-eco)": [[16, "event-message-block"]], + + "default-collision-reaction": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [96, "vector"] + ], + + "(trans plat-button-move-downward sunken-elevator)": [ + [16, "vector"], + [32, "vector"], + [48, "event-message-block"] + ], + + "(method 29 sunken-elevator)": [[16, "vector"]], + "(anon-function 0 title-obs)": [[16, "font-context"]], + + "print-game-text": [[16, "font-context"]], + + "draw-string-xy": [[16, "font-context"]], + + "(method 50 nav-enemy)": [[16, "vector"]], + + "nav-enemy-init-by-other": [[16, "vector"]], + + "nav-enemy-turn-to-face-point": [[16, "vector"]], + + "nav-enemy-facing-point?": [[16, "vector"]], + + "nav-enemy-jump-post": [[16, "vector"]], + + "(method 41 nav-enemy)": [ + [16, "vector"], + [32, "vector"] + ], + + "nav-enemy-falling-post": [ + [16, "vector"] // TODO - check collide-shape-moving::62(type, vector, float) + ], + + "nav-enemy-death-post": [ + [16, "vector"] // TODO - check collide-shape-moving::62(type, vector, float) + ], + + "nav-enemy-jump-land-post": [ + [16, "vector"], + [32, "vector"] + ], + + "nav-enemy-facing-direction?": [ + [16, "vector"], + [32, "vector"] + ], + + "nav-enemy-initialize-custom-jump": [ + [16, "vector"], + [32, "vector"] + ], + + "nav-enemy-flee-post": [ + [16, "vector"], + [32, "vector"] + ], + + "(enter nav-enemy-jump-land nav-enemy)": [[16, "vector"]], + "(code nav-enemy-die nav-enemy)": [[16, "event-message-block"]], + "(enter nav-enemy-die nav-enemy)": [[16, "event-message-block"]], + "(trans nav-enemy-flee nav-enemy)": [[16, "event-message-block"]], + "(trans nav-enemy-patrol nav-enemy)": [[16, "event-message-block"]], + + "(method 73 nav-enemy)": [[16, "event-message-block"]], + + "(method 43 nav-enemy)": [[16, "event-message-block"]], + + "nav-enemy-send-attack": [[16, "event-message-block"]], + + "birth-pickup-at-point": [[16, "vector"]], + + "merc-blend-shape": [[16, ["array", "int16", 128]]], + + "(method 43 bird-lady)": [[16, "vector"]], + + "(method 32 bird-lady-beach)": [[16, "event-message-block"]], + + "muse-to-idle": [[16, "event-message-block"]], + + "(method 32 sculptor)": [[16, "event-message-block"]], + + "(method 43 sculptor)": [[16, "vector"]], + + "(method 32 geologist)": [[16, "event-message-block"]], + + "(method 43 geologist)": [[16, "vector"]], + + "(method 32 oracle)": [[16, "event-message-block"]], + + "(method 11 oracle)": [ + [16, "vector"], + [32, "event-message-block"] + ], + + "(method 32 explorer)": [[16, "event-message-block"]], + + "(method 43 explorer)": [[16, "vector"]], + + "(method 32 assistant)": [[16, "event-message-block"]], + + "(method 43 assistant)": [[16, "vector"]], + + "(code idle assistant)": [ + [16, "vector"], + [32, "vector"] + ], + + "check-drop-level-assistant": [[16, "vector"]], + + "(method 32 sage)": [[16, "event-message-block"]], + + "(method 43 sage)": [[16, "vector"]], + + "(trans idle sage)": [[16, "event-message-block"]], + + "(method 32 gambler)": [[16, "event-message-block"]], + + "(method 43 gambler)": [[16, "vector"]], + + "(method 32 warrior)": [[16, "event-message-block"]], + + "(method 43 warrior)": [[16, "vector"]], + + "(exit play-anim warrior)": [[16, "event-message-block"]], + + "minershort-trans-hook": [[16, "vector"]], + + "(method 32 minershort)": [[16, "event-message-block"]], + + "(exit play-anim minershort)": [[16, "event-message-block"]], + + "(method 43 minershort)": [[16, "vector"]], + + "(method 33 progress)": [[16, "event-message-block"]], + "hide-progress-screen": [[16, "event-message-block"]], + "progress-init-by-other": [[16, "quaternion"]], + "(post progress-debug)": [[16, "font-context"]], + "(post progress-normal)": [[16, "font-context"]], + "(code progress-normal)": [[16, "event-message-block"]], + "fuel-cell-progress-hud-orbit-callback": [ + [16, "vector"], + [32, "vector"] + ], + "(method 24 progress)": [[16, "font-context"]], + "(method 25 progress)": [[16, "font-context"]], + "(method 26 progress)": [[16, "font-context"]], + "(method 17 progress)": [[16, "font-context"]], + "(method 28 progress)": [[16, "font-context"]], + "(method 27 progress)": [[16, "font-context"]], + + "(method 11 fact-info-target)": [[16, "event-message-block"]], + + "(anon-function 6 game-info)": [[16, "event-message-block"]], + + "(anon-function 8 game-info)": [[16, "event-message-block"]], + + "(method 24 game-info)": [[16, "scf-time"]], + + "auto-save-post": [ + [16, "font-context"], + [112, "font-context"] + ], + + "auto-save-init-by-other": [[16, "event-message-block"]], + + "(code error auto-save)": [[16, "event-message-block"]], + + "(code done auto-save)": [[16, "event-message-block"]], + + "update-time-of-day": [ + [16, "(array float)"], // TODO - broken! + [48, "vector"] + ], + + "check-drop-level-rain": [[16, "vector"]], + + "update-rain": [ + [16, "vector"], + [32, "vector"], + [48, "event-message-block"] + ], + + "sparticle-track-sun": [[16, "vector"]], + + "(method 16 target)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "vector-local+!": [[16, "vector"]], + + "move-forward": [ + [16, "vector"], + [32, "vector"] + ], + + "set-forward-vel": [[16, "vector"]], + + "delete-back-vel": [ + [16, "vector"], + [32, "vector"] + ], + + "set-side-vel": [[16, "vector"]], + + "build-conversions": [[16, "vector"]], + + "vector-turn-to": [ + [16, "vector"], + [32, "vector"] + ], + + "warp-vector-into-surface!": [[16, "matrix"]], + + "vector<-pad-in-surface!": [[16, "vector"]], + + "local-pad-angle": [ + [16, "vector"], + [32, "vector"] + ], + + "turn-around?": [ + [16, "vector"], + [32, "vector"] + ], + + "target-move-dist": [[16, "vector"]], + + "turn-to-vector": [ + [16, "vector"], + [32, "vector"] + ], + + "add-thrust": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"], + [96, "vector"], + [112, "vector"], + [128, "vector"], + [144, "vector"], + [160, "vector"], + [176, "vector"], + [192, "vector"], + [208, "vector"], + [224, "vector"] + ], + + "add-gravity": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + + "target-compute-slopes": [ + [16, "vector"], + [32, "vector"], + [48, "matrix"] + ], + + "do-rotations2": [ + [16, "vector"], + [32, "quaternion"], + [48, "quaternion"] + ], + + "level-setup": [[16, "event-message-block"]], + + "flag-setup": [ + [16, "vector"], + [32, "event-message-block"], + [112, "vector"], + [128, "vector"], + [144, "vector"], + [160, "vector"] + ], + + "target-compute-edge": [ + [16, "event-message-block"], + [96, "vector"], + [112, "vector"] + ], + + "target-compute-edge-rider": [ + [16, "event-message-block"], + [96, "vector"] + ], + + "target-calc-camera-pos": [[16, "vector"]], + + "joint-points": [ + [16, "vector"], + [32, "vector"] + ], + + "target-real-post": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "target-swim-post": [[16, "vector"]], + + "target-no-stick-post": [[16, "vector"]], + + "target-no-move-post": [ + [16, "collide-edge-hold-list"] // a total guess + ], + + "target-slide-down-post": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "matrix"] + ], + + "target-no-ja-move-post": [ + [16, "collide-edge-hold-list"] // a total guess + ], + + "target-print-stats": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "target-compute-pole": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "event-message-block"], + [160, "vector"], + [176, "vector"], + [192, "vector"] + ], + + "can-exit-duck?": [ + [16, "collide-using-spheres-params"], + [48, ["inline-array", "sphere", 2]] + ], + + "(method 32 evilbro)": [[16, "event-message-block"]], + + "(exit play-anim evilbro)": [[16, "event-message-block"]], + + "(method 29 basebutton)": [[16, "event-message-block"]], + + "(code use warp-gate)": [[16, "event-message-block"]], + + "(trans use warp-gate)": [[16, "event-message-block"]], + + "(anon-function 1 basebutton)": [ + [16, "vector"], + [32, "vector"], + [48, "event-message-block"] + ], + + "(code target-warp-out)": [ + [16, "event-message-block"], + [96, "vector"], + [112, "vector"] + ], + + "dm-anim-tester-func": [[16, "event-message-block"]], + + "update-actor-vis-box": [[16, "vector"]], + + "(method 14 level-group)": [ + [16, "vector"], + [32, "vector"] + ], + + "(trans falling beach-rock)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"], + [96, "vector"] + ], + + "(code falling beach-rock)": [[16, "event-message-block"]], + + "(method 11 beach-rock)": [[16, "vector"]], + + "birth-func-copy-target-y-rot": [[16, "matrix"]], + + "birth-func-ground-orient": [ + [16, "vector"], + [32, "collide-tri-result"], + [128, "vector"], + [144, "quaternion"], + [160, "quaternion"] + ], + + "birth-func-target-orient": [ + [32, "vector"], + [48, "vector"], // unused + [64, "quaternion"], + [80, "quaternion"] + ], + + "birth-func-vector-orient": [ + [16, "vector"], + [32, "vector"], // unused + [48, "quaternion"] + ], + + "part-tracker-track-target-joint": [[16, "vector"]], + + "process-drawable-burn-effect": [ + [16, "rgbaf"], + [32, "rgbaf"], + [48, "vector"] + ], + + "(anon-function 27 projectiles)": [[16, "vector"]], + + "projectile-collision-reaction": [ + [16, "vector"], + [32, "vector"], + [48, "matrix"], + [96, "vector"], + [112, "event-message-block"], + [192, "vector"], + [208, "vector"] + ], + + "(event projectile-moving projectile)": [[16, "event-message-block"]], + + "(code projectile-moving projectile)": [[16, "vector"]], + + "projectile-update-velocity-space-wars": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + + "(code projectile-die projectile)": [[16, "event-message-block"]], + + "projectile-init-by-other": [[16, "collide-edge-hold-list"]], + + "(method 27 projectile-yellow)": [[16, "vector"]], + + "spawn-projectile-blue": [ + [16, "vector"], + [32, "vector"] + ], + + "(enter plat-button-move-downward jungle-elevator)": [ + [16, "event-message-block"] + ], + + "(trans plat-button-move-downward jungle-elevator)": [ + [16, "vector"], + [32, "vector"], + [48, "event-message-block"] + ], + + "(method 29 jungle-elevator)": [[16, "vector"]], + + "(event bouncer-wait)": [[16, "event-message-block"]], + + "hopper-find-ground": [ + [16, "vector"], + [32, "collide-tri-result"] + ], + + "blocking-plane-init-by-other": [[16, "matrix"]], + + "evilsib-trans-hook-wait": [[16, "event-message-block"]], + + "(method 32 sequenceB)": [[16, "event-message-block"]], + + "(event play-anim sequenceB)": [[16, "event-message-block"]], + + "(exit play-anim sequenceB)": [[16, "event-message-block"]], + + "sequenceC-can-trans-hook-2": [ + [16, "vector"], + [32, "event-message-block"] + ], + + "sequenceC-can-trans-hook": [[16, "event-message-block"]], + + "(method 32 sequenceC)": [[16, "event-message-block"]], + + "sequenceC-trans-hook": [[16, "vector"]], + + "(trans hidden assistant-firecanyon)": [[16, "font-context"]], + + "(method 32 sage-bluehut)": [[16, "event-message-block"]], + + "(exit play-anim sage-bluehut)": [[16, "event-message-block"]], + + "(method 43 sage-bluehut)": [[16, "vector"]], + + "(method 37 sharkey)": [[16, "vector"]], + + "(method 39 sharkey)": [[16, "vector"]], + + "sharkey-notice-player?": [[16, "event-message-block"]], + + "sharkey-move-to-attack-position": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "(code nav-enemy-attack sharkey)": [ + [16, "vector"], + [32, "vector"], + [48, "event-message-block"] + ], + + "(trans nav-enemy-chase sharkey)": [[16, "event-message-block"]], + + "(method 43 lurkercrab)": [ + [16, "vector"], + [32, "vector"] + ], + + "(enter idle assistant-lavatube-end)": [[16, "event-message-block"]], + + "target-has-all-the-cells?": [[16, "event-message-block"]], + + "(code idle power-left)": [[16, "event-message-block"]], + + "(code jump powercellalt)": [[16, "trajectory"]], + + "(enter target-final-door)": [[16, "event-message-block"]], + + "(exit target-final-door)": [[16, "event-message-block"]], + + "(code target-final-door)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "event-message-block"] + ], + + "(method 43 aphid)": [[16, "event-message-block"]], + + "(code nav-enemy-give-up aphid)": [[16, "vector"]], + + "aphid-init-by-other": [ + [16, "vector"], + [32, "event-message-block"] + ], + + "voicebox-track": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "crate-standard-event-handler": [[16, "event-message-block"]], + + "plat-trans": [[16, "vector"]], + + "(code door-closing eco-door)": [[16, "overlaps-others-params"]], + + "(code door-open eco-door)": [[16, "event-message-block"]], + + "(code door-opening eco-door)": [[16, "event-message-block"]], + + "(code door-closed eco-door)": [[16, "event-message-block"]], + + "(code plat-button-teleport-to-other-end plat-button)": [[16, "vector"]], + + "plat-button-camera-on": [[16, "event-message-block"]], + + "plat-button-camera-off": [[16, "event-message-block"]], + + "(trans plat-button-move-downward plat-button)": [[16, "vector"]], + + "(trans plat-button-move-upward plat-button)": [[16, "vector"]], + + "(event plat-idle plat-eco)": [[16, "event-message-block"]], + + "(trans plat-idle plat-eco)": [[16, "vector"]], + + "(anon-function 8 plat-eco)": [[16, "event-message-block"]], + + "(anon-function 7 plat-eco)": [ + [16, "vector"] // code + ], + + "(event drop-plat-idle)": [[16, "event-message-block"]], + + "(code drop-plat-rise)": [[16, "vector"]], + + "(post drop-plat-rise)": [[16, "quaternion"]], + + "(code drop-plat-drop)": [[16, "vector"]], + + "(post drop-plat-drop)": [[16, "quaternion"]], + + "(method 21 drop-plat)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "citb-drop-plat-spawn-children": [ + [16, "vector"], + [32, "vector"] + ], + + "citb-drop-plat-drop-all-children": [[16, "event-message-block"]], + + "citb-drop-plat-drop-children": [[16, "event-message-block"]], + + "(event plat-flip-idle)": [[16, "event-message-block"]], + + "(code plat-flip-idle)": [[16, "vector"]], + + "(method 27 square-platform)": [ + [16, "vector"], + [32, "vector"] + ], + + "(event wedge-plat-tip)": [[16, "event-message-block"]], + + "(event wedge-plat-outer-tip)": [[16, "event-message-block"]], + + "(event wall-plat-extending)": [[16, "event-message-block"]], + + "(code wall-plat-extending)": [[16, "vector"]], + + "(event wall-plat-retracting)": [[16, "event-message-block"]], + + "(code wall-plat-retracting)": [[16, "vector"]], + + "(event wall-plat-sync-idle)": [[16, "event-message-block"]], + + "(code wall-plat-sync-idle)": [[16, "vector"]], + + "(method 11 wall-plat)": [[16, "vector"]], + + "reset-target-tracking": [[16, "vector"]], + "reset-drawable-tracking": [[16, "vector"]], + + "master-track-target": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "collide-mesh-cache-tri"], + [160, "vector"], + [176, "vector"], + [192, "vector"], + [208, "vector"], + [224, "vector"] + ], + "master-unset-region": [[16, "event-message-block"]], + "master-base-region": [ + [16, "vector"], + [32, "event-message-block"] + ], + "master-switch-to-entity": [[32, "event-message-block"]], + "master-check-regions": [[16, "event-message-block"]], + + "cam-circular-position-into-max-angle": [ + [16, "matrix"], + [80, "matrix"], + [144, "vector"], + [160, "vector"] + ], + "cam-circular-position": [ + [16, "vector"], + [32, "vector"] + ], + "cam-circular-code": [[16, "vector"]], + "(anon-function 37 cam-states)": [ + [48, "vector"], + [64, "event-message-block"], + [16, "vector"], + [32, "vector"] + ], + "cam-string-find-position-rel!": [ + [16, "vector"], + [32, "vector"], + [48, "bone"], + [144, "matrix"] + ], + "cam-los-spline-collide": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "(event cam-master-active)": [ + [16, "event-message-block"], + [96, "vector"], + [112, "vector"] + ], + + "(code cam-master-active)": [[16, "event-message-block"]], + + "(exit cam-eye)": [[16, "event-message-block"]], + + "(code cam-fixed)": [[16, "vector"]], + + "(enter cam-eye)": [[16, "vector"]], + + "(enter cam-billy)": [[16, "vector"]], + + "(code cam-pov180)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + + "(enter cam-fixed-read-entity)": [ + [16, "vector"], + [32, "event-message-block"] + ], + + "(enter cam-pov-track)": [ + [16, "vector"], + [32, "event-message-block"] + ], + + "(code cam-decel)": [ + [16, "vector"], + [32, "vector"], + [48, "event-message-block"] + ], + + "(code cam-eye)": [ + [16, "vector"], + [32, "matrix"], + [96, "vector"], + [112, "vector"], + [128, "vector"] + ], + + "(code cam-billy)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "matrix"] + ], + + "(enter cam-standoff-read-entity)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "event-message-block"] + ], + + "(code cam-endlessfall)": [ + [16, "matrix"], + [80, "vector"], + [96, "vector"] + ], + + "(enter cam-spline)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "event-message-block"] + ], + + "(code cam-spline)": [[16, "curve"]], + + "(enter cam-circular)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "event-message-block"] + ], + + "los-cw-ccw": [ + [16, "vector"], + [32, "vector"], + [48, "matrix"], + [112, "vector"] + ], + + "cam-string-follow": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + + "cam-string-line-of-sight": [ + [16, "clip-travel-vector-to-mesh-return-info"], + [176, "vector"], + [192, "vector"], + [208, "vector"], + [224, "vector"], + [240, "vector"], + [256, "vector"] + ], + + "cam-string-joystick": [ + [16, "vector"], + [32, "matrix"], + [96, "vector"], + [112, "vector"] + ], + + "cam-string-find-hidden": [ + [16, "collide-mesh-cache-tri"], + [112, "vector"], + [128, "vector"] + ], + + "cam-string-move": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"], + [96, "collide-mesh-cache-tri"], + [192, "vector"], + [208, "vector"], + [224, "vector"] + ], + + "cam-string-code": [ + [16, "vector"], + [32, "vector"] + ], + + "(event cam-string)": [[16, "vector"]], + + "(trans cam-stick)": [ + [16, "matrix"], + [80, "vector"], + [96, "vector"], + [112, "vector"] + ], + + "cam-bike-code": [ + [16, "matrix"], + [80, "vector"], + [96, "vector"], + [112, "vector"], + [128, "vector"], + [144, "vector"], + [160, "vector"], + [176, "collide-mesh-cache-tri"], + [272, "vector"] + ], + + "cam-stick-code": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"], + [96, "collide-mesh-cache-tri"], + [192, "vector"] + ], + + "(enter cam-string)": [ + [16, "vector"], + [32, "collide-mesh-cache-tri"], + [128, "vector"], + [144, "vector"], + [160, "vector"] + ], + + "cam-los-collide": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"], + [96, "vector"], + [112, "vector"], + [128, "vector"], + [144, "vector"], + [160, "vector"], + [176, "vector"], + [192, "vector"], + [208, "vector"] + ], + + "(code cam-point-watch)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "matrix"] + ], + + "(code cam-orbit)": [ + [16, "vector"], + [32, "vector"] + ], + + "(enter cam-free-floating)": [[16, "event-message-block"]], + + "(enter cam-orbit)": [[16, "vector"]], + + "(method 25 pov-camera)": [[16, "event-message-block"]], + + "(code pov-camera-start-playing pov-camera)": [[16, "event-message-block"]], + + "(code pov-camera-done-playing pov-camera)": [[16, "event-message-block"]], + + "debug-set-camera-pos-rot!": [[16, "event-message-block"]], + + "camera-master-debug": [[16, "vector"]], + + "(method 23 tracking-spline)": [ + [16, "vector"], + [32, "vector"] + ], + + "master-draw-coordinates": [ + [16, "vector"], + [32, "vector"], + [48, "matrix"] + ], + + "camera-slave-debug": [ + [16, "vector"], + [32, "vector"], + [48, "matrix"], + [112, "vector"], + [128, "curve"], + [160, "vector"], + [176, "vector"], + [192, "vector"] + ], + + "cam-debug-draw-tris": [[16, "vector4w"]], + + "cam-collision-record-draw": [ + [16, "vector4w"], + [32, "vector4w"], + [48, "collide-mesh-cache-tri"], + [144, "vector"] + ], + + "debug-euler": [ + [16, "euler-angles"], + [32, "matrix"] + ], + + "v-slrp!": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "interp-test": [ + [16, "vector"], + [32, "vector"] + ], + + "cam-layout-save-cam-trans": [[16, "vector"]], + + "cam-layout-save-pivot": [[16, "vector"]], + + "cam-layout-save-interesting": [[16, "vector"]], + + "cam-layout-save-align": [[16, "vector"]], + + "clmf-cam-flag-toggle": [[16, "clmf-cam-flag-toggle-info"]], + + "interp-test-deg": [ + [16, "vector"], + [32, "vector"] + ], + + "clmf-pos-rot": [ + [16, "vector"], + [32, "vector"], + [48, "matrix"], + [112, "matrix"], + [176, "vector"] + ], + + "clmf-input": [ + [16, "matrix"], + [80, "vector"] + ], + + "cam-layout-entity-info": [ + [16, "matrix"], + [80, "vector"], + [96, "vector"], + [112, "vector"], + [128, "vector"], + [144, "curve"], + [176, "vector"], + [192, "vector"], + [208, "vector"], + [224, "curve"], + [256, "vector"], + [272, "vector"], + [288, "vector"], + [304, "curve"], + [336, "vector"], + [352, "vector"], + [368, "interp-test-info"], + [432, "vector"] + ], + + "clmf-save-single": [[16, "file-stream"]], + + "pov-camera-play-and-reposition": [[16, "event-message-block"]], + + "cam-layout-entity-volume-info-create": [ + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"], + [96, "vector"], + [112, "vector"], + [128, "vector"], + [144, "vector"] + ], + + "(code plunger-lurker-plunge)": [[16, "event-message-block"]], + "(event flying-lurker-fly)": [[16, "event-message-block"]], + "(trans flying-lurker-fly)": [[16, "event-message-block"]], + "flying-lurker-handler": [[16, "event-message-block"]], + "flying-lurker-play-intro": [[16, "event-message-block"]], + "(code flying-lurker-start)": [[16, "event-message-block"]], + "(event flying-lurker-clone)": [[16, "event-message-block"]], + "(event flying-lurker-idle)": [[16, "event-message-block"]], + "(code flying-lurker-idle)": [[16, "event-message-block"]], + "flying-lurker-calc-speed": [ + [16, "vector"], + [32, "vector"] + ], + "(method 20 flying-lurker)": [ + [16, "collide-mesh-cache-tri"], + [112, "vector"], + [128, "vector"], + [144, "bounding-box"], + [176, "vector"] + ], + "flying-lurker-rotate": [ + [16, "matrix"], + [80, "matrix"], + [144, "vector"], + [160, "vector"] + ], + + "(method 18 collide-cache)": [[16, "collide-cache-prim"]], + + "kill-current-level-hint": [[16, "event-message-block"]], + "(exit level-hint-sidekick)": [[16, "event-message-block"]], + "(method 14 level-hint)": [[16, "font-context"]], + "(code level-hint-error)": [[16, "font-context"]], + "ambient-type-hint": [[16, "font-context"]], + "ambient-type-sound": [[32, "sound-spec"]], + "ambient-type-sound-loop": [[16, "sound-spec"]], + + "sp-relaunch-particle-3d": [ + [16, "quaternion"], + [32, "vector"], + [48, "quaternion"] + ], + + "sp-adjust-launch": [ + [16, "sparticle-launchinfo"], + [64, "matrix"], + [128, "vector"], + [144, "matrix"] + ], + + "(method 10 sparticle-launch-control)": [[16, "vector"]], + + "sparticle-50-to-60": [[16, "quaternion"]], + + "sparticle-60-to-50": [[16, "quaternion"]], + + "sp-orbiter": [ + [16, "vector"], + [32, "vector"], + [48, "matrix"] + ], + + "sp-euler-convert": [ + [16, "vector"], + [32, "quaternion"] + ], + + "sp-rotate-system": [ + [16, "matrix"], + [80, "quaternion"] + ], + + "sp-launch-particles-death": [ + [16, "sprite-vec-data-2d"] // TODO this is probably wrong. + ], + + "birth-func-copy-rot-color": [[16, "vector"]], + + "birth-func-copy2-rot-color": [ + [16, "vector"], + [32, "vector"] + ], + + "(code nav-enemy-give-up babak)": [[16, "vector"]], + + "(method 10 gui-query)": [[16, "font-context"]], + + "(method 46 process-taskable)": [ + [16, "vector"], + [32, "vector"] + ], + + "(trans release process-taskable)": [[16, "event-message-block"]], + + "(trans give-cell process-taskable)": [[16, "event-message-block"]], + + "process-taskable-play-anim-code": [[16, "event-message-block"]], + + "(event idle process-taskable)": [[16, "event-message-block"]], + + "(trans idle process-taskable)": [ + [16, "font-context"], + [112, "event-message-block"] + ], + + "(post idle process-taskable)": [[16, "vector"]], + + "babak-with-cannon-ride-cannon-post": [[16, "vector"]], + + "(code babak-with-cannon-jump-onto-cannon)": [[16, "vector"]], + + "(code othercam-running)": [ + [16, "vector"], + [32, "vector"] + ], + + "(code wait-for-start flutflut)": [ + [16, "event-message-block"], + [96, "vector"] + ], + + "(code idle flutflut)": [ + [16, "font-context"], + [112, "event-message-block"] + ], + + "(event wait-for-return flutflut)": [[16, "event-message-block"]], + + "yakow-generate-travel-vector": [ + [16, "vector"], + [32, "vector"] + ], + + "yakow-facing-direction?": [ + [16, "vector"], + [32, "vector"] + ], + + "yakow-facing-point?": [[16, "vector"]], + + "(enter yakow-graze)": [[16, "event-message-block"]], + + "(method 13 vehicle-path)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "(method 12 vehicle-controller)": [ + [16, "vector"], + [32, "vector"] + ], + + "(method 14 vehicle-controller)": [ + [16, "vector"], + [32, "vector"] + ], + + "(method 10 vehicle-controller)": [[16, "vector"]], + + "(method 23 fishermans-boat)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"], + [96, "vector"], + [112, "vector"] + ], + + "fishermans-boat-wave": [[16, "vector"]], + + "fishermans-boat-spawn-particles": [[16, "vector"]], + + "fishermans-boat-play-sounds": [[16, "vector"]], + + "fishermans-boat-post": [[16, "event-message-block"]], + + "(code fishermans-boat-leaving-village)": [[16, "event-message-block"]], + + "(trans fishermans-boat-entering-village)": [[16, "event-message-block"]], + + "(code fishermans-boat-leaving-misty)": [[16, "event-message-block"]], + + "(trans fishermans-boat-entering-misty)": [[16, "event-message-block"]], + + "(exit fishermans-boat-player-control)": [[16, "event-message-block"]], + + "(code fishermans-boat-player-control)": [[16, "event-message-block"]], + + "(code fishermans-boat-ride-to-misty)": [[16, "event-message-block"]], + + "(event fishermans-boat-ride-to-village1)": [[16, "event-message-block"]], + + "(code fishermans-boat-ride-to-village1)": [[16, "event-message-block"]], + + "fishermans-boat-leave-dock?": [[16, "font-context"]], + + "(trans fishermans-boat-player-control)": [[16, "vector"]], + + "(code fishermans-boat-measurements)": [[16, "vector"]], + + "(method 15 vehicle-controller)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + + "analyze-point-on-path-segment": [[16, "vector"]], + + "(method 51 muse)": [[16, "vector"]], + + "muse-check-dest-point": [[16, "point-on-path-segment-info"]], + + "(code muse-caught)": [[16, "event-message-block"]], + + "(method 43 bonelurker)": [[16, "event-message-block"]], + + "bonelurker-stunned-event-handler": [[16, "event-message-block"]], + + "bonelurker-push-post": [[16, "vector"]], + + "(code nav-enemy-give-up bonelurker)": [[16, "vector"]], + + "(code bonelurker-stun)": [[16, "vector"]], + + "(method 32 assistant-bluehut)": [[16, "event-message-block"]], + + "(trans idle assistant-bluehut)": [[16, "event-message-block"]], + + "(exit play-anim assistant-bluehut)": [[16, "event-message-block"]], + + "(method 32 assistant-levitator)": [[16, "event-message-block"]], + + "(exit play-anim assistant-levitator)": [[16, "event-message-block"]], + + "(method 47 assistant-bluehut)": [ + [16, "vector"], + [32, "vector"] + ], + + "(method 43 assistant-bluehut)": [[16, "vector"]], + + "check-drop-level-assistant-bluehut": [[16, "vector"]], + + "assistant-levitator-blue-glow": [[16, "vector"]], + + "(code idle assistant-bluehut)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "assistant-levitator-blue-beam": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "collide-mesh-cache-tri"], + [160, "event-message-block"] + ], + + "(trans hidden assistant-levitator)": [[16, "font-context"]], + + "(event square-platform-lowering)": [[16, "event-message-block"]], + + "(method 33 qbert-plat)": [[16, "event-message-block"]], + + "(method 32 qbert-plat)": [[16, "event-message-block"]], + + "(event qbert-plat-master-idle)": [[16, "event-message-block"]], + + "(code qbert-plat-master-do-door)": [[16, "event-message-block"]], + + "(code qbert-plat-master-wait-for-door)": [[16, "event-message-block"]], + + "(code qbert-plat-master-idle)": [ + [16, "event-message-block"], + [96, "vector"], + [112, "vector"] + ], + + "keg-event-handler": [[16, "event-message-block"]], + + "(code keg-paddle-to-path)": [ + [16, "vector"], + [32, "vector"], + [48, "quaternion"], + [64, "quaternion"], + [80, "vector"] + ], + + "(code keg-on-path)": [ + [16, "vector"], + [32, "vector3s"] + ], + + "(code keg-in-chute)": [ + [16, "vector"], + [32, "vector"] + ], + + "keg-init-by-other": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "(code keg-conveyor-paddle-idle)": [[16, "event-message-block"]], + + "(method 11 keg-conveyor)": [ + [16, "vector"], + [32, "matrix"] + ], + + "swamp-bat-slave-event-handler": [[16, "event-message-block"]], + + "swamp-bat-launch-slave": [[16, "event-message-block"]], + + "swamp-bat-slave-path-post": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "(code swamp-bat-slave-idle)": [ + [16, "vector"], + [32, "quaternion"], + [48, "quaternion"], + [64, "vector"] + ], + + "(code swamp-bat-slave-launch)": [ + [16, "vector"], + [32, "vector"] + ], + + "(code swamp-bat-slave-die)": [[16, "vector"]], + + "swamp-bat-make-path-select-plane": [[16, "vector"]], + + "(method 44 swamp-rat)": [[16, "event-message-block"]], + + "(method 39 swamp-rat)": [[16, "vector"]], + + "(method 38 swamp-rat)": [[16, "vector"]], + + "(code swamp-rat-spawn)": [[16, "vector"]], + + "swamp-rat-update-wiggle-target": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "swamp-rat-nest-dummy-event-handler": [[16, "event-message-block"]], + + "(trans swamp-rat-nest-gestate)": [[16, "event-message-block"]], + + "(code swamp-rat-nest-victory)": [[16, "event-message-block"]], + + "swamp-rat-nest-pick-spawn-joint": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "swamp-rat-nest-spawn-rat": [ + [16, "vector"], + [32, "vector"] + ], + + "cavecrystal-light-control-default-callback": [[16, "vector"]], + + "spiderwebs-default-event-handler": [[16, "event-message-block"]], + + "(enter nav-enemy-die baby-spider)": [[16, "event-message-block"]], + + "(code baby-spider-die-fast)": [[16, "event-message-block"]], + + "(method 39 baby-spider)": [[16, "vector"]], + + "(enter nav-enemy-idle baby-spider)": [[16, "vector"]], + + "(method 52 baby-spider)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "mother-spider-proj-update-velocity": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + + "(method 28 mother-spider-proj)": [[16, "vector"]], + + "(code blue-eco-charger-orb-active)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "(method 21 blue-eco-charger)": [[16, "event-message-block"]], + + "(method 20 blue-eco-charger)": [[16, "event-message-block"]], + + "(code blue-eco-charger-idle)": [[16, "event-message-block"]], + + "(code exit-chamber-charger-puzzle-beaten)": [[16, "event-message-block"]], + + "(code exit-chamber-idle-in-sunken)": [[16, "event-message-block"]], + + "(event exit-chamber-idle-in-sunken)": [ + [16, "event-message-block"], + [32, "event-message-block"] + ], + + "(method 24 exit-chamber)": [[16, "vector"]], + + "(method 23 exit-chamber)": [ + [16, "vector"], + [32, "vector"], + [48, "exit-chamber-items"], + [128, "event-message-block"], + [208, "vector"] + ], + + "tube-thrust": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"], + [96, "vector"] + ], + + "target-tube-post": [ + [16, "vector"], + [32, "event-message-block"], + [112, "vector"] + ], + + "(event target-tube-start)": [[16, "event-message-block"]], + + "(exit target-tube-start)": [[16, "event-message-block"]], + + "(code target-tube-start)": [ + [16, "event-message-block"], + [96, "vector"] + ], + + "(method 21 sunkenfisha)": [ + [16, "vector"], + [32, "vector"] + ], + + "(method 24 sunkenfisha)": [ + [16, "vector"], + [32, "matrix"], + [96, "vector"] + ], + + "(method 23 sunkenfisha)": [[16, "vector"]], + + "(trans sunkenfisha-idle)": [[16, "vector"]], + + "(method 27 sunkenfisha)": [[64, "vector"]], + + "(event idle minecartsteel)": [[16, "collide-overlap-result"]], + + "(method 43 assistant-villagec)": [[16, "vector"]], + + "(method 32 sage-villagec)": [[16, "event-message-block"]], + + "(method 43 sage-villagec)": [[16, "vector"]], + + "(trans idle sage-villagec)": [[16, "event-message-block"]], + + "(exit play-anim sage-villagec)": [[16, "event-message-block"]], + + "(method 20 cave-trap)": [ + [16, "spawn-baby-spider-work"], + [80, "vector"], + [96, "event-message-block"], + [176, "vector"], + [192, "vector"], + [208, "vector"] + ], + + "(trans cave-trap-idle)": [[16, "event-message-block"]], + + "ice-cube-default-event-handler": [[16, "event-message-block"]], + + "(trans yeti-slave-appear-jump-up)": [[16, "vector"]], + + "(code nav-enemy-give-up yeti-slave)": [[16, "vector"]], + + "(code yeti-resuming-start)": [ + [16, "vector"], + [32, "vector"] + ], + + "(code yeti-idle)": [ + [16, "vector"], + [32, "vector"] + ], + + "(trans hidden assistant-lavatube-start)": [[16, "font-context"]], + + "(method 18 nav-control)": [[16, "vector"]], + + "check-drop-level-firehose-pops": [[16, "vector"]], + + "birth-func-random-rot": [ + [16, "matrix"], + [80, "vector"], + [96, "vector"] + ], + + "check-drop-level-bigdoor-open-pops": [[16, "vector"]], + + "check-drop-level-eichar-lighteco-pops": [[16, "vector"]], + + "check-drop-level-maincave-drip": [[16, "vector"]], + + "part-tracker-move-to-target": [[16, "vector"]], + + "part-tracker-track-target": [[16, "vector"]], + + "check-drop-level-village1-fountain-nosplash": [[16, "vector"]], + + "check-drop-level-village1-fountain": [[16, "vector"]], + + "check-drop-level-sagehut": [[16, "vector"]], + + "check-drop-level-training-mist": [[16, "vector"]], + + "check-drop-level-training-spout-rain": [[16, "vector"]], + + "check-drop-level-sagehut2": [[16, "vector"]], + + "(method 15 hud-money-all)": [[16, "font-context"]], + + "(method 20 hud-money-all)": [[16, "event-message-block"]], + + "(method 20 hud-money)": [[16, "event-message-block"]], + + "fuel-cell-hud-orbit-callback": [ + [16, "vector"], + [32, "vector"] + ], + + "(method 19 hud-fuel-cell)": [[16, "vector"]], + + "(method 20 hud-fuel-cell)": [ + [16, "event-message-block"], + [96, "quaternion"] + ], + + "hide-hud": [[16, "event-message-block"]], + + "hide-bottom-hud": [[16, "event-message-block"]], + + "disable-hud": [[16, "event-message-block"]], + + "enable-hud": [[16, "event-message-block"]], + + "hide-hud-quick": [[16, "event-message-block"]], + + "show-hud": [[16, "event-message-block"]], + + "convert-to-hud-object": [[16, "vector"]], + + "(method 16 hud)": [[16, "event-message-block"]], + + "(enter hud-hidden)": [[16, "event-message-block"]], + + "(enter hud-arriving)": [[16, "event-message-block"]], + + "send-hud-increment-event": [[16, "event-message-block"]], + + "(code hud-collecting)": [[16, "vector"]], + + "battlecontroller-fill-all-spawners": [ + [16, "vector"], + [32, "event-message-block"] + ], + + "battlecontroller-camera-on": [[16, "event-message-block"]], + + "(code battlecontroller-die battlecontroller)": [[16, "event-message-block"]], + + "battlecontroller-battle-begin": [[16, "event-message-block"]], + + "battlecontroller-update-spawners": [ + [16, "vector"], + [32, "event-message-block"] + ], + + "battlecontroller-spawn-creature-at-spawner": [ + [16, "vector"], + [32, "vector"] + ], + + "battlecontroller-camera-off": [[16, "event-message-block"]], + + "battlecontroller-spawn-creature-random-spawner": [ + [16, "event-message-block"] + ], + + "(method 10 effect-control)": [ + [16, "event-message-block"], + [96, "vector"], + [112, "vector"], + [128, "vector"], + [144, "vector"] + ], + + "(method 11 effect-control)": [ + [16, "vector"], + [32, "vector"] + ], + + "(method 12 effect-control)": [ + [16, "sound-spec"], + [96, "vector"] + ], + + "(code helix-button-startup)": [[16, "vector"]], + + "(method 43 green-eco-lurker)": [[16, "event-message-block"]], + + "(method 73 green-eco-lurker)": [[16, "event-message-block"]], + + "citb-sagecage-draw-bars": [ + [16, "vector"], + [32, "vector"], + [48, "vector"] + ], + + "(code sunken-pipegame-start-up)": [[16, "event-message-block"]], + + "(code race-ring-active)": [ + [16, "event-message-block"], + [96, "vector"] + ], + + "(method 11 race-ring)": [ + [16, "vector"], + [32, "vector"] + ], + + "init-sky-regs": [[16, "vector"]], + + "set-tex-offset": [[16, "vector"]], + + "sky-tng-setup-cloud-layer": [[16, ["inline-array", "sky-vertex", 12]]], + + "fisher-fish-move": [[16, "vector"]], + "fisher-fish-water": [[16, "vector"]], + "(trans play-accept fisher)": [[16, "vector"]], + "(method 11 fisher)": [[16, "vector"]], + "(code fisher-fish-caught)": [[16, "event-message-block"]], + "(code fisher-fish-die)": [[16, "event-message-block"]], + "(exit fisher-done)": [[16, "event-message-block"]], + "(enter fisher-done)": [[16, "event-message-block"]], + "(event fisher-playing)": [[16, "event-message-block"]], + "(enter fisher-playing)": [[16, "event-message-block"]], + "(exit fisher-playing)": [[16, "event-message-block"]], + "(trans enter-playing fisher)": [[16, "event-message-block"]], + "(code target-fishing)": [ + [16, "event-message-block"], + [96, "vector"], + [112, "quaternion"], + [128, "quaternion"], + [144, "quaternion"] + ], + "(method 43 fisher)": [ + [16, "vector"], + [32, "vector"] + ], + "fisher-draw-display": [[16, "font-context"]], + + "(method 10 torus)": [ + [16, "vector"], + [32, "vector"] + ], + "(method 12 torus)": [[16, "matrix"]], + "redshot-trans": [[16, "matrix"]], + "(trans redshot-explode)": [ + [16, "vector"], + [32, "event-message-block"], + [112, "vector"] + ], + "(code darkecobomb-explode)": [[16, "event-message-block"]], + "(event yellowshot-idle)": [[16, "event-message-block"]], + "(trans yellowshot-idle)": [[16, "event-message-block"]], + "(trans darkecobomb-countdown)": [[16, "vector"]], + + "arcing-shot-draw": [ + [16, "vector"], + [32, "vector"] + ], + + "(method 9 torus)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "matrix"], + [128, ["inline-array", "vector", 8]] + ], + + "(method 32 finalbosscam)": [[16, "event-message-block"]], + + "(code cam-robotboss)": [ + [16, "vector"], + [32, "vector"] + ], + + "ecoclaw-beam-particle-callback": [[16, "vector"]], + "robotboss-manipy-trans-hook": [[16, "vector"]], + "robotboss-redshot": [[16, "vector"]], + "robotboss-cut-cam": [[16, "vector"]], + + "robotboss-yellowshot": [ + [16, "vector"], + [32, "vector"], + [48, "event-message-block"] + ], + + "(trans robotboss-white-eco-movie)": [[16, "vector"]], + + "(code robotboss-red-wait)": [ + [16, "vector"], + [32, "redshot-launch-array"] + ], + + "(trans robotboss-yellow-wait)": [ + [16, "vector"], + [32, "event-message-block"], + [112, "vector"] + ], + + "robotboss-setup-for-hits": [ + [16, "sphere"], + [32, "event-message-block"] + ], + + "robotboss-position": [ + [16, "vector"], + [32, "matrix"], + [96, "event-message-block"], + [176, "vector"] + ], + + "robotboss-shooting-trans": [ + [16, "vector"], + [32, "event-message-block"] + ], + + "robotboss-darkecobomb": [ + [16, "vector"], + [32, "vector"] + ], + + "robotboss-redshot-fill-array": [ + [16, "vector"], + [32, "vector"] + ], + + "robotboss-blue-beam": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "collide-mesh-cache-tri"], + [160, "vector"], + [176, "event-message-block"] + ], + + "robotboss-bomb-handler": [[16, "event-message-block"]], + "robotboss-blue-done": [[16, "event-message-block"]], + "(exit robotboss-blue-wait)": [[16, "event-message-block"]], + "(enter robotboss-blue-wait)": [[16, "event-message-block"]], + "(exit robotboss-green-wait)": [[16, "event-message-block"]], + "(event robotboss-green-wait)": [[16, "event-message-block"]], + + "(trans robotboss-red-wait)": [ + [16, "event-message-block"], + [96, "vector"] + ], + + "(exit robotboss-red-wait)": [[16, "event-message-block"]], + "(exit robotboss-yellow-wait)": [[16, "event-message-block"]], + "(code robotboss-white-eco-movie)": [[16, "event-message-block"]], + "(event robotboss-yellow-dark-bomb-wait)": [[16, "event-message-block"]], + "(exit robotboss-yellow-dark-bomb-wait)": [[16, "event-message-block"]], + "(code robotboss-daxter-sacrifice-movie)": [[16, "event-message-block"]], + + "robotboss-greenshot": [ + [16, "vector"], + [32, "vector"] + ], + + "(trans robotboss-blue-wait)": [ + [16, "vector"], + [32, "event-message-block"], + [112, "vector"] + ], + + "(code robotboss-blue-wait)": [[16, "event-message-block"]], + + "(method 44 green-eco-lurker)": [[16, "event-message-block"]], + "(method 72 green-eco-lurker)": [[16, "event-message-block"]], + "(enter nav-enemy-die green-eco-lurker)": [[16, "event-message-block"]], + "(event spawn-minions)": [[16, "event-message-block"]], + "(method 51 green-eco-lurker)": [[16, "vector"]], + "(enter green-eco-lurker-appear)": [ + [16, "vector"], + [32, "vector"] + ], + "(code spawn-minions)": [ + [16, "vector"], + [32, "event-message-block"] + ], + + "check-drop-level-lighteco-big-pops": [[16, "vector"]], + "check-drop-level-lighteco-pops": [[16, "vector"]], + "(method 20 light-eco-child)": [[16, "vector"]], + "light-eco-child-default-event-handler": [[16, "event-message-block"]], + "(code light-eco-child-die)": [[16, "event-message-block"]], + "light-eco-mother-default-event-handler": [[16, "event-message-block"]], + "(trans light-eco-child-hit-ground)": [[16, "vector"]], + "(method 21 light-eco-mother)": [[16, "vector"]], + "(method 20 light-eco-mother)": [[16, "vector"]], + + "(trans plat-path-active plat-eco-finalboss)": [ + [16, "vector"], + [32, "vector"], + [48, "event-message-block"] + ], + "(method 44 sage-finalboss)": [[16, "event-message-block"]], + "(method 45 sage-finalboss)": [[16, "event-message-block"]], + "(method 32 sage-finalboss)": [[16, "event-message-block"]], + "(exit play-anim sage-finalboss)": [[16, "event-message-block"]], + "sage-finalboss-extra-trans": [[16, "event-message-block"]], + "sage-finalboss-extra-enter": [[16, "event-message-block"]], + "(trans play-anim sage-finalboss)": [ + [16, "event-message-block"], + [96, "vector"], + [112, "vector"], + [128, "vector"], + [144, "vector"], + [160, "vector"], + [176, "vector"], + [192, "vector"], + [208, "vector"], + [224, "vector"] + ], + + "lb-flip":[ + [16, "load-boundary-crossing-command"] + ], + + "---lb-save":[ + [16, "file-stream"] + ], + + "edit-load-boundaries":[ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"] + ], + + "triangulate-boundary":[ + [16, "lbvtx"] + ], + + "fix-boundary-normals":[ + [16, "vector"] + ], + + "check-closed-boundary":[ + [16, "vector"] + ], + + "(event target-racing-start)": [ + [16, "event-message-block"] + ], + + "(exit target-racing-start)": [ + [16, "event-message-block"] + ], + + "(code target-racing-start)": [ + [16, "event-message-block"] + ], + + "target-racing-smack-check": [ + [16, "vector"], + [32, "vector"] + ], + + "(trans target-racing)": [ + [16, "vector"] + ], + + "(trans target-racing-jump)": [ + [16, "vector"] + ], + + "(trans target-racing-bounce)": [ + [16, "vector"] + ], + + "(code target-racing-hit)": [ + [16, "vector"], + [32, "vector"], + [48, "vector"], + [64, "vector"], + [80, "vector"] + ], + + "(exit target-racing-death)": [ + [16, "event-message-block"] + ], + + "(anon-function 17 racer-states-FIC-LAV-MIS-OGR-ROL)": [ + [16, "joint-exploder-tuning"] + ], + + "(code target-racing-death)": [ + [16, "event-message-block"], + [96, "vector"], + [112, "vector"] + ], + + "(code target-racing-get-on)": [ + [16, "vector"], + [32, "vector"], + [48, "event-message-block"] + ], + + "(post target-racing-get-on)": [ + [16, "vector"] + ], + + "(code target-racing-get-off-jump)": [ + [16, "vector"], + [32, "vector"], + [48, "event-message-block"] + ], + + "(post target-racing-get-off-jump)": [ + [16, "vector"] + ], + + "(exit target-racing-clone-anim)": [ + [16, "event-message-block"] + ], + + "(code target-racing-clone-anim)": [ + [16, "event-message-block"] + ], + + "placeholder-do-not-add-below!": [] +} diff --git a/decompiler/config/jak1_sced/type_casts.jsonc b/decompiler/config/jak1_sced/type_casts.jsonc new file mode 100644 index 0000000000..33e7128d0a --- /dev/null +++ b/decompiler/config/jak1_sced/type_casts.jsonc @@ -0,0 +1,4112 @@ +{ + "(method 2 array)": [ + [23, "gp", "(array int32)"], + [43, "gp", "(array uint32)"], + [63, "gp", "(array int64)"], + [83, "gp", "(array uint64)"], + [102, "gp", "(array int8)"], + [121, "gp", "(array uint8)"], + [141, "gp", "(array int16)"], + [161, "gp", "(array uint16)"], + [186, "gp", "(array uint128)"], + [204, "gp", "(array int32)"], + [223, "gp", "(array float)"], + [232, "gp", "(array float)"], + [249, "gp", "(array basic)"], + [258, "gp", "(array basic)"] + ], + "(method 3 array)": [ + [44, "gp", "(array int32)"], + [62, "gp", "(array uint32)"], + [80, "gp", "(array int64)"], + [98, "gp", "(array uint64)"], + [115, "gp", "(array int8)"], + [132, "gp", "(array int8)"], + [150, "gp", "(array int16)"], + [168, "gp", "(array uint16)"], + [191, "gp", "(array uint128)"], + [207, "gp", "(array int32)"], + [226, "gp", "(array float)"], + [243, "gp", "(array basic)"] + ], + "(method 0 cpu-thread)": [[[13, 28], "v0", "cpu-thread"]], + "(method 0 process)": [ + [12, "a0", "int"], + [[13, 43], "v0", "process"] + ], + "(method 0 dead-pool-heap)": [ + [60, "v0", "int"], + [[61, 73], "v0", "dead-pool-heap"] + ], + "(method 21 dead-pool-heap)": [ + [5, "v1", "pointer"], + [13, "a0", "pointer"], + [25, "v1", "pointer"] + ], + "(method 5 dead-pool-heap)": [ + [3, "v1", "int"], + [3, "a0", "int"] + ], + "(method 0 protect-frame)": [ + [0, "a0", "int"], + [[1, 8], "v0", "protect-frame"] + ], + "(method 10 process)": [[[24, 30], "s4", "protect-frame"]], + "(method 9 process)": [[43, "s5", "process"]], + "(method 14 dead-pool)": [ + [[24, 25], "v1", "(pointer process)"], + [[30, 39], "s4", "(pointer process)"] + ], + "inspect-process-heap": [ + [[4, 11], "s5", "basic"], + [17, "s5", "pointer"] + ], + + "run-function-in-process": [[40, "a0", "dead-pool-heap"]], + + // GSTRING + "name=": [ + [26, "a1", "symbol"], + [42, "a0", "symbol"] + ], + "string-cat-to-last-char": [ + [3, "s5", "(pointer uint8)"], + [4, "s5", "string"] + ], + + // GSTATE + "enter-state": [ + [68, "s0", "protect-frame"], + [101, "t9", "(function object object object object object object none)"] + ], + + "send-event-function": [ + [[7,12], "a0", "process"] + ], + + // MATH + "log2": [[3, "v1", "int"]], + + // QUATERNION + "vector-x-quaternion!": [[10, "v1", "(pointer uint128)"]], + "vector-y-quaternion!": [[10, "v1", "(pointer uint128)"]], + "vector-z-quaternion!": [[10, "v1", "(pointer uint128)"]], + + // Matrix + //"eul->matrix": [[[110, 228], "gp", "(pointer float)"]], + + // DMA + "dma-send-to-spr": [[[0, 32], "s5", "dma-bank-spr"]], + "dma-send-to-spr-no-flush": [[[0, 32], "s5", "dma-bank-spr"]], + "dma-send-from-spr": [[[0, 32], "s5", "dma-bank-spr"]], + "dma-send-from-spr-no-flush": [[[0, 32], "s5", "dma-bank-spr"]], + "dma-initialize": [ + [1, "v1", "vif-bank"], + [8, "v1", "vif-bank"], + [6, "a0", "vif-bank"], + [13, "a0", "vif-bank"] + ], + "clear-vu1-mem": [[[0, 11], "v1", "(pointer uint32)"]], + "clear-vu0-mem": [[[0, 11], "v1", "(pointer uint32)"]], + "dump-vu1-mem": [[[0, 49], "gp", "(pointer uint32)"]], + "dump-vu1-range": [[[0, 54], "s4", "(pointer uint32)"]], + "ultimate-memcpy": [ + [[0, 54], "s4", "dma-bank-spr"], + [[0, 54], "s3", "dma-bank-spr"] + ], + "dma-buffer-add-vu-function": [[[9, 33], "t2", "dma-packet"]], + "dma-buffer-add-buckets": [ + [[1, 4], "v1", "dma-bucket"], + [5, "v1", "pointer"], + [[9, 11], "v1", "dma-bucket"], + [11, "v1", "pointer"] + ], + "dma-buffer-patch-buckets": [ + [7, "a0", "(inline-array dma-bucket)"], + [8, "a3", "pointer"], + [14, "a0", "(inline-array dma-bucket)"], + [3, "a0", "(inline-array dma-bucket)"], + [11, "a0", "(inline-array dma-bucket)"], + [13, "a0", "(inline-array dma-bucket)"], + [19, "a0", "(inline-array dma-bucket)"] + ], + "dma-bucket-insert-tag": [ + [[2, 6], "v1", "dma-bucket"], + [3, "a0", "dma-bucket"] + ], + "disasm-vif-details": [ + [[62, 94], "s3", "(pointer uint32)"], + [[98, 130], "s3", "(pointer uint16)"], + [[134, 164], "s3", "(pointer uint32)"], + [[168, 198], "s3", "(pointer uint16)"], + [[202, 225], "s3", "(pointer uint16)"] + ], + "disasm-vif-tag": [ + [[81, 85], "t1", "vif-stcycl-imm"], + [242, "a0", "vif-unpack-imm"] + ], + "disasm-dma-list": [ + [25, "v1", "dma-tag"], + [153, "v1", "dma-packet"], + [189, "v1", "dma-packet"], + [229, "v1", "dma-packet"], + [258, "v1", "dma-packet"], + [302, "v1", "dma-packet"], + [308, "v1", "dma-packet"], + [152, "v1", "(pointer uint64)"], + [167, "v1", "(pointer uint64)"], + [176, "v1", "(pointer uint64)"], + [198, "v1", "(pointer uint64)"], + [207, "v1", "(pointer uint64)"], + [238, "v1", "(pointer uint64)"], + [247, "v1", "(pointer uint64)"], + [282, "v1", "(pointer uint64)"], + [291, "v1", "(pointer uint64)"], + [324, "v1", "(pointer uint64)"], + [334, "v1", "(pointer uint64)"] + ], + "default-buffer-init": [ + [[8, 15], "a1", "dma-gif-packet"], + [[18, 24], "a1", "gs-gif-tag"], + [29, "a1", "(pointer gs-alpha)"], + [31, "a1", "(pointer gs-reg64)"], + [33, "a1", "(pointer gs-zbuf)"], + [35, "a1", "(pointer gs-reg64)"], + [37, "a1", "(pointer gs-test)"], + [39, "a1", "(pointer gs-reg64)"], + [40, "a1", "(pointer uint64)"], + [42, "a1", "(pointer gs-reg64)"], + [44, "a1", "(pointer gs-clamp)"], + [46, "a1", "(pointer gs-reg64)"], + [48, "a1", "(pointer gs-tex1)"], + [50, "a1", "(pointer gs-reg64)"], + [53, "a1", "(pointer gs-texa)"], + [55, "a1", "(pointer gs-reg64)"], + [57, "a1", "(pointer gs-texclut)"], + [59, "a1", "(pointer gs-reg64)"], + [61, "a1", "(pointer gs-fogcol)"], + [63, "a1", "(pointer gs-reg64)"], + [[69, 72], "a0", "dma-packet"] + ], + "lookup-level-info": [ + [3, "a1", "symbol"], + [[4, 16], "a1", "level-load-info"] + ], + "put-display-alpha-env": [[[0, 5], "v1", "gs-bank"]], + "(method 13 profile-bar)": [ + [[27, 43], "t2", "dma-packet"], + [[46, 56], "t2", "gs-gif-tag"], + [[65, 67], "t3", "(pointer gs-prim)"], + [67, "t3", "(pointer uint64)"], + [79, "t3", "(pointer gs-xyzf)"], + [110, "t2", "(pointer gs-xyzf)"] + ], + "draw-sprite2d-xy": [ + [[41, 45], "a3", "dma-packet"], + [[51, 54], "a3", "gs-gif-tag"], + [59, "a3", "(pointer gs-prim)"], + [61, "a3", "(pointer gs-rgbaq)"], + [72, "a3", "(pointer gs-xyzf)"], + [97, "a3", "(pointer gs-xyzf)"], + [[106, 117], "v1", "(pointer dma-tag)"], + [109, "a2", "dma-tag"] + ], + "draw-quad2d": [ + [[22, 28], "t1", "dma-packet"], + [[31, 37], "t1", "gs-gif-tag"], + [42, "t1", "(pointer gs-prim)"], + [44, "t1", "(pointer gs-rgbaq)"], + [52, "t1", "(pointer gs-xyzf)"], + [54, "t1", "(pointer gs-rgbaq)"], + [67, "t1", "(pointer gs-xyzf)"], + [69, "t1", "(pointer gs-rgbaq)"], + [86, "t1", "(pointer gs-xyzf)"], + [88, "t1", "(pointer gs-rgbaq)"], + [110, "t1", "(pointer gs-xyzf)"], + [111, "t1", "(pointer uint64)"], + [[120, 131], "v1", "(pointer dma-tag)"], + [123, "a2", "dma-tag"] + ], + "set-display-gs-state": [ + [[3, 10], "t3", "dma-packet"], + [[13, 19], "t3", "gs-gif-tag"], + [30, "t3", "(pointer gs-scissor)"], + [32, "t3", "(pointer gs-reg64)"], + [33, "t3", "(pointer gs-xy-offset)"], + [35, "t3", "(pointer gs-reg64)"], + [46, "t3", "(pointer gs-frame)"], + [48, "t3", "(pointer gs-reg64)"], + [50, "t3", "(pointer gs-test)"], + [52, "t3", "(pointer gs-reg64)"], + [54, "t3", "(pointer gs-texa)"], + [56, "t3", "(pointer gs-reg64)"], + [58, "t3", "(pointer gs-zbuf)"], + [60, "t3", "(pointer gs-reg64)"], + [61, "t3", "(pointer uint64)"], + [63, "t3", "(pointer gs-reg64)"] + ], + "set-display-gs-state-offset": [ + [[3, 10], "t5", "dma-packet"], + [[13, 19], "t5", "gs-gif-tag"], + [30, "t5", "(pointer gs-scissor)"], + [32, "t5", "(pointer gs-reg64)"], + [40, "t5", "(pointer gs-xy-offset)"], + [42, "t5", "(pointer gs-reg64)"], + [53, "t5", "(pointer gs-frame)"], + [55, "t5", "(pointer gs-reg64)"], + [57, "t5", "(pointer gs-test)"], + [59, "t5", "(pointer gs-reg64)"], + [61, "t5", "(pointer gs-texa)"], + [63, "t5", "(pointer gs-reg64)"], + [65, "t5", "(pointer gs-zbuf)"], + [67, "t5", "(pointer gs-reg64)"], + [68, "t5", "(pointer uint64)"], + [70, "t5", "(pointer gs-reg64)"] + ], + "reset-display-gs-state": [ + [[9, 16], "t0", "dma-packet"], + [[19, 25], "t0", "gs-gif-tag"], + [34, "a3", "(pointer gs-scissor)"], + [36, "a3", "(pointer gs-reg64)"], + [44, "a3", "(pointer gs-xy-offset)"], + [46, "a3", "(pointer gs-reg64)"], + [51, "a3", "(pointer gs-frame)"], + [53, "a3", "(pointer gs-reg64)"], + [55, "a3", "(pointer gs-test)"], + [57, "a3", "(pointer gs-reg64)"], + [60, "a3", "(pointer gs-texa)"], + [62, "a3", "(pointer gs-reg64)"], + [64, "a3", "(pointer gs-zbuf)"], + [66, "a3", "(pointer gs-reg64)"], + [67, "a3", "(pointer uint64)"], + [69, "a3", "(pointer gs-reg64)"] + ], + "(method 9 connection)": [[8, "a0", "pointer"]], + "(method 10 connection)": [[8, "a0", "pointer"]], + "(method 0 engine)": [[39, "v0", "pointer"]], + + "(method 12 engine)": [ + [[5, 16], "s4", "connection"], + [12, "t9", "(function basic basic basic object object)"] + ], + + "(method 13 engine)": [ + [[5, 24], "s4", "connection"], + [12, "t9", "(function basic basic basic object object)"] + ], + + "(method 15 engine)": [[[0, 36], "v1", "connection"]], + "(method 19 engine)": [[8, "a0", "connection"]], + "(method 20 engine)": [[8, "a0", "connection"]], + "gs-set-default-store-image": [ + [9, "t4", "gif-tag64"], + [9, "v1", "gif-tag-regs"] + ], + "dma-buffer-add-ref-texture": [ + [[25, 29], "a3", "dma-packet"], + [[32, 44], "a3", "gs-gif-tag"], + [[47, 62], "a2", "dma-packet"] + ], + "(method 11 level)": [ + [[13, 18], "a1", "dma-packet"], + [[20, 26], "a0", "dma-packet"], + [[50, 55], "a1", "dma-packet"], + [[60, 63], "a0", "dma-packet"], + [[87, 92], "a1", "dma-packet"], + [[97, 100], "a0", "dma-packet"], + [[124, 129], "a1", "dma-packet"], + [[134, 137], "a0", "dma-packet"], + [[162, 167], "a1", "dma-packet"], + [[172, 175], "a0", "dma-packet"], + [[199, 204], "a1", "dma-packet"], + [[209, 212], "a0", "dma-packet"], + [[236, 241], "a1", "dma-packet"], + [[246, 249], "a0", "dma-packet"], + [[273, 278], "a1", "dma-packet"], + [[283, 286], "a0", "dma-packet"] + ], + "(method 14 texture-page)": [ + [[18, 22], "a0", "dma-packet"], + [[28, 31], "a0", "gs-gif-tag"], + [36, "a0", "(pointer uint64)"], + [38, "a0", "(pointer gs-reg64)"], + [[44, 45], "a0", "dma-packet"], + [45, "a0", "(pointer uint64)"] + ], + "(method 13 texture-page)": [ + [[45, 49], "a0", "dma-packet"], + [[55, 58], "a0", "gs-gif-tag"], + [67, "a0", "(pointer gs-bitbltbuf)"], + [69, "a0", "(pointer gs-reg64)"], + [70, "a0", "(pointer gs-trxpos)"], + [72, "a0", "(pointer gs-reg64)"], + [76, "a0", "(pointer gs-trxreg)"], + [78, "a0", "(pointer gs-reg64)"], + [79, "a0", "(pointer gs-trxdir)"], + [81, "a0", "(pointer gs-reg64)"] + ], + + "link-texture-by-id": [[51, "s5", "uint"]], + + "adgif-shader-login-fast": [[57, "gp", "uint"]], + + "adgif-shader-login-no-remap-fast": [[52, "a0", "uint"]], + + "(method 9 texture-page-dir)": [[[27, 31], "t3", "adgif-shader"]], + + "adgif-shader<-texture-simple!": [[5, "v1", "uint"]], + + "display-frame-start": [ + [4, "v1", "vif-bank"], + [9, "a0", "vif-bank"], + [[158, 161], "a0", "dma-packet"] + ], + + "display-loop": [ + [152, "v1", "(pointer int32)"], + [157, "a0", "(pointer process-drawable)"], + [[477, 481], "a0", "dma-packet"], + [[487, 490], "a0", "gs-gif-tag"], + + [497, "a0", "(pointer gs-reg64)"], + [495, "a0", "(pointer gs-alpha)"], + + [501, "a0", "(pointer gs-reg64)"], + [499, "a0", "(pointer gs-zbuf)"], + + [505, "a0", "(pointer gs-reg64)"], + [503, "a0", "(pointer gs-test)"], + + [508, "a0", "(pointer gs-reg64)"], + [506, "a0", "(pointer uint64)"], // pabe + + [512, "a0", "(pointer gs-reg64)"], + [510, "a0", "(pointer gs-clamp)"], + + [516, "a0", "(pointer gs-reg64)"], + [514, "a0", "(pointer gs-tex1)"], + + [521, "a0", "(pointer gs-reg64)"], + [519, "a0", "(pointer gs-texa)"], + + [525, "a0", "(pointer gs-reg64)"], + [523, "a0", "(pointer gs-texclut)"], + + [529, "a0", "(pointer gs-reg64)"], + [527, "a0", "(pointer gs-fogcol)"], + + [[588, 591], "v1", "dma-packet"], + [[672, 675], "v1", "dma-packet"] + ], + "load-game-text-info": [[4, "v1", "game-text-info"]], + "texture-relocate": [ + [[17, 21], "t4", "dma-packet"], + [[27, 30], "t4", "gs-gif-tag"], + [60, "t4", "(pointer gs-bitbltbuf)"], + [62, "t4", "(pointer gs-reg64)"], + [63, "t4", "(pointer gs-trxpos)"], + [65, "t4", "(pointer gs-reg64)"], + [71, "t4", "(pointer gs-trxreg)"], + [73, "t4", "(pointer gs-reg64)"], + [75, "t4", "(pointer gs-trxdir)"], + [77, "t4", "(pointer gs-reg64)"], + [[98, 102], "a2", "dma-packet"], + [[108, 111], "a2", "gs-gif-tag"], + [132, "a2", "(pointer gs-bitbltbuf)"], + [134, "a2", "(pointer gs-reg64)"], + [135, "a2", "(pointer gs-trxpos)"], + [137, "a2", "(pointer gs-reg64)"], + [139, "a2", "(pointer gs-trxreg)"], + [141, "a2", "(pointer gs-reg64)"], + [143, "a2", "(pointer gs-trxdir)"], + [145, "a2", "(pointer gs-reg64)"], + [[157, 161], "a2", "dma-packet"], + [[167, 170], "a2", "gs-gif-tag"], + [191, "a2", "(pointer gs-bitbltbuf)"], + [193, "a2", "(pointer gs-reg64)"], + [194, "a2", "(pointer gs-trxpos)"], + [196, "a2", "(pointer gs-reg64)"], + [198, "a2", "(pointer gs-trxreg)"], + [200, "a2", "(pointer gs-reg64)"], + [202, "a2", "(pointer gs-trxdir)"], + [204, "a2", "(pointer gs-reg64)"] + ], + "(method 11 texture-pool)": [ + [[119, 123], "a0", "dma-packet"], + [[129, 132], "a0", "gs-gif-tag"], + [137, "a0", "(pointer uint64)"], + [139, "a0", "(pointer gs-reg64)"], + [145, "a0", "dma-packet"], + [146, "a0", "(pointer uint64)"] + ], + "texture-page-login": [[[34, 45], "s2", "texture-page"]], + "upload-vram-data": [ + [[9, 15], "a0", "dma-packet"], + [[18, 24], "a0", "gs-gif-tag"], + [33, "a0", "(pointer gs-bitbltbuf)"], + [35, "a0", "(pointer gs-reg64)"], + [36, "a0", "(pointer gs-trxpos)"], + [38, "a0", "(pointer gs-reg64)"], + [42, "a0", "(pointer gs-trxreg)"], + [44, "a0", "(pointer gs-reg64)"], + [45, "a0", "(pointer gs-trxdir)"], + [47, "a0", "(pointer gs-reg64)"] + ], + "texture-page-dir-inspect": [[[133, 136], "v1", "adgif-shader"]], + "upload-vram-pages": [ + [[135, 140], "a0", "dma-packet"], + [[144, 149], "a0", "gs-gif-tag"], + [[155, 157], "a0", "(pointer gs-reg64)"], + [154, "a0", "(pointer uint64)"], + [[162, 165], "v1", "dma-packet"] + ], + "upload-vram-pages-pris": [ + [[128, 134], "a0", "dma-packet"], + [[137, 143], "a0", "gs-gif-tag"], + [148, "a0", "(pointer uint64)"], + [150, "a0", "(pointer gs-reg64)"], + [[154, 159], "v1", "dma-packet"] + ], + "(method 19 res-lump)": [ + [46, "t2", "(pointer uint64)"], + [100, "t3", "(pointer uint64)"], + [184, "t5", "(pointer uint64)"], + [64, "t6", "(pointer uint64)"] + ], + "(method 16 res-lump)": [ + [22, "t1", "(pointer uint64)"], + [29, "t2", "(pointer uint64)"] + ], + "(method 18 res-lump)": [["_stack_", 16, "object"]], + "(method 21 res-lump)": [ + ["_stack_", 16, "res-tag"], + ["_stack_", 32, "res-tag"] + ], + + "(method 15 sync-info)": [ + ["_stack_", 16, "res-tag"], + [[19, 24], "v1", "(pointer float)"] + ], + + "(method 15 sync-info-eased)": [ + ["_stack_", 16, "res-tag"], + [[44, 49], "v1", "(pointer float)"], + [[26, 35], "v1", "(pointer float)"] + ], + + "(method 15 sync-info-paused)": [ + ["_stack_", 16, "res-tag"], + [[44, 49], "v1", "(pointer float)"], + [[26, 35], "v1", "(pointer float)"] + ], + + "(method 15 res-lump)": [[132, "s5", "res-tag-pair"]], + + "(method 17 res-lump)": [[22, "s4", "(pointer pointer)"]], + + "(method 20 res-lump)": [[331, "a3", "(inline-array vector)"]], + + "(method 8 res-lump)": [ + [215, "s0", "array"], + [[0, 100], "s0", "basic"], + [[102, 120], "s0", "basic"], + [[147, 150], "s0", "collide-mesh"], + [[157, 200], "s0", "(array object)"], + [235, "s0", "basic"] + ], + "(method 10 shadow-control)": [[1, "v1", "int"]], + "(method 0 fact-info-enemy)": [[[3, 92], "gp", "fact-info-enemy"]], + "(method 0 fact-info)": [ + //[16, "t9", "(function string none)"], + ["_stack_", 16, "res-tag"], + [[32, 43], "v1", "(pointer int32)"], + [86, "gp", "fact-info"] + ], + "(method 0 fact-info-target)": [[[3, 20], "gp", "fact-info-target"]], + "(method 0 align-control)": [[[14, 18], "v0", "align-control"]], + "str-load": [[[20, 36], "s2", "load-chunk-msg"]], + "str-load-status": [ + [[18, 22], "v1", "load-chunk-msg"], + [26, "v1", "load-chunk-msg"] + ], + "str-play-async": [[[8, 16], "s4", "load-chunk-msg"]], + "str-play-stop": [[[7, 14], "s5", "load-chunk-msg"]], + "str-play-queue": [[[19, 27], "s5", "load-chunk-msg"]], + "str-ambient-play": [[[7, 15], "s5", "load-chunk-msg"]], + "str-ambient-stop": [[[7, 16], "s5", "load-chunk-msg"]], + "dgo-load-begin": [[[21, 40], "s2", "load-dgo-msg"]], + "dgo-load-get-next": [[[14, 31], "v1", "load-dgo-msg"]], + "dgo-load-continue": [[[5, 21], "gp", "load-dgo-msg"]], + "string->sound-name": [[[2, 18], "a1", "(pointer uint8)"]], + "ramdisk-load": [[[8, 12], "v1", "ramdisk-rpc-load"]], + "(method 3 generic-tie-interp-point)": [[15, "gp", "(pointer uint128)"]], + "ripple-find-height": [[[22, 72], "s4", "mei-ripple"]], + "(method 0 collide-shape-prim-sphere)": [ + [[4, 8], "v0", "collide-shape-prim-sphere"] + ], + "(method 0 collide-shape-prim-mesh)": [ + [[6, 11], "v0", "collide-shape-prim-mesh"] + ], + "(method 0 collide-shape-prim-group)": [ + [[11, 18], "v0", "collide-shape-prim-group"] + ], + "entity-actor-count": [["_stack_", 16, "res-tag"]], + "entity-actor-lookup": [ + ["_stack_", 16, "res-tag"], + [[10, 33], "v1", "(pointer uint32)"] + ], + "(method 11 joint-mod)": [ + [15, "s3", "process-drawable"], + [[26, 66], "s3", "fact-info-enemy"] + ], + "joint-mod-look-at-handler": [[[2, 254], "gp", "joint-mod"]], + "joint-mod-world-look-at-handler": [[[0, 254], "gp", "joint-mod"]], + "joint-mod-rotate-handler": [[[2, 77], "s4", "joint-mod"]], + "joint-mod-joint-set-handler": [[[2, 13], "s4", "joint-mod"]], + "joint-mod-joint-set*-handler": [[[2, 31], "s5", "joint-mod"]], + "joint-mod-wheel-callback": [[[2, 63], "s4", "joint-mod-wheel"]], + "joint-mod-set-local-callback": [[[0, 23], "v1", "joint-mod-set-local"]], + "joint-mod-set-world-callback": [[[0, 23], "v1", "joint-mod-set-world"]], + "joint-mod-blend-local-callback": [[[2, 63], "gp", "joint-mod-blend-local"]], + "joint-mod-spinner-callback": [[[2, 63], "gp", "joint-mod-spinner"]], + "(method 11 touching-prims-entry-pool)": [ + [[0, 8], "v1", "touching-prims-entry"], + [8, "v1", "pointer"], + [[9, 11], "v1", "touching-prims-entry"], + [[1, 20], "a1", "touching-prims-entry"] + ], + "(method 0 touching-list)": [[[6, 9], "v0", "touching-list"]], + "num-func-chan": [[8, "v1", "joint-control-channel"]], + "shrubbery-login-post-texture": [ + [[13, 15], "a3", "qword"], + [16, "a3", "pointer"], + [24, "a3", "pointer"], + [[17, 23], "a3", "qword"], + [[13, 23], "a1", "qword"], + [14, "a2", "qword"], + [[27, 29], "a3", "qword"], + [[27, 29], "a1", "qword"], + [[35, 37], "a3", "qword"], + [[35, 37], "a2", "qword"] + ], + "(method 3 sparticle-cpuinfo)": [[106, "f0", "float"]], + "camera-teleport-to-entity": [[9, "a0", "transform"]], + "add-debug-sphere-from-table": [[[9, 18], "s1", "(inline-array vector)"]], + "(method 14 actor-link-info)": [[5, "v1", "entity-links"]], + "(method 15 actor-link-info)": [[5, "v1", "entity-links"]], + "(method 23 actor-link-info)": [[4, "v1", "entity-links"]], + "(method 24 actor-link-info)": [[4, "v1", "entity-links"]], + "(method 9 actor-link-info)": [[[0, 36], "s3", "entity-actor"]], + "alt-actor-list-subtask-incomplete-count": [[19, "a0", "entity-links"]], + "actor-link-dead-hook": [[1, "v1", "entity-links"]], + "check-irx-version": [[[6, 37], "gp", "sound-rpc-get-irx-version"]], + "sound-bank-load": [[[9, 11], "v1", "sound-rpc-load-bank"]], + "sound-bank-unload": [[[7, 9], "v1", "sound-rpc-unload-bank"]], + "sound-music-load": [[[7, 9], "v1", "sound-rpc-load-music"]], + "sound-music-unload": [[6, "v1", "sound-rpc-unload-music"]], + "sound-reload-info": [[6, "v1", "sound-rpc-reload-info"]], + "set-language": [[[10, 12], "v1", "sound-rpc-set-language"]], + "list-sounds": [[6, "v1", "sound-rpc-list-sounds"]], + "sound-set-volume": [[[6, 13], "v1", "sound-rpc-set-master-volume"]], + "sound-set-reverb": [[[8, 21], "v1", "sound-rpc-set-reverb"]], + "sound-set-ear-trans": [[[7, 20], "gp", "sound-rpc-set-ear-trans"]], + "sound-play-by-name": [ + [[13, 45], "s5", "sound-rpc-play"], + [[22, 39], "s3", "process-drawable"] + ], + "sound-play-by-spec": [ + [[9, 54], "s5", "sound-rpc-play"], + [[31, 47], "s3", "process-drawable"] + ], + "sound-pause": [[[5, 7], "v1", "sound-rpc-pause-sound"]], + "sound-stop": [[[5, 7], "v1", "sound-rpc-stop-sound"]], + "sound-continue": [[[5, 7], "v1", "sound-rpc-continue-sound"]], + "sound-group-pause": [[[5, 7], "v1", "sound-rpc-pause-group"]], + "sound-group-stop": [[[5, 7], "v1", "sound-rpc-stop-group"]], + "sound-group-continue": [[[5, 7], "v1", "sound-rpc-continue-group"]], + "sound-set-falloff-curve": [[[7, 19], "v1", "sound-rpc-set-falloff-curve"]], + "sound-set-sound-falloff": [[[8, 13], "v1", "sound-rpc-set-sound-falloff"]], + "sound-set-flava": [[[5, 7], "v1", "sound-rpc-set-flava"]], + "(method 0 ambient-sound)": [ + [136, "v1", "sound-spec"], + [143, "v1", "sound-spec"], + [140, "v1", "sound-spec"], + [147, "v1", "sound-spec"], + ["_stack_", 16, "sound-spec"], + ["_stack_", 32, "sound-name"], + ["_stack_", 48, "(pointer float)"], + ["_stack_", 52, "sound-play-parms"], + ["_stack_", 64, "res-tag"] + ], + "(method 11 ambient-sound)": [ + [[18, 31], "s4", "process-drawable"], + [[12, 44], "gp", "sound-rpc-set-param"] + ], + "(method 12 ambient-sound)": [[[8, 20], "v1", "sound-rpc-set-param"]], + "sound-buffer-dump": [[[14, 25], "s3", "sound-rpc-play"]], + "actor-link-subtask-complete-hook": [[1, "v1", "entity-links"]], + "(method 0 vol-control)": [ + [30, "s5", "res-lump"], + [36, "s5", "res-lump"], + [58, "s5", "res-lump"], + [62, "s5", "res-lump"], + [85, "s5", "res-lump"], + [91, "s5", "res-lump"], + [113, "s5", "res-lump"], + [117, "s5", "res-lump"] + ], + "point-in-air-box?": [[5, "f1", "float"]], + "(method 3 air-box)": [ + [16, "f0", "float"], + [22, "f0", "float"], + [28, "f0", "float"] + ], + "joint-anim-inspect-elt": [ + [9, "gp", "joint-anim-matrix"], + [26, "gp", "joint-anim-transformq"] + ], + "(method 12 art-group)": [[13, "a0", "art-joint-anim"]], + "(method 0 path-control)": [["_stack_", 16, "res-tag"]], + "(method 0 curve-control)": [[[13, 55], "s3", "entity"]], + "nav-mesh-connect": [ + [[4, 15], "s2", "entity-actor"], + [19, "v1", "entity"], + [20, "v1", "entity-links"], + [72, "v1", "entity"], + [73, "v1", "entity-links"], + [76, "a0", "entity"], + [77, "a0", "entity-links"] + ], + "add-debug-point": [ + [125, "a3", "pointer"], + [[27, 144], "a0", "(pointer uint64)"], + [[147, 150], "a0", "dma-packet"], + [[31, 35], "a3", "dma-packet"], + [[41, 44], "a3", "gs-gif-tag"], + [[61, 65], "a3", "vector4w-2"], + [[81, 85], "a3", "vector4w-2"], + [[98, 102], "a3", "vector4w-2"], + [[118, 122], "a1", "vector4w-2"] + ], + "internal-draw-debug-line": [ + [[95, 101], "a3", "dma-packet"], + [[104, 110], "a3", "gs-gif-tag"], + [[212, 225], "a1", "(inline-array vector4w-2)"], + [228, "a3", "pointer"], + [[93, 246], "a0", "(pointer uint64)"], + [[250, 253], "a0", "dma-packet"], + [[3, 158], "s2", "rgba"], + [[5, 204], "s5", "rgba"] + ], + "add-debug-flat-triangle": [ + [[55, 61], "a3", "dma-packet"], + [[64, 70], "a3", "gs-gif-tag"], + [[93, 112], "a3", "(inline-array vector4w-3)"], + [[53, 133], "a0", "(pointer uint64)"], + [115, "a1", "pointer"], + [[135, 140], "a0", "dma-packet"] + ], + "add-debug-line2d": [ + [[58, 64], "a2", "dma-packet"], + [[67, 73], "a2", "gs-gif-tag"], + [[76, 81], "a2", "(inline-array vector4w)"], + [[84, 89], "a2", "(inline-array vector4w)"], + [[56, 110], "a0", "(pointer uint64)"], + [92, "a1", "pointer"], + [[112, 117], "v1", "dma-packet"] + ], + "debug-percent-bar": [[[32, 43], "v1", "dma-packet"]], + "debug-pad-display": [[[70, 75], "v1", "dma-packet"]], + "internal-draw-debug-text-3d": [[[54, 59], "v1", "dma-packet"]], + "drawable-frag-count": [[[14, 20], "s5", "drawable-group"]], + + "generic-init-buffers": [ + [[39, 44], "v1", "dma-packet"], + [25, "s5", "gs-zbuf"], + [32, "gp", "gs-zbuf"] + ], + + "(method 13 drawable-inline-array-collide-fragment)": [ + [[1, 5], "v1", "collide-fragment"] + ], + "(method 12 drawable-inline-array-collide-fragment)": [ + [[1, 5], "v1", "collide-fragment"] + ], + "(method 11 drawable-inline-array-collide-fragment)": [ + [[1, 5], "v1", "collide-fragment"] + ], + "main-cheats": [[[1123, 1126], "v1", "dma-packet"]], + "on": [[33, "t9", "(function cpu-thread function none)"]], + + "bg": [[37, "a0", "symbol"]], + + "level-update-after-load": [ + [[29, 55], "s2", "drawable-tree"], + [[121, 146], "s1", "drawable-inline-array-tfrag"], + [[150, 151], "s1", "drawable-tree-instance-tie"] + ], + "(method 11 setting-control)": [[[3, 25], "s4", "connection"]], + "(method 9 setting-data)": [ + [[4, 345], "s3", "connection"], + [[9, 12], "v1", "symbol"], + [[14, 17], "v1", "symbol"], + [[19, 22], "v1", "symbol"], + [[24, 27], "v1", "symbol"], + [[29, 32], "v1", "symbol"], + [[33, 35], "a0", "int"], + [[40, 45], "a0", "uint"], + [[47, 49], "v1", "int"], + [[68, 71], "v1", "symbol"], + [[72, 78], "v1", "float"], + [[80, 83], "v1", "float"], + [[87, 90], "v1", "symbol"], + [[91, 97], "v1", "float"], + [[99, 102], "v1", "float"], + [[106, 109], "v1", "symbol"], + [[110, 116], "v1", "float"], + [[118, 121], "v1", "float"], + [[125, 128], "v1", "symbol"], + [[129, 135], "v1", "float"], + [[137, 140], "v1", "float"], + [[144, 147], "v1", "symbol"], + [[148, 154], "v1", "float"], + [[156, 159], "v1", "float"], + [[163, 166], "v1", "symbol"], + [[167, 173], "v1", "float"], + [[175, 178], "v1", "float"], + [[182, 185], "v1", "symbol"], + [[186, 192], "v1", "float"], + [[194, 197], "v1", "float"], + [[201, 204], "v1", "symbol"], + [[205, 211], "v1", "float"], + [[213, 216], "v1", "float"], + [[220, 223], "v1", "float"], + [[224, 226], "v1", "int"], + [[226, 229], "v1", "float"], + [[233, 236], "v1", "float"], + [[240, 243], "v1", "float"], + [[247, 250], "v1", "float"], + [[254, 257], "v1", "float"], + [[261, 264], "v1", "float"], + [[268, 271], "v1", "float"], + [[275, 277], "v1", "int"], + [[280, 282], "v1", "symbol"], + [[285, 287], "v1", "symbol"], + [[290, 293], "v1", "symbol"], + [[295, 298], "v1", "symbol"], + [[300, 303], "v1", "symbol"], + [[305, 308], "v1", "(pointer progress)"], + [[310, 313], "v1", "(pointer progress)"], + [[315, 318], "v1", "(pointer progress)"], + [[325, 328], "v1", "(pointer progress)"], + [[330, 333], "v1", "symbol"], + [[334, 337], "a0", "int"], + [[341, 344], "a0", "uint"] + ], + "(method 12 level)": [[151, "a0", "symbol"]], + "(method 26 level-group)": [[[65, 96], "v0", "level"]], + "update-sound-banks": [[[21, 52], "t0", "symbol"]], + "(method 16 level-group)": [ + [[122, 146], "s1", "continue-point"], + [[115, 154], "s3", "continue-point"] + ], + "(method 20 level)": [[[43, 45], "s3", "ramdisk-rpc-fill"]], + "(anon-function 29 process-drawable)": [[[0, 999], "s6", "process-drawable"]], + + "ja-done?": [[[0, 999], "s6", "process-drawable"]], + "ja-min?": [[[0, 999], "s6", "process-drawable"]], + "ja-max?": [[[0, 999], "s6", "process-drawable"]], + "ja-num-frames": [[[0, 999], "s6", "process-drawable"]], + "ja-frame-num": [[[0, 999], "s6", "process-drawable"]], + "ja-aframe-num": [[[0, 999], "s6", "process-drawable"]], + "ja-aframe": [[[0, 999], "s6", "process-drawable"]], + "ja-step": [[[0, 999], "s6", "process-drawable"]], + "ja-channel-set!": [[[0, 999], "s6", "process-drawable"]], + "ja-channel-push!": [[[0, 999], "s6", "process-drawable"]], + "ja-group-size": [[[0, 999], "s6", "process-drawable"]], + "ja-eval": [[[0, 999], "s6", "process-drawable"]], + "ja-blend-eval": [[[0, 999], "s6", "process-drawable"]], + "ja-post": [ + [[0, 999], "s6", "process-drawable"], + [54, "a1", "process"] + ], + "transform-post": [[[0, 999], "s6", "process-drawable"]], + "rider-trans": [[[0, 999], "s6", "process-drawable"]], + "rider-post": [[[0, 999], "s6", "process-drawable"]], + "pusher-post": [[[0, 999], "s6", "process-drawable"]], + "process-drawable-delay-player": [[[0, 999], "s6", "process-drawable"]], + + "upload-generic-shrub": [ + [[3, 13], "t0", "dma-packet"], + [[15, 26], "v1", "matrix"], + [[31, 44], "t0", "vector4w-2"], + [[47, 71], "t0", "dma-packet"], + [[74, 98], "a2", "dma-packet"], + [[101, 125], "a2", "dma-packet"], + [[128, 152], "a2", "dma-packet"], + [[157, 162], "a1", "dma-packet"] + ], + "(top-level-login task-control)": [[165, "v1", "symbol"]], + "task-control-reset": [ + [[7, 13], "a0", "task-control"], + [[17, 21], "a0", "task-control"] + ], + "(anon-function 494 task-control)": [[32, "v0", "float"]], + "(anon-function 493 task-control)": [[32, "v0", "float"]], + "(anon-function 480 task-control)": [[13, "v0", "float"]], + "(anon-function 477 task-control)": [[38, "v0", "float"]], + "(anon-function 476 task-control)": [[38, "v0", "float"]], + "(anon-function 475 task-control)": [ + [37, "v0", "float"], + [81, "v0", "float"] + ], + "(anon-function 474 task-control)": [ + [37, "v0", "float"], + [81, "v0", "float"] + ], + "(anon-function 426 task-control)": [[32, "v0", "float"]], + "(anon-function 425 task-control)": [[32, "v0", "float"]], + "(anon-function 415 task-control)": [[32, "v0", "float"]], + "(anon-function 414 task-control)": [[32, "v0", "float"]], + "(anon-function 365 task-control)": [[32, "v0", "float"]], + "(anon-function 364 task-control)": [[32, "v0", "float"]], + "(anon-function 363 task-control)": [[32, "v0", "float"]], + "(anon-function 362 task-control)": [[32, "v0", "float"]], + "(anon-function 337 task-control)": [[32, "v0", "float"]], + "(anon-function 336 task-control)": [[32, "v0", "float"]], + "(anon-function 227 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 286 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 366 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 367 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 368 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 369 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 380 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 383 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 390 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 393 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 400 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 403 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 435 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 445 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 455 task-control)": [ + [[14, 16], "t9", "(function process event-message-block float)"] + ], + "(anon-function 38 task-control)": [[13, "v0", "float"]], + "(anon-function 28 task-control)": [[13, "v0", "float"]], + "(method 18 game-info)": [ + [4, "v1", "symbol"], + [5, "v1", "level-load-info"], + [10, "s3", "continue-point"] + ], + "(method 9 game-info)": [ + [ + [251, 263], + "s2", + "(function cpu-thread function object object object object pointer)" + ] + ], + "(method 25 game-info)": [ + [4, "v1", "game-save-tag"], + [53, "v1", "pointer"], + [[7, 53], "v1", "game-save-tag"], + [[72, 138], "s4", "game-save-tag"], + [154, "s4", "pointer"], + [[166, 205], "s4", "game-save-tag"], + [206, "s4", "pointer"], + [498, "s4", "pointer"], + [207, "a1", "(pointer uint8)"], + [[219, 220], "s4", "game-save-tag"], + [223, "s4", "pointer"], + [224, "a1", "(pointer uint8)"], + [[235, 236], "s4", "game-save-tag"], + [249, "s4", "pointer"], + [[261, 262], "s4", "game-save-tag"], + [275, "s4", "pointer"], + [293, "s4", "game-save-tag"], + [302, "s4", "pointer"], + [303, "a2", "(pointer uint8)"], + [315, "s4", "game-save-tag"], + [319, "s4", "pointer"], + [343, "v1", "(pointer uint8)"], + [352, "v1", "(pointer uint8)"], + [[360, 420], "s4", "game-save-tag"], + [423, "s4", "pointer"], + [424, "a1", "(pointer uint8)"], + [436, "s4", "game-save-tag"], + [440, "s4", "pointer"], + [456, "s4", "game-save-tag"], + [460, "s4", "pointer"], + [476, "s4", "game-save-tag"], + [480, "s4", "pointer"], + [[493, 495], "s4", "game-save-tag"] + ], + "(method 11 game-save)": [ + [126, "v1", "pointer"], + [213, "s4", "pointer"], + [[74, 88], "s4", "game-save-tag"], + [98, "s4", "pointer"], + [107, "s4", "game-save-tag"], + [125, "s4", "(pointer uint8)"], + [131, "s4", "game-save-tag"], + [155, "s4", "game-save-tag"], + [148, "s4", "pointer"], + [172, "s4", "pointer"], + [179, "s4", "game-save-tag"], + [196, "s4", "pointer"], + [[203, 210], "s4", "game-save-tag"] + ], + "drawable-load": [ + [17, "s5", "drawable"], + [18, "s5", "drawable"], + [20, "s5", "drawable"], + [25, "s5", "drawable"], + [27, "s5", "drawable"] + ], + "art-load": [ + [9, "s5", "art"], + [13, "s5", "art"], + [15, "s5", "art"] + ], + "art-group-load-check": [ + [22, "s3", "art-group"], + [31, "s3", "art-group"], + [43, "s3", "art-group"], + [50, "s3", "art-group"], + [52, "s3", "art-group"] + ], + "(method 13 art-group)": [[16, "s3", "art-joint-anim"]], + "(method 14 art-group)": [[16, "s3", "art-joint-anim"]], + "(method 9 external-art-control)": [ + [171, "s4", "external-art-buffer"], + [172, "s4", "external-art-buffer"], + [173, "s4", "external-art-buffer"], + [177, "s4", "external-art-buffer"], + [183, "s4", "external-art-buffer"], + [190, "s4", "external-art-buffer"], + [233, "s4", "spool-anim"], + [240, "s4", "spool-anim"], + [243, "s4", "spool-anim"], + [248, "s4", "spool-anim"], + [249, "s4", "spool-anim"], + [253, "s4", "spool-anim"], + [257, "s4", "spool-anim"] + ], + "(method 10 external-art-control)": [[18, "v1", "pointer"]], + "(method 16 external-art-control)": [ + [37, "a0", "process"], + [17, "s5", "process-drawable"] + ], + "ja-play-spooled-anim": [ + [154, "a0", "process"], + [286, "s2", "art-joint-anim"], + [294, "s2", "art-joint-anim"], + [295, "s2", "art-joint-anim"], + [306, "s2", "art-joint-anim"], + [320, "s2", "art-joint-anim"], + [324, "s2", "art-joint-anim"] + ], + "(method 11 external-art-control)": [ + [127, "a0", "process"], + [151, "a0", "process"], + [168, "a0", "process"], + [18, "s5", "process-drawable"] + ], + "debug-menu-item-var-update-display-str": [ + [[44, 49], "v1", "int"], + [[61, 69], "v1", "int"] + ], + "debug-menu-item-get-max-width": [[[18, 27], "a0", "debug-menu-item-var"]], + "debug-menu-send-msg": [ + [[3, 14], "s2", "debug-menu-item"], + [[14, 21], "s2", "debug-menu-item-submenu"] + ], + "debug-menu-item-var-joypad-handler": [ + [[39, 42], "a2", "int"], + [[40, 42], "a3", "int"], + [41, "t9", "(function int int int int int)"], + [200, "t9", "(function int int int int int)"], + [138, "v1", "int"], + [143, "v1", "int"], + [[182, 187], "v1", "int"], + [[182, 187], "a1", "int"], + [[190, 194], "a0", "int"], + [[193, 195], "v1", "int"] + ], + "debug-menu-find-from-template": [ + [3, "s4", "debug-menu"], + [[4, 8], "s4", "debug-menu-item"], + [[41, 44], "s4", "debug-menu-node"], + [[7, 12], "s5", "debug-menu-item"], + [23, "s5", "debug-menu-item-submenu"] + ], + + "debug-menu-func-decode": [[[12, 14], "a0", "symbol"]], + + "dm-cam-render-float": [[[71, 72], "v0", "float"]], + + "can-hint-be-played?": [[[25, 28], "a0", "level-hint"]], + "debug-menu-rebuild": [[[4, 13], "a0", "debug-menu-item"]], + "debug-menu-item-submenu-render": [[[39, 44], "v1", "dma-packet"]], + "debug-menu-item-function-render": [[[46, 51], "v1", "dma-packet"]], + "debug-menu-item-flag-render": [[[44, 49], "v1", "dma-packet"]], + "debug-menu-render": [ + [[45, 48], "v1", "dma-packet"], + [[106, 110], "v1", "dma-packet"] + ], + + "debug-menu-item-var-msg": [[64, "t9", "(function int int int int int)"]], + + "calculate-basis-functions-vector!": [ + [[8, 20], "v1", "(pointer float)"], + [[0, 60], "f1", "float"] + ], + "(anon-function 2 memory-usage)": [ + [[171, 415], "s5", "process-drawable"], + [[212, 213], "v1", "collide-shape"] + ], + "(method 8 process-tree)": [ + [31, "v1", "symbol"], + [6, "a3", "symbol"] + ], + "(method 9 align-control)": [ + [[27, 31], "t9", "(function object object object object)"] + ], + "(method 8 tie-fragment)": [ + [150, "a0", "(pointer int32)"], + [[157, 160], "a0", "basic"] + ], + "letterbox": [[[29, 33], "v1", "dma-packet"]], + "blackout": [[[20, 24], "v1", "dma-packet"]], + "(method 15 load-state)": [ + [31, "t9", "(function int)"], + [[291,303], "s5", "entity-actor"], + [370, "s3", "process-drawable"], + [343, "s5", "symbol"], + [21, "s5", "symbol"] + ], + "yakow-default-event-handler": [ + [27, "a0", "collide-shape"], + [32, "a0", "collide-shape"] + ], + "(method 11 yakow)": [ + [184, "v1", "vector"], + [186, "v1", "vector"], + [189, "v1", "vector"] + ], + "yakow-post": [ + [114, "a0", "collide-shape-moving"], + [130, "a0", "collide-shape-moving"] + ], + "raw-ray-sphere-intersect": [ + [23, "v1", "float"], + [36, "v1", "uint"] + ], + "(method 0 anim-test-obj)": [ + [9, "s4", "anim-test-obj"], + [10, "s4", "anim-test-obj"], + [13, "s4", "anim-test-obj"], + [15, "s4", "anim-test-obj"] + ], + "(method 0 anim-test-sequence)": [ + [8, "s5", "anim-test-sequence"], + [11, "s5", "anim-test-sequence"], + [13, "s5", "anim-test-sequence"] + ], + "(method 0 anim-test-seq-item)": [ + [7, "v0", "anim-test-seq-item"], + [8, "v1", "anim-test-seq-item"], + [10, "v0", "anim-test-seq-item"], + [11, "v0", "anim-test-seq-item"], + [14, "v0", "anim-test-seq-item"], + [17, "v0", "anim-test-seq-item"] + ], + "(method 3 anim-tester)": [ + [12, "s5", "anim-test-obj"], + [15, "s5", "anim-test-obj"], + [148, "s5", "anim-test-obj"], + [150, "s5", "anim-test-obj"], + [22, "s4", "anim-test-sequence"], + [28, "s4", "anim-test-sequence"], + [38, "s4", "anim-test-sequence"], + [48, "s4", "anim-test-sequence"], + [59, "s4", "anim-test-sequence"], + [137, "s4", "anim-test-sequence"], + [139, "s4", "anim-test-sequence"], + [66, "s3", "anim-test-seq-item"], + [70, "s3", "anim-test-seq-item"], + [75, "s3", "anim-test-seq-item"], + [79, "s3", "anim-test-seq-item"], + [88, "s3", "anim-test-seq-item"], + [94, "s3", "anim-test-seq-item"], + [104, "s3", "anim-test-seq-item"], + [114, "s3", "anim-test-seq-item"], + [126, "s3", "anim-test-seq-item"], + [128, "s3", "anim-test-seq-item"] + ], + "anim-test-obj-item-valid?": [ + [5, "s5", "anim-test-sequence"], + [12, "s5", "anim-test-sequence"], + [17, "s5", "anim-test-sequence"], + [36, "s5", "anim-test-sequence"], + [38, "s5", "anim-test-sequence"], + [20, "v1", "anim-test-seq-item"], + [26, "v1", "anim-test-seq-item"], + [28, "v1", "anim-test-seq-item"] + ], + "anim-test-obj-remove-invalid": [ + [84, "v1", "anim-test-sequence"], + [88, "v1", "anim-test-sequence"], + [90, "v1", "anim-test-sequence"], + [92, "v1", "anim-test-sequence"], + [93, "v1", "anim-test-sequence"], + [91, "a0", "anim-test-sequence"], + [5, "s5", "anim-test-sequence"], + [8, "s5", "anim-test-sequence"], + [11, "s5", "anim-test-sequence"], + [30, "s5", "anim-test-sequence"], + [44, "s5", "anim-test-sequence"], + [51, "s5", "anim-test-sequence"], + [58, "s5", "anim-test-sequence"], + [67, "s5", "anim-test-sequence"], + [70, "s4", "anim-test-sequence"], + [71, "s5", "anim-test-sequence"], + [72, "s5", "anim-test-sequence"], + [15, "s3", "anim-test-seq-item"], + [18, "s3", "anim-test-seq-item"], + [24, "s3", "anim-test-seq-item"], + [31, "s3", "anim-test-seq-item"], + [34, "s2", "anim-test-seq-item"], + [35, "s3", "anim-test-seq-item"], + [36, "s3", "anim-test-seq-item"], + [61, "a0", "anim-test-seq-item"] + ], + "anim-tester-reset": [ + [14, "v1", "anim-test-obj"], + [30, "v1", "anim-test-obj"], + [33, "v1", "anim-test-obj"], + [36, "v1", "anim-test-obj"], + [43, "v1", "anim-test-obj"], + [[50, 53], "v1", "anim-test-obj"] + ], + "anim-tester-save-all-objects": [ + [[4, 19], "gp", "anim-test-obj"], + [17, "v1", "anim-test-obj"] + ], + "anim-tester-save-object-seqs": [ + [63, "s5", "anim-test-sequence"], + [69, "s5", "anim-test-sequence"], + [65, "s5", "anim-test-sequence"], + [75, "s5", "anim-test-sequence"], + [79, "s5", "anim-test-sequence"], + [133, "s5", "anim-test-sequence"], + [141, "s5", "anim-test-sequence"], + [142, "v1", "anim-test-sequence"], + [143, "s5", "anim-test-sequence"], + [83, "s4", "anim-test-seq-item"], + [89, "s4", "anim-test-seq-item"], + [91, "s4", "anim-test-seq-item"], + [92, "s4", "anim-test-seq-item"], + [96, "s4", "anim-test-seq-item"], + [105, "s4", "anim-test-seq-item"], + [111, "s4", "anim-test-seq-item"], + [120, "s4", "anim-test-seq-item"], + [121, "v1", "anim-test-seq-item"], + [122, "s4", "anim-test-seq-item"] + ], + "anim-test-obj-list-handler": [ + [25, "s5", "anim-test-obj"], + [31, "s5", "anim-test-obj"], + [[50, 53], "v1", "dma-packet"], + [110, "s5", "anim-test-obj"], + [166, "s5", "anim-test-obj"], + [112, "v1", "anim-tester"], + [[202, 205], "v1", "dma-packet"] + ], + "anim-test-anim-list-handler": [ + [2, "s5", "anim-test-obj"], + [25, "s5", "anim-test-obj"], + [[44, 47], "v1", "dma-packet"], + [65, "s5", "anim-test-obj"], + [227, "s5", "anim-test-obj"], + [90, "v1", "anim-test-obj"], + [91, "v1", "anim-test-obj"], + [100, "v1", "anim-test-obj"], + [105, "v1", "anim-test-obj"], + [130, "v1", "anim-test-obj"], + [131, "v1", "anim-test-obj"], + [140, "v1", "anim-test-obj"], + [145, "v1", "anim-test-obj"], + [167, "v1", "anim-test-obj"], + [169, "v1", "anim-test-obj"], + [171, "v1", "anim-test-obj"], + [173, "v1", "anim-test-obj"], + [[263, 266], "v1", "dma-packet"] + ], + "anim-test-sequence-list-handler": [ + [2, "s5", "anim-test-sequence"], + [25, "s5", "anim-test-sequence"], + [31, "s5", "anim-test-sequence"], + [[50, 53], "v1", "dma-packet"], + [71, "s5", "anim-test-sequence"], + [231, "s5", "anim-test-sequence"], + [96, "v1", "anim-test-sequence"], + [97, "v1", "anim-test-sequence"], + [106, "v1", "anim-test-sequence"], + [111, "v1", "anim-test-sequence"], + [136, "v1", "anim-test-sequence"], + [137, "v1", "anim-test-sequence"], + [146, "v1", "anim-test-sequence"], + [151, "v1", "anim-test-sequence"], + [[267, 270], "v1", "dma-packet"] + ], + "anim-test-edit-sequence-list-handler": [ + [[82, 85], "v1", "dma-packet"], + [[148, 151], "v1", "dma-packet"], + [[323, 326], "v1", "dma-packet"], + [[979, 982], "v1", "dma-packet"], + [[1028, 1031], "v1", "dma-packet"], + [[122, 965], "s4", "anim-test-sequence"], + [129, "v1", "glst-named-node"], + [[128, 909], "gp", "anim-test-seq-item"], + [380, "v0", "anim-test-obj"], + [381, "v0", "anim-test-obj"], + [382, "v0", "anim-test-obj"], + [389, "v0", "anim-test-obj"], + [483, "s3", "anim-test-seq-item"], + [491, "s3", "anim-test-seq-item"], + [502, "s3", "anim-test-seq-item"] + ], + "anim-tester-interface": [ + [[34, 48], "gp", "anim-test-obj"], + [[70, 73], "v1", "dma-packet"], + [[131, 134], "v1", "dma-packet"], + [[189, 192], "v1", "dma-packet"], + [[228, 231], "v1", "dma-packet"], + [[95, 109], "gp", "anim-test-obj"], + [[156, 160], "v1", "anim-test-obj"], + [[162, 165], "v1", "anim-test-sequence"] + ], + "anim-tester-get-playing-item": [ + [4, "t9", "(function glst-list int anim-test-seq-item)"], + [20, "t9", "(function glst-list int anim-test-seq-item)"], + [[5, 22], "s5", "anim-test-seq-item"], + [21, "v0", "anim-test-seq-item"], + [25, "v0", "anim-test-seq-item"], + [5, "v0", "anim-test-seq-item"] + ], + "anim-tester-add-newobj": [ + ["_stack_", 128, "anim-test-obj"], + [[2, 185], "s2", "anim-test-obj"], + [[70, 193], "s5", "anim-test-obj"], + [149, "v1", "anim-test-sequence"], + [154, "v1", "anim-test-sequence"], + [160, "v1", "anim-test-sequence"], + [164, "a0", "art-joint-anim"], + [168, "v1", "anim-test-seq-item"], + [168, "v1", "anim-test-seq-item"], + [170, "a0", "art-joint-anim"], + [171, "v1", "anim-test-seq-item"], + [173, "v1", "anim-test-seq-item"] + ], + "anim-tester-start": [[20, "t9", "(function process function none)"]], + "anim-tester-set-name": [ + [[34, 51], "s3", "anim-test-obj"], + [[40, 63], "s5", "anim-test-sequence"] + ], + "anim-tester-add-sequence": [[[33, 102], "s5", "anim-test-obj"]], + "(anon-function 11 anim-tester)": [ + [[23, 113], "s4", "anim-test-obj"], + [[83, 338], "gp", "anim-test-sequence"], + [[123, 187], "s4", "art-joint-anim"] + ], + "(method 10 bsp-header)": [ + [[51, 61], "a0", "(pointer uint128)"], + [[51, 61], "a1", "(pointer uint128)"], + [133, "v1", "terrain-bsp"], + [141, "v1", "terrain-bsp"], + [148, "v1", "terrain-bsp"], + [5, "a0", "terrain-bsp"], + [8, "a0", "terrain-bsp"] + ], + "(method 15 bsp-header)": [ + [5, "a0", "terrain-bsp"], + [8, "a0", "terrain-bsp"] + ], + + "upload-vis-bits": [ + [[4, 16], "a1", "(pointer uint128)"], + [[12, 14], "a0", "(pointer uint128)"], + [[20, 22], "a2", "(pointer uint128)"], + [[28, 30], "a0", "(pointer uint128)"], + [[32, 34], "a2", "(pointer uint128)"] + ], + + "bsp-camera-asm": [ + [[4, 14], "a1", "bsp-node"], + [[0, 9], "v1", "bsp-node"], + [[12, 16], "v1", "bsp-node"] + ], + "level-remap-texture": [ + [15, "t0", "(pointer int32)"], + [21, "t0", "(pointer int32)"], + [19, "t0", "(pointer uint64)"], + [12, "v1", "int"] + ], + "sprite-add-matrix-data": [ + [[5, 15], "a2", "dma-packet"], + [[24, 29], "a1", "matrix"], + [[47, 57], "a2", "dma-packet"], + [[60, 97], "a1", "matrix"], + [[116, 129], "a1", "vector"] + ], + "sprite-add-frame-data": [[[8, 16], "a0", "dma-packet"]], + "sprite-add-2d-chunk": [ + [[12, 20], "a0", "dma-packet"], + [[45, 52], "a0", "dma-packet"], + [[69, 76], "a0", "dma-packet"], + [[80, 87], "v1", "dma-packet"], + [65, "a3", "int"] + ], + "sprite-add-3d-chunk": [ + [[11, 19], "a0", "dma-packet"], + [[44, 51], "a0", "dma-packet"], + [[68, 75], "a0", "dma-packet"], + [[79, 87], "v1", "dma-packet"], + [65, "a3", "int"] + ], + "sprite-add-shadow-chunk": [ + [[11, 19], "a0", "dma-packet"], + [[37, 44], "a0", "dma-packet"], + [[49, 77], "a0", "(inline-array vector)"], + [[93, 100], "a0", "dma-packet"], + [[105, 121], "s1", "adgif-shader"], + [[130, 138], "v1", "dma-packet"] + ], + "sprite-draw": [ + [[33, 37], "a0", "dma-packet"], + [[43, 46], "a0", "gs-gif-tag"], + [51, "a0", "(pointer gs-test)"], + [53, "a0", "(pointer gs-reg64)"], + [55, "a0", "(pointer gs-clamp)"], + [57, "a0", "(pointer gs-reg64)"], + [[78, 87], "a0", "dma-packet"], + [[92, 97], "a0", "dma-packet"], + [[125, 129], "a0", "dma-packet"], + [[143, 146], "v1", "dma-packet"] + ], + "sprite-init-distorter": [ + [59, "a3", "uint"], + [[3, 7], "a2", "dma-packet"], + [[13, 16], "a2", "gs-gif-tag"], + [21, "a2", "(pointer gs-zbuf)"], + [23, "a2", "(pointer gs-reg64)"], + [29, "a2", "(pointer gs-tex0)"], + [31, "a2", "(pointer gs-reg64)"], + [33, "a2", "(pointer gs-tex1)"], + [35, "a2", "(pointer gs-reg64)"], + [36, "a2", "(pointer gs-miptbp)"], + [38, "a2", "(pointer gs-reg64)"], + [45, "a2", "(pointer gs-clamp)"], + [47, "a2", "(pointer gs-reg64)"], + [49, "a2", "(pointer gs-alpha)"], + [51, "a2", "(pointer gs-reg64)"], + [[62, 67], "a1", "dma-packet"] + ], + "sprite-draw-distorters": [ + [[70, 90], "a0", "vector"], + [72, "v1", "vector"], + [93, "v1", "vector"], + [96, "v1", "vector"], + [115, "v1", "(pointer int32)"], + [119, "a0", "(pointer int32)"], + [124, "v1", "vector"], + [154, "v1", "vector"], + [[172, 189], "a1", "dma-packet"], + [[199, 203], "a0", "dma-packet"], + [[207, 211], "a0", "vector4w"], + [[216, 221], "a0", "dma-packet"], + [[248, 265], "a1", "dma-packet"], + [[273, 277], "a1", "dma-packet"], + [[281, 285], "a1", "vector4w"], + [[289, 294], "v1", "dma-packet"] + ], + + "debug-menu-make-from-template": [ + [[20, 30], "s5", "string"], + [[31, 60], "s5", "string"], + [[61, 71], "s5", "string"], + [[72, 81], "s5", "string"], + [[82, 107], "s5", "string"], + [[108, 135], "s5", "string"], + [[136, 152], "s5", "string"], + [[153, 183], "s5", "string"], + [[186, 224], "s5", "string"], + [[225, 246], "s5", "string"], + [[249, 321], "s5", "string"] + ], + + "debug-menu-item-var-render": [[[94, 98], "v1", "dma-packet"]], + + "generic-add-constants": [[[8, 17], "a0", "dma-packet"]], + + "generic-init-buf": [ + [[14, 19], "a0", "dma-packet"], + [[24, 28], "a0", "gs-gif-tag"], + [32, "a0", "(pointer gs-test)"], + [34, "a0", "(pointer uint64)"], + [34, "a1", "gs-reg"], + [35, "a0", "(pointer gs-zbuf)"], + [37, "a0", "(pointer uint64)"], + [37, "a1", "gs-reg"], + [[47, 53], "a0", "dma-packet"], + [[56, 62], "v1", "(pointer vif-tag)"], + [[62, 66], "v1", "(pointer int32)"] + ], + + "cam-standard-event-handler": [ + [[0, 999], "s6", "camera-slave"], + [[16, 30], "s5", "state"], + [41, "a0", "vector"], + [[5, 8], "t9", "(function object)"], + [[19, 22], "t9", "(function object)"], + [[30, 32], "t9", "(function object)"] + ], + "cam-curve-pos": [[[0, 224], "s6", "camera-slave"]], + "cam-combiner-init": [[[0, 999], "s6", "camera-combiner"]], + + "(code cam-combiner-active)": [[[0, 999], "s6", "camera-combiner"]], + + "(event cam-combiner-active)": [ + [10, "a0", "vector"], + [[0, 20], "s6", "camera-slave"], + [[20, 231], "s6", "camera-combiner"], + [[99, 127], "gp", "camera-slave"], + [[187, 231], "gp", "camera-slave"] + ], + + "cam-master-init": [[[0, 999], "s6", "camera-master"]], + "cam-curve-setup": [[[0, 82], "s6", "camera-slave"]], + "(method 15 tracking-spline)": [ + [[57, 59], "a2", "vector"], + [[57, 59], "a3", "vector"] + ], + "(method 16 tracking-spline)": [ + [[40, 42], "a0", "vector"], + [[40, 42], "a1", "vector"] + ], + + "cam-slave-init-vars": [[[0, 999], "s6", "camera-slave"]], + + "cam-slave-get-vector-with-offset": [[[52, 65], "s3", "vector"]], + + "cam-slave-go": [[[3, 6], "t9", "(function object)"]], + + "cam-slave-init": [ + [[0, 999], "s6", "camera-slave"], + [[47, 50], "t9", "(function object object)"], + [[54, 58], "t9", "(function object object)"] + ], + + "update-mood-village3": [ + [[236, 245], "s0", "(array float)"], + [245, "s0", "(array int8)"], + [[246, 297], "s0", "(array float)"], + [[297, 309], "s0", "(array uint8)"], + [[309, 314], "s0", "matrix"] // TODO - there is no way this is correct lol + ], + + "update-mood-citadel": [ + [291, "s5", "(pointer float)"], + [298, "s5", "(pointer float)"], + [300, "s5", "(pointer float)"], + [304, "s5", "(pointer float)"], + [307, "s5", "(pointer float)"], + [318, "s5", "(pointer float)"] + ], + + "update-mood-finalboss": [ + [40, "s4", "(pointer int64)"], + [44, "s4", "(pointer int64)"], + [174, "s4", "(pointer int64)"], + [251, "s4", "(pointer int64)"], + [255, "s4", "(pointer int64)"], + [347, "s4", "(pointer int64)"] + ], + + "update-mood-ogre": [ + [57, "s4", "(pointer float)"], + [64, "s4", "(pointer float)"], + [90, "s4", "(pointer float)"], + [92, "s4", "(pointer float)"], + [95, "s4", "(pointer float)"], + [98, "s4", "(pointer float)"], + [100, "s4", "(pointer float)"], + [105, "s4", "(pointer float)"], + [144, "s4", "(pointer float)"] + ], + + "update-mood-snow": [ + [93, "s5", "vector"], + [110, "s5", "vector"] + ], + + "ocean-trans-add-upload-table": [ + [44, "a0", "dma-packet"], + [46, "a0", "dma-packet"], + [51, "a0", "dma-packet"], + [[55, 59], "v1", "vector4w"], // TODO - very likely wrong, but it's something that has 4 int32's, + [[87, 228], "v1", "(inline-array vector)"], + [241, "a0", "dma-packet"], + [243, "a0", "dma-packet"], + [248, "a0", "dma-packet"] + ], + + "ocean-trans-add-upload-strip": [ + [39, "a0", "dma-packet"], + [41, "a0", "dma-packet"], + [46, "a0", "dma-packet"], + [[57, 61], "v1", "vector4w"], // TODO - very likely wrong, but it's something that has 4 int32's, + [[64, 147], "v1", "(inline-array vector)"], // TODO - very likely wrong, but it's something that has 4 int32's, + [166, "a0", "dma-packet"], + [168, "a0", "dma-packet"], + [173, "a0", "dma-packet"] + ], + + "ocean-trans-add-constants": [ + [7, "a1", "dma-packet"], + [9, "a1", "dma-packet"], + [14, "a1", "dma-packet"], + [[17, 46], "v1", "matrix"] + ], + + "draw-ocean-transition": [[255, "v1", "ocean-mid-mask"]], + + "do-target-shadow": [ + [46, "v1", "collide-shape-prim"] // `event-other` from collide-shape + ], + + "draw-string": [ + [[93, 96], "a0", "(pointer uint8)"], + [[206, 209], "t3", "font-work"], + [[210, 214], "t3", "font-work"], + [[217, 221], "t3", "font-work"], + [356, "t2", "(pointer uint64)"], + [726, "t2", "(pointer uint64)"], + [[68, 76], "t4", "(pointer uint32)"], + [[239, 247], "t3", "font-work"], + [[424, 878], "a1", "(pointer uint128)"], + [[616, 634], "t4", "font-work"] + ], + + "get-string-length": [[[29, 31], "a0", "(pointer uint8)"]], + + "print-game-text-scaled": [[[31, 32], "f3", "float"]], + + "print-game-text": [[[369, 372], "v1", "dma-packet"]], + + "debug-init-buffer": [ + [[11, 15], "t1", "dma-packet"], + [[21, 24], "t1", "gs-gif-tag"], + [28, "t1", "(pointer gs-zbuf)"], + [30, "t1", "(pointer gs-reg64)"], + [31, "t1", "(pointer gs-test)"], + [33, "t1", "(pointer gs-reg64)"], + [[39, 42], "a1", "dma-packet"] + ], + + "display-frame-finish": [ + [[30, 35], "a1", "dma-packet"], + [[40, 43], "a0", "dma-packet"], + [[63, 69], "a0", "dma-packet"], + [[78, 79], "a0", "dma-packet"], + [79, "a0", "(pointer uint64)"] + ], + "(event water-vol-idle water-anim)": [[6, "a0", "vector"]], + + "(method 22 water-anim)": [[25, "s3", "basic"]], + + "(method 25 water-anim)": [ + [25, "v0", "(pointer float)"], + ["_stack_", 16, "res-tag"] + ], + + "(method 22 rigid-body-platform)": [[26, "f0", "float"]], + + "rigid-body-platform-event-handler": [ + [28, "v1", "process-drawable"], + [34, "v1", "float"], + [83, "v1", "process-drawable"], + [119, "v1", "process-drawable"], + [125, "v1", "process-drawable"], + [158, "v1", "vector"], + [170, "v1", "vector"], + [184, "v1", "(pointer handle)"], + [213, "v1", "process-drawable"] + ], + + "(anon-function 9 plat-eco)": [ + [23, "v1", "(state symbol none)"], + [58, "v1", "(state symbol none)"] + ], + + "(method 7 rigid-body-platform)": [ + [5, "v1", "int"], + [14, "t9", "(function process-drawable int process-drawable)"] + ], + + "(method 10 rigid-body)": [[50, "v1", "vector"]], + + "(method 22 mud)": [[35, "v0", "(pointer float)"]], + + "(method 11 twister)": [ + [7, "s4", "twist-joint"], + [13, "s4", "twist-joint"], + [26, "s4", "twist-joint"], + [28, "s4", "twist-joint"], + [36, "s4", "twist-joint"], + [40, "s4", "twist-joint"], + [47, "s4", "twist-joint"], + [55, "s4", "twist-joint"], + [70, "s4", "twist-joint"], + [82, "s4", "twist-joint"] + ], + + "(code teetertotter-launch)": [[11, "v1", "art-joint-anim"]], + + "(code teetertotter-bend)": [[10, "v1", "art-joint-anim"]], + + "misty-camera-view": [[25, "v1", "handle"]], + + "(method 11 silostep)": [[100, "v1", "art-joint-anim"]], + + "(enter plat-button-pressed sunken-elevator)": [ + [40, "v1", "village2cam"], + [73, "v1", "village2cam"] + ], + + "(trans plat-button-move-upward sunken-elevator)": [ + [49, "v1", "village2cam"] + ], + + "(trans plat-button-move-downward sunken-elevator)": [ + [13, "v0", "(state sunken-elevator)"] + ], + + "(method 27 sunken-elevator)": [[37, "v1", "art-joint-anim"]], + + "nav-enemy-set-base-collide-sphere-collide-with": [ + [19, "v1", "collide-shape-prim-group"], + [23, "s2", "collide-shape-prim"], + [32, "v1", "collide-shape-prim-sphere"], + [33, "s5", "collide-shape-prim-group"], + [37, "v1", "collide-shape-prim-sphere"], + [38, "s5", "collide-shape-prim-group"], + [42, "v1", "collide-shape-prim-sphere"], + [43, "s5", "collide-shape-prim-group"], + [50, "s4", "collide-shape-prim-group"], + [54, "s5", "collide-shape-prim"], + [55, "s5", "collide-shape-prim"] + ], + + "nav-enemy-jump-land-anim": [[39, "v1", "art-joint-anim"]], + + "(code nav-enemy-victory nav-enemy)": [[27, "v1", "art-joint-anim"]], + "(code nav-enemy-notice nav-enemy)": [[27, "v1", "art-joint-anim"]], + "(code nav-enemy-patrol nav-enemy)": [ + [23, "v1", "art-joint-anim"], + [105, "v1", "art-joint-anim"], + [167, "v1", "art-joint-anim"], + [249, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-flee nav-enemy)": [ + [27, "v1", "art-joint-anim"], + [91, "v1", "art-joint-anim"] + ], + + "nav-enemy-set-hit-from-direction": [[19, "v1", "process-drawable"]], + "(method 45 nav-enemy)": [[14, "v1", "process-mask"]], + + "nav-enemy-default-event-handler": [ + [62, "a0", "vector"], + [82, "a0", "vector"] + ], + + "(method 7 nav-enemy)": [ + [5, "v1", "int"], + [10, "v1", "int"], + [19, "t9", "(function process-drawable int none)"] + ], + + "(enter nav-enemy-patrol nav-enemy)": [[8, "v1", "int"]], + + "(code nav-enemy-fuel-cell nav-enemy)": [[31, "v1", "int"]], + + "(method 16 level)": [ + [252, "v1", "(pointer uint128)"], + [253, "a1", "(pointer uint128)"], + [255, "a0", "(pointer uint128)"], + [208, "s2", "(pointer uint8)"], + [209, "s2", "(pointer uint8)"], + [210, "s1", "(pointer uint8)"], + [217, "s2", "(pointer uint8)"], + [218, "s1", "(pointer uint8)"], + [79, "a0", "(pointer uint128)"], + [80, "v1", "(pointer uint128)"], + [257, "v1", "(pointer uint16)"], + [222, "s2", "(pointer uint8)"], + [161, "s1", "(pointer uint128)"], + [140, "s1", "(pointer uint128)"] + ], + + "(method 15 level)": [ + [[21, 60], "v1", "(inline-array box8s)"] + ], + + "(method 27 level)": [ + [[23, 68], "s2", "(inline-array box8s)"] + ], + + "unpack-comp-huf": [[[21, 23], "t3", "(pointer uint16)"]], + + "(method 9 merc-fragment)": [[[13, 161], "s3", "adgif-shader"]], + + "(method 9 merc-effect)": [ + [49, "s4", "pointer"], + [50, "s5", "pointer"], + [[0, 49], "s4", "merc-fragment"], + [[0, 50], "s5", "merc-fragment-control"] + ], + + "merc-vu1-initialize-chain": [ + [[19, 47], "s5", "merc-vu1-low-mem"], + [58, "gp", "(inline-array dma-packet)"], + [[12, 18], "gp", "(pointer vif-tag)"] + ], + + "merc-vu1-init-buffer": [ + [[27, 31], "a0", "dma-packet"], + [[37, 40], "a0", "gs-gif-tag"], + [44, "a0", "(pointer gs-test)"], + [46, "a0", "(pointer gs-reg64)"], + [[55, 58], "v1", "dma-packet"] + ], + + "(method 8 merc-ctrl)": [ + [46, "s2", "pointer"], // was merc-fragment-control + [[22, 45], "s2", "merc-fragment-control"], + [[89, 93], "a1", "merc-blend-ctrl"], + [103, "a1", "pointer"] + ], + + "merc-edge-stats": [[[33, 35], "v1", "merc-ctrl"]], + + "(method 9 screen-filter)": [[[23, 26], "v1", "dma-packet"]], + + "(method 48 mayor)": [[32, "a0", "int"]], + + "(method 43 mayor)": [[19, "v1", "float"]], + + "(post idle mayor)": [[4, "t9", "(function none)"]], + + "(method 43 bird-lady)": [[19, "v1", "float"]], + + "muse-to-idle": [[57, "v1", "muse"]], + + "(method 32 sculptor)": [[87, "v1", "muse"]], + + "(method 43 sculptor)": [[19, "v1", "float"]], + + "(code idle sculptor)": [ + [71, "v1", "art-joint-anim"], + [135, "v1", "art-joint-anim"], + [184, "v1", "float"], + [204, "v1", "art-joint-anim"], + [255, "v1", "float"], + [269, "v1", "art-joint-anim"], + [319, "v1", "art-joint-anim"], + [369, "v1", "art-joint-anim"], + [421, "v1", "art-joint-anim"], + [470, "v1", "float"], + [490, "v1", "art-joint-anim"], + [543, "v1", "art-joint-anim"], + [593, "v1", "art-joint-anim"], + [643, "v1", "art-joint-anim"], + [698, "v1", "float"], + [718, "v1", "art-joint-anim"], + [769, "v1", "float"], + [785, "v1", "art-joint-anim"], + [836, "v1", "art-joint-anim"], + [886, "v1", "art-joint-anim"], + [936, "v1", "art-joint-anim"] + ], + + "(method 43 geologist)": [[19, "v1", "float"]], + + "(anon-function 3 oracle)": [[11, "v1", "collide-shape"]], + + "(method 43 farmer)": [[19, "v1", "float"]], + + "(method 43 explorer)": [[19, "v1", "float"]], + + "(code idle explorer)": [ + [36, "v1", "float"], + [56, "v1", "art-joint-anim"], + [107, "v1", "float"], + [123, "v1", "art-joint-anim"], + [180, "v1", "float"], + [200, "v1", "float"], + [216, "v1", "art-joint-anim"], + [273, "v1", "float"], + [347, "v1", "float"], + [363, "v1", "art-joint-anim"], + [420, "v1", "float"], + [500, "v1", "art-joint-anim"], + [542, "v1", "art-joint-anim"], + [599, "v1", "float"], + [621, "v1", "art-joint-anim"], + [678, "v1", "float"], + [761, "v1", "float"], + [783, "v1", "art-joint-anim"] + ], + + "(method 32 assistant)": [[39, "v1", "float"]], + + "(method 43 assistant)": [[19, "v1", "float"]], + + "(code idle assistant)": [ + [35, "v1", "float"], + [114, "v1", "float"], + [130, "v1", "art-joint-anim"], + [207, "v1", "float"], + [376, "v1", "art-joint-anim"], + [415, "v1", "float"], + [431, "v1", "art-joint-anim"], + [482, "v1", "art-joint-anim"], + [530, "v1", "float"], + [549, "v1", "art-joint-anim"], + [602, "v1", "art-joint-anim"] + ], + + "check-drop-level-assistant": [[17, "v1", "float"]], + + "(method 32 sage)": [ + [76, "v1", "float"], + [262, "v1", "assistant"] + ], + + "(method 43 sage)": [[19, "v1", "float"]], + + "(code idle sage)": [ + [35, "v1", "float"], + [155, "v1", "art-joint-anim"] + ], + + "(method 43 gambler)": [[19, "v1", "float"]], + + "(code idle gambler)": [[93, "v1", "float"]], + + "(method 32 warrior)": [[76, "v1", "handle"]], + + "(method 43 warrior)": [[19, "v1", "float"]], + + "(method 32 minershort)": [ + [44, "v1", "float"], + [112, "v1", "float"] + ], + + "(method 43 minershort)": [[19, "v1", "float"]], + + "(method 33 progress)": [ + [ + 30, + "t9", + "(function process function object object object object object)" + ], + [ + 159, + "t9", + "(function process function object object object object object)" + ], + [ + 288, + "t9", + "(function process function object object object object object)" + ], + [ + 417, + "t9", + "(function process function object object object object object)" + ], + [ + 546, + "t9", + "(function process function object object object object object)" + ], + [ + 675, + "t9", + "(function process function object object object object object)" + ], + [35, "a0", "manipy"], + [38, "v1", "manipy"], + [50, "v1", "manipy"], + [98, "v1", "manipy"], + [164, "a0", "manipy"], + [167, "v1", "manipy"], + [179, "v1", "manipy"], + [227, "v1", "manipy"], + [293, "a0", "manipy"], + [296, "v1", "manipy"], + [308, "v1", "manipy"], + [356, "v1", "manipy"], + [422, "a0", "manipy"], + [425, "v1", "manipy"], + [437, "v1", "manipy"], + [485, "v1", "manipy"], + [551, "a0", "manipy"], + [554, "v1", "manipy"], + [566, "v1", "manipy"], + [614, "v1", "manipy"], + [680, "a0", "manipy"], + [683, "v1", "manipy"], + [695, "v1", "manipy"], + [743, "v1", "manipy"] + ], + + "fuel-cell-progress-hud-orbit-callback": [ + [[0, 199], "s5", "progress"], + [4, "f0", "float"] + ], + + "(method 7 progress)": [[16, "a2", "pointer"]], + + "(method 17 progress)": [ + [[466, 471], "v1", "dma-packet"], + [[154, 159], "v1", "dma-packet"] + ], + + "(post progress-debug)": [ + [[61, 66], "v1", "dma-packet"], + [[108, 113], "v1", "dma-packet"], + [[153, 158], "v1", "dma-packet"], + [[198, 203], "v1", "dma-packet"] + ], + + "(method 23 progress)": [[103, "v1", "float"]], + + "(post progress-normal)": [[416, "a0", "float"]], + + "(method 53 progress)": [[[0, 999], "gp", "progress-screen"]], + "(method 35 progress)": [[38, "s4", "game-text-id"]], + "(method 43 progress)": [[45, "s4", "game-text-id"]], + "(method 38 progress)": [[58, "a1", "game-text-id"]], + + "draw-percent-bar": [[[33, 38], "v1", "dma-packet"]], + + "(method 11 fact-info-target)": [ + [135, "v1", "target"], + [148, "v1", "collide-shape"], + [258, "v1", "target"], + [272, "v1", "target"], + [287, "v1", "target"], + [298, "v1", "target"] + ], + + "(method 7 process)": [ + [[120, 124], "a0", "basic"], + [[127, 130], "a0", "basic"], + [47, "v1", "connection"], + [57, "v1", "connection"], + [[47, 88], "v1", "connection"] + ], + + "(anon-function 7 game-info)": [[2, "v1", "collide-shape"]], + + "(method 24 game-info)": [ + [112, "s3", "pointer"], + [[113, 165], "a0", "game-save-tag"], + [[148, 166], "s2", "game-save-tag"], + [[148, 168], "s4", "game-save-tag"], + [[171, 221], "a0", "game-save-tag"], + [[234, 240], "a0", "game-save-tag"], + [[253, 276], "a0", "game-save-tag"], + [[283, 302], "a0", "game-save-tag"], + [[319, 324], "a1", "game-save-tag"], + [[342, 348], "a1", "game-save-tag"], + [[395, 468], "a0", "game-save-tag"], + [[480, 488], "a0", "game-save-tag"], + [[500, 506], "a0", "game-save-tag"], + [[521, 528], "a0", "game-save-tag"], + [[543, 650], "a0", "game-save-tag"], + // [329, "a0", "pointer"], + // [338, "a0", "pointer"], + // [[173, 230], "a0", "game-save-tag"], + [252, "a0", "(pointer int32)"], + [654, "a0", "pointer"] + ], + + "auto-save-post": [[138, "t9", "(function object string object none)"]], + + "target-compute-pole": [ + [12, "s4", "swingpole"], + [21, "s4", "swingpole"], + [24, "s4", "swingpole"], + [30, "s4", "swingpole"], + [33, "s4", "swingpole"], + [76, "s4", "swingpole"], + [85, "s4", "swingpole"], + [87, "s4", "swingpole"] + ], + + "(method 10 target)": [[[10, 13], "t9", "(function process-drawable none)"]], + + "draw-history": [[[99, 101], "v1", "int"]], + + "(method 9 attack-info)": [ + [82, "v1", "process-drawable"], + [87, "s3", "process-drawable"], + [89, "v1", "process-drawable"], + [118, "a0", "process-drawable"] + ], + + "ground-tween-update": [ + [16, "f1", "float"], + [20, "f2", "float"], + [34, "f0", "float"], + [38, "f1", "float"] + ], + + "(method 32 evilbro)": [[20, "v1", "handle"]], + + "(code idle evilbro)": [ + [27, "v1", "art-joint-anim"], + [84, "v1", "float"], + [171, "v1", "float"] + ], + + "all-texture-tweak-adjust": [[[35, 44], "s0", "adgif-shader"]], + + "build-instance-list": [ + [30, "v1", "drawable-tree-instance-shrub"], + [61, "v1", "drawable-tree-instance-tie"] + ], + + "(anon-function 82 default-menu)": [ + [[12, 25], "s4", "texture-id"], + [36, "s5", "adgif-shader"] + ], + + "(anon-function 79 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 78 default-menu)": [ + [[2, 13], "v1", "texture-id"], + [[20, 29], "a1", "adgif-shader"], + [34, "v1", "texture-id"], + [42, "v1", "adgif-shader"] + ], + + "(anon-function 77 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 76 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 75 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 74 default-menu)": [ + [[2, 13], "v1", "texture-id"], + [[20, 29], "a1", "adgif-shader"], + [34, "v1", "texture-id"], + [42, "v1", "adgif-shader"] + ], + + "(anon-function 73 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 72 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 71 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 70 default-menu)": [ + [[2, 13], "v1", "texture-id"], + [[20, 29], "a1", "adgif-shader"], + [34, "v1", "texture-id"], + [42, "v1", "adgif-shader"] + ], + + "(anon-function 69 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 68 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 67 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 66 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 65 default-menu)": [ + [[3, 13], "v1", "texture-id"], + [[20, 28], "a1", "adgif-shader"], + [33, "v1", "texture-id"], + [41, "v1", "adgif-shader"] + ], + + "(anon-function 64 default-menu)": [ + [[2, 13], "v1", "texture-id"], + [[20, 29], "a1", "adgif-shader"], + [34, "v1", "texture-id"], + [42, "v1", "adgif-shader"] + ], + + "(anon-function 63 default-menu)": [ + [[2, 13], "v1", "texture-id"], + [[20, 29], "a1", "adgif-shader"], + [34, "v1", "texture-id"], + [42, "v1", "adgif-shader"] + ], + + "build-continue-menu": [ + [4, "v1", "symbol"], + [[5, 15], "v1", "level-load-info"] + ], + + "(method 26 basebutton)": [[31, "v1", "art-joint-anim"]], + + "debug-menu-item-var-make-float": [ + [30, "t9", "(function int debug-menu-msg float float int)"] + ], + + "entity-remap-names": [ + [33, "a1", "int"], + [39, "a2", "int"] + ], + + "process-status-bits": [[[15, 59], "s3", "process-drawable"]], + + "(method 13 level-group)": [[[56, 61], "a0", "entity-actor"]], + + "(method 24 entity)": [[[39, 45], "a0", "entity-actor"]], + + "(method 23 level-group)": [ + [53, "a0", "entity-actor"], + [57, "v1", "entity-actor"], + [[29, 31], "v0", "(inline-array vector)"] + ], + + "(method 24 level-group)": [ + [51, "v1", "entity-actor"], + [[55, 57], "s1", "(inline-array vector)"] + ], + + "init-entity": [ + [31, "t9", "(function process function process entity none)"] + ], + + "(method 19 bsp-header)": [ + [[53, 63], "s2", "process"], + [74, "s2", "part-tracker"], + [[104, 122], "v1", "process-drawable"], + [[129, 148], "v1", "process-drawable"], + [[123, 127], "a0", "process-drawable"] + ], + + "(method 3 entity)": [[7, "t9", "(function entity entity)"]], + + "(method 3 entity-actor)": [ + [7, "t9", "(function entity-actor entity-actor)"] + ], + + "(method 10 drawable-group)": [ + [19, "s5", "drawable-group"] + ], + + "(method 15 drawable-group)": [ + [19, "s5", "drawable-group"] + ], + + "(method 14 level-group)": [ + [[54, 164], "s1", "process-drawable"], + [[319, 342], "s0", "process-drawable"], + [368, "v1", "(pointer process-drawable)"], + [[384, 494], "s5", "process-drawable"] + ], + + "(method 22 level-group)": [[[28, 30], "v0", "(inline-array vector)"]], + + "expand-vis-box-with-point": [[10, "v0", "(inline-array vector)"]], + + "(method 28 entity-ambient)": [[79, "v1", "int"]], + + "(method 27 entity-ambient)": [[[15, 250], "s5", "symbol"]], + + "cam-master-effect": [[[0, 999], "s6", "camera-master"]], + + "birth-func-vector-orient": [[[7, 24], "s3", "sprite-vec-data-2d"]], + + "process-drawable-burn-effect": [ + [28, "a0", "process-drawable"], + [105, "v1", "process-drawable"], + [49, "a0", "process-drawable"], + [64, "a0", "process-drawable"] + ], + + "process-drawable-random-point!": [[[28, 40], "s4", "collide-shape"]], + + "(anon-function 0 dark-eco-pool)": [[2, "v1", "state"]], + + "(method 25 dark-eco-pool)": [ + [ + 22, + "t9", + "(function res-lump symbol symbol float structure (pointer res-tag) pointer object)" + ] + ], + + "(top-level-login beach-rocks)": [[78, "v1", "state"]], + + "(method 7 beach-rock)": [ + [5, "v1", "int"], + [10, "v1", "int"], + [19, "t9", "(function process-drawable int none)"] + ], + + "(method 10 beach-rock)": [[21, "t9", "(function process-drawable none)"]], + + "(code falling beach-rock)": [ + [138, "gp", "handle"], + [150, "gp", "handle"], + [[158, 165], "s5", "handle"] + ], + + "(method 11 beach-rock)": [[77, "v1", "int"]], + + "(anon-function 27 projectiles)": [ + [27, "s4", "collide-shape"], + [36, "s4", "collide-shape"] + ], + + "projectile-update-velocity-space-wars": [[60, "a0", "target"]], + + "projectile-init-by-other": [ + [70, "v1", "process-drawable"], + [77, "v1", "process-drawable"] + ], + + "(method 24 projectile-yellow)": [ + [[81, 999], "s5", "sound-rpc-set-param"], + [99, "gp", "process-drawable"], + [102, "gp", "process-drawable"] + ], + + "(method 28 projectile-yellow)": [ + [26, "a0", "target"], + [118, "a1", "target"] + ], + + "(method 27 projectile-blue)": [ + [51, "v1", "process-mask"], + [87, "v1", "process-drawable"] + ], + + "spawn-projectile-blue": [ + [ + 69, + "s2", + "(function process function object object object object object object)" + ] + ], + + "(method 28 projectile-blue)": [[27, "v1", "process-drawable"]], + + "(method 27 projectile-yellow)": [[70, "v1", "process-mask"]], + + "manipy-init": [[143, "a0", "collide-shape"]], + + "forall-particles-with-key-runner": [ + [32, "s3", "(inline-array sparticle-cpuinfo)"], + [42, "s3", "(inline-array sparticle-cpuinfo)"] + ], + + "(trans plat-button-move-downward jungle-elevator)": [ + [11, "v0", "(state plat-button)"] + ], + + "(code plat-button-at-end jungle-elevator)": [ + [43, "t9", "(function none :behavior plat-button)"] + ], + + "(code bouncer-fire)": [[17, "v1", "art-joint-anim"]], + + "(method 39 hopper)": [[16, "t9", "(function nav-enemy none)"]], + + "(code nav-enemy-idle hopper)": [ + [16, "v1", "art-joint-anim"], + [70, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-patrol hopper)": [ + [34, "v1", "art-joint-anim"], + [105, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-chase hopper)": [ + [34, "v1", "art-joint-anim"], + [105, "v1", "art-joint-anim"] + ], + + "(method 39 junglefish)": [[12, "t9", "(function nav-enemy none)"]], + + "(code nav-enemy-patrol junglefish)": [ + [27, "v1", "art-joint-anim"], + [107, "v1", "art-joint-anim"], + [169, "v1", "art-joint-anim"], + [251, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-attack junglefish)": [[14, "v1", "art-joint-anim"]], + + "(code nav-enemy-victory junglefish)": [ + [14, "v1", "art-joint-anim"], + [64, "v1", "art-joint-anim"] + ], + + "(method 32 sequenceB)": [ + [177, "s3", "babak"], + [186, "s3", "babak"], + [236, "s3", "babak"], + [245, "s3", "babak"] + ], + + "(event play-anim sequenceB)": [ + [98, "gp", "evilbro"], + [107, "gp", "evilbro"], + [289, "gp", "evilsis"], + [298, "gp", "evilsis"] + ], + + "sequenceC-can-trans-hook": [[12, "v1", "process-taskable"]], + + "(anon-function 7 sidekick-human)": [ + [2, "v1", "process-taskable"], + [10, "v1", "process-taskable"] + ], + + "(code idle assistant-firecanyon)": [ + [33, "v1", "float"], + [55, "v1", "float"], + [139, "v1", "float"], + [157, "v1", "art-joint-anim"], + [213, "v1", "float"], + [295, "v1", "art-joint-anim"], + [343, "v1", "float"], + [424, "v1", "float"], + [446, "v1", "float"], + [530, "v1", "float"], + [548, "v1", "art-joint-anim"], + [604, "v1", "float"], + [686, "v1", "art-joint-anim"], + [734, "v1", "float"], + [756, "v1", "float"] + ], + + "(method 32 sage-bluehut)": [ + [44, "v1", "float"], + [63, "s5", "assistant-bluehut"] + ], + + "(method 47 sage-bluehut)": [ + [18, "gp", "assistant-bluehut"], + [23, "gp", "assistant-bluehut"] + ], + + "(method 43 sage-bluehut)": [[19, "v1", "float"]], + + "(code idle sage-bluehut)": [ + [34, "v1", "float"], + [137, "v1", "art-joint-anim"] + ], + + "(code idle flutflut-bluehut)": [ + [33, "v1", "float"], + [187, "v1", "art-joint-anim"], + [243, "v1", "float"], + [329, "v1", "art-joint-anim"] + ], + + "(method 39 sharkey)": [[71, "t9", "(function nav-enemy none)"]], + + "(code nav-enemy-patrol sharkey)": [[27, "v1", "art-joint-anim"]], + + "(code nav-enemy-attack sharkey)": [[144, "v1", "art-joint-anim"]], + + "(code nav-enemy-chase sharkey)": [[40, "v1", "art-joint-anim"]], + + "(code nav-enemy-stop-chase sharkey)": [[22, "v1", "art-joint-anim"]], + + "(code nav-enemy-victory sharkey)": [[24, "v1", "art-joint-anim"]], + + "(code nav-enemy-chase lurkercrab)": [ + [17, "v1", "art-joint-anim"], + [338, "v1", "art-joint-anim"], + [388, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-patrol lurkercrab)": [ + [21, "v1", "art-joint-anim"], + [77, "v1", "art-joint-anim"], + [191, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-notice lurkerpuppy)": [[24, "v1", "art-joint-anim"]], + + "(code nav-enemy-victory lurkerpuppy)": [[20, "v1", "art-joint-anim"]], + + "(code nav-enemy-give-up lurkerpuppy)": [ + [18, "v1", "art-joint-anim"], + [76, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-chase lurkerpuppy)": [ + [25, "v1", "art-joint-anim"], + [111, "v1", "art-joint-anim"] + ], + + "static-screen-init-by-other": [ + [32, "s3", "sparticle-launch-group"], + [35, "s3", "sparticle-launch-group"] + ], + + "(code target-demo)": [ + [66, "v1", "handle"], + [69, "v1", "handle"], + [96, "v1", "handle"], + [99, "v1", "handle"], + [126, "v1", "handle"], + [163, "v1", "handle"], + [196, "v1", "handle"], + [229, "v1", "handle"], + [262, "v1", "handle"], + [293, "v1", "handle"], + [323, "v1", "handle"], + [357, "v1", "handle"], + [390, "v1", "handle"], + [423, "v1", "handle"], + [456, "v1", "handle"], + [487, "v1", "handle"], + [518, "v1", "handle"], + [548, "v1", "handle"], + [578, "v1", "handle"], + [129, "v1", "handle"], + [166, "v1", "handle"], + [199, "v1", "handle"], + [232, "v1", "handle"], + [261, "v1", "handle"], + [265, "v1", "handle"], + [296, "v1", "handle"], + [298, "v1", "handle"], + [326, "v1", "handle"], + [360, "v1", "handle"], + [393, "v1", "handle"], + [426, "v1", "handle"], + [459, "v1", "handle"], + [490, "v1", "handle"], + [521, "v1", "handle"], + [551, "v1", "handle"], + [581, "v1", "handle"] + ], + + "target-has-all-the-cells?": [[17, "v1", "float"]], + + "(code open final-door)": [ + [13, "v1", "art-joint-anim"], + [66, "v1", "art-joint-anim"] + ], + + "(code idle powercellalt)": [[8, "a1", "process-drawable"]], + + "(code target-final-door)": [ + [85, "gp", "handle"], + [105, "gp", "handle"], + [117, "gp", "handle"], + [133, "s1", "process-drawable"], + [200, "s1", "process-drawable"] + ], + + "(event open final-door)": [ + [4, "v1", "float"], + [6, "v1", "float"] + ], + + "(code nav-enemy-chase aphid)": [ + [42, "v1", "art-joint-anim"], + [168, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-stare aphid)": [ + [34, "v1", "art-joint-anim"], + [160, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-give-up aphid)": [ + [43, "v1", "art-joint-anim"], + [101, "v1", "art-joint-anim"] + ], + + "voicebox-track": [[4, "a0", "target"]], + + "(method 27 plat-button)": [[37, "v1", "art-joint-anim"]], + + "(method 11 plat-button)": [[17, "v1", "vector"]], + + "(trans plat-button-move-downward plat-button)": [ + [[92, 999], "gp", "sound-rpc-set-param"] + ], + + "(trans plat-button-move-upward plat-button)": [ + [[92, 999], "gp", "sound-rpc-set-param"] + ], + + "(anon-function 7 plat-eco)": [[22, "v1", "target"]], + + "drop-plat-set-fade": [[7, "v1", "process-drawable"]], + + "(code drop-plat-spawn)": [[3, "v1", "process-drawable"]], + + "(code drop-plat-rise)": [ + [10, "v1", "process-drawable"], + [24, "v1", "process-drawable"], + [45, "v1", "process-drawable"], + [85, "v1", "process-drawable"] + ], + + "(post drop-plat-rise)": [[12, "v1", "process-drawable"]], + + "(code drop-plat-drop)": [ + [2, "v1", "process-drawable"], + [85, "v1", "process-drawable"] + ], + + "(post drop-plat-drop)": [[12, "v1", "process-drawable"]], + + "drop-plat-init-by-other": [[22, "v1", "process-drawable"]], + + "citb-drop-plat-drop-children": [[[23, 29], "a0", "drop-plat"]], + + "citb-drop-plat-spawn-children": [ + [98, "t9", "(function process function vector uint uint int)"] + ], + + "(method 11 citb-drop-plat)": [ + [24, "v1", "(pointer int32)"], + [26, "v1", "(pointer int32)"] + ], + + "(code plat-flip-idle)": [ + [62, "v1", "art-joint-anim"], + [91, "v1", "art-joint-anim"], + [132, "v1", "art-joint-anim"] + ], + + "(method 11 plat-flip)": [ + ["_stack_", 16, "res-tag"], + ["_stack_", 32, "res-tag"], + ["_stack_", 48, "res-tag"], + [147, "v1", "(pointer float)"], + [192, "v1", "(pointer float)"] + ], + + "(method 27 square-platform)": [[[26, 33], "a0", "water-vol"]], + + "(method 27 wedge-plat)": [ + [4, "v1", "process-drawable"], + [10, "f0", "float"], + [40, "f26", "float"], + [50, "f26", "float"] + ], + + "(method 27 wedge-plat-outer)": [ + [4, "v1", "process-drawable"], + [10, "f0", "float"], + [40, "f26", "float"], + [50, "f26", "float"] + ], + + "(code plunger-lurker-plunge)": [ + [[76, 299], "s5", "othercam"], + [80, "gp", "handle"], + [88, "gp", "handle"], + [109, "gp", "handle"], + [176, "gp", "handle"], + [151, "gp", "handle"], + [164, "gp", "handle"], + [188, "gp", "handle"] + ], + + "(code plunger-lurker-flee)": [ + [10, "v1", "art-joint-anim"], + [60, "v1", "art-joint-anim"] + ], + + "(code plunger-lurker-idle)": [[10, "v1", "art-joint-anim"]], + + "(code flying-lurker-idle)": [[92, "v1", "art-joint-anim"]], + + "(code flying-lurker-fly)": [ + [56, "v1", "art-joint-anim"], + [110, "v1", "float"] + ], + + "(code flying-lurker-start)": [[36, "v1", "float"]], + + "(method 18 collide-cache)": [ + [44, "v1", "collide-shape-prim-sphere"], + [16, "s3", "collide-cache-prim"], + [21, "s3", "collide-cache-prim"], + [25, "s3", "collide-cache-prim"], + [43, "s3", "collide-cache-prim"], + [62, "s3", "(inline-array collide-cache-prim)"] + ], + + "flying-lurker-play-intro": [ + [[106, 299], "s5", "othercam"], + [110, "gp", "handle"], + [118, "gp", "handle"], + [139, "gp", "handle"], + [160, "gp", "handle"], + [173, "gp", "handle"], + [207, "gp", "handle"], + [219, "gp", "handle"] + ], + + "clone-anim-once": [ + [[19, 73], "s5", "process-drawable"], + [50, "s4", "collide-shape"], + [109, "v1", "manipy"] + ], + + "level-hint-task-process": [["_stack_", 16, "res-tag"]], + + "kill-current-level-hint": [[[13, 33], "s4", "level-hint"]], + + "level-hint-init-by-other": [ + [[54, 75], "a0", "string"], + [93, "a0", "string"] + ], + + "(method 17 drawable-inline-array-ambient)": [ + [1, "v1", "drawable-ambient"], + [4, "v1", "drawable-ambient"] + ], + + "ambient-type-sound-loop": [ + [5, "a0", "symbol"], + [[24, 35], "s3", "(pointer res-tag)"] + ], + + "ambient-type-light": [ + [38, "v1", "(inline-array vector)"], + [43, "v1", "(inline-array vector)"] + ], + "ambient-type-dark": [ + [38, "v1", "(inline-array vector)"], + [43, "v1", "(inline-array vector)"] + ], + "ambient-type-weather-off": [ + [38, "v1", "(inline-array vector)"], + [43, "v1", "(inline-array vector)"] + ], + + "level-hint-displayed?": [ + [[4, 7], "a0", "level-hint"], + [12, "a0", "level-hint"], + [14, "a0", "level-hint"] + ], + + "ambient-type-sound": [ + [21, "v1", "(pointer float)"], + [28, "v1", "(pointer float)"], + ["_stack_", 112, "res-tag"], + [57, "v0", "symbol"] + ], + "forall-particles-runner": [ + [[19, 28], "s4", "sparticle-cpuinfo"], + [34, "s4", "pointer"], + [35, "s3", "pointer"] + ], + + "(method 2 sparticle-cpuinfo)": [[14, "f0", "float"]], + + "sp-kill-particle": [ + [7, "a1", "uint"], + [7, "v1", "uint"] + ], + + "sparticle-track-root": [[2, "v1", "process-drawable"]], + + "sparticle-track-root-prim": [ + [2, "v1", "process-drawable"], + [3, "v1", "collide-shape"] + ], + + "sp-orbiter": [[[73, 82], "v1", "sprite-vec-data-2d"]], + + "finish-background": [ + [249, "a0", "terrain-context"], + [297, "a0", "terrain-context"], + [307, "a0", "terrain-context"], + [355, "a0", "terrain-context"], + [365, "a0", "terrain-context"], + [451, "a0", "terrain-context"], + [461, "a0", "terrain-context"], + [32, "a0", "terrain-context"], + [180, "a0", "terrain-context"], + [188, "a0", "terrain-context"], + [199, "a0", "terrain-context"], + [238, "a0", "terrain-context"], + [288, "a0", "terrain-context"], + [346, "a0", "terrain-context"], + [404, "a0", "terrain-context"], + [442, "a0", "terrain-context"], + [531, "a0", "terrain-context"], + [534, "a0", "terrain-context"], + [[598, 603], "v1", "dma-packet"] + ], + + "(method 11 drawable-inline-array-node)": [[[1, 6], "v1", "drawable"]], + + "(method 12 drawable-inline-array-node)": [[[1, 6], "v1", "drawable"]], + + "(method 13 drawable-inline-array-node)": [[[1, 6], "v1", "drawable"]], + + "(method 17 drawable-inline-array-node)": [[[1, 6], "v1", "drawable"]], + + "(code nav-enemy-patrol babak)": [ + [25, "v1", "art-joint-anim"], + [79, "t9", "(function none)"] + ], + + "(code nav-enemy-chase babak)": [[55, "v1", "art-joint-anim"]], + + "(code nav-enemy-stare babak)": [[154, "v1", "art-joint-anim"]], + + "(code nav-enemy-give-up babak)": [ + [43, "v1", "art-joint-anim"], + [101, "v1", "art-joint-anim"] + ], + + "(method 33 process-taskable)": [[15, "s5", "spool-anim"]], + + "(method 51 process-taskable)": [[18, "v1", "spool-anim"]], + + "(method 35 process-taskable)": [[15, "s5", "spool-anim"]], + "(method 37 process-taskable)": [[15, "s5", "spool-anim"]], + + "process-taskable-play-anim-code": [ + [68, "gp", "spool-anim"], + [255, "gp", "art-joint-anim"] + ], + + "(event play-anim process-taskable)": [ + [19, "a1", "float"], + [24, "a0", "float"] + ], + + "(event be-clone process-taskable)": [ + [19, "a1", "float"], + [24, "a0", "float"] + ], + + "(event othercam-running)": [[23, "v1", "process-taskable"]], + + "(code nav-enemy-idle babak-with-cannon)": [[22, "v1", "art-joint-anim"]], + + "(code babak-run-to-cannon)": [[14, "v1", "art-joint-anim"]], + + "(code babak-with-cannon-jump-onto-cannon)": [[118, "v1", "art-joint-anim"]], + + "(code babak-with-cannon-jump-off-cannon)": [[28, "v1", "art-joint-anim"]], + + "(trans nav-enemy-die babak-with-cannon)": [[40, "v0", "(state nav-enemy)"]], + + "(enter othercam-running)": [ + [50, "gp", "process-taskable"], + [53, "gp", "process-taskable"] + ], + + "(code othercam-running)": [ + [14, "s2", "process-taskable"], + [18, "s2", "process-taskable"], + [24, "s2", "process-taskable"], + [38, "s2", "process-taskable"], + [47, "s2", "process-taskable"] + ], + + "(method 10 gui-query)": [ + [[84, 88], "v1", "dma-packet"], + [[131, 135], "v1", "dma-packet"] + ], + + "(code yakow-idle)": [ + [46, "v1", "art-joint-anim"], + [102, "v1", "art-joint-anim"] + ], + + "(code yakow-graze)": [ + [73, "v1", "art-joint-anim"], + [131, "v1", "art-joint-anim"] + ], + + "(code yakow-graze-kicked)": [[10, "v1", "art-joint-anim"]], + + "(code yakow-kicked)": [[81, "v1", "art-joint-anim"]], + + "(method 7 fishermans-boat)": [ + [20, "t9", "(function rigid-body-platform int rigid-body-platform)"] + ], + + "(code muse-idle)": [ + [35, "v1", "art-joint-anim"], + [87, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-chase muse)": [[35, "v1", "art-joint-anim"]], + + "(code nav-enemy-jump-land muse)": [[31, "v1", "art-joint-anim"]], + + "(code muse-caught)": [ + [50, "v0", "vector"], + [306, "gp", "handle"], + [321, "gp", "handle"] + ], + + "(code nav-enemy-idle bonelurker)": [ + [5, "t9", "(function none :behavior bonelurker)"] + ], + + "(code nav-enemy-patrol bonelurker)": [ + [7, "t9", "(function none :behavior bonelurker)"] + ], + + "(code nav-enemy-chase bonelurker)": [ + [60, "v1", "art-joint-anim"], + [108, "v1", "art-joint-anim"], + [171, "v1", "art-joint-anim"], + [220, "v1", "art-joint-anim"], + [277, "v1", "art-joint-anim"], + [334, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-stare bonelurker)": [[130, "v1", "art-joint-anim"]], + + "(code bonelurker-stun)": [[29, "v1", "art-joint-anim"]], + + "(code nav-enemy-give-up bonelurker)": [ + [43, "v1", "art-joint-anim"], + [93, "v1", "art-joint-anim"], + [143, "v1", "art-joint-anim"], + [201, "v1", "art-joint-anim"] + ], + + "(method 32 assistant-bluehut)": [ + [104, "v1", "float"], + [162, "v1", "manipy"], + [255, "v1", "float"] + ], + + "(method 47 assistant-bluehut)": [ + [21, "s5", "sage-bluehut"], + [28, "s5", "sage-bluehut"], + [50, "s5", "sage-bluehut"], + [53, "s5", "sage-bluehut"] + ], + + "(method 43 assistant-bluehut)": [[19, "v1", "float"]], + + "check-drop-level-assistant-bluehut": [[17, "v1", "float"]], + + "(code idle assistant-bluehut)": [ + [31, "v1", "art-joint-anim"], + [83, "v1", "float"], + [104, "v1", "art-joint-anim"], + [161, "v1", "float"], + [261, "v1", "art-joint-anim"], + [317, "v1", "float"], + [554, "v1", "art-joint-anim"] + ], + + "assistant-levitator-blue-beam": [[15, "v1", "fireboulder"]], + + "(code idle assistant-levitator)": [ + [32, "v1", "art-joint-anim"], + [91, "v1", "float"], + [173, "v1", "art-joint-anim"], + [229, "v1", "float"], + [311, "v1", "art-joint-anim"] + ], + + "(event square-platform-lowered)": [[8, "a0", "square-platform-master"]], + + "(event square-platform-master-idle)": [[6, "a0", "square-platform-button"]], + + "(method 7 square-platform)": [ + [24, "t9", "(function baseplat int baseplat)"] + ], + + "(method 11 square-platform)": [ + ["_stack_", 16, "res-tag"], + ["_stack_", 32, "res-tag"], + [165, "v1", "(pointer float)"] + ], + + "(enter square-platform-master-activate)": [ + [51, "a0", "sunkencam"], + [84, "v1", "sunkencam"], + [119, "a0", "sunkencam"], + [152, "v1", "sunkencam"] + ], + + "(code qbert-plat-on-mimic)": [ + [13, "gp", "(pointer rigid-body-platform)"], + [21, "gp", "(pointer rigid-body-platform)"], + [27, "gp", "(pointer rigid-body-platform)"] + ], + + "(method 32 qbert-plat)": [[[4, 10], "a0", "qbert-plat-master"]], + + "(post rigid-body-platform-float qbert-plat)": [ + [3, "t9", "(function none :behavior qbert-plat)"] + ], + + "(method 23 qbert-plat)": [ + [9, "t9", "(function rigid-body-platform float none)"] + ], + + "(code keg-on-paddle)": [ + [5, "a0", "keg"], // i have learned that parent does not always equal the parent type! + [16, "v1", "process-drawable"] + ], + + "(code keg-paddle-to-path)": [ + [8, "v1", "process-drawable"], + [28, "v1", "process-drawable"] + ], + + "(code keg-on-path)": [ + [13, "v1", "keg-conveyor-paddle"], + [24, "v1", "keg-conveyor-paddle"], + [45, "v1", "keg-conveyor-paddle"], + [72, "v1", "keg-conveyor-paddle"], + [81, "v1", "keg-conveyor-paddle"] + ], + + "(code keg-in-chute)": [ + [2, "v1", "process-drawable"], + [9, "v1", "process-drawable"] + ], + + "keg-init-by-other": [[142, "v1", "process-drawable"]], + + "(method 7 keg-conveyor)": [ + [14, "t9", "(function process-drawable int process-drawable)"] + ], + + "(method 7 swamp-bat)": [ + [26, "t9", "(function process-drawable int process-drawable)"] + ], + + "(code swamp-bat-slave-die)": [[21, "v1", "swamp-bat"]], + + // these casts should not be required + "swamp-bat-check-slave-paths-match?": [ + [3, "a1", "swamp-bat-slave"], + [7, "a1", "swamp-bat-slave"] + ], + + "(method 39 swamp-rat)": [[37, "t9", "(function nav-enemy none)"]], + + "(code nav-enemy-patrol swamp-rat)": [[23, "v1", "art-joint-anim"]], + + "(code nav-enemy-stare swamp-rat)": [[26, "v1", "art-joint-anim"]], + + "(code nav-enemy-give-up swamp-rat)": [ + [14, "v1", "art-joint-anim"], + [72, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-attack swamp-rat)": [[14, "v1", "art-joint-anim"]], + + "(code swamp-rat-spawn)": [[119, "v1", "art-joint-anim"]], + + "(code spiderwebs-bounce)": [[80, "v1", "art-joint-anim"]], + + "(method 39 baby-spider)": [[37, "t9", "(function nav-enemy none)"]], + + "(code baby-spider-hatching)": [[14, "v1", "art-joint-anim"]], + + "(code nav-enemy-attack baby-spider)": [[14, "v1", "art-joint-anim"]], + + "(code nav-enemy-give-up baby-spider)": [ + [14, "v1", "art-joint-anim"], + [72, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-patrol baby-spider)": [[23, "v1", "art-joint-anim"]], + + "(code nav-enemy-notice baby-spider)": [[24, "v1", "art-joint-anim"]], + + "(code nav-enemy-stare baby-spider)": [[26, "v1", "art-joint-anim"]], + + "(method 24 mother-spider-proj)": [ + [[11, 46], "s5", "sound-rpc-set-param"], + [30, "s4", "process-drawable"], + [33, "s4", "process-drawable"] + ], + + "(method 23 exit-chamber)": [[107, "a1", "fuel-cell"]], + + "(code exit-chamber-rise)": [[15, "v1", "fuel-cell"]], + + "(method 25 sunken-water)": [ + [121, "v1", "uint"], + [126, "v1", "uint"] + ], + + "(code sunkenfisha-idle)": [[10, "v1", "art-joint-anim"]], + + "(method 27 sunkenfisha)": [ + ["_stack_", 16, "res-tag"], + ["_stack_", 32, "res-tag"], + ["_stack_", 48, "res-tag"], + [40, "v0", "(pointer float)"], + [137, "v0", "(pointer float)"], + [174, "v0", "(pointer float)"] + ], + + "(method 43 assistant-villagec)": [[19, "v1", "float"]], + + "(code idle assistant-villagec)": [ + [32, "v1", "art-joint-anim"], + [89, "v1", "float"], + [176, "v1", "float"] + ], + + "(method 32 sage-villagec)": [[278, "v1", "float"]], + + "(method 43 sage-villagec)": [[19, "v1", "float"]], + + "(method 20 cave-trap)": [ + [77, "s2", "process-drawable"], + [95, "s2", "process-drawable"], + [181, "s3", "process-drawable"], + [221, "s3", "process-drawable"] + ], + + "(method 7 cave-trap)": [ + [14, "t9", "(function process-drawable int process-drawable)"] + ], + + "(method 57 ice-cube)": [[16, "v1", "collide-shape-prim-sphere"]], + + "(code yeti-slave-appear-jump-up)": [[14, "v1", "art-joint-anim"]], + + "(code yeti-slave-appear-land)": [[14, "v1", "art-joint-anim"]], + + "(code nav-enemy-chase yeti-slave)": [[55, "v1", "art-joint-anim"]], + + "(code nav-enemy-stare yeti-slave)": [[154, "v1", "art-joint-anim"]], + + "(code nav-enemy-give-up yeti-slave)": [ + [43, "v1", "art-joint-anim"], + [101, "v1", "art-joint-anim"] + ], + + "(code nav-enemy-patrol yeti-slave)": [ + [25, "v1", "art-joint-anim"], + [86, "v1", "art-joint-anim"], + [165, "v1", "art-joint-anim"], + [238, "v1", "art-joint-anim"] + ], + + "(method 7 yeti-slave)": [[14, "t9", "(function nav-enemy int nav-enemy)"]], + + "(method 21 yeti)": [[5, "s5", "(pointer yeti-slave)"]], + + "(code idle assistant-lavatube-start)": [ + [32, "v1", "float"], + [118, "v1", "art-joint-anim"] + ], + + "check-drop-level-maincave-drip": [[17, "v1", "float"]], + + "snow-bird-bob-func": [[3, "v1", "process-drawable"]], + + "bird-bob-func": [[3, "v1", "process-drawable"]], + + "part-tracker-track-root": [[2, "v1", "process-drawable"]], + + "sparticle-track-root-money": [[5, "v1", "process-drawable"]], + + "eco-fadeout": [[2, "v1", "process-drawable"]], + + "eco-track-root-prim-fadeout": [ + [2, "v1", "process-drawable"], + [3, "a0", "collide-shape-moving"], + [11, "v1", "process-drawable"] + ], + + "check-drop-level-sagehut": [[18, "v1", "float"]], + + "check-drop-level-training-spout-rain": [[17, "v1", "float"]], + + "check-drop-level-sagehut2": [[18, "v1", "float"]], + + "tra-bird-bob-func": [[3, "v1", "process-drawable"]], + + "(anon-function 6 relocate)": [ + [3, "a0", "int"], + [8, "a0", "int"] + ], + + "(method 7 joint-control)": [ + [7, "v1", "(inline-array joint-control-channel)"] + ], + + "(method 20 hud-money-all)": [ + [36, "a0", "process-drawable"], + [39, "v1", "process-drawable"], + [50, "v1", "process-drawable"], + [93, "v1", "process-drawable"] + ], + + "(method 20 hud-money)": [ + [35, "a0", "process-drawable"], + [38, "v1", "process-drawable"], + [49, "v1", "process-drawable"], + [92, "v1", "process-drawable"] + ], + + "(method 20 hud-fuel-cell)": [ + [100, "a0", "process-drawable"], + [103, "v1", "process-drawable"], + [114, "v1", "process-drawable"], + [157, "v1", "process-drawable"] + ], + + "part-hud-eco-timer-01-func": [ + [11, "v1", "uint"], + [15, "v1", "uint"] + ], + + "part-hud-eco-timer-02-func": [ + [11, "v1", "uint"], + [15, "v1", "uint"] + ], + + "part-hud-eco-timer-03-func": [ + [11, "v1", "uint"], + [15, "v1", "uint"] + ], + + "hide-bottom-hud": [[22, "v1", "(pointer hud)"]], + + "disable-hud": [ + [22, "a0", "(pointer hud)"], + [37, "v1", "(pointer hud)"], + [57, "v1", "(pointer hud)"] + ], + + "enable-hud": [[20, "v1", "(pointer hud)"]], + + "hide-hud-quick": [[20, "v1", "(pointer hud)"]], + + "set-hud-aspect-ratio": [[17, "v1", "(pointer hud)"]], + + "hud-hidden?": [[14, "v1", "(pointer hud)"]], + + "bottom-hud-hidden?": [[16, "v1", "(pointer hud)"]], + + "show-hud": [[31, "v1", "(pointer hud)"]], + + "fuel-cell-hud-orbit-callback": [ + [12, "s3", "hud-fuel-cell"], + [20, "s3", "hud-fuel-cell"] + ], + + "(method 15 hud-pickups)": [ + [51, "v1", "dma-packet"], + [52, "v1", "dma-packet"] + ], + + "(method 15 hud-fuel-cell)": [ + [51, "v1", "dma-packet"], + [52, "v1", "dma-packet"] + ], + + "(method 15 hud-money)": [[[50, 53], "v1", "dma-packet"]], + + "(method 15 hud-money-all)": [[[125, 128], "v1", "dma-packet"]], + + "(method 15 hud-buzzers)": [ + [58, "v1", "dma-packet"], + [59, "v1", "dma-packet"] + ], + + "update-mood-lightning": [ + [[255, 259], "s5", "process-drawable"], + [[293, 297], "s5", "process-drawable"], + [[331, 336], "s5", "process-drawable"], + [235, "v0", "sound-rpc-set-param"], + [273, "v0", "sound-rpc-set-param"], + [311, "v0", "sound-rpc-set-param"] + ], + + "battlecontroller-default-event-handler": [[9, "a0", "process-drawable"]], + + "battlecontroller-update-spawners": [ + [19, "s4", "nav-enemy"], + [57, "s4", "nav-enemy"] + ], + + "battlecontroller-spawn-creature": [ + [33, "v0", "nav-enemy"], + [[53, 136], "gp", "(pointer nav-enemy)"] + ], + + "(method 7 battlecontroller)": [ + [29, "t9", "(function process-drawable int process-drawable)"] + ], + + "(method 10 battlecontroller)": [ + [13, "t9", "(function process-drawable none)"] + ], + + "(method 27 battlecontroller)": [ + ["_stack_", 16, "res-tag"], + [182, "v0", "(pointer int32)"] + ], + + "keg-bounce-set-particle-rotation-callback": [ + [2, "v1", "(pointer process-drawable)"] + ], + + "update-time-of-day": [[46, "v0", "(array float)"]], + + "sky-make-light": [[[10, 23], "a0", "sky-sun-data"]], + + "make-sky-textures": [ + [[90, 94], "a0", "dma-packet"], + [[100, 103], "a0", "gs-gif-tag"], + [108, "a0", "(pointer gs-alpha)"], + [110, "a0", "(pointer gs-reg64)"], + [[121, 124], "v1", "dma-packet"] + ], + + "copy-cloud-texture": [ + [[2, 48], "s5", "(pointer uint128)"], + [[28, 32], "s4", "adgif-shader"] + ], + + "copy-sky-texture": [ + [[2, 48], "s5", "(pointer uint128)"], + [[28, 32], "s4", "adgif-shader"] + ], + + "render-sky-tng": [ + [[244, 262], "s2", "(inline-array sky-vertex)"], + [[34, 38], "a0", "dma-packet"], + [[44, 47], "a0", "gs-gif-tag"], + [52, "a0", "(pointer gs-zbuf)"], + [54, "a0", "(pointer gs-reg64)"], + [56, "a0", "(pointer gs-test)"], + [58, "a0", "(pointer gs-reg64)"], + [60, "a0", "(pointer gs-alpha)"], + [62, "a0", "(pointer gs-reg64)"], + [[74, 78], "a0", "dma-packet"], + [[84, 87], "a0", "gs-gif-tag"], + + [107, "s2", "(pointer gs-tex0)"], + [109, "s2", "(pointer gs-reg64)"], + [111, "s2", "(pointer gs-tex1)"], + [113, "s2", "(pointer gs-reg64)"], + [115, "s2", "(pointer gs-clamp)"], + [117, "s2", "(pointer gs-reg64)"], + [118, "s2", "(pointer uint64)"], + [120, "s2", "(pointer gs-reg64)"], + [[159, 166], "s3", "dma-packet"], + [[171, 175], "a0", "dma-packet"], + [[181, 184], "a0", "gs-gif-tag"], + + [189, "s2", "(pointer gs-alpha)"], + [191, "s2", "(pointer gs-reg64)"], + [209, "s2", "(pointer gs-tex0)"], + [211, "s2", "(pointer gs-reg64)"], + [213, "s2", "(pointer gs-tex1)"], + [215, "s2", "(pointer gs-reg64)"], + [216, "s2", "(pointer gs-clamp)"], + [218, "s2", "(pointer gs-reg64)"], + [219, "s2", "(pointer int64)"], + [221, "s2", "(pointer gs-reg64)"], + [[303, 310], "s3", "dma-packet"], + [[312, 316], "v1", "dma-packet"] + ], + + "render-sky-tri": [ + [5, "a0", "int"], + [[6, 50], "a0", "(inline-array sky-vertex)"], + [[25, 48], "a3", "(inline-array sky-vertex)"] + ], + + "render-sky-quad": [ + [[9, 32], "a0", "(inline-array sky-vertex)"], + [[33, 62], "a3", "(inline-array sky-vertex)"] + ], + + "(method 10 effect-control)": [ + [88, "v1", "collide-shape-moving"], + [143, "s3", "(pointer sparticle-launch-group)"], + [147, "s3", "sparticle-launch-group"], + [199, "s3", "sparticle-launch-group"], + [240, "s3", "basic"], + [286, "s3", "basic"], + [346, "s3", "basic"], + [367, "s3", "basic"], + [367, "s3", "basic"], + [[371, 451], "s3", "death-info"] + ], + + "(post water-vol-idle helix-dark-eco)": [ + [4, "t9", "(function none :behavior helix-dark-eco)"] + ], + + "(code helix-slide-door-close)": [[10, "v1", "art-joint-anim"]], + + "(code helix-button-startup)": [[39, "v1", "process-drawable"]], + + "(method 73 green-eco-lurker)": [[6, "a1", "touching-shapes-entry"]], + + "citb-sagecage-update-collision": [[2, "a0", "collide-shape-prim-group"]], + + "race-ring-set-particle-rotation-callback": [ + [1, "v1", "(pointer race-ring)"] + ], + + "race-ring-blue-set-particle-rotation-callback": [ + [1, "v1", "(pointer race-ring)"] + ], + + "(code race-ring-active)": [ + [242, "v1", "handle"], + [245, "v1", "handle"], + [253, "gp", "handle"], + [269, "s5", "handle"], + [272, "s5", "handle"] + ], + + "(trans race-ring-active)": [[26, "a0", "part-tracker"]], + + "(code anim-tester-process)": [ + [41, "v1", "anim-test-obj"], + [45, "v1", "anim-test-obj"], + [[40, 114], "s4", "anim-test-obj"], + [82, "v0", "anim-test-sequence"], + [119, "v0", "art-joint-anim"] + ], + + "display-list-control": [ + [[194, 197], "v1", "dma-packet"], + [[423, 426], "v1", "dma-packet"] + ], + + "anim-tester-disp-frame-num": [[[75, 78], "v1", "dma-packet"]], + + "reset-drawable-tracking": [ + [3, "gp", "target"], + [10, "gp", "target"], + [14, "gp", "target"], + [42, "gp", "target"], + [48, "gp", "target"] + ], + "reset-drawable-follow": [ + [3, "v1", "target"], + [10, "v1", "target"], + [16, "v1", "target"] + ], + "master-track-target": [ + [62, "gp", "target"], + [65, "gp", "target"], + [96, "gp", "target"], + [103, "gp", "target"], + [423, "f0", "float"] + ], + + "master-switch-to-entity": [ + ["_stack_", 16, "res-tag"], + [88, "v0", "(pointer string)"], + [233, "v1", "camera-slave"] + ], + + "master-check-regions": [[119, "v1", "connection"]], + "(anon-function 71 cam-states)": [ + [13, "a1", "pov-camera"], + [20, "v1", "pov-camera"], + [41, "v1", "pov-camera"], + [52, "v1", "pov-camera"], + [71, "a1", "pov-camera"] + ], + "(anon-function 68 cam-states)": [[13, "a1", "pov-camera"]], + "(anon-function 75 cam-states)": [ + [13, "a1", "pov-camera"], + [21, "a0", "pov-camera"] + ], + + "(event cam-master-active)": [ + [95, "gp", "matrix"], + [184, "v1", "vector"], + [240, "v1", "target"], + [280, "v1", "target"], + [457, "v1", "camera-slave"], + [511, "v1", "camera-slave"], + [524, "v0", "camera-slave"], + [560, "a0", "camera-slave"], + [570, "v1", "camera-slave"], + [629, "v1", "camera-slave"], + [679, "a0", "camera-slave"], + [690, "v1", "camera-slave"], + [771, "v1", "camera-slave"], + [875, "v1", "camera-slave"], + [928, "v1", "camera-slave"], + [947, "v1", "camera-slave"], + [966, "v1", "camera-slave"], + [994, "v1", "camera-slave"], + [999, "a0", "camera-slave"], + [1011, "a0", "camera-slave"], + [1023, "v1", "projectile"], + [1033, "a0", "camera-slave"], + [1071, "a0", "vector"], + [1371, "v1", "float"] + ], + + "(code cam-pov)": [ + [13, "a1", "pov-camera"], + [21, "a0", "pov-camera"] + ], + + "(code cam-pov-track)": [[13, "a1", "pov-camera"]], + + "(code cam-pov180)": [ + [13, "a1", "pov-camera"], + [20, "v1", "pov-camera"], + [41, "v1", "pov-camera"], + [52, "v1", "pov-camera"], + [71, "a1", "pov-camera"] + ], + + "cam-los-spline-collide": [ + [[52, 83], "s3", "(inline-array collide-cache-tri)"] + ], + + "(event cam-string)": [ + [15, "v1", "float"], + [18, "v1", "float"], + [31, "a0", "vector"], + [35, "a0", "vector"] + ], + + "cam-draw-collide-cache": [ + [[2, 13], "gp", "(inline-array collide-cache-tri)"] + ], + + "cam-los-collide": [[[50, 197], "s1", "(inline-array collide-cache-tri)"]], + + "(anon-function 1 pov-camera)": [ + [9, "v1", "float"], + [16, "v1", "float"] + ], + + "camera-fov-frame": [ + [87, "a0", "vector"], + [128, "a0", "vector"], + [169, "a0", "vector"] + ], + + "camera-sphere": [[[39, 46], "v1", "cam-dbg-scratch"]], + + "camera-line-draw": [ + [34, "a0", "cam-dbg-scratch"], + [42, "a0", "cam-dbg-scratch"] + ], + + "camera-plot-float-func": [ + [54, "v1", "cam-dbg-scratch"], + [62, "a0", "cam-dbg-scratch"], + [66, "a0", "cam-dbg-scratch"], + [103, "v1", "cam-dbg-scratch"], + [240, "v1", "cam-dbg-scratch"] + ], + + "cam-line-dma": [ + [32, "t0", "vector"], + [36, "t0", "vector"], + [45, "t0", "vector"], + [50, "t0", "vector"], + [[12, 16], "a3", "dma-packet"], + [[22, 25], "a3", "gs-gif-tag"], + [[33, 38], "a3", "(pointer uint128)"], + [[46, 52], "a1", "(pointer uint128)"], + [[60, 65], "a0", "dma-packet"], + [[65, 74], "a0", "(pointer uint64)"], + [[77, 80], "a0", "dma-packet"] + ], + + "v-slrp!": [ + [19, "v1", "(pointer float)"], + [26, "v1", "(pointer float)"] + ], + + "clmf-pos-rot": [ + [60, "a1", "int"], + [70, "a2", "symbol"], + [71, "a1", "res-tag"], + [132, "a0", "int"], + [141, "s0", "res-tag"] + ], + + "clmf-next-entity": [[38, "a0", "connection"]], + + "cam-layout-init": [[10, "v1", "connection"]], + + "clmf-save-all": [[18, "v1", "connection"]], + + "cam-layout-save-cam-rot": [[14, "v0", "vector"]], + + "cam-layout-save-campointsoffset": [[13, "v0", "vector"]], + + "cam-layout-entity-info": [ + [205, "v1", "vector"], + [495, "v1", "vector"] + ], + + "cam-layout-save-pivot": [ + [14, "v0", "vector"], + [40, "v0", "vector"] + ], + + "cam-layout-save-interesting": [ + [14, "v0", "vector"], + [40, "v0", "vector"] + ], + + "cam-layout-save-align": [ + [14, "v0", "vector"], + [40, "v0", "vector"] + ], + + "cam-layout-save-splineoffset": [[40, "v0", "vector"]], + + "cam-layout-save-cam-trans": [ + [65, "s5", "vector"], + [67, "s5", "vector"], + [69, "s5", "vector"], + [75, "s5", "vector"], + [77, "s2", "vector"], + [82, "s2", "vector"], + [84, "s2", "vector"], + [86, "s2", "vector"], + [92, "s2", "vector"], + [94, "s5", "vector"], + [95, "s5", "symbol"], + [96, "s2", "symbol"], + [97, "s2", "symbol"], + [110, "s5", "vector"], + [113, "s5", "vector"], + [115, "s5", "vector"], + [117, "s5", "vector"] + ], + + "clmf-cam-flag-toggle": [ + [119, "a0", "int"], + [124, "v1", "int"], + [138, "v0", "int"], + [153, "a0", "int"], + [158, "v1", "int"], + [172, "v0", "int"], + [195, "a0", "int"], + [200, "v1", "int"], + [214, "v0", "int"], + [233, "a0", "int"], + [238, "v1", "int"], + [252, "v0", "int"] + ], + + "clmf-cam-float-adjust": [[49, "a1", "int"]], + + "cam-layout-do-action": [ + [66, "s5", "basic"], + [74, "s5", "basic"], + [80, "s5", "(function object symbol symbol)"] + ], + + "cam-layout-function-call": [ + [11, "gp", "basic"], + [15, "gp", "(function string int basic none)"] + ], + + "cam-layout-do-menu": [ + [[130, 176], "s3", "clm-list"], + [203, "a0", "clm-item"], + [213, "v1", "clm-item"], + [228, "s3", "clm-item"], + [233, "v1", "clm-item"], + [238, "s3", "clm-item"], + [275, "s4", "clm-list"], + [277, "s4", "clm-list"], + [279, "s4", "clm-list"], + [283, "s4", "clm-list"], + [289, "s4", "clm-list"], + [291, "s4", "clm-list"], + [303, "s4", "clm-list"], + [305, "s4", "clm-list"], + [345, "s4", "clm-list"], + [347, "s4", "clm-list"], + [350, "s4", "clm-list"], + [352, "s4", "clm-list"], + [353, "s4", "clm-list"], + [356, "s4", "clm-list"], + [357, "s4", "clm-list"], + [369, "v1", "clm-item"] + ], + + "cam-layout-print": [[[21, 24], "v1", "dma-packet"]], + + "cam-layout-entity-volume-info": [ + [58, "s4", "vector"], + [59, "s4", "vector"], + [61, "s4", "(inline-array plane-volume)"] + ], + + "cam-layout-entity-volume-info-create": [ + ["_stack_", 16, "res-tag"], + [16, "v0", "(inline-array vector)"] + ], + + "clmf-cam-string": [["_stack_", 16, "res-tag"]], + + "in-cam-entity-volume?": [ + ["_stack_", 16, "res-tag"], + [22, "v1", "(inline-array vector)"], + [29, "v1", "(inline-array vector)"], + [34, "v1", "(inline-array vector)"] + ], + + "fisher-fish-move": [ + [9, "v1", "fisher"], + [21, "v1", "fisher"] + ], + + "(code fisher-fish-fall)": [ + [5, "v1", "fisher"], + [60, "v1", "fisher"], + [79, "v1", "fisher"] + ], + + "(code fisher-fish-caught)": [[169, "v1", "fisher"]], + + "(code fisher-fish-die)": [ + [35, "v1", "fisher"], + [47, "v1", "fisher"], + [90, "v1", "fisher"], + [98, "v1", "fisher"], + [112, "v1", "fisher"], + [129, "v1", "fisher"], + [137, "v1", "fisher"], + [151, "v1", "fisher"], + [165, "v1", "fisher"], + [179, "v1", "fisher"], + [193, "v1", "fisher"], + [205, "v1", "fisher"], + [209, "v1", "fisher"], + [27, "v1", "float"], + [79, "v1", "float"] + ], + + "(method 38 fisher)": [[33, "t9", "(function fisher none)"]], + + "(enter fisher-done)": [ + [137, "f0", "float"], + [148, "f0", "float"], + [213, "f0", "float"] + ], + + "fisher-spawn-ambient": [[8, "v1", "float"]], + + "(method 43 fisher)": [ + [27, "v1", "float"], + [69, "v1", "float"] + ], + + "(trans play-accept fisher)": [[101, "v0", "state"]], + + "(trans idle fisher)": [[4, "v0", "state"]], + + "(code idle fisher)": [ + [132, "v1", "art-joint-anim"], + [35, "v1", "float"] + ], + + "(code target-fishing)": [ + [163, "v1", "fisher"], + [290, "v1", "art-joint-anim"] + ], + + "(method 11 torus)": [[[5, 22], "s4", "collide-shape-prim-group"]], + + "(method 12 torus)": [ + [11, "v1", "float"], + [51, "v1", "float"] + ], + + "(code darkecobomb-countdown)": [ + [25, "v1", "art-joint-anim"], + [75, "v1", "art-joint-anim"] + ], + + "(code darkecobomb-land)": [[36, "v1", "art-joint-anim"]], + + "(code darkecobomb-idle)": [ + [10, "v1", "art-joint-anim"], + [60, "v1", "art-joint-anim"] + ], + + "redshot-particle-callback": [[2, "v1", "(pointer redshot)"]], + + "(event cam-robotboss)": [[5, "v1", "vector"]], + + "ecoclaw-handler": [[73, "v1", "vector"]], + + "(event idle silodoor)": [[4, "v1", "float"]], + + "ecoclaw-beam-particle-callback": [ + [1, "a0", "(pointer projectile)"], + [3, "a0", "(pointer projectile)"] + ], + + "(method 32 finalbosscam)": [[156, "v1", "robotboss"]], + + "(trans ecoclaw-activate)": [[30, "a0", "part-tracker"]], + + "robotboss-position": [[109, "a0", "process-drawable"]], + + "robotboss-bomb-handler": [[6, "v1", "float"]], + + "robotboss-handler": [[6, "v1", "float"]], + + "(event robotboss-red-wait)": [ + [12, "v1", "float"], + [68, "v1", "float"] + ], + + "(event robotboss-yellow-wait)": [ + [12, "v1", "float"], + [68, "v1", "float"] + ], + + "(code robotboss-white-eco-movie)": [[[188, 215], "gp", "handle"]], + + "(code robotboss-yellow-wait)": [ + [336, "v1", "float"], + [365, "v1", "float"], + [530, "v1", "art-joint-anim"] + ], + + "(code robotboss-red-wait)": [ + [153, "v1", "float"], + [287, "v1", "float"], + [339, "v1", "float"], + [500, "v1", "art-joint-anim"] + ], + + "robotboss-redshot": [ + [45, "v1", "float"], + [70, "v1", "float"] + ], + + "(event robotboss-green-wait)": [ + [39, "v1", "float"], + [95, "v1", "float"] + ], + + "(exit robotboss-yellow-wait)": [ + [50, "v1", "collide-shape-prim-group"], + [54, "v1", "collide-shape-prim-group"] + ], + + "(exit robotboss-green-wait)": [ + [50, "v1", "collide-shape-prim-group"], + [54, "v1", "collide-shape-prim-group"] + ], + + "(exit robotboss-red-wait)": [ + [50, "v1", "collide-shape-prim-group"], + [54, "v1", "collide-shape-prim-group"] + ], + + "(exit robotboss-blue-wait)": [ + [50, "v1", "collide-shape-prim-group"], + [54, "v1", "collide-shape-prim-group"] + ], + + "robotboss-redshot-fill-array": [ + [24, "v1", "float"], + [46, "v1", "float"], + [109, "v1", "float"], + [137, "v1", "float"], + [137, "v1", "float"] + ], + + "(trans robotboss-blue-wait)": [[254, "v1", "float"]], + + "(code robotboss-blue-wait)": [[14, "v1", "art-joint-anim"]], + + "(enter green-eco-lurker-appear)": [ + [12, "v1", "robotboss"], + [17, "v1", "robotboss"] + ], + + "(code green-eco-lurker-appear)": [ + [42, "v1", "art-joint-anim"], + [93, "v1", "art-joint-anim"] + ], + + "(code green-eco-lurker-appear-land)": [[74, "v1", "art-joint-anim"]], + + "(code nav-enemy-chase green-eco-lurker)": [[55, "v1", "art-joint-anim"]], + + "(code nav-enemy-patrol green-eco-lurker)": [[8, "t9", "(function none)"]], + + "(trans light-eco-child-hit-ground)": [ + [63, "v1", "light-eco-mother"], + [75, "a1", "light-eco-mother"], + [88, "a1", "light-eco-mother"] + ], + + "(event plat-path-active plat-eco-finalboss)": [[10, "v1", "float"]], + + "(method 45 sage-finalboss)": [[[40, 57], "s5", "manipy"]], + + "(method 32 sage-finalboss)": [ + [[241, 245], "v1", "manipy"], + [[309, 313], "v1", "manipy"] + ], + + "(trans play-anim sage-finalboss)": [ + [[179, 183], "a0", "manipy"], + [[216, 220], "a0", "manipy"], + [[295, 299], "a1", "manipy"], + [[334, 338], "a1", "manipy"], + [[371, 375], "a1", "manipy"], + [391, "v0", "final-door"], + [396, "v0", "final-door"] + ], + + "(method 7 sage-finalboss)": [ + [2, "v1", "(inline-array sage-finalboss-particle)"], + [6, "v1", "(inline-array sage-finalboss-particle)"], + [10, "v1", "(inline-array sage-finalboss-particle)"] + ], + + "(trans fisher-done)": [[[41, 46], "v1", "dma-packet"]], + + "load-boundary-from-template": [ + [[2, 60], "s5", "(array float)"], + [42, "a0", "pair"], + [54, "a0", "pair"] + ], + + "command-get-int":[ + [27, "gp", "bfloat"] + ], + + "command-get-float":[ + [30, "gp", "bfloat"] + ], + + "command-get-time":[ + [46, "gp", "bfloat"] + ], + + "command-get-param":[ + [125, "gp", "bfloat"] + ], + + "command-list-get-process":[ + [[78, 88], "s4", "process-drawable"] + ], + + "add-boundary-shader":[ + [[5,8], "a1", "gs-gif-tag"], + [[11, 35], "s5", "adgif-shader"] + ], + + "render-boundary":[ + [[22, 26], "a0", "dma-packet"], + [[32, 35], "a0", "gs-gif-tag"], + + [40, "a0", "(pointer gs-zbuf)"], + [42, "a0", "(pointer gs-reg64)"], + [44, "a0", "(pointer gs-test)"], + [46, "a0", "(pointer gs-reg64)"], + [48, "a0", "(pointer gs-alpha)"], + [50, "a0", "(pointer gs-reg64)"], + [[110, 117], "s2", "dma-packet"], + [[120, 123], "v1", "dma-packet"] + ], + + "real-main-draw-hook":[ + [[225, 229], "a0", "dma-packet"], + [[235, 238], "a0", "gs-gif-tag"], + [243, "a0", "(pointer gs-zbuf)"], + [245, "a0", "(pointer gs-reg64)"], + [247, "a0", "(pointer gs-test)"], + [249, "a0", "(pointer gs-reg64)"], + [251, "a0", "(pointer gs-alpha)"], + [253, "a0", "(pointer gs-reg64)"], + [[270, 273], "v1", "dma-packet"] + ], + + "(event target-racing-start)": [ + [35, "v1", "float"], + [121, "v1", "attack-info"], + [125, "v1", "attack-info"], + [130, "v1", "attack-info"], + [148, "v1", "float"], + [206, "v1", "float"], + [251, "a0", "process-drawable"] + ], + + "(anon-function 46 racer-states-FIC-LAV-MIS-OGR-ROL)": [ + [[4, 32], "v1", "target"] + ], + + "(anon-function 45 racer-states-FIC-LAV-MIS-OGR-ROL)": [ + [19, "a0", "target"], + [31, "a0", "target"], + [42, "v1", "target"] + ], + + "(code target-racing-smack)": [ + [30, "v1", "art-joint-anim"] + ], + + "(code target-racing-hit)": [ + [186, "v1", "art-joint-anim"] + ], + + "(code target-racing-death)": [ + [242, "v1", "art-joint-anim"] + ], + + "(code target-racing-get-on)": [ + [59, "s3", "racer"] + ], + + "(code target-racing-get-off-jump)": [ + [67, "s2", "racer"], + [145, "v1", "art-joint-anim"] + ], + + "(code target-racing-get-off-hit-ground)": [ + [13, "v1", "art-joint-anim"] + ], + + "(event target-racing-grab)": [ + [24, "a0", "process-drawable"] + ], + + "cam-collision-record-draw": [ + [[44, 275], "s5", "cam-collision-record"] + ], + "cam-collision-record-save": [ + [[8, 56], "v1", "cam-collision-record"] + ], + + "placeholder-do-not-add-below": [] +} diff --git a/decompiler/config/jak1_sced/var_names.jsonc b/decompiler/config/jak1_sced/var_names.jsonc new file mode 100644 index 0000000000..d8ce3185b2 --- /dev/null +++ b/decompiler/config/jak1_sced/var_names.jsonc @@ -0,0 +1,3653 @@ +{ + "identity": { + "args": ["obj"] + }, + + "1/": { + "args": ["x"] + }, + + "+": { + "args": ["x", "y"] + }, + + "-": { + "args": ["x", "y"] + }, + + "*": { + "args": ["x", "y"] + }, + + "/": { + "args": ["x", "y"] + }, + + "ash": { + "args": ["value", "shift-amount"] + }, + + "mod": { + "args": ["x", "y"] + }, + + "rem": { + "args": ["x", "y"] + }, + + "abs": { + "args": ["x"] + }, + + "min": { + "args": ["x", "y"] + }, + + "max": { + "args": ["x", "y"] + }, + + "logior": { + "args": ["x", "y"] + }, + + "logand": { + "args": ["x", "y"] + }, + + "lognor": { + "args": ["x", "y"] + }, + + "logxor": { + "args": ["x", "y"] + }, + + "lognot": { + "args": ["x"] + }, + + "basic-type?": { + "args": ["obj", "parent-type"], + "vars": { "v1-0": "obj-type", "a0-1": "end-type" } + }, + + "type-type?": { + "args": ["child-type", "parent-type"], + "vars": { "v1-0": "end-type" } + }, + + "find-parent-method": { + "args": ["child-type", "method-id"], + "vars": { + "v0-0": "current-method", + "v1-2": "original-method", + "v1-5": "unused1" + } + }, + + "ref": { + "args": ["lst", "index"], + "vars": { "v1-0": "count" } + }, + + "(method 4 pair)": { + "vars": { "v0-0": "result", "v1-1": "iter" } + }, + + "last": { + "args": ["lst"], + "vars": { "v0-0": "iter" } + }, + "member": { + "args": ["obj", "lst"], + "vars": { "v1-0": "iter" } + }, + "nmember": { + "args": ["obj", "lst"] + }, + "assoc": { + "args": ["item", "alist"], + "vars": { "v1-0": "iter" } + }, + "assoce": { + "args": ["item", "alist"], + "vars": { "v1-0": "iter" } + }, + "nassoc": { + "args": ["item-name", "alist"], + "vars": { "a1-1": "key" } + }, + "nassoce": { + "args": ["item-name", "alist"], + "vars": { "s4-0": "key" } + }, + "append!": { + "args": ["front", "back"], + "vars": { "v1-1": "iter" } + }, + "delete!": { + "args": ["item", "lst"], + "vars": { "a2-0": "iter", "v1-1": "iter-prev" } + }, + "delete-car!": { + "args": ["item", "lst"], + "vars": { "a2-0": "iter", "v1-2": "iter-prev" } + }, + "insert-cons!": { + "args": ["kv", "alist"], + "vars": { "a3-0": "updated-list" } + }, + "sort": { + "args": ["lst", "compare-func"], + "vars": { + "s4-0": "unsorted-count", + "s3-0": "iter", + "s2-0": "first-elt", + "s1-0": "seoncd-elt", + "v1-1": "compare-result" + } + }, + "(method 0 inline-array-class)": { + "args": ["allocation", "type-to-make", "size"], + "vars": { "v0-0": "obj" } + }, + "(method 0 array)": { + "args": ["allocation", "type-to-make", "content-type", "len"], + "vars": { "v0-1": "obj" } + }, + + "(method 2 array)": { + "vars": { "v1-1": "content-type-sym" } + }, + + "(method 3 array)": { + "vars": { "v1-1": "content-type-sym" } + }, + + "mem-copy!": { + "args": ["dst", "src", "size"], + "vars": { "v0-0": "result", "v1-0": "i" } + }, + "qmem-copy<-!": { + "args": ["dst", "src", "size"], + "vars": { "v0-0": "result", "v1-1": "qwc", "a2-1": "value" } + }, + "qmem-copy->!": { + "args": ["dst", "src", "size"], + "vars": { + "v0-0": "result", + "v1-1": "qwc", + "a1-1": "src-ptr", + "a0-1": "dst-ptr", + "a2-3": "value" + } + }, + "mem-set32!": { + "args": ["dst", "size", "value"], + "vars": { "v0-0": "result", "v1-0": "i" } + }, + "mem-or!": { + "args": ["dst", "src", "size"], + "vars": { "v0-0": "result", "v1-0": "i" } + }, + "fact": { + "args": ["x"] + }, + "mem-print": { + "args": ["data", "word-count"], + "vars": { "s4-0": "current-qword" } + }, + "print-tree-bitmask": { + "args": ["bits", "count"], + "vars": { "s4-0": "i" } + }, + "valid?": { + "args": ["obj", "expected-type", "name", "allow-false", "print-dest"], + "vars": { "v1-1": "in-goal-mem" } + }, + + // GKERNEL + + "(method 0 cpu-thread)": { + "vars": { "v0-0": ["obj", "cpu-thread"] } + }, + + "inspect-process-heap": { + "vars": { "s5-0": ["obj", "pointer"] } + }, + + "(method 23 dead-pool-heap)": { + "args": ["this", "rec"] + }, + + "(method 0 dead-pool-heap)": { + "vars": { "v0-0": ["obj", "dead-pool-heap"] } + }, + + "seek": { + "args": ["x", "target", "diff"], + "vars": { "f2-0": "err" } + }, + + "lerp": { + "args": ["minimum", "maximum", "amount"] + }, + + "lerp-scale": { + "args": ["min-out", "max-out", "in", "min-in", "max-in"], + "vars": { "f0-1": "scale" } + }, + + "lerp-clamp": { + "args": ["minimum", "maximum", "amount"] + }, + + "rand-vu-int-range": { + "args": ["first", "second"], + "vars": { "f0-4": "float-in-range" } + }, + + "(method 0 bit-array)": { + "args": ["allocation", "type-to-make", "length"], + "vars": { "v0-0": "obj" } + }, + + "(method 12 bit-array)": { + "vars": { "v1-2": "idx" } + }, + + "box-vector-enside?": { + "args": ["box", "pt"] + }, + + "box-vector-inside?": { + "args": ["box", "pt"] + }, + + "string=": { + "args": ["str-a", "str-b"], + "vars": { "a2-0": "a-ptr", "v1-0": "b-ptr" } + }, + + "string-charp=": { + "args": ["str", "charp"], + "vars": { "v1-0": "str-ptr" } + }, + + "copyn-string<-charp": { + "args": ["str", "charp", "len"], + "vars": { "a3-0": "i", "v1-0": "str-ptr" } + }, + + "string<-charp": { + "args": ["str", "charp"], + "vars": { "v1-0": "str-ptr" } + }, + + "charp<-string": { + "args": ["charp", "str"], + "vars": { "v1-0": "str-ptr" } + }, + + "copy-charp<-charp": { + "args": ["dst", "src"] + }, + + "cat-string<-string": { + "args": ["a", "b"], + "vars": { "v1-0": "a-ptr", "a1-1": "b-ptr" } + }, + + "catn-string<-charp": { + "args": ["a", "b", "len"], + "vars": { "v1-0": "a-ptr", "a3-2": "i" } + }, + + "cat-string<-string_to_charp": { + "args": ["a", "b", "end-ptr"], + "vars": { "v1-0": "b-ptr", "v0-0": "a-ptr" } + }, + + "append-character-to-string": { + "args": ["str", "char"], + "vars": { "v1-0": "str-ptr" } + }, + + "charp-basename": { + "args": ["charp"], + "vars": { "v1-0": "ptr" } + }, + + "string?": { + "args": ["a", "b"], + "vars": { "s4-1": "len", "v1-4": "i" } + }, + "string<=?": { + "args": ["a", "b"], + "vars": { "s4-1": "len", "v1-4": "i" } + }, + "string>=?": { + "args": ["a", "b"], + "vars": { "s4-1": "len", "v1-4": "i" } + }, + "string-cat-to-last-char": { + "args": ["base-str", "append-str", "char"], + "vars": { "s4-0": "end-of-append", "v1-0": "location-of-char" } + }, + "string-suck-up!": { + "args": ["str", "location"], + "vars": { "v1-2": "str-ptr" } + }, + "string-strip-trailing-whitespace!": { + "args": ["str"], + "vars": { "v1-6": "ptr" } + }, + + "string-get-arg!!": { + "args": ["a-str", "arg"], + "vars": { "s4-0": "arg-word-start", "s4-1": "arg-end", "v1-3": "arg-start" } + }, + + "string->int": { + "args": ["str"], + "vars": { + "a0-1": "str-ptr", + "v0-0": "result", + "a0-2": "next-char-1", + "a0-3": "next-char-2" + } + }, + + "string-get-flag!!": { + "args": ["result", "in", "first-flag", "second-flag"] + }, + + "(method 0 state)": { + "args": [ + "allocation", + "type-to-make", + "name", + "code", + "trans", + "enter", + "exit", + "event" + ], + "vars": { "v0-0": "obj" } + }, + + "previous-brother": { + "args": ["proc"], + "vars": { "v1-0": "parent", "v1-2": "child" } + }, + + // Matrix + "matrix-identity": { + "args": ["mat"], + "vars": { "f0-0": "one" } + }, + + "matrix+!": { + "args": ["dst", "src1", "src2"], + "vars": { "v1-0": "i" } + }, + + "matrix-!": { + "args": ["dst", "src1", "src2"], + "vars": { "v1-0": "i" } + }, + + "matrix*!": { + "args": ["dst", "src1", "src2"] + }, + + "matrixp*!": { + "args": ["dst", "src1", "src2"], + "vars": { "s5-0": "temp-mat" } + }, + + "vector-matrix*!": { + "args": ["dst", "vec", "mat"] + }, + + "vector-rotate*!": { + "args": ["dst", "vec", "mat"] + }, + + "vector3s-matrix*!": { + "args": ["dst", "vec", "mat"], + "vars": { "s5-0": "temp-vec3" } + }, + + "vector3s-rotate*!": { + "args": ["dst", "vec", "mat"], + "vars": { "s5-0": "temp-vec3" } + }, + + "matrix-transpose!": { + "args": ["dst", "src"] + }, + + "matrix-inverse-of-rot-trans!": { + "args": ["dst", "src"] + }, + + "matrix-4x4-inverse!": { + "args": ["dst", "src"] + }, + + "matrix-translate!": { + "args": ["dst", "trans"] + }, + + "matrix-translate+!": { + "args": ["dst", "src", "trans"] + }, + + "matrix-scale!": { + "args": ["dst", "scale"] + }, + + "scale-matrix!": { + "args": ["dst", "scale", "src"] + }, + + "matrix-inv-scale!": { + "args": ["dst", "scale"] + }, + + "column-scale-matrix!": { + "args": ["dst", "scale", "src"] + }, + + "matrix-rotate-x!": { + "args": ["dst", "rot-deg"], + "vars": { "f30-0": "rot-sin", "f0-0": "rot-cos" } + }, + + "matrix-rotate-y!": { + "args": ["dst", "rot-deg"], + "vars": { "f30-0": "rot-sin", "f0-0": "rot-cos" } + }, + + "matrix-rotate-z!": { + "args": ["dst", "rot-deg"], + "vars": { "f30-0": "rot-sin", "f0-0": "rot-cos" } + }, + + "matrix-rotate-zyx!": { + "args": ["dst", "rot-xyz-deg"], + "vars": { "gp-0": "temp-mat", "s5-0": "rot-mat" } + }, + + "matrix-rotate-xyz!": { + "args": ["dst", "rot-xyz-deg"], + "vars": { "gp-0": "temp-mat", "s5-0": "rot-mat" } + }, + + "matrix-rotate-zxy!": { + "args": ["dst", "rot-xyz-deg"], + "vars": { "gp-0": "temp-mat", "s5-0": "rot-mat" } + }, + + "matrix-rotate-yxz!": { + "args": ["dst", "rot-xyz-deg"], + "vars": { "gp-0": "temp-mat", "s5-0": "rot-mat" } + }, + + "matrix-rotate-yzx!": { + "args": ["dst", "rot-xyz-deg"], + "vars": { "gp-0": "temp-mat", "s5-0": "rot-mat" } + }, + + "matrix-rotate-yxy!": { + "args": ["dst", "rots-deg"], + "vars": { + "a2-0": "sincos-input", + "s5-0": "sin-vec", + "s4-0": "cos-vec", + "f1-1": "cos-y", + "f0-5": "sin-y", + "f2-0": "cos-x", + "f5-0": "sin-x", + "f3-0": "cos-z", + "f4-0": "sin-z" + } + }, + + "matrix-rotate-yx!": { + "args": ["dst", "rot-y-deg", "rot-x-deg"] + }, + + "matrix-axis-angle!": { + "args": ["dst", "axis", "angle-deg"] + }, + + "matrix-lerp!": { + "args": ["dst", "src1", "src2", "alpha"] + }, + + "matrix-3x3-determinant": { + "args": ["mat"] + }, + + "matrix-3x3-inverse!": { + "args": ["dst", "src"] + }, + + "matrix-3x3-inverse-transpose!": { + "args": ["dst", "src"] + }, + + "matrix3-inverse-transpose!": { + "args": ["dst", "src"] + }, + + "matrix-4x4-determinant": { + "args": ["dst", "src"] + }, + + "matrix-4x4-inverse-transpose!": { + "args": ["dst", "src"] + }, + + "matrix-y-angle": { + "args": ["mat"], + "vars": { "v1-0": "z-row" } + }, + + "(method 0 trs)": { + "vars": { "gp-0": "obj" } + }, + + "transform-matrix-calc!": { + "args": ["tf", "dst-mat"] + }, + + "transform-matrix-parent-calc!": { + "args": ["tf", "dst-mat", "inv-scale"] + }, + + "trs-matrix-calc!": { + "args": ["tf", "dst-mat"] + }, + + "quaternion-axis-angle!": { + "args": ["quat", "x", "y", "z", "angle"] + }, + + "quaternion-vector-angle!": { + "args": ["quat", "axis", "angle"] + }, + + "vector-flatten!": { + "args": ["dst", "src", "plane-normal"] + }, + + "vector-reflect!": { + "args": ["dst", "src", "plane-normal"] + }, + + "vector-reflect-flat!": { + "args": ["dst", "src", "plane-normal"] + }, + + "vector-reflect-true-flat!": { + "args": ["dst", "src", "plane-normal"] + }, + + "vector-reflect-flat-above!": { + "args": ["dst", "src", "plane-normal"] + }, + + "deg-seek": { + "args": ["in", "target", "max-diff"], + "vars": { + "v1-1": "in-int", + "a0-2": "target-int", + "a1-2": "max-diff-int", + "a2-1": "diff", + "a3-0": "abs-diff" + } + }, + + "deg-seek-smooth": { + "args": ["in", "target", "max-diff", "amount"], + "vars": { "f0-1": "step" } + }, + + "deg-lerp-clamp": { + "args": ["min-val", "max-val", "in"] + }, + + "sinerp-clamp": { + "args": ["minimum", "maximum", "amount"] + }, + + "coserp-clamp": { + "args": ["minimum", "maximum", "amount"] + }, + "coserp": { + "args": ["minimum", "maximum", "amount"] + }, + + "coserp180-clamp": { + "args": ["minimum", "maximum", "amount"] + }, + "coserp180": { + "args": ["minimum", "maximum", "amount"] + }, + "ease-in-out": { + "args": ["total", "progress"] + }, + "dma-send-to-spr": { + "args": ["sadr", "madr", "qwc", "sync"] + }, + "dma-send-to-spr-no-flush": { + "args": ["sadr", "madr", "qwc", "sync"] + }, + "dma-send-from-spr": { + "args": ["madr", "sadr", "qwc", "sync"] + }, + "dma-send-from-spr-no-flush": { + "args": ["madr", "sadr", "qwc", "sync"] + }, + "dump-vu1-range": { + "args": ["start", "total-count"] + }, + "ultimate-memcpy": { + "args": ["dst", "src", "size-bytes"], + "vars": { + "s2-0": "qwc-remaining", + "s1-0": "qwc-transferred-now", + "s4-0": "spr-to-bank", + "s3-0": "spr-from-bank" + } + }, + + "dma-buffer-add-vu-function": { + "args": ["dma-buf", "vu-func"], + "vars": { + "t1-1": "dma-buf-2", + "v1-0": "func-ptr", + "a3-0": "qlen", + "a1-1": "origin", + "t0-1": "qwc-now", + "t2-0": ["buf-ptr", "dma-packet"] + } + }, + + "dma-buffer-add-buckets": { + "args": ["dma-buf", "count"], + "vars": { "a2-0": "i", "v1-0": ["current-bucket", "dma-bucket"] } + }, + + "dma-buffer-patch-buckets": { + "args": ["bucket", "count"], + "vars": { "v1-1": "i" } + }, + + "dma-bucket-insert-tag": { + "args": ["base", "idx", "tag-start", "tag-end"], + "vars": { "v1-1": "bucket" } + }, + + "disasm-vif-details": { + "args": ["stream", "data", "kind", "count"], + "vars": { "s4-0": "count2", "s3-0": "data-ptr", "s2-0": "i" } + }, + + "disasm-vif-tag": { + "args": ["data", "words", "stream", "details"], + "vars": { + "gp-0": "byte-idx", + "v1-0": "cmd-template-idx", + "a0-12": "print-kind", + "s1-0": "first-tag", + "s0-0": "packet-size", + "t1-1": ["stcycl-imm", "vif-stcycl-imm"], + "sv-16": "cmd", + "sv-32": "data-ptr", + "sv-48": "data-idx", + "sv-64": "unpack-imm" + } + }, + + "disasm-dma-list": { + "args": ["data", "mode", "verbose", "stream", "expected-size"], + "vars": { + "sv-16": "addr", + "sv-32": "data-2", + "sv-48": "qwc", + "sv-64": "ra-1", + "sv-80": "ra-2", + "sv-96": "call-depth", + "sv-112": "current-tag", + "s2-0": "mode-2", + "s3-0": "verbose-2", + "gp-0": "stream-2", + "s1-0": "expected-size-2", + "s0-0": "end-condition", + "s4-0": "total-qwc", + "s5-0": "total-tags" + } + }, + + "cpad-invalid!": { + "args": ["pad"] + }, + + "(method 0 cpad-info)": { + "args": ["alloction", "type-to-make", "idx"], + "vars": { "s5-0": "obj" } + }, + + "analog-input": { + "args": ["in", "offset", "center-val", "max-val", "out-range"], + "vars": { + "f1-1": "offset-in", + "f0-3": "magnitude", + "v1-0": "max-magnitude" + } + }, + + "cpad-set-buzz!": { + "args": ["pad", "buzz-idx", "buzz-amount", "duration"] + }, + + "service-cpads": { + "vars": { + "gp-0": "pad-list", + "s5-0": "pad-idx", + "s4-0": "pad", + "s3-0": "buzz-idx", + "v1-29": "current-button0" + } + }, + + "buzz-stop!": { + "args": ["idx"] + }, + + "default-buffer-init": { + "args": ["buff"], + "vars": { + "v1-0": "buff-ptr", + "v1-1": "buff-ptr2", + "v1-3": "buff-ptr3", + "v1-4": "buff-ptr4", + "a1-4": ["packet", "dma-gif-packet"], + "a1-6": ["gif-tag", "gs-gif-tag"], + "a1-8": ["data", "(pointer uint64)"], + "a0-1": ["ret-packet", "dma-packet"], + "v1-2": "buff-ptr5" + } + }, + + "add-reg-gif-packet": { + "args": ["packet", "reg-idx", "reg-val"], + "vars": { "v1-0": "tag" } + }, + + "(method 9 font-context)": { + "args": ["obj", "mat"] + }, + "(method 10 font-context)": { + "args": ["obj", "x", "y"] + }, + "(method 11 font-context)": { + "args": ["obj", "z"] + }, + "(method 12 font-context)": { + "args": ["obj", "w"] + }, + "(method 13 font-context)": { + "args": ["obj", "width"] + }, + "(method 14 font-context)": { + "args": ["obj", "height"] + }, + "(method 15 font-context)": { + "args": ["obj", "proj"] + }, + "(method 16 font-context)": { + "args": ["obj", "color"] + }, + "(method 17 font-context)": { + "args": ["obj", "flags"] + }, + "(method 18 font-context)": { + "args": ["obj", "start-line"] + }, + "(method 19 font-context)": { + "args": ["obj", "scale"] + }, + "(method 0 font-context)": { + "args": [ + "allocation", + "type-to-make", + "mat", + "x", + "y", + "z", + "color", + "flags" + ], + "vars": { "v0-0": "obj" } + }, + "font-set-tex0": { + "args": ["ptr-tex0", "tex", "tex-addr", "psm", "clut-addr"] + }, + + "(method 0 display-frame)": { + "vars": { "gp-0": "obj" } + }, + + "(method 0 draw-context)": { + "args": [ + "allocation", + "type-to-make", + "org-x", + "org-y", + "width", + "height", + "color-0" + ] + }, + + "(method 0 display)": { + "args": ["allocation", "type-to-make", "psm", "w", "h", "ztest", "zpsm"], + "vars": { "gp-0": "obj" } + }, + + "(method 0 ripple-control)": { + "vars": { "v0-0": "obj" } + }, + + "vector-seek-2d-xz-smooth!": { + "args": ["vec", "target", "max-step", "alpha"], + "vars": { + "f0-1": "x-diff", + "f2-1": "z-diff", + "f1-5": "x-step", + "f0-3": "z-step", + "f2-4": "step-len" + } + }, + + "vector-seek-2d-yz-smooth!": { + "args": ["vec", "target", "max-step", "alpha"], + "vars": { + "f0-1": "y-diff", + "f2-1": "z-diff", + "f1-5": "y-step", + "f0-3": "z-step", + "f2-4": "step-len", + "f2-6": "step-scale" + } + }, + + "vector-seek-3d-smooth!": { + "args": ["vec", "target", "max-step", "alpha"], + "vars": { + "f0-1": "x-diff", + "f1-2": "y-diff", + "f3-1": "z-diff", + "f2-6": "x-step", + "f1-3": "y-step", + "f0-4": "z-step", + "f3-5": "step-len", + "f3-7": "step-scale" + } + }, + + "seek-with-smooth": { + "args": ["value", "target", "max-step", "alpha", "deadband"], + "vars": { "f0-1": "diff", "f0-2": "step", "f1-4": "min-step" } + }, + + "vector-v+!": { + "args": ["result", "position", "velocity"] + }, + + "vector-v*float+!": { + "args": ["result", "position", "velocity", "velocity-scale"] + }, + + "vector-v++!": { + "args": ["position", "velocity"] + }, + + "vector-v*float!": { + "args": ["delta-p", "velocity", "scale"] + }, + + "vector-v*float++!": { + "args": ["position", "velocity", "scale"] + }, + + "vector-lerp!": { + "args": ["out", "a", "b", "alpha"] + }, + + "vector-lerp-clamp!": { + "args": ["out", "a", "b", "alpha"] + }, + + "vector4-lerp!": { + "args": ["out", "a", "b", "alpha"] + }, + + "vector4-lerp-clamp!": { + "args": ["out", "a", "b", "alpha"] + }, + + "vector-deg-lerp-clamp!": { + "args": ["out", "min-val", "max-val", "in"] + }, + + "make-file-name": { + "args": ["kind", "name", "art-group-version"] + }, + + "make-vfile-name": { + "args": ["kind", "name"] + }, + + "file-info-correct-version?": { + "args": ["info", "kind", "version-override"], + "vars": { "s5-0": "expected-version", "s4-0": "kind-name" } + }, + + "(method 0 load-dir)": { + "args": ["allocation", "type-to-make", "length", "unk"], + "vars": { "s4-0": "obj" } + }, + + "(method 0 load-dir-art-group)": { + "args": ["allocation", "type-to-make", "length", "unk"], + "vars": { "v0-0": "obj" } + }, + + "(method 0 external-art-buffer)": { + "args": ["allocation", "type-to-make", "idx"], + "vars": { "v0-0": "obj" } + }, + + "(method 0 external-art-control)": { + "vars": { "gp-0": "obj", "s4-0": "buff-idx", "v1-9": "rec-idx" } + }, + + "(method 9 display)": { + "args": ["obj", "slowdown"], + "vars": { "gp-0": "obj", "s5-0": "ratio" } + }, + + "set-draw-env-offset": { + "args": ["env", "x", "y"] + }, + + "set-display-env": { + "args": ["env", "psm", "width", "height", "dx", "dy", "fbp"] + }, + + "set-draw-env": { + "args": ["env", "psm", "width", "height", "ztest", "zpsm", "fbp"] + }, + + "set-display": { + "args": ["disp", "psm", "w", "h", "ztest", "zpsm"] + }, + + "set-display2": { + "args": ["disp", "psm", "w", "h", "ztest", "zpsm"] + }, + + "(method 11 profile-bar)": { + "args": ["obj", "name", "color"], + "vars": { "s5-0": "new-frame" } + }, + + "(method 12 profile-bar)": { + "args": ["obj", "name", "color"], + "vars": { "v0-0": "new-frame" } + }, + + "gs-set-default-store-image": { + "args": [ + "packet", + "src-fbp", + "src-w", + "src-psm", + "ssax", + "ssay", + "rrw", + "rrh" + ] + }, + + "store-image": { + "args": ["oddeven"], + "vars": { + "s4-0": "buff0", + "s1-0": "buff1", + "s0-0": "packet", + "gp-0": "file", + "s3-0": "width", + "s2-0": "height", + "s0-1": "ptr-0", + "sv-16": "ptr-1", + "sv-32": "y-idx", + "sv-48": "y-idx-2" + } + }, + + "(method 0 draw-context)": { + "args": [ + "allocation", + "type-to-make", + "org-x", + "org-y", + "width", + "height", + "color-0" + ], + "vars": { "v0-0": "obj" } + }, + + "draw-context-set-xy": { + "args": ["ctxt", "x", "y"] + }, + + "texture-qwc": { + "args": ["w", "h", "tex-format"] + }, + + "gs-find-block": { + "args": ["bx", "by", "tex-format"] + }, + + "gs-largest-block": { + "args": ["tex-width", "tex-height", "tex-format"], + "vars": { + "s5-0": "block-width", + "v1-0": "block-height", + "a0-6": "real-width", + "a1-4": "real-height", + "s5-1": "width-blocks", + "s3-1": "height-blocks", + "s2-0": "x", + "s1-0": "y", + "s4-1": "max-block" + } + }, + + "gs-blocks-used": { + "args": ["tex-width", "tex-height", "tex-format"], + "vars": { + "s4-0": "page-width", + "v1-0": "page-height", + "a0-6": "real-width", + "a1-4": "real-height", + "s3-0": "width-blocks", + "s1-0": "height-blocks" + } + }, + + "dma-buffer-add-ref-texture": { + "args": ["buf", "data", "tex-w", "tex-h", "tex-format"], + "vars": { + "s5-0": "data-ptr", + "v1-0": "qwc", + "a0-4": "qwc-this-time", + "a1-3": "eop", + "a3-1": ["setup-dma", "dma-packet"], + "a3-3": ["setup-dif", "gs-gif-tag"], + "a2-4": ["data-dma", "dma-packet"] + } + }, + + "(method 15 texture-pool)": { + "args": ["obj", "word-count"] + }, + + "(method 22 texture-pool)": { + "args": ["obj", "tpage-id"] + }, + + "(method 10 texture-page)": { + "args": ["obj", "segment-count", "additional-size"] + }, + + "(method 16 texture-pool)": { + "args": ["obj", "segment", "size"] + }, + + "(method 9 texture-page)": { + "args": ["obj", "seg"] + }, + + "texture-page-default-allocate": { + "args": ["pool", "page", "seg", "tpage-id"], + "vars": { "s3-0": "seg-id" } + }, + + "texture-page-common-allocate": { + "args": ["pool", "page", "seg", "tpage-id"], + "vars": { "s4-0": "seg-id" } + }, + + "(method 12 texture-page)": { + "args": ["obj", "new-dest", "seg-id"], + "vars": { + "a3-4": "dst-block", + "t0-1": "tex-id", + "t1-6": "tex", + "t2-0": "num-mips", + "t3-4": "mip-id" + } + }, + + "texture-page-common-boot-allocate": { + "args": ["pool", "page", "heap", "tpage-id"], + "vars": { "s2-0": "tex-id" } + }, + + "upload-vram-data": { + "args": ["buf", "dest", "tex-data", "tex-h"], + "vars": { + "a3-2": "height-this-time", + "a0-1": ["dma", "dma-packet"], + "a0-3": ["gif", "gs-gif-tag"], + "a0-5": "gs-data" + } + }, + + "upload-vram-pages": { + "args": ["pool", "segment", "page", "mode", "bucket-idx"], + "vars": { + "s3-0": "dma-buf", + "sv-16": "tex-data", + "sv-20": "tex-dest-base-chunk", + "sv-24": "chunk-count", + "sv-48": "tex-id", + "s1-0": "upload-chunk-idx", + "v1-24": "current-dest-chunk", + "sv-32": "chunks-to-upload-count", + "sv-40": "first-chunk-idx-to-upload", + "gp-0": "total-upload-size", + "s4-0": "dma-start", + "a0-26": ["dma", "dma-packet"], + "a0-28": ["gif", "gs-gif-tag"], + "a0-30": "gif-data", + "v1-50": ["dma-end", "dma-packet"] + } + }, + + "update-vram-pages": { + "args": ["pool", "pool-segment", "page", "mode"], + "vars": { + "t1-0": "dest-block", + "t2-0": "sz", + "t0-1": "page-id", + "a1-4": "upload-chunks", + "a2-3": "chunk-idx", + "v1-2": "modified-chunk-count", + "a3-8": "vram-chunk" + } + }, + + "upload-vram-pages-pris": { + "args": ["pool", "segment", "page", "bucket-idx", "allow-cache-mask"], + "vars": { + "s3-0": "dma-buf", + "sv-16": "tex-data", + "sv-20": "tex-dest-base-chunk", + "sv-24": "chunk-count", + "sv-32": "chunks-to-upload-count", + "sv-40": "first-chunk-idx-to-upload", + "sv-48": "page-id", + "s0-0": "upload-chunk-idx", + "sv-52": "current-dest-chunk", + "sv-56": "need-tex", + "gp-0": "total-upload-size", + "a0-21": ["dma", "dma-packet"], + "a0-23": ["gif", "gs-gif-tag"], + "v1-55": ["dma-end", "dma-packet"] + } + }, + + "texture-page-near-allocate-0": { + "args": ["pool", "page", "heap", "mode"], + "vars": { + "s3-0": "common-dest", + "s2-0": "page-seg-idx", + "a1-5": "page-seg-2-size", + "v1-15": "after-seg-2-data", + "a0-8": "seg-2-data" + } + }, + + "texture-page-near-allocate-1": { + "args": ["pool", "page", "heap", "mode"], + "vars": { + "s4-0": "seg2-size", + "a1-1": "seg2-dest", + "s2-0": "common-dest", + "s1-0": "page-seg-idx" + } + }, + + "texture-page-level-allocate": { + "args": ["pool", "page", "heap", "mode"], + "vars": { + "s2-0": "common-id", + "v1-6": "level-idx" + } + }, + + "texture-page-dir-inspect": { + "args": ["dir", "mode"], + "vars": { + "v1-0": "pool", + "s4-0": "level-idx", + "a1-3": "lev", + "s4-1": "entry-idx", + "s3-0": "entry-page", + "s2-0": "entry-link", + "s1-0": "entry-list-length" + } + }, + + "texture-page-size-check": { + "args": ["pool", "level", "hide-prints"], + "vars": { + "gp-0": "oversize", + "s3-0": "tfrag-page", + "v1-0": "tfrag-mip0-size", + "v1-3": "pris-page", + "v1-5": "shrub-page", + "v1-7": "alpha-page", + "v1-9": "water-page" + } + }, + + "(method 13 texture-pool)": { + "args": ["obj", "level", "max-page-kind", "id-array"], + "vars": { + "v1-0": "page-idx", + "v1-5": "tfrag-dir-entry", + "v1-7": "pris-dir-entry", + "v1-9": "shrub-dir-entry", + "v1-11": "alpha-dir-entry", + "v1-13": "water-dir-entry", + "a2-7": "overflow-bits" + } + }, + + "(method 14 texture-pool)": { + "args": ["obj", "level", "tex-page-kind"], + "vars": { + "s3-0": "tfrag-page", + "s2-0": "tfrag-bucket", + "f30-0": "distance", + "a2-4": "pris-page", + "a3-3": "pris-bucket", + "a2-5": "shrub-page", + "f0-5": "shrub-closest", + "t0-4": "shrub-bucket", + "a3-4": "shrub-mode", + "s3-1": "alpha-page", + "f0-6": "alpha-closest", + "s2-1": "alpha-bucket", + "s1-3": "alpha-mode", + "s0-0": "alpha-dest-chunk", + "a2-7": "water-page", + "a3-6": "water-bucket" + } + }, + + "(method 13 texture-page)": { + "args": ["obj", "dma-buff", "mode"], + "vars": { + "sv-16": "total-size", + "v1-7": "start-segment", + "s5-0": "chunk-count", + "s4-0": "current-dest", + "s3-0": "current-data", + "a3-1": "chunks-now", + "a0-1": ["pkt", "dma-packet"], + "a0-3": ["gs-tag", "gs-gif-tag"], + "a0-5": "gs-reg-data" + } + }, + + "texture-relocate": { + "args": ["dma-buff", "tex", "dest-loc", "dest-fmt", "clut-dst"], + "vars": { + "v1-0": "mip-level", + "t1-1": "mip-w", + "t2-3": "mip-h", + "t4-0": ["dma-pkt", "dma-packet"], + "t4-2": ["gs-pkt", "gs-gif-tag"] + } + }, + + "(method 11 texture-pool)": { + "vars": { + "s3-0": "font-clut", + "sv-16": "heap-before-font-tex", + "sv-20": "clut-dest-addr", + "s4-0": "dma-buff", + "s5-0": "main-font-tx", + "s2-0": "font-tx-1", + "s1-0": "font-tx-1-dest", + "s0-0": "font-tx-1-fmt", + "s2-1": "font-tx-0", + "s1-1": "font-tx-0-dest", + "s0-1": "font-tx-0-fmt", + "s2-2": "font-tx-3", + "s1-2": "font-tx-3-dest", + "s0-2": "font-tx-3-fmt", + "s2-3": "font-tx-2", + "s1-3": "font-tx-2-dest", + "s0-3": "font-tx-2-fmt" + } + }, + + "link-texture-by-id": { + "vars": { + "s4-0": "dir-entry" + } + }, + + "(method 9 texture-page-dir)": { + "args": ["obj", "heap"], + "vars": { + "v1-0": "mem-start", + "a1-1": "mem-end", + "a2-0": "entry-idx", + "t1-0": "entry", + "t0-0": "tex-page", + "a3-4": "link-arr", + "t0-3": "tex-count", + "t1-4": "tex-idx", + "t2-0": "link-slot", + "t3-2": ["shader", "adgif-shader"], + "t4-1": "dist-past-end" + } + }, + + "display-loop": { + "vars": { + "s3-0": "debug-buf", + "gp-0": "disp", + "s5-2": "debug-txt-buf" + } + }, + + "adgif-shader-login": { + "args": "shader", + "vars": { + "s5-0": "tex" + } + }, + + "adgif-shader-login-fast": { + "args": ["shader"], + "vars": { + "v1-4": "tex-id", + "a0-9": "dir-entry", + "s5-0": "tex" + } + }, + + "texture-page-login": { + "args": ["id", "alloc-func", "heap"], + "vars": { + "s5-0": "dir-entry", + "s4-0": "old-alloc-func", + "s3-0": "file-name" + } + }, + + "(method 9 __assert-info-private-struct)": { + "args": ["obj", "filename", "line-num", "column-num"] + }, + + "__assert": { + "args": ["exp", "msg"] + }, + + "__assert-min-max-range-float": { + "args": ["exp", "minimum", "maximum", "msg-exp", "msg-min", "msg-max"] + }, + + "__assert-min-max-range-int": { + "args": ["exp", "minimum", "maximum", "msg-exp", "msg-min", "msg-max"] + }, + + "__assert-zero-lim-range-int": { + "args": ["exp", "maximum", "msg-exp", "msg-max"] + }, + + "fog-corrector-setup": { + "args": ["corrector", "math-cam"] + }, + + "update-math-camera": { + "args": ["math-cam", "video-mode", "aspect"], + "vars": { + "f0-4": "temp1", + "v1-1": "elim1", + "f0-6": "temp2", + "v1-2": "elim2", + "f1-3": "x-rat", + "f0-7": "y-rat", + "v1-3": "cull-info", + "f2-2": "unused-x-thing", + "f2-5": "y-thing", + "f3-11": "one-plus-2x-squared", + "f3-14": "one-plus-2y-squared", + "f2-9": "temp3", + "a0-2": "elim3", + "f2-11": "near-x", + "f1-5": "near-y", + "f0-10": "near-corner-dist-sqr", + "f2-8": "unused-thing-2", + "f1-8": "near-z", + "f0-12": "temp4", + "a0-6": "elim4", + "f1-12": "dx-rat-2", + "f0-14": "d-temp-2", + "f2-13": "dx-rat-times-4", + "f3-21": "d-temp-3", + "f4-21": "inverse-x-len", + "f5-11": "inverse-x-len-2", + "f0-16": "temp5", + "a0-7": "elim5", + "f1-15": "dy-rat", + "f0-18": "d-temp-4", + "f2-15": "dy-rat-times-4", + "f3-22": "d-temp-5", + "f4-26": "inverse-y-len", + "f5-16": "inverse-y-len-2", + "f0-20": "temp6", + "v1-4": "elim6", + "v0-2": "cam-mat", + "f2-16": "fog-constant-1", + "f3-23": "fog-constant-2", + "f0-12": "fog-contsant-3", + "f0-24": "fog-at-near-plane", + "f1-22": "fog-factor-2", + "f4-35": "cam-fov-mult", + "f5-19": "corrected-fog", + "f5-23": "hvdf-x", + "f6-29": "hvdf-y", + "f2-18": "hvdf-z", + "f4-40": "hvdf-w", + "f2-19": "persp-xx", + "f3-36": "persp-yy", + "f1-32": "persp-x", + "v1-11": "sprite-row-0", + "v1-12": "sprite-row-1", + "v1-13": "sprite-row-2", + "v1-14": "sprite-row-3", + "f1-37": "temp7", + "v1-16": "elim7", + "v1-24": "pfog", + "a0-12": "vis-gif-0", + "a0-13": "vis-gif-1", + "a0-14": "vis-gif-1-again", + "a0-15": "vis-gif-1-again-again" + } + }, + + "move-target-from-pad": { + "args": ["trans", "pad-idx"], + "vars": { + "s4-0": "local-trans", + "a0-5": "inv-cam-rot", + "s3-0": "cam-rot-mat" + } + }, + + "(method 13 profile-bar)": { + "args": ["obj", "buf", "bar-pos"], + "vars": { + "v1-1": "height", + "a1-4": "block-idx", + "a2-1": "block-count", + "t0-0": "left", + "v1-3": "end-time", + "s4-0": "worst-time-cache", + "a3-1": "screen-y", + "t2-0": ["direct-tag", "dma-packet"], + "t2-2": ["start-gif-tag", "gs-gif-tag"], + "t1-4": "block" + } + }, + + "draw-sprite2d-xy": { + "args": ["buf", "x", "y", "w", "h", "color"], + "vars": { + "t2-1": "context", + "a0-3": "draw-x", + "a1-9": "draw-y", + "t1-2": "draw-w", + "t0-2": "draw-h", + "a3-2": ["dma", "dma-packet"], + "a3-4": ["gif", "gs-gif-tag"], + "v1-10": ["end-dma", "dma-packet"], + "a0-13": "total-qwc", + "a3-6": "gif-buf" + } + }, + + "draw-quad2d": { + "args": ["buf", "context"], + "vars": { + "a2-1": "draw-x", + "a3-7": "draw-y", + "t3-0": "draw-w", + "t2-0": "draw-h", + "v1-8": "end-dma", + "t1-0": ["dma", "dma-packet"], + "t1-2": ["gif", "gs-gif-tag"], + "t1-4": "gif-buf", + "a1-11": "total-qwc" + } + }, + + "set-display-gs-state": { + "args": ["dma-buf", "fbp", "scx", "scy", "fb-msk", "psm"], + "vars": { + "t3-0": ["dma", "dma-packet"], + "t3-2": ["gif", "gs-gif-tag"], + "t3-4": "gif-buf", + "t2-0": "fbw" + } + }, + + "set-display-gs-state-offset": { + "args": [ + "dma-buf", + "fbp", + "width", + "height", + "fb-msk", + "psm", + "off-x", + "off-y" + ], + "vars": { + "t4-0": "fbw", + "t5-0": ["dma", "dma-packet"], + "t5-2": ["gif", "gs-gif-tag"], + "t5-4": ["gif-data", "(pointer uint64)"] + } + }, + + "reset-display-gs-state": { + "args": ["disp", "dma-buf", "oddeven"], + "vars": { + "a3-0": "onscreen", + "v1-0": "hoff", + "a2-6": "fbp", + "t0-0": ["dma", "dma-packet"], + "t0-2": ["gif", "gs-gif-tag"], + "a3-3": ["gif-data", "(pointer uint64)"] + } + }, + + "(method 0 engine)": { + "args": ["allocation", "type-to-make", "name", "length"], + "vars": { "v0-0": "obj", "v1-11": "idx-to-link", "a0-1": "end-idx" } + }, + + "(method 10 engine)": { + "args": ["obj", "f"], + "vars": { "a0-1": "current", "s4-0": "next" } + }, + + "(method 11 engine)": { + "args": ["obj", "f"], + "vars": { "s4-0": "iter" } + }, + + "(method 12 engine)": { + "vars": { "s4-0": ["ct", "connection"] } + }, + + "(method 13 engine)": { + "vars": { "s4-0": ["ct", "connection"], "v1-2": "result" } + }, + + "(method 19 engine)": { + "args": ["obj", "p1-value"], + "vars": { "a0-1": "current", "s4-0": "next" } + }, + + "(method 20 engine)": { + "args": ["obj", "p2-value"], + "vars": { "a0-1": "current", "s4-0": "next" } + }, + + "connection-process-apply": { + "args": ["proc", "func"], + "vars": { "s5-0": "iter" } + }, + + "(method 15 engine)": { + "args": ["obj", "proc", "func", "p1", "p2", "p3"], + "vars": { "v1-0": "con" } + }, + + "surface-interp!": { + "args": ["dst", "src0", "src1", "amount"] + }, + + "surface-mult!": { + "args": ["dst", "src0", "src1"] + }, + + "(method 0 collide-shape-prim)": { + "args": ["allocation", "type-to-make", "cshape", "prim-id", "size-bytes"] + }, + + "(method 0 collide-shape-prim-sphere)": { + "args": ["allocation", "type-to-make", "cshape", "prim-id"], + "vars": { "v0-0": ["obj", "collide-shape-prim-sphere"] } + }, + "(method 0 collide-shape-prim-mesh)": { + "args": ["allocation", "type-to-make", "cshape", "mesh-id", "prim-id"], + "vars": { "v0-0": ["obj", "collide-shape-prim-mesh"] } + }, + "(method 0 collide-shape-prim-group)": { + "args": ["allocation", "type-to-make", "cshape", "elt-count", "prim-id"], + "vars": { "v0-0": ["obj", "collide-shape-prim-group"] } + }, + "(method 0 collide-shape)": { + "args": [ + "allocation", + "type-to-make", + "proc", + "collide-list-kind", + "prim-id" + ], + "vars": { "s5-0": "obj" } + }, + "(method 0 collide-sticky-rider-group)": { + "vars": { "v0-0": "obj" } + }, + "(method 11 touching-prims-entry-pool)": { + "vars": { "a1-0": "current", "v1-0": "prev", "a2-0": "next" } + }, + "(method 0 touching-list)": { + "vars": { "v0-0": ["obj", "touching-list"] } + }, + + "cspace-by-name-no-fail": { + "vars": { "v0-0": ["result", "cspace"] } + }, + + "num-func-loop!": { + "args": ["chan", "inc"], + "vars": { "f0-1": "duration", "f1-2": "after-inc", "f0-3": "wrapped" } + }, + + "shrubbery-login-post-texture": { + "args": ["obj"], + "vars": { + "v1-1": "shader-count", + "a1-1": ["dst", "qword"], + "a2-5": ["tex-dst", "qword"], + "a3-0": ["src", "qword"], + "a2-6": ["text-dst2", "qword"], + "a3-1": ["src-2", "qword"], + "a3-2": ["src-3", "qword"] + } + }, + + "(method 20 actor-link-info)": { + "args": ["obj", "message"], + "vars": { + "s4-0": "iter", + "s5-0": "result", + "a0-1": "proc", + "a1-1": "msg-block" + } + }, + + // LEVEL + "lookup-level-info": { + "args": ["name"], + "vars": { + "a1-1": ["info", "level-load-info"], + "v1-0": "rest", + "a1-0": "current-sym" + } + }, + + "(method 21 level-group)": { + "args": ["obj", "name", "cmd-idx"], + "vars": { "v1-1": "cmd-lst" } + }, + + // SHADOW-CPU-H + "(method 0 shadow-control)": { + "args": [ + "allocation", + "type-to-make", + "bottom-offset", + "top-offset", + "dir", + "center", + "fade" + ], + "vars": { "v0-0": "obj" } + }, + + // RES + "(method 0 res-lump)": { + "args": ["allocation", "type-to-make", "data-count", "data-size"], + "vars": { "v0-0": "obj" } + }, + "(method 20 res-lump)": { + "args": ["obj", "time", "result", "buf"], + "vars": { + "t0-2": "tag-lo", + "t1-2": "tag-hi", + "v1-6": "elt-count", + "f0-2": "interp", + "a1-6": "src-lo", + "a2-13": "src-hi" + } + }, + "(method 3 res-lump)": { + "vars": { "s5-0": "i" } + }, + "(method 9 res-lump)": { + "args": ["obj", "name", "mode", "time", "default", "tag-addr", "buf-addr"], + "vars": { "s3-0": "tag-pair" } + }, + "(method 10 res-lump)": { + "args": ["obj", "name", "mode", "time", "default", "tag-addr", "buf-addr"], + "vars": { "s3-0": "tag-pair", "v1-4": "tag" } + }, + "(method 11 res-lump)": { + "args": ["obj", "name", "mode", "time", "default", "tag-addr", "buf-addr"], + "vars": { + "a2-1": "tag-pair", + "s1-0": "tag", + "s0-0": "tag-type", + "gp-1": "data" + } + }, + "(method 12 res-lump)": { + "args": ["obj", "name", "mode", "time", "default", "tag-addr", "buf-addr"], + "vars": { + "a2-1": "tag-pair", + "s1-0": "tag", + "s0-0": "tag-type", + "gp-1": "data" + } + }, + "(method 16 res-lump)": { + "vars": { + "v1-0": "tags-sorted", + "a1-0": "i", + "a2-1": "tag-stop", + "a3-2": "tag1", + "t0-3": "tag2", + "t1-6": "tag-name1", + "t2-6": "tag-name2" + } + }, + "(method 15 res-lump)": { + "vars": { + "s5-0": ["tag-pair", "res-tag-pair"], + "s2-0": "existing-tag", + "s3-0": "data-size", + "v1-25": "resource-mem" + } + }, + + "(method 17 res-lump)": { + "vars": { + "a0-2": "new-tag", + "s4-0": "tag-mem" + } + }, + + "(method 8 res-lump)": { + "args": ["obj", "block", "flags"], + "vars": { + "s3-0": "mem-use-id", + "s2-0": "mem-use-name", + "v1-22": "obj-size", + "s1-0": "tag-idx", + "s0-0": "tag-data" + } + }, + + // FACT-H + "(method 0 fact-info-target)": { + "vars": { "gp-0": "obj" } + }, + "(method 0 fact-info-enemy)": { + "vars": { + "gp-0": "obj", + "s5-0": "entity" + } + }, + + "(method 0 fact-info)": { + "args": ["allocation", "type-to-make", "proc", "pkup-type", "pkup-amount"], + "vars": { + "gp-0": ["obj", "fact-info"], + "s5-0": "ent", + "sv-16": "tag" + } + }, + + "(method 0 align-control)": { + "vars": { "v0-0": ["obj", "align-control"] } + }, + + "str-load": { + "args": ["name", "chunk-id", "address", "len"], + "vars": { "s2-0": ["cmd", "load-chunk-msg"] } + }, + + "str-load-status": { + "args": ["length-out"], + "vars": { "v1-7": "response" } + }, + + "str-play-async": { + "args": ["name", "addr"], + "vars": { "s4-0": "cmd" } + }, + + "str-play-stop": { + "args": ["name"], + "vars": { "s5-0": "cmd" } + }, + + "str-play-queue": { + "args": ["name"], + "vars": { "s5-0": "cmd" } + }, + + "str-ambient-play": { + "args": ["name"], + "vars": { "s5-0": "cmd" } + }, + + "str-ambient-stop": { + "args": ["name"], + "vars": { "s5-0": "cmd" } + }, + + "string->sound-name": { + "args": ["str"], + "vars": { + "v1-0": "snd-name", + "a1-0": ["out-ptr", "(pointer uint8)"], + "a2-0": "in-ptr" + } + }, + "dgo-load-begin": { + "args": ["name", "buffer1", "buffer2", "current-heap"], + "vars": { "s2-0": "cmd" } + }, + + "dgo-load-get-next": { + "args": ["last-object"], + "vars": { "gp-0": ["load-location", "pointer"], "v1-5": "response" } + }, + + "dgo-load-continue": { + "args": ["current-heap"], + "vars": { "gp-0": "cmd" } + }, + "dgo-load-cancel": { + "vars": { "a2-0": "cmd" } + }, + + "find-temp-buffer": { + "args": ["size"], + "vars": { "gp-0": "qwc" } + }, + + "dgo-load-link": { + "args": ["obj-file", "heap", "print-login", "last-object"], + "vars": { "s4-0": "obj-data" } + }, + + "ramdisk-load": { + "args": ["file-id", "offset", "length", "buffer"], + "vars": { "v1-1": "cmd" } + }, + + "show-mc-info": { + "args": ["dma-buf"], + "vars": { "s5-0": "info", "s4-0": "slot-idx" } + }, + + "(method 19 res-lump)": { + "args": ["obj", "name-sym", "mode", "time"], + "vars": { + "t2-4": "type-chars", + "t3-1": "max-search", + "t4-0": "min-search", + "t6-5": "diff", + "t5-2": "check-idx", + "t4-1": "tag-idx", + "t3-13": "interp-tag-idx", + "t4-4": "tag-ptr", + "t0-6": "lo-tag-idx-out", + "v1-14": "hi-tag-idx-out", + "t1-0": "most-recent-invalid-time-idx" + } + }, + + "entity-actor-count": { + "args": ["res", "name"], + "vars": { + "sv-16": "tag" + } + }, + + "(method 0 joint-mod)": { + "args": ["allocation", "type-to-make", "mode", "proc", "joint-idx"], + "vars": { + "gp-0": "obj", + "v1-7": "twist-max" + } + }, + + "joint-mod-debug-draw": { + "args": ["mod"] + }, + + "(method 9 joint-mod)": { + "args": ["obj", "handler-mode"], + "vars": { "v1-0": "joint", "a0-1": "mode" } + }, + + "(method 10 joint-mod)": { + "args": ["obj", "target-trans"], + "vars": { "f0-0": "distance" } + }, + + "(method 13 joint-mod)": { "args": ["obj", "x", "y", "z"] }, + "(method 14 joint-mod)": { "args": ["obj", "trans", "rot", "scale"] }, + "(method 11 joint-mod)": { + "args": ["obj", "target-trans", "option", "proc"], + "vars": { + "s1-0": "proc-drawable", + "s3-1": ["enemy-facts", "fact-info-enemy"], + "f30-0": "dist" + } + }, + + "joint-mod-look-at-handler": { "args": ["csp", "xform", "mat"] }, + "(method 9 collide-history)": { + "args": ["obj", "cshape", "xs", "transv", "transv-out"] + }, + + "add-debug-sphere-from-table": { + "vars": { "s1-0": ["points", "(inline-array vector)"] } + }, + + "entity-actor-lookup": { + "args": ["lump", "name", "idx"] + }, + + "(method 0 actor-link-info)": { + "args": ["allocation", "type-to-make", "proc"], + "vars": { "s5-0": "obj", "a0-1": "ent" } + }, + + "(method 25 actor-link-info)": { + "vars": { "s5-0": "actor", "gp-0": "count" } + }, + + "(method 9 actor-link-info)": { + "args": ["obj", "matching-type"], + "vars": { "s3-0": "actor", "s5-0": "mask", "s4-0": "current-bit" } + }, + + "(method 10 actor-link-info)": { + "vars": { "s5-0": "this-actor", "s4-0": "actor", "gp-0": "count" } + }, + + "alt-actor-list-subtask-incomplete-count": { + "vars": { + "s4-0": "alt-actor-count", + "gp-0": "incomplete-count", + "s3-0": "alt-actor-idx" + } + }, + + "check-irx-version": { + "vars": { "gp-0": ["cmd", "sound-rpc-get-irx-version"] } + }, + "sound-bank-load": { + "vars": { "v1-1": ["cmd", "sound-rpc-load-bank"] } + }, + "sound-bank-unload": { + "vars": { "v1-1": ["cmd", "sound-rpc-unload-bank"] } + }, + "sound-music-load": { + "vars": { "v1-1": ["cmd", "sound-rpc-load-music"] } + }, + "sound-music-unload": { + "vars": { "v1-1": ["cmd", "sound-rpc-unload-music"] } + }, + "sound-reload-info": { + "vars": { "v1-1": ["cmd", "sound-rpc-reload-info"] } + }, + "set-language": { + "vars": { "v1-1": ["cmd", "sound-rpc-set-language"] } + }, + "list-sounds": { + "vars": { "v1-1": ["cmd", "sound-rpc-list-sounds"] } + }, + "sound-set-volume": { + "vars": { "v1-0": ["cmd", "sound-rpc-set-master-volume"] } + }, + "sound-set-reverb": { + "vars": { "v1-0": ["cmd", "sound-rpc-set-reverb"] } + }, + "sound-set-ear-trans": { + "vars": { "gp-0": ["cmd", "sound-rpc-set-ear-trans"] } + }, + "sound-play-by-name": { + "args": ["name", "id", "vol", "pitch", "bend", "group", "trans"], + "vars": { + "s5-0": ["cmd", "sound-rpc-play"], + "s3-1": ["proc", "process-drawable"], + "s4-0": "sound-trans" + } + }, + "sound-play-by-spec": { + "args": ["spec", "id", "trans"], + "vars": { + "s5-0": ["cmd", "sound-rpc-play"], + "s3-1": ["proc", "process-drawable"] + } + }, + "sound-pause": { + "vars": { "v1-0": ["cmd", "sound-rpc-pause-sound"] } + }, + "sound-stop": { + "vars": { "v1-0": ["cmd", "sound-rpc-stop-sound"] } + }, + "sound-continue": { + "vars": { "v1-0": ["cmd", "sound-rpc-continue-sound"] } + }, + "sound-group-pause": { + "vars": { "v1-0": ["cmd", "sound-rpc-pause-group"] } + }, + "sound-group-stop": { + "vars": { "v1-0": ["cmd", "sound-rpc-stop-group"] } + }, + "sound-group-continue": { + "vars": { "v1-0": ["cmd", "sound-rpc-continue-group"] } + }, + "sound-set-falloff-curve": { + "vars": { "v1-0": ["cmd", "sound-rpc-set-falloff-curve"] } + }, + "sound-set-sound-falloff": { + "vars": { "v1-0": ["cmd", "sound-rpc-set-sound-falloff"] } + }, + "sound-set-flava": { + "vars": { "v1-0": ["cmd", "sound-rpc-set-flava"] } + }, + "(method 0 ambient-sound)": { + "vars": { "s5-1": ["obj", "ambient-sound"], "v1-2": "bc" } + }, + "(method 9 ambient-sound)": { + "vars": { "s5-1": "spec", "s4-2": "spec-volume" } + }, + "(method 11 ambient-sound)": { + "vars": { "gp-0": ["cmd", "sound-rpc-set-param"] } + }, + "(method 12 ambient-sound)": { + "vars": { "v1-2": ["cmd", "sound-rpc-set-param"] } + }, + "sound-buffer-dump": { + "vars": { "s3-0": ["cmd", "sound-rpc-play"] } + }, + + "(method 0 path-control)": { + "args": ["allocation", "type-to-make", "proc", "name", "time"], + "vars": { + "gp-0": ["obj", "path-control"], + "s3-1": "ent", + "v1-7": "lookup-entity", + "sv-16": "tag", + "v1-9": "data" + } + }, + + "(method 0 curve-control)": { + "args": ["allocation", "type-to-make", "proc", "name", "time"], + "vars": { "gp-0": "obj", "s3-1": "ent", "v1-3": "lookup-entity" } + }, + + "nav-mesh-connect": { + "args": ["proc", "trans", "nav-cont"], + "vars": { + "s2-0": "ent", + "v0-0": "lookup-entity", + "s3-0": "entity-nav-mesh" + } + }, + + "(method 0 nav-control)": { + "args": [ + "allocation", + "type-to-make", + "shape", + "sphere-count", + "nearest-y-threshold-default" + ], + "vars": { "s5-0": ["obj", "nav-control"], "a0-3": "ent" } + }, + + "add-debug-point": { + "args": ["enable-draw", "bucket", "pt"], + "vars": { + "a0-6": ["a0-6", "(pointer uint64)"], + "a0-7": ["a0-7", "dma-packet"], + "a3-0": ["a3-0", "dma-packet"], + "a3-2": ["a3-2", "gs-gif-tag"], + "a3-4": ["a3-4", "vector4w-2"], + "a3-6": ["a3-6", "vector4w-2"], + "a3-8": ["a3-8", "vector4w-2"], + "a1-30": ["a1-30", "vector4w-2"], + "v1-7": "buf" + } + }, + "internal-draw-debug-line": { + "vars": { + "s2-0": ["s2-0", "rgba"], + "s5-0": ["s5-0", "rgba"], + "a3-1": ["a3-1", "dma-packet"], + "a3-3": ["a3-3", "gs-gif-tag"], + "a1-43": ["a1-43", "(inline-array vector4w-2)"], + "a0-31": ["a0-31", "(pointer uint64)"], + "a0-32": ["a0-32", "dma-packet"] + } + }, + "add-debug-flat-triangle": { + "vars": { + "a3-1": ["a3-1", "dma-packet"], + "a3-3": ["a3-3", "gs-gif-tag"], + "a3-5": ["a3-5", "(inline-array vector4w-3)"], + "a0-9": ["a0-9", "(pointer uint64)"], + "a0-10": ["a0-10", "dma-packet"] + } + }, + "add-debug-line2d": { + "vars": { + "a2-3": ["a2-3", "dma-packet"], + "a2-5": ["a2-5", "gs-gif-tag"], + "a2-7": ["a2-7", "(inline-array vector4w)"], + "a2-9": ["a2-9", "(inline-array vector4w)"], + "a0-20": ["a0-20", "(pointer uint64)"], + "v1-10": ["v1-10", "dma-packet"] + } + }, + "debug-percent-bar": { + "vars": { + "v1-5": ["v1-5", "dma-packet"] + } + }, + "debug-pad-display": { + "vars": { + "v1-12": ["v1-12", "dma-packet"] + } + }, + "internal-draw-debug-text-3d": { + "vars": { + "v1-11": ["v1-11", "dma-packet"] + } + }, + + "generic-init-buffers": { + "vars": { + "v1-8": ["packet", "dma-packet"], + "gp-0": ["gp-0", "gs-zbuf"], + "s5-0": ["s5-0", "gs-zbuf"] + } + }, + + "level-update-after-load": { + "args": ["loaded-level", "level-login-state"], + "vars": { + "s3-0": "level-drawable-trees", + "s5-0": "initial-timer", + "v1-4": "current-timer", + "v1-5": "elapsed-timer", + "s2-0": "current-login-pos", + "s2-1": ["current-drawable", "drawable-tree"], + "s1-0": "idx-in-drawable" + } + }, + + "(method 9 setting-data)": { + "vars": { + "s3-0": ["conn", "connection"] + } + }, + + "(method 12 level)": { + "vars": { + "s5-3": ["s5-3", "pair"] + } + }, + + "update-sound-banks": { + "vars": { + "t0-0": ["t0-0", "symbol"] + } + }, + + "(method 16 level-group)": { + "vars": { + "s1-0": ["s1-0", "continue-point"] + } + }, + + "(method 20 level)": { + "vars": { + "s3-0": ["s3-0", "ramdisk-rpc-fill"] + } + }, + + "(method 9 game-info)": { + "args": ["obj", "cause", "save-to-load", "continue-point-override"], + "vars": { + "v1-0": "selected-cause", + "s4-1": "lev-info" + } + }, + + "(method 10 game-info)": { + "args": ["obj", "item", "amount", "source"], + "vars": { + "v1-10": "proc", + "s4-1": "level-idx", + "a0-35": "buzz-task", + "s4-2": "buzz-index", + "f30-0": "buzz-count", + "s3-0": "ctrl", + "s5-2": "buzz-bits" + } + }, + + "(method 14 game-info)": { + "args": ["obj", "lev"], + "vars": { + "s5-0": "perms", + "s4-0": "lev-entities", + "s3-0": "lev-entity-idx", + "s2-0": "lev-entity-perm", + "v1-8": "info-entity-perm" + } + }, + + "(method 15 game-info)": { + "args": ["obj", "lev"], + "vars": { + "s5-0": "lev-entities", + "s4-0": "lev-entity-idx", + "s3-0": "lev-entity-perm", + "v1-7": "info-entity-perm" + } + }, + + "(method 25 game-info)": { + "args": ["obj", "save"], + "vars": { + "v1-0": ["save-data", "game-save-tag"], + "s4-0": ["data", "game-save-tag"], + "v1-9": "old-base-frame", + "v1-10": "frame-counter-diff" + } + }, + + "(method 10 game-save)": { + "args": ["obj", "filename"], + "vars": { + "s5-0": "stream", + "s3-0": "in-size", + "s4-0": "my-size" + } + }, + + "(method 11 game-save)": { + "args": ["obj", "detail"], + "vars": { + "s4-0": ["tag", "game-save-tag"], + "s3-0": "tag-idx", + "s2-1": "prog-lev-idx", + "a2-13": "lev-name" + } + }, + + "debug-menu-func-decode": { + "vars": { + "v0-0": ["ret-val", "symbol"] + } + }, + + "letterbox": { + "vars": { + "s5-0": "dma-buf", + "v1-5": ["pkt", "dma-packet"] + } + }, + + "blackout": { + "vars": { + "s5-0": "dma-buf", + "gp-0": "sprite-dma-data", + "v1-4": ["pkt", "dma-packet"] + } + }, + + "set-master-mode": { + "args": ["new-mode"], + "vars": { "v1-3": "mode" } + }, + + "main-cheats": { + "vars": { + "v1-13": "cheatmode-state", + "v1-158": "cheatmode-debug-state", + "v1-303": "cheat-language-state", + "v1-394": "cheat-pal-state", + "s5-9": "dma-buff", + "gp-9": "dma-start", + "v1-533": ["dma-pkt", "dma-packet"], + "gp-10": "timeout", + "v1-548": "inactive-timeout", + "gp-11": "game-end-proc" + } + }, + + "load-game-text-info": { + "args": ["txt-name", "curr-text", "heap"], + "vars": { + "sv-16": "heap-sym-heap", + "sv-24": "lang", + "sv-32": "load-status", + "sv-40": "heap-free" + } + }, + + "(method 13 art-group)": { + "vars": { + "s3-0": "art-elt", + "s4-0": "janim", + "v1-9": "janim-group", + "s2-0": "success" + } + }, + + "(method 14 art-group)": { + "vars": { + "s3-0": "art-elt", + "s4-0": "janim", + "v1-9": "janim-group", + "s3-1": "success" + } + }, + + "(method 16 process-drawable)": { + "vars": { + "s3-0": "body-T-world", + "s0-0": "world-T-body", + "s2-0": "grav-rt-body", + "a1-5": "vel-rt-body" + } + }, + + "(method 11 cam-float-seeker)": { + "args": ["obj", "offset"], + "vars": { + "f1-2": "pos-error", + "f0-5": "partial-velocity-limit", + "f1-3": "daccel", + "f1-6": "abs-vel", + "f0-6": "abs-vel-limit", + "f0-10": "dpos" + } + }, + + "(method 9 trsqv)": { + "args": ["obj", "dir", "vel", "frame-count"], + "vars": { + "f0-0": "yaw-error", + "f1-2": "yaw-limit", + "f30-0": "saturated-yaw", + "a1-2": "quat", + "f0-2": "old-diff" + } + }, + + "(method 13 trsqv)": { + "args": ["obj", "yaw", "vel", "frame-count"] + }, + + "(method 16 trsqv)": { + "vars": { + "s5-0": "quat", + "s1-0": "grav", + "s3-0": "rot-mat", + "s4-0": "dir-z", + "a0-4": "dir-x" + } + }, + + "(method 25 trsqv)": { + "vars": { + "s5-0": "quat", + "gp-0": "dir-z", + "s5-1": "dir-y", + "a1-2": "dir-grav", + "v1-2": "grav-z-plane", + "f0-1": "grav-dot" + } + }, + + "(method 17 trsqv)": { + "args": ["obj", "target", "y-rate", "z-rate"], + "vars": { + "gp-0": "quat", + "s5-0": "temp-quat" + } + }, + + "raw-ray-sphere-intersect": { + "vars": { + "v0-0": ["result", "float"], + "v1-0": ["v1-0", "float"] + } + }, + + "ray-sphere-intersect": { + "args": ["ray-origin", "ray-dir", "sph-origin", "radius"] + }, + + "ray-circle-intersect": { + "args": ["ray-origin", "ray-dir", "circle-origin", "radius"] + }, + + "ray-cylinder-intersect": { + "args": [ + "ray-origin", + "ray-dir", + "cyl-origin", + "cyl-axis", + "cyl-rad", + "cyl-len" + ] + }, + + "(method 10 cylinder)": { + "args": ["obj", "probe-origin", "probe-dir"], + "vars": { + "f30-0": "result", + "f0-5": "u-origin-sph", + "s4-0": "end-pt", + "f0-8": "u-end-sphere" + } + }, + + "(method 10 cylinder-flat)": { + "args": ["obj", "probe-origin", "probe-dir"], + "vars": { + "f30-0": "result", + "f0-5": "u-origin-circle", + "s5-0": "end-pt", + "f0-8": "u-end-circle" + } + }, + + "ray-arbitrary-circle-intersect": { + "args": [ + "probe-origin", + "probe-dir", + "circle-origin", + "circle-normal", + "radius" + ] + }, + + "print-tr-stat": { + "args": ["stat", "name", "dest"] + }, + + "update-subdivide-settings!": { + "args": ["settings", "math-cam", "idx"] + }, + + "start-perf-stat-collection": { + "vars": { + "v1-2": "frame-idx", + "v1-5": "bucket", + "a0-2": "which-stat", + "a0-7": "stat-idx" + } + }, + + "ja-play-spooled-anim": { + "vars": { + "sv-16": "spool-part", + "sv-28": "old-skel-status", + "sv-64": "spool-sound" + } + }, + + "(method 3 anim-tester)": { + "vars": { + "s5-0": ["s5-0", "anim-test-obj"], + "s4-0": ["s4-0", "anim-test-sequence"], + "s3-0": ["s3-0", "anim-test-seq-item"] + } + }, + + "anim-test-obj-item-valid?": { + "vars": { + "s5-0": ["s5-0", "anim-test-sequence"] + } + }, + + "anim-test-obj-remove-invalid": { + "vars": { + //"s5-0": ["s5-0", "anim-test-sequence"], + "v1-31": ["v1-31", "anim-test-sequence"], + "s3-0": ["s3-0", "anim-test-seq-item"], + "s2-0": ["s2-0", "anim-test-seq-item"] + } + }, + + "anim-tester-reset": { + "vars": { + "v1-1": ["v1-1", "anim-test-obj"] + } + }, + + "anim-tester-save-object-seqs": { + "vars": { + "s4-2": ["s4-2", "anim-test-seq-item"] + } + }, + + "sprite-setup-header": { + "args": ["hdr", "num-sprites"] + }, + + "(method 0 sprite-aux-list)": { + "args": ["allocation", "type-to-make", "size"] + }, + + "sprite-setup-frame-data": { + "args": ["data", "tbp-offset"] + }, + + "(method 0 sprite-array-2d)": { + "args": ["allocation", "type-to-make", "group-0-size", "group-1-size"], + "vars": { + "v1-0": "sprite-count", + "s4-0": "vec-data-size", + "a2-3": "adgif-data-size" + } + }, + + "(method 0 sprite-array-3d)": { + "args": ["allocation", "type-to-make", "group-0-size", "group-1-size"], + "vars": { + "v1-0": "sprite-count", + "s4-0": "vec-data-size", + "a2-3": "adgif-data-size" + } + }, + + "sprite-set-3d-quaternion": { + "args": ["data", "quat"] + }, + "sprite-get-3d-quaternion": { + "args": ["data", "quat"] + }, + "sprite-add-matrix-data": { + "args": ["dma-buff", "matrix-mode"], + "vars": { + "v1-0": "count", + "a2-1": ["pkt1", "dma-packet"], + "a1-2": ["mtx", "matrix"], + "a2-9": ["pkt2", "dma-packet"], + "a1-11": "mtx2", + "a1-20": "hvdf-idx" + } + }, + + "sprite-add-frame-data": { + "args": ["dma-buff", "tbp-offset"], + "vars": { + "a0-1": ["pkt", "dma-packet"] + } + }, + + "sprite-add-2d-chunk": { + "args": [ + "sprites", + "start-sprite-idx", + "num-sprites", + "dma-buff", + "mscal-addr" + ], + "vars": { + "a0-1": ["pkt1", "dma-packet"], + "s1-0": "qwc-pkt1", + "a1-7": "qwc-pkt2", + "a0-5": ["pkt2", "dma-packet"], + "a1-11": "qwc-pkt3", + "a0-7": ["pkt3", "dma-packet"], + "v1-7": ["pkt4", "dma-packet"] + } + }, + + "sprite-add-2d-all": { + "args": ["sprites", "dma-buff", "group-idx"], + "vars": { + "s4-0": "current-sprite-idx", + "s2-0": "remaining-sprites", + "s3-0": "mscal-addr" + } + }, + + "sprite-add-3d-chunk": { + "args": ["sprites", "start-sprite-idx", "num-sprites", "dma-buff"], + "vars": { + "a0-1": ["pkt1", "dma-packet"], + "s2-0": "qwc-pkt1", + "a1-7": "qwc-pkt2", + "a0-5": ["pkt2", "dma-packet"], + "a1-11": "qwc-pkt3", + "a0-7": ["pkt3", "dma-packet"], + "v1-7": ["pkt4", "dma-packet"] + } + }, + + "sprite-add-3d-all": { + "args": ["sprites", "dma-buff", "group-idx"], + "vars": { + "s4-0": "current-sprite-idx", + "s3-0": "remaining-sprites" + } + }, + + "sprite-add-shadow-chunk": { + "args": ["shadow-buff", "start-idx", "num-sprites", "dma-buff"], + "vars": { + "s2-0": "qwc-pkt1", + "a0-1": ["pkt1", "dma-packet"], + "a1-7": "qwc-pkt2", + "a0-5": ["pkt2", "dma-packet"], + "v1-5": "sprite-idx", + "a0-7": "dma-vec-data", + "a1-14": "in-vec-data", + "a1-15": "qwc-pkt3", + "a0-11": ["pkt3", "dma-packet"], + "s2-1": "si", + "s1-0": "dma-adgif-data", + "s0-0": "in-adgif-data", + "v1-21": ["pkt4", "dma-packet"] + } + }, + + "sprite-add-shadow-all": { + "args": ["shadow-buff", "dma-buff"], + "vars": { + "s4-0": "current-shadow", + "s3-0": "remaining-shadows" + } + }, + + "sprite-draw": { + "args": "disp", + "vars": { + "gp-0": "dma-mem-begin", + "s4-0": "dma-buff", + "s5-0": "dma-bucket-begin", + "a0-9": ["pkt1", "dma-packet"], + "a0-11": ["giftag", "gs-gif-tag"], + "a0-17": ["pkt2", "dma-packet"], + "a0-19": ["pkt3", "dma-packet"], + "a0-26": ["pkt4", "dma-packet"], + "v1-26": ["pkt5", "dma-packet"], + "v1-31": "mem-use" + } + }, + + "mem-usage-bsp-tree": { + "args": ["header", "node", "mem-use", "flags"] + }, + + "(method 8 bsp-header)": { + "args": ["obj", "mem-use", "flags"] + }, + + "(method 10 bsp-header)": { + "args": ["obj", "other-draw", "disp-frame"], + "vars": { + "s4-0": "lev", + "a2-3": "vis-list-qwc", + "v1-15": "vis-list-qwc2", + "a0-9": ["vis-list-spad", "(pointer uint128)"], + "a1-5": ["vis-list-lev", "(pointer uint128)"], + "a2-4": "current-qw" + } + }, + + "bsp-camera-asm": { + "args": ["bsp-hdr", "camera-pos"], + "vars": { + "v1-0": ["next-node", "bsp-node"], + "a1-1": "real-node" + } + }, + + "level-remap-texture": { + "args": ["tex-id"], + "vars": { + "v1-1": "bsp-hdr", + "a3-0": "table-size", + "v1-2": ["table-data-start", "(pointer uint64)"], + "t0-0": "table-data-ptr", + "a1-1": "mask1", + "a2-1": "masked-tex-id", + "a3-2": "table-data-end", + "t0-3": "midpoint", + "t1-1": "diff" + } + }, + + "debug-menu-make-from-template": { + "vars": { + "s5-1": ["s5-1", "string"] + } + }, + + "debug-menu-item-var-render": { + "vars": { + "v1-14": ["v1-14", "dma-packet"] + } + }, + + "generic-add-constants": { + "vars": { + "a0-1": ["a0-1", "dma-packet"] + } + }, + + "generic-init-buf": { + "vars": { + "a0-2": ["a0-2", "dma-packet"], + "a0-4": ["a0-4", "gs-gif-tag"], + "a0-9": ["a0-9", "dma-packet"], + "v1-7": ["v1-7", "(pointer int32)"] + } + }, + + "(anon-function 1 cam-combiner)": { + "vars": { + "pp": ["pp", "process"] + } + }, + + "(anon-function 2 cam-combiner)": { + "vars": { + "a0-3": ["vec", "(pointer vector)"] + } + }, + + "(method 14 sync-info)": { + "args": ["obj", "period", "phase"], + "vars": { + "f0-1": "period-float", + "f1-1": "value" + } + }, + + "(method 14 sync-info-eased)": { + "args": ["obj", "period", "phase", "out-param", "in-param"], + "vars": { + "f0-9": "total-easing-phase", + "f1-11": "total-normal-phase", + "f0-1": "period-float", + "f1-1": "value", + "f3-4": "y-end" + } + }, + + "(method 14 sync-info-paused)": { + "args": ["obj", "period", "phase", "out-param", "in-param"] + }, + + "(method 15 sync-info)": { + "args": [ + "obj", + "proc", + "default-period", + "default-phase", + "default-out", + "default-in" + ] + }, + + "(method 15 sync-info-eased)": { + "args": [ + "obj", + "proc", + "default-period", + "default-phase", + "default-out", + "default-in" + ] + }, + + "(method 15 sync-info-paused)": { + "args": [ + "obj", + "proc", + "default-period", + "default-phase", + "default-out", + "default-in" + ] + }, + + "(method 10 sync-info)": { + "vars": { + "v1-0": "period", + "f0-1": "period-float", + "f1-2": "current-time" + } + }, + + "(method 16 sync-info)": { + "args": ["obj", "user-time-offset"], + "vars": { + "a2-0": "period", + "f0-1": "period-float", + "v1-0": "wrapped-user-offset", + "f1-4": "current-time", + "f1-6": "current-time-wrapped", + "f1-10": "combined-offset", + "f0-3": "combined-offset-wrapped" + } + }, + + "(method 11 sync-info)": { + "vars": { + "v1-0": "period", + "f0-1": "period-float", + "f1-2": "current-time" + } + }, + + "(method 11 sync-info-paused)": { + "vars": { + "v1-0": "period", + "f1-0": "period-float", + "f0-1": "max-phase", + "f2-2": "current-time" + } + }, + + "(method 9 sync-info)": { + "args": ["obj", "max-val"], + "vars": { + "v1-0": "period", + "f0-1": "period-float", + "f1-2": "current-time" + } + }, + + "(method 13 sync-info)": { + "args": ["obj"], + "vars": { + "v1-0": "period", + "f1-0": "period-float", + "f2-2": "current-time", + "f0-1": "max-val", + "f0-2": "phase-out-of-2" + } + }, + + "(method 13 sync-info-eased)": { + "args": ["obj"], + "vars": { + "v1-0": "period", + "f1-0": "period-float", + "f0-1": "max-val", + "f2-2": "current-time", + "f0-2": "current-val", + "v1-2": "in-mirror?", + "f1-4": "tlo", + "f0-7": "eased-phase" + } + }, + + "(method 12 sync-info)": { + "args": ["obj", "max-out-val"], + "vars": { + "v1-0": "period", + "f1-0": "period-float", + "f0-1": "max-val", + "f2-2": "current-time", + "f0-2": "current-val" + } + }, + + "(method 12 sync-info-eased)": { + "args": ["obj", "max-out-val"] + }, + "(method 12 sync-info-paused)": { + "args": ["obj", "max-out-val"] + }, + + "(method 9 delayed-rand-float)": { + "args": ["obj", "min-tim", "max-time", "max-times-two"] + }, + + "(method 10 oscillating-float)": { + "args": ["obj", "target-offset"], + "vars": { "f0-3": "acc" } + }, + + "(method 9 oscillating-float)": { + "args": ["obj", "init-val", "accel", "max-vel", "damping"] + }, + + "(method 9 bouncing-float)": { + "args": [ + "obj", + "init-val", + "max-val", + "min-val", + "elast", + "accel", + "max-vel", + "damping" + ] + }, + + "(method 9 delayed-rand-vector)": { + "args": ["obj", "min-time", "max-time", "xz-range", "y-range"] + }, + + "(method 9 oscillating-vector)": { + "args": ["obj", "init-val", "accel", "max-vel", "damping"] + }, + + "(method 10 oscillating-vector)": { + "args": ["obj", "target-offset"], + "vars": { "f0-2": "vel" } + }, + + "(method 9 trajectory)": { + "args": ["obj", "time", "result"] + }, + + "(method 10 trajectory)": { + "args": ["obj", "time", "result"] + }, + + "(method 11 trajectory)": { + "args": ["obj", "from", "to", "duration", "grav"], + "vars": { "f0-3": "xz-vel" } + }, + + "(method 12 trajectory)": { + "args": ["obj", "from", "to", "xz-vel", "grav"], + "vars": { "f0-1": "duration" } + }, + + "(method 13 trajectory)": { + "args": ["obj", "from", "to", "y-vel", "grav"] + }, + + "(method 15 trajectory)": { + "vars": { + "s5-0": "prev-pos", + "s4-0": "pos", + "s3-0": "num-segments", + "f0-1": "t-eval" + } + }, + + "set-font-color-alpha": { + "args": ["idx", "alpha"] + }, + + "print-game-text-scaled": { + "args": ["str", "scale", "font-ctxt", "alpha"] + }, + + "print-game-text": { + "args": ["str", "font-ctxt", "alpha", "offset-thing"] + }, + + "display-frame-start": { + "args": ["disp", "new-frame-idx", "odd-even"], + "vars": { + "f30-0": "time-ratio", + "s3-0": "scaled-seconds", + "s3-1": "new-frame" + } + }, + + "display-frame-finish": { + "args": ["disp"], + "vars": { + "s4-0": "this-frame", + "s5-0": "this-calc-buf", + "s3-0": "bucket-idx", + "v1-7": "this-global-buf", + "a0-15": "global-buf", + "v1-19": "calc-current", + "a2-1": "calc-start", + "s4-1": "global-current", + "s5-1": "global-start", + "s3-1": "global-end" + } + }, + + "display-sync": { + "args": ["disp"], + "vars": { + "s4-0": "frame-idx", + "s5-0": "syncv-result", + "s3-0": "dma-buf-to-send", + "a1-4": "next-frame" + } + }, + + "draw-string": { + "args": ["str-in", "context"], + "vars": { + "v1-5": "fw", + "a1-1": "dma-out", + "t2-0": "flags", + "a3-0": "has-flag-size24", + "a3-1": "font-table-12", + "a3-2": "font-table-to-use", + "t0-0": "q-lo-tmpl", + "t1-0": "q-hi-tmpl", + "t3-0": "in-color", + "t3-1": "color-array-prod", + "t4-0": "fw+col", + "t3-2": "q-verts-0p", + "t5-0": "q-verts-1p", + "t3-3": "q-verts-2p", + "t4-1": "q-verts-3p", + "t5-1": "q-verts-1t", + "t5-2": "q-verts-1", + "t3-4": "q-verts-2t", + "t3-5": "q-verts-2", + "t6-0": "q-verts-0t", + "t6-1": "q-verts-0", + "t4-2": "q-verts-3t", + "t4-3": "q-verts-3", + "t3-6": "fw2", + "t4-4": "str-char", + "t5-3": "not-sc-lit1", + "t5-4": "not-sc-~", + "t4-14": "fc-cr", + "r0-0": "r0", + "r0-1": "r0", + "r0-2": "r0", + "r0-3": "r0" + } + }, + + "add-debug-outline-triangle": { + "args": ["enable", "bucket", "p0", "p1", "p2", "color"] + }, + + "unpack-comp-rle": { + "args": ["out", "in"], + "vars": { + "v1-2": "current-input", + "a2-0": "repeated-value", + "v1-3": "copy-length", + "a2-1": "src-val" + } + }, + + "(method 16 level)": { + "args": ["obj", "vis-info"], + "vars": { + "a0-1": "cam-leaf-idx", + "v1-1": "curr-vis-str", + "s4-0": "desired-vis-str", + "s4-1": "vis-buffer", + "s3-1": "vis-load-result", + "v1-28": "dest-bits", + "a1-3": "len", + "a0-19": "bsp-bits", + "a1-5": "len-qw", + "s2-0": "lower-flag-bits", + "s1-0": "spad-start", + "s0-0": "spad-end", + "s3-2": "list-len", + "v1-49": "list-qwc", + "v0-1": "result" + } + }, + + "(method 9 merc-fragment)": { + "vars": { + "s5-0": "fp-data", + "s4-0": "eye-ctrl", + "s3-0": "shader", + "v1-7": "eye-tex-block", + "v1-34": "eye-tex-block-2", + "v1-57": "tex", + "a0-36": "seg" + } + }, + + "(method 9 merc-effect)": { + "vars": { + "v1-0": "data", + "v1-1": "tex", + "a0-8": "seg", + "s3-0": "frag-idx", + "s2-0": "ctrl-size", + "s1-0": "geo-size", + "s4-0": ["geo", "merc-fragment"], + "s5-0": ["ctrl", "merc-fragment-control"] + } + }, + + "merc-vu1-add-vu-function": { + "args": ["dma", "func", "flush-mode"], + "vars": { + "v1-0": "func-data", + "a3-0": "qwc", + "a1-1": "dst", + "t0-1": "qwc-this-time" + } + }, + + "(method 8 merc-ctrl)": { + "vars": { + "s4-0": "ctrl-mem", + "s3-0": "effect-idx", + "s2-0": ["fctrl", "merc-fragment-control"], + "s1-0": "frag-idx", + "v1-35": "effect-mem", + "a0-15": "effect-idx2", + "a1-9": ["bctrl", "merc-blend-ctrl"], + "a2-1": "blend-frag-idx" + } + }, + + "(method 9 merc-ctrl)": { + "vars": { + "v1-3": "seg", + "s5-0": "effect-idx", + "a0-4": "idx-with-bit1", + "a0-7": "this-effect", + "a1-5": "last-effect", + "a2-6": "copy-idx" + } + }, + + "merc-vu1-init-buffer": { + "args": ["dma-bucket", "test"], + "vars": { + "gp-0": "bucket", + "s4-0": "dma-buf" + } + }, + + "(method 9 screen-filter)": { + "vars": { + "v1-4": ["v1-4", "dma-packet"], + "s5-0": "buf" + } + }, + + "(method 11 fact-info-target)": { + "args": ["obj", "kind", "amount", "source-handle"], + "vars": { "f0-29": "buzz-count", "f30-0": "eco-lev" } + }, + + "auto-save-init-by-other": { + "args": ["desired-mode", "notify-proc", "card-idx", "file-idx"] + }, + + "debug-menu-item-var-make-int": { + "args": [ + "item", + "callback", + "inc", + "has-range", + "range-min", + "range-max", + "hex" + ] + }, + + "debug-menu-item-var-make-float": { + "args": [ + "item", + "callback", + "inc", + "has-range", + "range-min", + "range-max", + "precision" + ] + }, + + "(method 0 debug-menu-item-var)": { + "args": ["allocation", "type-to-make", "name", "id", "max-width"] + }, + + "debug-menu-context-grab-joypad": { + "args": ["menu", "callback-arg", "callback-func"] + }, + + "debug-menu-context-default-selection": { + "args": ["ctxt", "keep-current"], + "vars": { + "s5-0": "menu", + "s4-0": "currently-active" + } + }, + + "debug-menu-rebuild": { + "args": ["menu"], + "vars": { + "s4-0": "max-width", + "s5-0": "entry-count", + "s3-0": "iter", + "a0-1": "current-item" + } + }, + + "debug-menu-context-set-root-menu": { + "args": ["context", "menu"], + "vars": { + "s4-0": "active" + } + }, + + "debug-menu-append-item": { + "args": ["menu", "item"], + "vars": { + "gp-0": "context", + "s4-0": "was-active" + } + }, + + "(anon-function 82 default-menu)": { + "vars": { "s4-0": ["s4-0", "texture-id"] } + }, + + "process-status-bits": { + "vars": { "s3-0": ["proc-draw", "process-drawable"] } + }, + + "(method 29 entity-actor)": { + "args": ["obj", "mode", "expected-type"] + }, + + "(method 13 level-group)": { + "args": ["obj", "mode", "expected-type"] + }, + + "(method 24 entity)": { + "args": ["obj", "lev-group", "lev", "aid"], + "vars": { + "v1-4": "level-link", + "t0-5": "other-prev", + "t1-1": "other-front" + } + }, + + "update-actor-vis-box": { + "args": ["proc", "min-pt", "max-pt"], + "vars": { "v1-4": "world-bounds-origin", "f0-0": "radius" } + }, + + "init-entity": { + "args": ["proc", "ent"] + }, + + "(method 22 entity-actor)": { + "vars": { + "s5-0": "entity-type", + "v1-0": "info", + "s4-0": "entity-process" + } + }, + + "(method 18 bsp-header)": { + "vars": { + "a2-0": "existing-actor-count", + "s4-0": "birth-idx", + "a0-4": "idx-to-birth", + "v1-25": "actor-to-birth", + "a2-5": "existing-amb-count", + "s4-1": "amb-array", + "s3-0": "bsp-ambs", + "a0-10": "amb-to-birth", + "s4-2": "cams" + } + }, + + "(code falling beach-rock)": { + "vars": { + "gp-2": ["gp-2", "handle"], + "s5-1": ["s5-1", "handle"] + } + }, + + "draw-percent-bar": { + "vars": { + "v1-3": ["v1-3", "dma-packet"] + } + }, + + "(dummy-17 progress)": { + "vars": { + "v1-20": ["v1-20", "dma-packet"], + "v1-81": ["v1-81", "dma-packet"] + } + }, + + "make-current-level-available-to-progress": { + "vars": { + "a0-0": "cur-lev", + "v1-7": "lev-idx" + } + }, + + "make-levels-with-tasks-available-to-progress": { + "vars": { + "gp-0": "i", + "s4-0": "ii", + "s5-0": "tasks" + } + }, + + "get-next-task-up": { + "args": ["cur-task-idx", "lev-idx"] + }, + "get-next-task-down": { + "args": ["cur-task-idx", "lev-idx"] + }, + "get-next-level-up": { + "args": ["lev-idx"] + }, + "get-next-level-down": { + "args": ["lev-idx"] + }, + + "calculate-completion": { + "args": ["the-progress"], + "vars": { + "sv-40": "total-cells", + "sv-48": "total-buzzers", + "sv-56": "total-orbs", + "sv-16": "current-cells", + "sv-24": "current-buzzers", + "sv-32": "current-orbs" + } + }, + + "(method 48 progress)": { + "args": ["obj", "screen", "option"] + }, + + "activate-progress": { + "args": ["creator", "screen"] + }, + + "(method 23 progress)": { + "args": ["obj", "aspect", "video-mode"] + }, + + "(method 35 progress)": { + "vars": { + "s4-0": ["s4-0", "game-text-id"] + } + }, + + "(method 43 progress)": { + "vars": { + "s4-0": ["s4-0", "game-text-id"] + } + }, + + "(method 38 progress)": { + "vars": { + "a1-1": ["a1-1", "game-text-id"] + } + }, + + "(post progress-debug)": { + "vars": { + "v1-7": ["v1-7", "dma-packet"], + "v1-16": ["v1-16", "dma-packet"], + "v1-25": ["v1-25", "dma-packet"], + "v1-34": ["v1-34", "dma-packet"] + } + }, + + "voicebox-track": { + "vars": { + "a0-1": "target" + } + }, + + "citb-drop-plat-drop-children": { + "vars": { + "v1-4": ["v1-4", "handle"] + } + }, + + "master-track-target": { + "vars": { + "v0-1": ["v0-1", "symbol"], + "v1-14": ["v1-14", "handle"] + } + }, + + "cam-los-spline-collide": { + "vars": { + "s3-0": ["s3-0", "(inline-array collide-cache-tri)"] + } + }, + + "cam-draw-collide-cache": { + "vars": { + "gp-0": ["gp-0", "(inline-array collide-cache-tri)"] + } + }, + + "cam-los-collide": { + "vars": { + "s1-1": ["s1-1", "(inline-array collide-cache-tri)"] + } + }, + + "(event cam-master-active)": { + "vars": { + // "v0-0": ["v0-0", "symbol"] + } + }, + + "(code plunger-lurker-plunge)": { + "vars": { + "gp-1": ["gp-1", "handle"], + "s5-0": ["s5-0", "othercam"] + } + }, + + "flying-lurker-play-intro": { + "vars": { + "gp-1": ["gp-1", "handle"] + } + }, + + "(code flying-lurker-start)": { + "vars": { + "v1-9": ["v1-9", "float"] + } + }, + + "(code flying-lurker-fly)": { + "vars": { + "v1-42": ["v1-42", "float"] + } + }, + + "(method 14 level-group)": { + "vars": { + "s1-1": ["s1-1", "process-drawable"] + } + }, + + "level-hint-displayed?": { + "vars": { + "a0-1": ["a0-1", "level-hint"] + } + }, + + "level-hint-init-by-other": { + "vars": { + "a0-6": ["a0-6", "string"] + } + }, + + "(method 27 entity-ambient)": { + "vars": { + "s5-0": ["s5-0", "symbol"] + } + }, + + "upload-vis-bits": { + "vars": { + "v1-2": "qwc", + "a0-1": ["lev-vis-bits", "(pointer uint128)"], + "a1-1": ["all-vis", "(pointer uint128)"], + "a2-2": ["spad-vis", "(pointer uint128)"] + } + }, + + "(event be-clone process-taskable)": { + "vars": { + "v0-0": ["v0-0", "shadow-geo"] + } + }, + + "(event idle process-taskable)": { + "vars": { + "v0-0": ["v0-0", "symbol"] + } + }, + + "(method 9 load-dir-art-group)": { + "args": ["obj", "art-name", "do-reload", "heap", "version"] + }, + + "(method 15 hud-money)": { + "vars": { + "v1-8": ["v1-8", "dma-packet"] + } + }, + + "(method 15 hud-money-all)": { + "vars": { + "v1-32": ["v1-32", "dma-packet"] + } + }, + + "(trans fisher-done)": { + "vars": { + "v1-13": ["v1-13", "dma-packet"] + } + }, + + "anim-tester-get-playing-item": { + "vars": { + "v0-0": ["v0-0", "anim-test-seq-item"] + } + }, + + "light-eco-mother-default-event-handler": { + "vars": { + "v0-0": ["v0-0", "int"] + } + }, + + "(method 7 sage-finalboss)": { + "vars": { + "v1-0": ["v1-0", "(inline-array sage-finalboss-particle)"] + } + }, + + "(code robotboss-white-eco-movie)": { + "vars": { + "gp-1": ["gp-1", "handle"] + } + }, + + "cam-collision-record-draw": { + "vars": { + "s5-0": ["s5-0", "cam-collision-record"] + } + }, + + "cam-collision-record-save": { + "vars": { + "v1-5": ["v1-5", "cam-collision-record"] + } + }, + + "cam-layout-save-cam-trans": { + "vars": { + "s5-1": ["s5-1", "vector"], + "s2-1": ["s2-1", "vector"] + } + }, + + "(method 15 level)": { + "vars": { + "v1-5": ["s5-1", "(inline-array box8s)"] + } + }, + + "aaaaaaaaaaaaaaaaaaaaaaa": {} +} diff --git a/goal_src/engine/game/main.gc b/goal_src/engine/game/main.gc index 5b20b2016a..cadf7be961 100644 --- a/goal_src/engine/game/main.gc +++ b/goal_src/engine/game/main.gc @@ -400,10 +400,10 @@ (check-cheat-code (-> *cheat-temp* 4) 0 ;; they erroneously used (-> *cheat-temp* 5) here! (triangle x circle square triangle x circle square) (cpad-clear-buttons! 0 r1) - (set! *progress-cheat* (if *progress-cheat* - #f - 'camera - )) + (set! *cheat-mode* (if (= *cheat-mode* 'camera) + #f + 'camera + )) (cond (*cheat-mode* (if (not *external-cam-mode*) diff --git a/scripts/batch/decomp-jak1sced.bat b/scripts/batch/decomp-jak1sced.bat new file mode 100644 index 0000000000..8d3935beea --- /dev/null +++ b/scripts/batch/decomp-jak1sced.bat @@ -0,0 +1,4 @@ +@echo off +cd ..\.. +out\build\Release\bin\decompiler decompiler\config\jak1_sced.jsonc iso_data\jak1sced decompiler_out\jak1sced +pause