Open questions

770 questions across 237 entries and 47 reference pages, quoted as each left it. A later entry closes one with resolves:, or takes it over with carries:.

  • 248
    The marks' face word, and the flight quads' screen test

    render

    1. The quads' screen test has not been compared on the oracle's picture.
  • 247
    Collectibles in the air, and before the slide

    play2 questions

    1. An air touch has not been seen against the original, only taken from the code.
    2. Template 711 (counted with the collectibles by 0x8005ed2c) and 1177 (not) are not in the port's touchable list.
  • 246
    A room's follow camera snaps as the original's switch

    play2 questions

    1. That place in level 1 as the player runs: the original's eye swings out in z (to 18659 in five frames) and its heading with it, the port's does not. Its flags there (0x2100000, 0x300000) are the pushes' signs. The likeliest cause is the view test's push along a stale stack slot holding an object's address (gameplay.md, Camera), which the port cannot know.
    2. The eye's x at rest after the snap: 28 off (24309 against 24281).
  • 245
    Collectibles met by the walk's probes

    play3 questions

    1. The follow camera there (0x80027304): why its eye sits 200 above the look-at in that part of level 1, and why it swings as the player runs.
    2. The air's touch (0x8005ee78: 0x80066014's object met, a class 11 touched and the move then not held), kept as the radius test.
    3. The nearby list's order also decides which object a probe meets first; the port meets the collectibles after the rest.
  • 244
    Sizes in set-up order, and the collectibles' box

    play

    1. Whether a collectible's ±375 box matters to anything but the sizes: the port's collectibles are taken by distance (0x800514b0, the model's radius plus the player's).
  • 243
    An object's size and bound as 0x80046570 makes them

    play2 questions

    1. A few objects hold a smaller +0x86 than their set-up gives, by room, though only 0x80046570 writes the cube:

      • level 3's 883: 5930 in rooms 0 and 35, 6172 in rooms 9 and 18;
      • level 6's spinner 1028: 1167 in room 14, 1432 in room 1;
      • level 1's 248 and 1130, level 3's 623, level 12's 960 and 1070.

      The smaller ones are the length of the box's greatest corner alone (1167 for 1028's (718, 557, 733)), as if those objects were set up when their box's least corner was different. The port gives them all their set-up value.

    2. The level 12 objects of template 0 (649) are collectibles' cubes on objects stack_check reads as template 0.
  • 242
    The nearby test, and no flight outside the rooms

    play3 questions

    1. The nearby list's order: the original goes over the player's room and its portal rooms, newest first. The port goes down its things from every room.
    2. The bound of the few big objects above. Their template's model is not what their bound was made from; it may come from a hierarchy or another model.
    3. A flight from outside every room has not been seen on the original.
  • 241
    The put-down's way ahead, and the object lists' order

    play4 questions

    1. An object put down outside every room: 0x8008864c makes no flight and 0x80062ac4 sets it on the floor (0x8005fdb4, +0x148). The port flies it.
    2. Spike's put-down is ported but unchecked. Level 4's things (105) could not be picked up by either side from stack_check's place. The part slot 0x24 back to model 79 is not ported.
    3. A stacked drop could not be set up on both. The way at mid-body height meets anything taller than about 160, so only a low thing can be dropped onto:

      • in level 18 the original would not pick up from the tool's place;
      • in level 13 the original's player ends 4800 higher after the put.
    4. The nearby list's order and test (0x8006add8, 0x8006abbc). The port measures from a thing's place with its farthest box corner and goes down the things in their own order. The original measures from the bound box's middle with +0x86, in its room lists' order, which the port does not keep.
  • 240
    Which rests on which, and GRAB's choice, as the original's

    play3 questions

    1. The nearby list's order (0x8006add8 over the rooms' lists). The port goes down its things in their own order, which decides ties and the stacking preference.
    2. Teleported next to a plank while carrying (stack_check, level 3), the original's player moves back 155 over two frames at any distance. At the pillar, the port's player rises 214 instead. The tool's put leaves the two overlapping in different ways, and neither push is traced.
    3. A put-down through stack_check could not be lined up on both, because the cameras turn Up differently after the put. The rest link is checked only through the function (above), not through a drop.
  • 239
    A launch's room, and the particles' object touches

    play2 questions

    1. A flight's stick (+0x98 = the object met, unless a character): what reads it.
    2. The flight quads' screen-edge cull and their split into four (0x8008a954, face flag 0x8000000).
  • 238
    Particle flights meet objects and hurt characters; class 17's enter sound

    play

    1. A flight's object touch (flag 0x40000 calls the object's +0x58) and its stick (+0x98 = the object met): not done for the particles.
  • 237
    The flights' second mark from the stop test, and npc_check's put on the floor

    render

    1. The marks' face bits (0xc080be00 on a wall, 0xc0802e00 on a floor, by the normal's y) and 0x8008e508's drawing; the port lays them as the pies'.
  • 236
    The looping sound sources as the original's, and placed sounds panned to the right side

    audio2 questions

    1. SsUtSetVVol's exact law against a tone's volume (retro_rt scales the tone's base).
    2. The camera after npc_check's put in level 3 (eye height off by about 270 from frame 5).
  • 235
    Doors scheduled by their triggers as the original's, level 26's roar synced; the sweep's sounds and flights all the original's in 24 levels

    engine4 questions

    1. Level 21: Angelica heads 20-25 units off the original from the first frame (she aims at the box in the player's hand; the hand's place there?), so her lunge (sound 121) comes 6 frames early.
    2. Level 9 under SYNCAT=1 (its own sync, level-09.md).
    3. The sound sources (0x8006fe04, voices 15-16, kept on and turned by distance each frame, 0x8006f88c): they need voice-addressed key on, volume and key off from retro_rt's SPU, which is waiting on approval to change retro_rt.
    4. The port-only sound after npc_check's put (the tool does not settle its player).
  • 234
    The render's rooms, the spinners' and characters' hit callbacks, the flights' marks and splashes, the shared count

    engine4 questions

    1. The marks' face bits (0xc080be00 / 0xc0802e00 by the tile) and their exact drawing (0x8008e508).
    2. The original's world test runs per room, so a drop crossing rooms can leave two marks where the port leaves one.
    3. Which VSync count the thinks read on hardware.
    4. Level 20's, 26's and 28's cameras in npc_check (the tool's put and player state), level 3's hinged door closing early (sound 54), and the port-only landing sound after npc_check's put (the tool's player is not settled).
  • 233
    The class 10 emitters as the original's: their clocks, schedule and callbacks

    engine5 questions

    1. The flights' marks (0x8008652c, drawn by 0x8008e72c / 0x8008e76c).
    2. What a flight meeting level 4's water calls (the splash 706's drops make).
    3. 706's flights' hit callback (+0x4c, its object's +0x5c).
    4. Which VSync count the think reads on the hardware: the oracle's frame-end count less one in npc_check, the count itself in the test harness.
    5. Seen beside the emitters and not theirs:

      • level 3's hinged door closing (sound 54, 0x8004f868) about 7 frames early;
      • level 3's character sound 51 (0x80084084);
      • a port-only sound (program 0, tone 5) some frames after a put;
      • level 5's and level 16's other launches near the emitters.
  • 232
    Level 5's robot bite, the cry and the respawn as the original's, frame for frame

    play2 questions

    1. The cry start's first body update (in state 0, before animation 16 is asked): the port runs only the second and matches here.
    2. The class 10 objects (0x8004e0f4 with the +0x50 table) and the sound sources' playing, from worklog 231.
  • 231
    The object set-up's changes to templates, models, places and copies; golf's ball and the guards' bite by the full line test

    play5 questions

    1. Level 5's robot bite scene: the port's robot bites a frame after the original's (frame 11), and the respawn spots differ ((38395, -5591, 28281) against (34864, -5365, -5324)).
    2. The sound sources' playing (0x8006fe04's record and its updater).
    3. Level 30's 1178 source picks its sound by rand at load, which the port does not draw.
    4. Level 1's 836 and 881 door use with +0x30 bit 16, and level 18's objects with no use.
    5. Class 10 objects in general (0x8004e0f4 with the +0x50 table 0x800b7eb0).
  • 230
    Every body's steps sound as the original's and the frames' events are the set-up's; the sweep compares the sounds

    play3 questions

    1. Level 21's footsteps after frame 7: the notes drift from the original's as the rand does.
    2. The golf holes' door sounds (24, 26, 29) until 0x8004691c's changes are in.
    3. Whether characters' landings set animation 190's frame (the port does it for any body's).
  • 229
    Reptar's fire and chomp match the original frame for frame without lag frames

    test2 questions

    1. Whether anything can hurt Reptar in normal play.
    2. The flames' count against the original's (the port breathes one a frame from the event, as the code says; not counted in the oracle).
  • 228
    The cines' characters cast the original's shadows

    render4 questions

    1. Which call in the cine's mover refreshes +0x13c (the floor query or the settling).
    2. Whether any cine puts a character over an object, whose top 0x8006c118 would take (the port's cines have no object solids).
    3. Which objects lie on a room's second list with +0x00 0x4000, against the port's "no character".
    4. Who reads floor flag 8.
  • 227
    The characters cast the original's shadows

    render3 questions

    1. The in-engine cines' shadows. play_cine draws through the same render (0x80030b80), so its characters have them, but the port's cine player (media/cine.rs) draws none.
    2. Which objects lie on a room's second list with +0x00 0x4000, against the port's "no character".
    3. Who reads floor flag 8.
  • 226
    COL floor flags 32 and 64 sink a character as drawn: level 4's deep water

    render2 questions

    1. The characters' shadow (0x8003414c with 0x8006c118): the port draws none.
    2. Who, if anyone, reads floor flag 8 (levels 1, 12, 13 and 18 have it).
  • 225
    The follow camera's stale normal is a stack slot holding an address in the original's memory

    engine3 questions

    1. Which record P's address is (a room's or an object list node, saved by a callee of 0x80090554 at that depth), and where 1642 comes from.
    2. Whether the real console lags where the oracle's instruction budget does.
    3. The order of the characters' updates against Angelica's in the frame of a knock.
  • 224
    The box toss's lunge steers, the box rides the hand without a grip, the knock lobs at the aim the babies leave, and the player's root across turns by frame

    play3 questions

    1. The view test's push from inside an object's box (the stale stack normal, worklog 221).
    2. Whether the real console lags where the oracle's instruction budget does.
    3. The order of the characters' updates against Angelica's in the frame of a knock: the port lets every baby run the aim test after it.
  • 223
    A state left in a step keeps what the step spent on it, the next gap is taken from the height as the step began, and the oracle can run without lag frames

    engine4 questions

    1. Level 20's three frames at a lunge's start (158-160): the original's heading turns by 352, then 160 a frame back. The lunge start (0x80084df0) falls through to the follow's speed and stick, and mode 8 (0x80084fc4) steers through the lunge (home past half the range with bit 2, else the player). The port's lunge does not steer.
    2. Level 21 from its knock: the player's own throw moves it within the port's frame, which the tool's placing of the player cannot follow.
    3. The view test's push from inside an object's box (the stale stack normal, worklog 221).
    4. Whether the real console lags where the oracle's instruction budget does: the budget is the oracle's, not a measured speed.
  • 222
    Levels 20 and 21 as the original: Angelica's lunge as state 28 stopped by what it meets, the knock's throw up, idle characters facing the player and walking home, followed things read where they are

    engine2 questions

    1. Level 20's three frames at a lunge's start (158-160): the original's heading turns by 352 then 160 a frame back, the port's not at all.
    2. Level 21 from its knock: the player's own throw moves it within the port's frame, which the tool's placing of the player cannot follow.
  • 221
    The follow camera's ray test is the original's: objects by their exact test, a start inside a box meeting it; the wall push's divide exact; the shelf's last camera difference is a stale stack normal

    engine3 questions

    1. The view test's push from inside an object's box (the stale stack normal): the follow camera on level 3's shelf parts by a few units from the run's first frame, so the crouch over an edge stays uncompared there.
    2. Levels 20 and 21's Angelica through her modes 4, 8 and the lunge.
    3. Level 5's robot 17 after the original's lag frame: the sweep tool's pairing.
  • 220
    The player turns in place as the original's stand asks it; a half turn keeps its sign; Spike and 34 turn slowly; the oracle's put leaves the floor

    engine4 questions

    1. The follow camera from a walk's or run's first frame (0x80027304): 2051 against 2048, 2059 against 2062 on level 3's shelf. It keeps the crouch over an edge from being compared.
    2. Whether the stand's turn in place runs for a carrying player (the port keeps the carry's idle).
    3. Levels 20 and 21's Angelica compared through her modes 4, 8 and the lunge.
    4. Level 5's robot 17 after the original's lag frame (dt 15): the sweep tool pairs frames a frame apart from there.
  • 219
    The trigger list's other entries act through the pass: speech lines, level 5's doors, level 12's batteries, the signs and sparklers, Cynthia; the cursor starts each level at the head

    engine3 questions

    1. Levels 20 and 21's Angelica compared through her modes 4, 8 and the lunge: the sweep tool syncs only the post and follow modes.
    2. Level 5's robot 17 after the original's lag frame (dt 15): the tool pairs frames a frame apart from there.
    3. The crouch over an edge.
  • 218
    The floor query puts a step's lift back with the place; the cry comes from damage, not the health; hole 26's Reptar takes the golf table: the sweep matches in levels 1-7, 9-18 and holes 23-31

    engine4 questions

    1. Levels 20 and 21's Angelica compared through her modes 4, 8 and the lunge: the tool syncs only the post and follow modes.
    2. Level 5's robot 17 after the original's lag frame (dt 15). The tool's frame ends there before the original's update: frame 3's root step prints before frame 3's place (still -8118), and frame 4 runs no update yet moves the place by the step. So the pairing is a frame apart from there. level_5_robot_wakes_as_the_original covers the robots frame by frame without a lag.
    3. The trigger pass's cursor at a level's start in play, and what the list's other entries do in the port (doors, speech lines, signs, batteries).
    4. The crouch over an edge.
  • 217
    A state's first frame moves by its gap, never its key: the sweep's characters match in 14 levels; level 10's babies hide at the original's spots; guards bite by bit 8

    engine6 questions

    1. Level 13's Angelica blocked at the start line (speed 17, not moving): the original's lift stays put; its handler drops the lift when the collision test (0x80066014, results 2 and 3 in 0x8005d978) blocks that way, where the port adds it.
    2. Level 5's robot 17 after the original's lag frame (dt 15): the tool's frame pairing shifts there.
    3. Levels 20 and 21's Angelica (600) is paired with an original object whose tracks are not a character's and that never moves; where the original keeps the box toss's Angelica is not found.
    4. The trigger pass's cursor at a level's start in play: the port starts at the front; the oracle's runs start wherever the boot left it.
    5. What the trigger list's other entries' enters do in the port (doors, speech lines, signs, batteries): each still runs by its own distance every frame.
    6. The crouch over an edge.
  • 216
    Level 5's robot matches the original for 45 frames: the set up's lift, a root on its keys, the guard's goal out of range, guards bite through modes 5, 1 and 0

    engine3 questions

    1. Which guards have +0x688 bit 512 instead of 8: the snap to the wanted heading, then animation 13 at 2048 and mode 1 with no mode 5. The port gives every guard mode 5; the robots' 0x200a and the geese's 10 have bit 8.
    2. What 0x80055170's channel test skips: a lift key whose channel the hierarchy does not map. The port takes every lift key.
    3. A follower's chase reads its height after its root's step (the guard's now before).
  • 215
    Level 5's robot wakes on the original's frame and turns as the original's: the trigger pass late in the frame, the turn in place held

    engine3 questions

    1. The robot's hover lift once it wakes. The original's closes the first frame's gap from -1244 toward its key (-1208, -939, -669, -515, -478). The port's root jumps to about -1120 and stays, so the robot is too high to be level with Angelica (0x80083ff0) and its first bite comes late.
    2. The guard's attack cycle as modes 5, 1 and 0 (animation 13, the bite 49), worklog 212.
    3. Other characters standing and turning (the turn in place for all).
  • 214
    The trigger list is the original's in every level and its pass runs five a frame; the loader's skipped objects are not made

    engine3 questions

    1. The cursor at a level's start in play (the oracle's runs start from wherever the boot left it).
    2. What the other entries' enters do in the port: the doors (843's 0x8004d078), the speech lines (0x8004d0f0), the signs, the batteries (0x8004cf58). The port still runs each of those by its own distance every frame; only the characters' schedule comes from the pass.
    3. Level 5's robot wake compared in the oracle with the pass's cursor given the original's.
  • 213
    A guard within reach turns to the player the original's way round, with the turn in place; the trigger pass's five a frame found

    play3 questions

    1. The trigger list in the port: which inits set +0x48 (0x80049e18, 0x8004d0f0, 0x8004d138, 0x8004cfa0, 0x8004cfd8, 0x8004f228, 0x8004d174, 0x80083f24 and the level scripts'), and the cursor at a level's start.
    2. The attack's snap (+0x688 bit 512) and animation 13, and the bite cycle as modes 5, 1 and 0 for the guards (worklog 212).
    3. Other characters standing and turning (the stand's turn in place for all, not only guards).
  • 212
    Level 5's ambience proven, the guards' attack test the original's, and the unused hint cards settled

    play3 questions

    1. The guard's turn and wait before an attack, its mode 1 (animation 13) and the bite cycle's 23 frames, ported (traced above).
    2. The robot's idle track state (63).
    3. Why npc_check's sync leaves level 11's runner a frame behind.
  • 211
    A jump begun mid-turn turns no more, as the original's

    play3 questions

    1. The crouch carried over an edge, frame by frame in the oracle.
    2. After a mid-turn jump's landing with Left still held, the original slides 40 across and turns a little slower than the port.
    3. Why level 6's put at (44500, -2293, 13300) settles 226 higher in the original.
  • 210
    Levels 9, 10 and 15's uses are ACTION's touched object, a character in the nearby list by its size

    play2 questions

    1. Levels 10's and 15's uses against the oracle at their edges, and a ball nearer than Mr. Friend taking the press in the oracle (the code says it does).
    2. Level 7's taken-by-touch (0x8005ab60) against the collision touch rather than its 1400 across.
  • 209
    The light walking, the carried thing in the body's box, ACTION's touched object, and running into things as the original

    play4 questions

    1. The other levels' uses still checked by distance (*_REACH: levels 1, 3, 5, 6, 7, 9, 10, 16) against the touched object.
    2. A bump's back-step drifts across from the original's by up to 5. The original holds one frame without motion between keys 428 and 429, and once turns a unit further.
    3. Turning in place after the stand, the heading and the camera are a unit off on a few frames (the follow camera's rounding).
    4. A climb onto a ledge while carrying, compared in the oracle: the route plays, but no oracle run climbs with a box.
  • 208
    A jump's crouch keeps its height, as the original's runs no ground step

    play

    1. The crouch carried over an edge, compared frame by frame in the oracle (no ledge found whose camera the test can match).
  • 207
    Only the pie in hand and flying pies are in the world; the ambience runs last; cines move characters in no room

    play3 questions

    1. Level 5's robot line against the oracle (level 5's boot needs the character hook; not run).
    2. Whether a flying pie at level 3's end is relinked by its flight (0x80049380 takes it out of its list mid-flight).
    3. Whether the babies' AI in room 12 (level 7) ever runs in the original (+0x00 bit 0x4000, never read by level 7's code).
  • 206
    Level 12's flashlight is the original's shot, and a struck Shadow monster shrinks where it was hit

    play3 questions

    1. The light's speed term while walking (+0xd8..+0xdc turned by the angles) is not compared; standing it is 0.
    2. Which of the player's and a struck monster's updates comes first on the frame its size runs out: no frame where the order shows was seen.
    3. Monster 3333 put far from the camera: the original's hand matrix stayed where Tommy was last drawn (+0x158 is only made by a draw), so a teleported Tommy's shot starts at the old place. The port draws every frame and has no culling of the player.
  • 205
    A pie's hit flashes its mark for a frame as the original's does; COL tile byte +5 is the shade

    render2 questions

    1. What sets an entry's +0x08 bit 1 (an entry that stays): the golf aim line is made every frame, so it needs none; no persistent user is known.
    2. Tile byte +4 and +7.
  • 204
    A first frame begun again takes its lift's gap anew, characters of template flag 0x10000000 are put unsettled; settled unknowns out of the docs

    play2 questions

    1. Where level 4's rats and level 15's Spike are put (the placement that would show unsettled in play) is not compared against the original.
    2. The convergence point of a re-begun first frame depends on where the body came from; the oracle's babies (37) came from above, the port's from the sync (16).
  • 203
    Level 3's brothers wait at height -384 and the step's lift, the toss's pies are the shared ones and its strikes are its own; a level 3 pie matches the original

    play2 questions

    1. The pie's strike on a brother is not compared frame for frame: the original's lag frame comes before it in this run.
    2. The first-frame gap for a brother's wait as the port has it (its root curve's blend from where the body was) against 0x80055904's (+0xde).
  • 202
    The tools compare a character's height: the original's has the root's lift in it, the port's place is the floor and the feet; Mr. Friend's posed parts are the original's to the unit

    test4 questions

    1. Level 11's runner on its posts is 1 off on about half its frames. Its lift is the original's; the floor under a runner differs by one, a rounding of the slope not found.
    2. Level 20's babies draw 21 below the original's (lift 16 for 37). Their base track begins its first frame again every frame (the stand's re-ask, worklog 198), and the original takes the frame's whole lift there, where the port blends from where the body was.
    3. Level 3's brothers at their posts (worklog 201): the wait (table 31, a state whose word has 32) moves the original's place by the lift's changes, and an adult's lift there (+0xde 1325) is not the place's. Not settled.
    4. Level 2's follower Chuckie is off on 74 frames and level 10's hiders on 3; not looked at.
  • 201
    Level 16's pies are six objects thrown and flown as the original's, the held player kept to the camera and on his spot; a pie matches the original every frame

    play4 questions

    1. Level 3's toss keeps the port's own pies. Its pies fly the same flight, and the original's met Steve 2000 short of him, from the bounds cube's edge with the radius grown by 405 (0x80086340, seen). The port's brothers wait with their root curve's height 1024 to 1202 under their place (the wait, table 31, starts at a lift key of 525, scaled 2.3 for an adult). The original keeps the same field (+0xde 1325) but its place is 119 over the port's. How a body's root height enters its posed parts and its place for adults is not settled, so the port's pies pass over them.
    2. Toward that, level 3's toss sets template flag 8 on templates 489, 566 and 488 (0x8007bc60) and clears it after (0x8007e3c0); Game::set_template_solid does that, and level 3 does not use it yet.
    3. The mark a pie leaves (sprite 284, 900 square, 0x8008e72c / 0x8008e76c) is not drawn.
    4. What the toss's end does with the pies left (the port puts them away).
  • 200
    The put-down flies as the original's flight, the port's own flight is gone; frame events, the hierarchy box, the movie frame size and the cine record length named

    play3 questions

    1. HIE header +0x02 (2 to 7) and a part's +0x20, which is 0 but in DB08, where its high half is depth + 1.
    2. A room blob's u16s at +0x0a and +0x12: they vary by blob, 0 to 0x8172, and the room renderer (0x80010e14) does not read them.
    3. The pies (level 3's bakery, level 16's booth) still roll by the port's own model; they are flights of flags 0x0a070400 in the original (gravity 1, ending on a wall).
  • 199
    Characters held at a slant neither slide nor climb, the cry comes with the damage and runs its 210 frames; Mr. Friend in levels 9 and 14 matches the original every frame

    play3 questions

    1. Level 13's Angelica in npc_check: the port's race is not under way at its frame 0 when the original's is. The race itself is proven by level_13_angelica_races_as_the_original.
    2. Level 20's Angelica: her lunge depends on the player, whom the tool does not move.
    3. The cry from damage other than a posted Damage (a hazard's touch): when in the frame the original's ForceCry comes.
  • 198
    Level 10's hiders hold their hiding pose, standing bodies re-ask their after state, the box toss idle and level 12's lone Tommy match the original; the oracle's tools fixed

    play4 questions

    1. Level 10's hiding spots: the port's rand at EpisodeStart is not the original's (every draw since the front end would have to match), so the hiders draw other spots.
    2. Turning in place while standing (0x80059204, animations 52 and 53): no port character does.
    3. Level 20's Angelica: her lunge depends on where the player is, which npc_check does not give the port; no oracle script plays the box toss.
    4. The original's lag frames: the port always steps dt 10.
  • 197
    Characters step through the shared body; the probe ahead's fall; posts and waits as the original's

    play3 questions

    1. +0x688 bit 16's post choice (a neighbour whose post's room flag has bit 1, D_800c4bac): no port character has it.
    2. The player's own falls now come from the probe ahead too; no oracle script has the player walk off an edge yet.
    3. The landing on a character's body: the port's floor snap, not the original's 0x800627a0.
  • 196
    Characters run only when scheduled, by script or trigger

    play4 questions

    1. Level 12: the original schedules 14 (Spike) at its start with Tommy (1492) as his target (0x8007bb84). The port hides Spike until later, and the character it pairs with the original's moving one is its 1492.
    2. The trigger list takes five entries a frame in turn (with the objects' and talkers' own); the port checks every character every frame.
    3. Characters animated on both sides but off: level 6's 506, level 10's and level 11's 1492, level 13's and level 20's racers and babies.
    4. Level 21 after 900 frames: the original's Angelica is still, the port's follows.
  • 195
    A character's hit, its walk and its root as the original's; damage to characters posted

    play4 questions

    1. Which animations carry event 0x2000 besides the stagger.
    2. Level 14's Mr. Friend (every hit staggers, no aim): kept as the port had it.
    3. The other levels' things that strike characters still take health at once (their hooks: 0x8007eb68 level 2, 0x8007e308 level 3, 0x8007eafc level 16).
    4. The player's damage while +0xf8 is set (0x80077864 skips it): what +0xf8 is.
  • 194
    Followers bite in the original's mode cycle; damage posted a frame late

    play4 questions

    1. Mode 1's wait on event 0x2000 (300 + (rand & 3) x 300 dt with no body update): which animations carry 0x2000, and whether Rand is 0x8002fb7c's.
    2. Mode 5's sounds by template (495, 882, characters 41 and 43), still left to the levels.
    3. The other player damage that goes through 0x800780ac (a thing run into, a flight, the slip and fall) still hurts at once.
    4. The lunge (mode 8 within the range with +0x688 bit 128).
  • 193
    Characters move as 0x80082264 moves them; the seat's held probe; post cameras

    play7 questions

    1. Mr. Friend's first frames: the original holds him in mode 1 (state 19, +0x69c a random 300 to 1200 down by dt) after cine 17, then mode 0 and 4. The port starts him at once.
    2. The follow mode's other exits (0x80084cd0): the lunge (mode 8, state 28) within range with +0x688 bit 128, and the bite (mode 5) within half the range with the boxes overlapping (0x80083ff0). The port keeps its own bite rule.
    3. The NPCs' floor and walls on the step: the port's own query, not the shared body's probes (0x80064838).
    4. The casts take every object; the original walks only the rooms along the segment (0x8002ade0).
    5. Level 11's post camera leads with the player's speed (0x800249cc's own branch); not ported.
    6. Why the original ran late on that seat frame (the emulator's timing or the game's own load); whether a real PlayStation does.
    7. Level 6's camera (Chuckie's box script holds no camera assert).
  • 192
    Rolling throws, level 9's aim, flights after the objects

    play4 questions

    1. Mr. Friend's chase: the original keeps him in state 19, then 0, for four frames and then walks him at 39 a frame (speed index 4 at +0x184, the way +0x178 a short (0, 0, 3)). The port starts him at once at double speed (2 x base past twice his range). Both the move (0x80084084's follow, the shared body step) and its timing need porting.
    2. What +0x18c == 8 is for the player (0x80061c98 then throws without the aim).
    3. Golf's ball still meets objects by the port's boxes and the world by its own segment, not 0x80086668.
    4. The put-down still slides by the port's stand-in; 0x80062ac4 launches through the same 0x80061f88, so a rolling template's put-down rolls.
  • 191
    Held standing puts the speed by

    play2 questions

    1. The seat script: on the first frame from a standstill the original's way (+0x178, the body's matrix at +4 turned onto (0, 0, 4096)) points 45 degrees off the heading it was put at, even with +4 written, and its speed is 0. Something else rebuilds +4; the follow camera parts from there.
    2. Level 6's room camera (the port reports no heading from a fixed camera).
  • 190
    The follow camera's heading held to the original's

    render3 questions

    1. The first frame after the running jump's landing: the original sets no speed from the stick (+0x184 stays 0, the way +0x178 is set, the stick read at 4096 in +0x1b0), so its camera rests where the port's pushes on. By the handler's code (0x8005be24) only a turn over 1024 from a standstill, or a dead stick, skips the speed. Neither fits on the face of it, so this needs a hook inside the handler.
    2. After a bump from rest (the seat; the slide's end) the original's camera holds where the port's follows.
    3. Level 6's room camera: the port reports no heading from a fixed camera, where the stick still reads the original's +0x224.
  • 188
    The NPCs step before they ask; Spike held to the original

    play2 questions

    1. The original steps a character only while its room is active (its record shows nothing has run). The port steps every NPC from the level's start, so one met later may be at a different point of its animation.
    2. The NPCs' own modes (routes, bites, swats) are not compared with the oracle; no scene was set up for them.
  • 187
    The player's animation tracks held to the original's in every script

    test

    1. +0x1b0 (part of 0x800590d4's test) is not read by the port.
  • 186
    The put-down lets go only at its event

    play2 questions

    1. Why the event does not come at that shelf. It is the animation's own frame (both sides agree), but where the put-down would go was not looked at.
    2. The throw's end without event 16: whether the original's throw then stays pending.
  • 185
    Root motion across for every state that has it

    play

    1. The rolling flight (0x80086ef0) is read but not ported: the step projected onto the floor's plane (0x80086b58), a bounce without the floor stop, then 0x80086cd0's roll (friction 98 dt >> 6, pinned its radius above the floor, the slope's push from 0x80086a20: 1190 under a tilt of 768, then 99 a unit less). The oracle's level 6 box, booted as Tommy, slid 94, 79, 64, 49, 34, 19, 4 at a radius of 256.
  • 184
    The body's height is the original's, frame by frame

    play3 questionsclosed by #189

    1. The bump is table state 28 after a run in the original (0x80056e10 asks 0x800590d4) and 32 in the port: same frames and words.
    2. Before a script's press the oracle stands mid-fidget from its boot, so the track records differ until the first ask.
    3. The NPCs still ask before they step, the order the player had.
  • 183
    Throws fly as the original's flights

    play5 questions

    1. The put-down still slides by the port's rule. The original flies it by the same descriptor along (0, 0, 4096) at speed 10, after 0x80060810's wall test, and the level 6 box route depends on where it lands.
    2. Things whose template +0x30 is 1 fly by 0x80086ef0 (rolling things), still the port's approximation.
    3. Rooms: the original tests the start room's objects and only walks the rooms along the step if none is met there, clamping a start outside every room into the record's room. The port tests all solids at once.
    4. The flight's sounds (+0x88), the hit's +0x80 callback and the floor effect (+0x2a) are not played.
    5. The aimed throw (0x80061c98, level 9) still builds its direction in floats from the player to the target. The original turns (0, -384, 1024) by the angles toward the target when within 512 of the heading, makes it a unit, and sets y to -300.
  • 182
    The carry and the throw's start in the original's integers

    play2 questions

    1. Things whose template +0x30 is 1 fly by 0x80086ef0 instead, not yet read.
    2. The put-down's flight (0x80062ac4: the same descriptor along (0, 0, 4096) at speed 10, after 0x80060810's wall test) is still the port's slide.
  • 181
    The parts' matrices are the original's integers

    play

    1. The cines still pose their hierarchies with the float posed_triangles.
  • 180
    The animator is the original's; the carry holds by the pose as drawn

    play

    1. The game's own calls to 0x800572a8 are approximated by set (ask when the logical animation changes, or when its track does not show it). The original asks from each state's handler.
  • 179
    The timer laid out as the original lays it out

    ui

    1. The original's clock was made with the number its first frame showed. The oracle's boot runs about 31 s into the level, so this comparison cannot show whether the port's first number, and with it the clock's x, is the same.
  • 178
    HUD icons at the original's sizes; the overlay drawn in its order

    ui

    1. The timer text's exact place comes from the font-width loop in 0x8002e144 and the y from D_800c4428 + (D_800c4a06 * 171 >> 11); the port uses (-20, -92), read off a screenshot for a three-digit number, not computed per width.
  • 177
    The object in focus as the original finds it

    play

    1. The part's joint comes from the port's float pose (0x8004a5dc's integer posing is not ported); a joint a unit off could change a focus at an edge.
  • 176
    Letting go stops the turn; a hazard hurts once a contact

    play

    1. The touch's timed hurts of types 969 and 982 (within 2048 or 3000, on their own clock, 0x8004e0f4) and the objects' touch and untouch events generally are the port's own contact test.
  • 175
    Jumps as the original's, from press to landing

    play2 questions

    1. On the ground the original's height carries the root's motion a frame late (the crouch, the landing's sink to 923, the run's bob); the port keeps it apart and draws it at once.
    2. The follow camera after a bump from rest (worklog 174).
  • 174
    The characters as the collision tests see them

    play3 questions

    1. After a bump from rest (the seat) the original's follow camera holds still where the port's goes on, and its look-ahead parts by a few units: other branches of 0x80027304. The heading the stick sets follows the camera, so it differs there too.
    2. On the first frame from a standstill the original's speed is 0 when the way already points off the heading (the seat, 45 degrees) and 17 when the stick turns the body (the hub's start): the stick handler (0x8005be24) is not yet ported to that detail.
    3. The creatures' wandering (route walkers, posts) is the port's own.
  • 173
    The air as the original moves it

    play2 questions

    1. The objects' callbacks met in the air (0x8005ed2c: type 711, class 11 but 1177, characters of class 16) and flag 0x4000 things that cannot be landed on; flag 8 of D_800c4bc4.
    2. The ground floor's following with objects (0x800627a0) and the eased step, still the port's own.
  • 172
    The world's objects in the player's probe

    play3 questions

    1. The air's move across and its tests (0x80066014, 915 instructions, with 0x800658cc, 0x80065c5c, 0x800657d0, 0x80065cbc): the original meets toy 403 in the air where the port goes over it.
    2. The floor under after a move with objects (0x800627a0, 0x80065578) still runs on the float boxes, and the run's own probe of its step (0x800645d8) and the eased step (flag 0x80) are ported but not used in play.
    3. The nearby list's order, and objects whose model is not their template's (worklog 171).
  • 171
    The camera's rows and the objects in the probe

    play5 questions

    1. The port's world does not yet hand its objects to Ground: things, doors and characters still meet the player through the float boxes, so level 18's slide along door 213 and level 1's jump at toy 403 still differ.
    2. The nearby list's order: the rooms' object lists (0x800c4a8c, +0x48 and +0x4c), each object tested against three times the body's extents (0x8006abbc) and prepended; the port would test in its own order, which differs only when two objects are met by one probe.
    3. The objects whose model is not their template's (type 881 placed as 836 in level 3), whose radius or boxes differ from the template's model's (about one in ten), and the characters' posed parts.
    4. The floor under after a move with objects (0x800627a0, 0x80065578), the eased step's per-frame motion, the climb test on objects (0x80058da4) and the type 11 objects' callback when held (+0x58, 0x8005d5c4).
    5. The follow camera's eye drifts from the original's by a few units after a turn (the spring, 0x80027304), so the matrix follows it.
  • 170
    The ground probes as the original runs them

    play2 questions

    1. The object probe (0x80063d3c): the nearby list's order (0x80062ed4), each box tested at its own middle height clamped to the body, the height field's wall nearer cancelling it (0x80063c3c), the thing stood on skipped; the object branches of the floor and wall probes (0x80067448, 0x80064178 through 0x80067284) and the run's pre-probe (0x800645d8). Until then level 18's slide meets door 213 and level 1's jump from the start meets toy 403 unlike the original.
    2. The port's things carry float rotations; the original's angles and integer positions are needed for the exact tests.
  • 169
    The port played against the original

    test3 questions

    1. In the air the original is stopped by level 1's toy 403 (a run and jump from the start, frame 28) where the port lands on it: the air's wall test (0x80066014) against objects.
    2. Level 18's slide: the port stops 5 short of the wall (30861 to the original's 30866) and takes one more step into the corner before its bump; the ground move's probes against the COL (0x80064a34 through 0x80067448, 0x80064178, 0x80064444) are not yet ported as the original runs them.
    3. The camera's heading differs from the original's by a unit now and then, and so the heading the stick sets.
  • 168
    Each cinematic's own lens

    render

    1. Whether any cinematic changes its lens while it plays (the table is read once, at its start).
  • 167
    The pause is a screen of its own

    ui

    1. Whether the sign flies in or out at the pause's start and end (0x80040268 steps the camera; the oracle's first shot, 5 frames on, has it in place).
  • 166
    The Load Game pages' button cubes

    ui

    1. The in-game pause's card pages (the same 0x800398bc) still draw no cubes: the game's stage has no second camera for them yet.
  • 164
    Slides, one bump, air control and the analog stick

    play4 questions

    1. The air push's scale: the code's default branch (D_800c4bc4 0, as the oracle reads it) gives 9.3 at full, the flight fits 12.55; the body's matrix at +0x24 may scale it.
    2. The body's height in the air: the oracle's +0x1c leaps about 1057 as a running jump leaves the floor, the port's root-y convention about 260; the drawn arc matches either way (worklog tests), collision may not.
    3. The COL's side normals are taken along the axes, from which axis alone holds the step; a cell's diagonal halves are not given their own.
    4. The analog axes' scale ((b - 128) x 32, full 4064 one way, 4096 the other) is not checked against 0x8001a888's type 2 conversion.
  • 163
    A put-down box slides on

    play

    1. The original's rule for the slide (which flight flag, which code); the loss here is fitted to the one oracle run.
  • 162
    No room to put it down; the put-down's own arms

    play

    1. The drop's slide: the oracle's box goes on 67 along the floor after it lands (17, 14, 12 a frame); the port's rests where it lands (12912).
  • 161
    The ground move meets objects by its probes; level 2's ride is Spike's

    play2 questions

    1. The riding body box: the oracle's player hierarchy then is 0x17 with depth 1400; the port's Spike hierarchy has 1000, and the oracle's ride is thrown back about 1200 short of the hurdle's bar, as 1000 + 170 gives.
    2. What throws the ride back from the hurdle (state 9's hurt?): the port stops it.
  • 160
    GRAB reaches as the original; a box put down does not stack

    play2 questions

    1. The drop's landing exactly: the port's come down 600 ahead, the oracle's 560 to 820 (the put-down animation's hand path).
    2. When the nearby list is filled (empty while standing in the oracle), and so when 0x80063888 can refuse a put-down.
  • 159
    The elevator stays down; a spinner turns about its own upright

    play2 questions

    1. What +0x68 holds (the body's lowest tested height): the port steps Tommy onto the toy (y 447 for five frames) where the oracle's stays at 779.
    2. Whether walking (not a jump) onto level 5's elevator arms it in the original (the oracle runs land on it).
  • 158
    Tipped objects block only where they lie; every level walked

    play2 questions

    1. How the original tests an object's box turned other than about y (0x80065210, 0x8006a714): the outline from above is the port's guess.
    2. Whether the original's level 5 elevator also turns at the bottom while ridden, or stops.
  • 157
    Levels 9 and 10 walked: characters gone up to by stick

    test2 questions

    1. Whether level 5's float can be planned like the ground (it moves the body by its own rules) or needs its own steering.
    2. Why the running jumps by level 6's guard fall short of box 0's shelf.
  • 156
    A cinematic in play leaves the player where it ends

    play3 questions

    1. Whether a skipped cinematic (Triangle) also leaves the objects at its last frame, or where it was when skipped.
    2. The oracle after level 3's cine 86, level 9's 18 and level 12's 67 (not run; the stream says where).
    3. Whether a cinematic's actors also change the objects' rooms.
  • 155
    A level starts where its start cinematic leaves the player

    play3 questions

    1. Levels 4, 5, 6, 7, 11 and 17 with their start cinematics in the oracle (the character hook leaves the player in the void, or moving).
    2. Whether a cinematic's actors also change the objects' rooms.
    3. Mid-level cinematics' poses (the port still places by hand where a level says).
  • 154
    Level 2 starts out of the playpen, and its fence gap is open

    play

    1. Whether other levels' start cinematics leave the player elsewhere than the loader's spot (the port places them only where a level says).
  • 153
    Every level won walking

    test2 questions

    1. Why level 2's maze and court are not walked although the flood reaches them (geese, the gate's swing, or the yard's slopes).
    2. Rides and the float in the walk.
  • 152
    The body slides along walls; the tests walk where they put the player

    play3 questions

    1. Why 0x80066014's reach reads the box's z (+8/+0x10) when Spike's stop fits its x; whether the side probes are x too.
    2. The original's case table for one side probe alone (read as asymmetric, seen symmetric in the oracle).
    3. How the slide follows an angled wall (the port turns along an axis).
  • 151
    The tests turn the player with the stick

    play

    1. Whether the original's follow camera swings after a turn in place in the hub as it does in the levels (the port's does not there).
  • 150
    Level 6's boxes are carried up the steps by play

    play3 questions

    1. Whether the original's put-down stops a box against another box (in the port a box put down into another passes into it), so whether a column of boxes can be built.
    2. Whether this is the route the original intends; the original's full box route was never played on the oracle.
    3. The running jump in the flood is Tommy's run speed (17) for every body.
  • 149
    Every place the tests put the player is walked to first

    test2 questions

    1. What the cart ride in room 19 is reached by in the original, if anything (HINT09 "Press @ for a fun ride to the bakery" has no caller found).
    2. The flood is coarse (256 cells, one body point): a gap narrower than the body would pass it.
  • 148
    The characters bob and crouch by their animations too

    render2 questions

    1. Not checked on the oracle. An NPC's object could not be told from the others without its address, and only the player's (0x800e2b48) is fixed.
    2. The player is still stepped by its own code (Player::root_step, with the jump's crouch and take-off), not by RootCurve.
  • 147
    The ground follows each animation's root curve

    play

    1. The oracle spends a frame in state 0 between the climb and the run, and the port does not; that shifts the phase by one.
  • 146
    The whole game, by play

    test2 questions

    1. The policies still put the player at the spot each level needs. The getting from place to place is not played, the doors of the hub aside.
    2. Level 16 (training, from the title's menu) is not on the run.
  • 145
    A climb's last step is had

    play

    1. After the handover the original settles Tommy from -125 to the floor's -70 over about seven frames (-111, -115, -110, -93, -88, -80, -69). The port keeps a height above the floor until the run's keys move it, going -157, -165, -148. How the original's floor test brings a body down onto the floor is not traced.
  • 144
  • 143
    Actions play their last frame out

    play

    1. The oracle holds state 13 for one more frame (-193) than the port.
  • 142
    Level 4 on the oracle, as Spike

    test

    1. The water damage of phases 2-4 (5 standing, 3 moving every 36 VSyncs) was not seen. The phase is 1 at the start.
  • 141
    Chuckie's climb checked: the player is never scaled

    play2 questions

    1. The climb's last two frames: the oracle reaches -172 and -193 before state 0, while the port ends the action at -153 and draws the body at the top.
    2. The NPCs' root motion (scaled by +0x4c / 0x800c41dc) is not drawn.
  • 140
    A landing's animation starts the frame after

    play

    1. Whether other states the handler enters (climbs, throws) also start a frame late; only the landing was looked at.
  • 139
    Running jumps and landings as the original's

    play

    1. In both oracle runs Tommy met something in the air (x and z held from 2758), so the free landing's length was not seen. The landing lasts six frames in the port, seven or eight in the oracle.
  • 138
    Running bobs with its root keys

    play

    1. Walking (states 1 and 2) and the other characters' bobs were not peeked.
  • 137
    Jumps crouch, land and settle as the original's

    play2 questions

    1. The moving jump (logical 28) leaves at once in the port, as its states were not traced. Its table state's entry (41) also sets bit 31.
    2. The original also adds the root y in the air. The port leaves it out: added, the port's arc went far higher than the oracle's.
  • 136
    Climbs checked against the original

    play2 questions

    1. The oracle's start was pushed off the seat's face (to z 12342), the port's was not. The test compares the motion, not where it began.
    2. The root y of jumps, landings and walks (small bobs and dips) is not drawn; the floor test would take most of it back.
  • 135
    A climb carries the body on to the ledge

    play2 questions

    1. Whether the original also cuts the climb's last frame (the 54 drop), and how its own floor test meets it.
    2. A climb compared with the original's picture.
  • 134
    Climbs move by their root keys

    play4 questions

    1. The last frame is cut short when the action ends, so the body pops about 50 into place.
    2. Not compared with the original's picture of a climb.
    3. The +0x4c / 0x800c41dc scale for the other bodies is not applied. Tommy's root offset in the port is -245, which does not fit the -561 ratio; it needs a look.
    4. Other states with root keys (jump 3, land 4, fall 15, moving jump 28) add their y in the original. Their part (crouches) is not drawn.
  • 133
    Eyes: a stale binary, and faces carried between screens

    render

    1. The title's and the hint cards' own stages do not take the blocks.
  • 132
    The camera's line test meets objects

    engine4 questions

    1. The object test 0x8006a714 is against the model, not its boxes.
    2. The rooms walked: the port tests every object box, not only those in the rooms the segment passes.
    3. Whether things at rest (pickables) are in the room lists the camera tests. The port leaves them out.
    4. The hub start's doorway hit in room 35 (worklog 131) has not been rechecked.
  • 131
    The follow camera, from 0x80027304

    engine5 questions

    1. 0x80090554, the line test against the room's polygons, is stood in for by the height field (collide::segment). That is the main mismatch: the hub start's side probe hits a doorway wall in room 35 that the height field lacks, and the oracle's view test hits polygons at 2836, 2856 and 3490.
    2. Not ported:

      • flag 0x4000 (following another object);
      • flags 1 and 2 with 0x800c4a48 (nothing found sets them);
      • flag 0x80000 (the halving blend);
      • level 11's look-at snap with player +0x188 bit 512;
      • +0x188 bit 2048 (0x80062a08).
    3. Level 7's +0x148 aim uses the player's floor; this is not checked.
    4. The player's "moved" bit (+0x188 bit 32) is taken as x or z changing this frame.
    5. The camera always steps at dt 10. The oracle's lag frame (dt 15) at 3488 is where they part.
  • 130
    Hole 26's Reptar roars

    audio2 questions

    1. The countdown's value when the hole starts; the port starts at 0.
    2. 0x800c4614's pending line (the other half of 55.2).
  • 129
    The speech call sites, surveyed; a struck goose honks

    audio2 questions

    1. The prowler's 1134 in level 26 (55.2) is still not wired.
    2. The honk is played at the strike, not at the animation's event 512.
  • 128
    The piano, the rugs and what floors touch

    audio4 questions

    1. Level 4's water damage, as above.
    2. The C rand's seed (0x800eaf80); the port starts it at 0.
    3. The floor seeds 0x800c4190, 0x800c4198 and 0x800c41a0 are taken as 48732, like their neighbours, without a peek.
    4. The flag-4 puff's radius (the descriptor sets 50, then 0): the port gives it 50.
  • 127
    What a thrown thing knocks off

    render3 questions

    1. Most touch 2-7 objects are template flag 8 (0x0a). The port's object boxes leave those out, so nothing thrown meets them. Whether the original's flight test (0x80086340) skips flag 8 is not known.
    2. Touches 11-13 and 15 (levels 5, 6, 11) are not ported.
    3. Pies (level 3's toss, level 16) are not things in the port and do not meet objects.
  • 126
    Characters in no room are not drawn

    render2 questions

    1. Whether the original updates +0x3b for a character with none, if something moves it into a room (the port finds it then).
    2. How level 6's Reptar (507) looks in room 9 on the original. The oracle could not be brought there. Level 4 does not finish loading under the probe either.
  • 125
    Thrown things meet objects

    play3 questions

    1. The original tests the objects along the flight's segment (0x80086340 with 0x8006a714, against the model's faces), not boxes.
    2. The touches a thrown thing gives the objects it meets are not called: levels 3 and 16's model parts (touches 1-7), levels 5 and 6 (11, 13, 15).
    3. The 0x190f0700 case: objects with flag 0x800000, and template 777's throw sounds 53, 163, 171.
  • 124
    More sounds where they happen

    audio2 questions

    1. Mr. Friend's hit sound 19 and the goose's honks (32 + rand & 3): their calls take the number from a register that was not traced.
    2. The crunch's program (14, or 13 in level 20) against the port's effect table: the port plays effect 43 + n through its usual mapping.
  • 123
    Broken objects fly apart

    render6 questions

    1. The pieces have not been compared with the original's picture. On the oracle, Tommy put beside level 15's box 207 is either on top of it or falls about 6400 to the floor. Level 6's toy test lost the camera after the teleport.
    2. The piece's centre and radius (0x8004acbc, 0x8004aff8) are taken as the corners' mean and the farthest corner.
    3. The order of the four cuts after the first: the triangle's middle piece is taken last.
    4. The object's +0x86 is stood in for by the model's radius.
    5. The shade (+0x3a) the slot keeps is not used; the pieces keep the face's colours.
    6. The toy bits' seed 0x800c41d4 is assumed 48732, like its neighbours; it has not been peeked.
  • 122
    The room lookup walks portals

    engine

    1. Objects and NPCs still take the first box (room_of). The original keeps each object's +0x3b with its own hint.
  • 121
    Signs sparkle; a lobster's end

    render3 questions

    1. Sign 111 (level 2's) at (-3394, 932, 8498) is in no room by the port's room boxes, so it never shows. The original compares object +0x3b with the player's +0x3b; the object's room may come from elsewhere.
    2. Damage carried by flights is not applied to anything yet.
    3. The trigger's enter and leave (0x80049e18, 0x80049e5c) are stood in for by a 2D 2500 test in the player's room.
  • 120
    The goose loses feathers

    render2 questions

    1. The touch point: 0x800511a8's second argument from the collision (0x80086ef0). The port uses the puck's position.
    2. Animation 8's mode 1 for the goose. The port keeps its own 300 ms hit pause.
  • 119
    Grass from the yard: model flights

    render4 questions

    1. State 9's handler 0x8005d030 throws grass 1024 up in levels 2 and 17 when +0xf4 is 0. Which port state this is has not been worked out.
    2. The descriptor leaves +0x14 and +0x18 unset (stack garbage); the port starts the angles at 0.
    3. Kind 4's stretch (0x80087afc with a3 1: +0x92 times 10 as y scale) and kind 1 (0x8006d948) are still not drawn.
    4. The port's picture of the grass has not been compared with the original's; the port has no way to start at a given spot.
  • 118
    Landing sounds and the object in focus

    audio3 questions

    1. What 505 (level 11) and 494 (level 3) look like in play; neither sound has been heard on the original yet.
    2. Whether +0x8c is still the floor tile when standing on an object above water (the port asks the tile under the feet either way).
    3. Focus uses boxes, not 0x8006a714's face test and 0x8006abbc's cylinder.
  • 117
    Water splashes, water steps and Reptar's stomp

    render3 questions

    1. Level 4's landing sound 57 on water (the jump's end) is not played yet.
    2. Floor flag 16 dust (0x80050b5c) in other levels is not ported.
    3. Splash flights do not collide with objects (kinds 1, 2, 4 still open).
  • 116
    The break burst

    render2 questions

    1. the shards (0x8004cdfc, 100) that go with it: model pieces, a flight kind the port does not draw (kinds 1, 2, 4)
    2. the cone about the object's own matrix (+0x04): world up here
  • 115
    Collectibles sparkle; Reptar's sounds in the world

    render

    1. the cone is taken about world up; the original turns it by the object's own matrix (+0x04), which only matters for tilted collectibles
  • 114
    Effect flights and animated sprites: flames, explosions, debris, splats

    render5 questions

    1. object collision for flights (flag 0x20000), the room lookup and clamp at launch, hit callbacks and their sounds
    2. kinds 1, 2 and 4 (models, not quads); the screen-edge cull and four-quad split
    3. the shards (0x8004cdfc) when templates 401 and 795 are taken
    4. descriptor fields the original leaves as stack garbage (a delay, the debris and splat spin axis): 0 here, so those sprites do not roll
    5. the callers not yet wired: collectible sparks 0x800514b0 (every level), the use-callback burst 0x80054894, level 6's sparks 0x80054ae0, 0x800529cc, the hit table 0x800b7eb0 into 0x80052b60
  • 113
    Throws let go at their release; animations over the base; speed

    play3 questions

    1. the root motion of bit-32 states (0x80055904: interpolated root offsets, scaled by body size for others than the player); the port moves bodies itself
    2. the speed argument of the other 0x800572a8 calls the port makes (all 4096 here but the throw and the cry)
    3. level 16's pies still roll by the fitted stand-in (34.1), which hits less often than the original's flights
  • 112
    More sounds in the world

    audio2 questions

    1. Reptar's building sounds (90-96, 0x8004d7c4) and the rumble landing (93, 0x8005cba8) are positional too; reptar_2010.rs is being reworked with the effects, so they wait for that
    2. the call sites with a variable sound (0x80053344, 0x80053604, 0x8004f868, 0x80050140 and others) were not each traced to a port call
  • 111
    Hub: objects 80 and 518 as the start leaves them

    play

    1. object 518's room 3 (the port's scenery is not kept by room)
  • 110
    Spike: getting up, the toy in his mouth, the flinch, the can, the bump

    play

    1. the mode 2 test "his goal equals Tommy's position exactly" (the port starts a fetch from any following Spike)
  • 109
    Movers and the elevator as the original thinks them

    play2 questions

    1. the blocking test 0x8006baa8 in full (the port tests the player's body against the mover's boxes)
    2. what +0xbe bit 128 (template flag 0x20000000) does
  • 108
    No distance shading or lighting in play

    render

    1. what path would reach 0x80011194 (perhaps none in this build)
  • 107
    Golf's open questions closed

    play

    1. nothing
  • 106
    Golf: the cup camera

    play2 questions

    1. the activity golf score card (35.2's last part)
    2. whether the cup camera lets go of the ball before it stops (the port keeps it until the roll ends)
  • 105
    The camera after a cry

    render

    1. whether the next CameraSwitch in the same room sets the fixed camera again (the port waits for a room change, as 0x80077c88's "same kind" skip would)
  • 104
    Thrown things bounce; the can comes back

    play2 questions

    1. the object test 0x8006a714 itself (the port's bounds-cube face is a reading of what it tests against)
    2. the spin rate's damping by the bounce (record +0x16)
  • 103
    The golf ball's collision step

    play2 questions

    1. the 3 left in that sample's x (an order of friction and bounce, or the wall's normal); an oracle run at that wall would settle it
    2. objects along the segment (0x80086340) still use the port's boxes, with the old per-axis turn
  • 102
    NPCs bite only in sight

    play

    1. the lunge (mode 8 from this test) is only ported per level (levels 20-21's Angelica); other followers with +0x688 bit 128 do not lunge
  • 101
    The pie toss's aim marker

    play

    1. the object test 0x8006a714 itself (the port uses each body's bounds cube for Larry and Steve)
  • 100
    The camera pulled in by the segment test

    renderclosed by #131

    1. the camera's side-step tests (0x80027304's two further 0x8002cd7c calls, 2048 to the side, flags 0x800c4a3c 4 / 8 / 0x10000) are not ported
  • 99
    The segment test (vectorwalk, 0x8002cd7c), checked against the original

    engine3 questions

    1. two segments make the original trap (VectorNormal's add overflows when two of from - to's components are near +-32768); the port returns a zero normal there
    2. database 8's COL does not parse ("tiles run past the file")
    3. the callers (camera, NPC line of sight, golf, marker, flights) do not use it yet
  • 98
    Mr. Friend waits at home in phase 2

    play

    1. whether a pie thrown from afar wakes him (a hit does in the port; the oracle run did not try it)
  • 97
    Cinematics fade out at their end; the overlay's semi-transparent shapes are drawn

    video

    1. the overlay's semi-transparent and opaque shapes keep their own order (all opaque, then all semi), not the original's ordering table; nothing yet mixes them
  • 96
    The fade before a cinematic in a level

    video

    1. whether events queued during the fade (the loop repeats while 0x800c3e9c refills) can post a second cinematic straight after; the port plays one and goes back to the level
  • 95
    The song around cinematics; retro_rt's libsnd pause

    audio2 questions

    1. the screen's 127 dt fade before an in-level cinematic (0x800c3f2c) is not ported; with it the 60-tick fade-out would be heard for its 0.4 s before the pause
    2. whether SsSeqPause cuts the notes or releases them
  • 94
    Pie splats

    play3 questions

    1. how 0x80085f44 turns the tilt and spin through the (4096, 0, 4096) axis and the pie's own vector; the port tilts from straight up
    2. the bits' colour (flight +0x6c, 0 in the descriptor as read; drawn at 128 here) and their roll (+0x24, desc +0x42 = 3391)
    3. how the world collision (0x80087594) bounces them; the port reflects y and damps all by 1000 / 4096
  • 93
    Idle fidgets

    engine

    1. what the flags 0x20000000 (states 0, 23, 24) and 0x80000000 (6, 41) on +0xe0 are read for
  • 92
    Jumps land; the states' entry sounds

    play

    1. the idle fidgets (+0xf0 = 23 after +0xf2 = 1200) and the flags 0x20000000 / 0x80000000 that 0x800562bc sets
  • 91
    Animations: logical numbers, the table's states, and the sequencer

    engine3 questions

    1. tracks 1-3 still loop; the original runs them through 0x8005678c and 0x80056708
    2. the footsteps at loop ends (0x800562bc: states 1 and 2, sounds 164-166 and 132) and the idle fidgets (+0xf0 = 23 after +0xf2 = 1200) are not ported
    3. what bit 64 of the end word does (state 16, the cry, has 97)
  • 90
    Golf: the stance, the club, the aim line and Circle's camera

    play2 questions

    1. whether the port's other animation constants (player.rs anim, e.g. RUN 2, JUMP 3, PICK_UP 13, CRY 16) are logical numbers played as table states; 0x80056fe4 maps logical 2 to 3, 3 to 5, 13 to 15, and 16 through code. Checking needs an oracle peek of the player's track (+0xa8) in a known state
    2. the golf camera's fixed view near the cup and activity golf's score card (35.2's rest)
  • 89
    The box toss arrow and lob

    play2 questions

    1. the lob's other case: with 0x800c56a8 bit 64 (set by 0x8005f3a4, which also makes 0x800e5778 the target), direction (0, -4096, 100) at speed 100; when that happens in play
    2. the bounds of characters outside levels 20-21 (only those here were peeked)
  • 88
    The boot order and the opening's ending

    engine2 questions

    1. what the frame's +0x02 (always 1380) and the placement's +0x16 (always 0) mean
    2. whether the original draws the milk and sign through the ordering table with the scene's depth or, as the port does, over it
  • 87
  • 86
    Climbs the original refuses

    play

    1. No test stands at a 906-1033 ledge in level 10 or in room 4 of the hub; the rule is from the code, not watched in the oracle.
  • 85
    The cry's voice, the lobster's bite rate; walls do not slide

    play

    1. The bite animation's own length per prowler (rats, robots): the port uses the lobster's measured 180 for all.
  • 84
    Faces lost their eyes: model faces drawn in AddPrim's order

    bug · render

    1. The original sorts by OT depth (the faces' average z with the flags' bits 8-9); the port relies on the depth buffer plus this order. A face pair at different z that the OT draws in the other order is not covered.
  • 83
    Rugrats never turns reverb up

    audio

    1. nothing


  • 82
    libsnd ticks are vblanks; 14 sequencer voices

    audioclosed by #83

    1. Whether the game turns SPU reverb on at all (the one tone with the bit would be the only one it touched).
  • 81
  • 80
  • 79
  • 78
  • 77
    Touchdown Tommy's throws fell at his feet; more levels won by play

    bug · test

    1. The original's wall test against the room geometry (0x80060810 with 0x8002cd7c) is still approximated by the COL columns.
  • 76
  • 75
    The sound engine moves to retro_rt's libsnd

    audio · tooling

    1. nothing
  • 74
  • 73
  • 72
    Nine song banks crashed their levels; the whole game as a test

    bug

    1. What libsnd does with those extra programs (probably nothing: no tone blocks).
  • 71
    Room songs crossfade

    audio2 questionsclosed by #82, #95

    1. libsnd's tick rate here (SsSetTickMode); 60 a second is a guess, so the fade's length may differ.
    2. 0x8006ef0c / 0x8006ef64's fades around the level loop and 0x8007424c are not ported.
  • 70
  • 69
    Positional sound: the falloff, the pan and Mono

    audio2 questions

    1. Which other sounds the original plays positionally (NPCs, doors, objects). The port still plays those at full volume, centred.
    2. The bearing (0x80021590) is computed in floating point here, not from the original's arctangent table.
  • 68
    Level 11: a standing jump never eats a bone

    play

    1. 0x800c4288's start value (the lift's time); the port's lift has no limit but the rise.
  • 67
    Golf round: the Loading Hole card and player 1's banner

    play2 questions

    1. The count's wobble on the setup screen is not ported.
    2. A whole round played by hand (real swings into the cup) is not checked headless; the test drives the exits directly.
  • 66
    Audio settings kept: restored at boot, kept by a new game

    save

    1. Whether 0x80070c24's card checks (0x8007047c, 0x80070598) differ from the port's "file present and whole" for a card with a damaged save.
  • 65
    Level 5's beam reflects off the first wall

    play2 questions

    1. The wall's true normal. The original tests the room's polygons (0x80090554), not the COL grid. A slanted wall would reflect differently.
    2. The reflection's effects 0x80090acc and 0x80090c0c are not drawn.
  • 64
    L1, L2 and R2 look aside

    play

    1. Which of the matrix conventions makes rotY pre-multiply and rotX post-multiply in 0x8001e838. The port applies both about the eye's own axes, which matches the oracle's pictures, but no pixel compare was made.
  • 63
    The port restructured into idiomatic Rust

    design3 questions

    1. Game still has many pub fields that scripts reach into. A narrower script interface (a World/Camera/Hud split) is not done.
    2. Sound effects are still played by number (g.play(71)). Their names are not traced, so there are no named consts yet.
    3. rugrats-data's chunks_exact lints are left; as_chunks there changes the parsers' signatures.
  • 62
    Mini-golf for one to four players

    play

    1. The heads' size (scale 0.54 to match the oracle's 51 px) and their orientation (a quarter turn about x, by eye) are approximations. The original's GTE H and matrix for them are not traced.
  • 61
    Save and load pages, pause and title

    save2 questions

    1. The burst behind the pages and the button cubes by CANCEL/ACCEPT are not drawn on these pages.
    2. The footer-flag quirks (PRESS X kept after some returns) are not reproduced exactly.
  • 60
    Title: the Audio menu

    ui

    1. The meters and needles use the generic draw, not 0x80042d04's back colour.
  • 59
    Audit fixes: board to 7, no-damage levels, flights, NPC walls, activity golf

    play

    1. B3 (level 6's box route): stacking and the wall test are in, but the route has not been played through.
  • 58
    Effect meshes: the beam and the light

    render2 questions

    1. The orientation 0x8007652c / 0x8008e6c8 computes was not traced. The beam is symmetric along z; the light's point is put at the hand (guess).
    2. The light's length with forward speed, (100 + speed) / 100 x 4096, is not ported.
  • 57
    Doors: class 8 swinging

    play2 questions

    1. Not checked against the oracle: the speeds and waits are computed from the code only.
    2. DB2's 672/1216 pairs (no end sound 54) were not watched.
  • 56
    Doors: hinged and sliding

    play2 questions

    1. The blocking test is a box against the body (radius 160/200), not the original's 12 edges; pickables are not tested.
    2. DB15's tilted doors turn about the placement's own y axis (guess; the doc leaves it open).
  • 55
    Speech: the NPC lines

    audio

    1. Level 26's prowler (mode 9: sounds 144/145 or speech 1134) and 0x800c4614's pending line are not wired.
  • 54
    Level 1: the hub's doors, signs and Spike

    play2 questions

    1. Object 80's y = 746, object 518's template swap, the room 4 climb rule, and the signs' sparks are not ported.
    2. Rooms 11, 12 and 43 have speech 197-199 on entry. The port reads +0x64 only for flag 128, so check that they fire.
  • 53
    Speech: XA lines, talkers, ambience

    audio3 questions

    1. Level 5's attacking robot and level 6's guard distance are approximated (any guard-mode NPC in range). The original uses the last NPC to think (0x800c443c / 0x800c4438, +0x674).
    2. 0x800c4618 / 0x800c45e4 = 900 after a line (guess: lip-sync time) is not ported.
    3. The volume of speech against the SPU music is not checked.
  • 52
    Level 16, training, playable

    play2 questions

    1. Fall air time is counted on the way down only (a guess). The whole time in the air would hurt a held jump.
    2. Angelica waits at her WAIT posts (2, 3, 5, 6, 9) for the template's wait time. The oracle shows her running.
  • 51
    Level 7 and the ending

    play2 questions

    1. The real hit test (0x8006b6d0: one building broke 2400 away while he stood).
    2. The flames (they broke nothing in the oracle); the debris and explosions; the camera shake.
  • 50
    Level 18 playable: Egg Hunt

    play2 questions

    1. What hurts Tommy here (Damage is on).
    2. The camera kinds 7 and 9 in rooms 16 and 15.
  • 49
    Level 13 playable: Cookie Race

    play

    1. Bumping Angelica (0x800511a8); the activity's ambience.
  • 48
    Level 17 playable: Gold Rush

    play2 questions

    1. Camera kind 8 in rooms 1-8 with +0x30 bit 8.
    2. The coins' +0xc0 handles; the tear particles.
  • 47
    Level 21 playable: Touchdown Tommy

    play3 questions

    1. The bottle drawn as part 1238 / model 1245.
    2. The effect 0x80054708.
    3. Whether twenty drinks are reachable before Angelica in natural play.
  • 46
    Level 20 playable: No More Cookies

    play

    1. The kitchen's fixed camera with the box as subject.
  • 45
    Levels 14 and 15, the hub's gates, docs/levels

    play2 questions

    1. The door name signs; the bob's speeds (random in the original).
    2. Balloons taken by walking only (the port's touch takes them in the air too).
  • 44
    Level 12 playable: the flashlight

    play2 questions

    1. The light's true width and its moving reach (0x8009134c); the beam is not drawn.
    2. The hand models 1690 / 1310; Circle putting the light down (generic, not checked); level 12's room 4 climb refusal.
  • 43
    Slopes read as walls; level 11's rings 2 and 3

    bug2 questions

    1. The real floor test (0x800627a0) and the move test (0x80064a34).
    2. The jump's true velocity for state 26 (fitted here).
  • 42
    Level 11 playable: three rings

    play2 questions

    1. The 878 zone's true extent (a box from the seen points here); the net test (a 2500 square here).
    2. The ring 3 air drag at a quarter; the seesaw's tilt; the meter's bar drawing.
  • 41
    Level 10 playable: hide and seek

    play3 questions

    1. The playpen's exact test (0x8006abbc, 0x8006a714); the tag reach (900 here).
    2. Chuckie's head without glasses (model 1237 on the head part); the hiding and tagged animations (46, 47); the taunts and footsteps.
    3. The climb limit of 905 in level 10.
  • 40
    Level 9 playable: Mr. Friend

    play3 questionsclosed by #98, #104, #105

    1. A can bouncing back into Tommy (the 0x80087594 path).
    2. 46 waiting in state 19 after his return (the oracle's quirk is not ported).
    3. Tommy's animation overrides (logical 49 and 6); the camera's return to the room kind after a cry.
  • 39
    Level 6 playable, and climbing

    play2 questions

    1. The scared animations (Chuckie's slots 0-4), the spinning toys and the walking robot toy (class 15 on posts 17-18).
    2. Climbing's refusals (levels 1 and 12 room 4, level 10 type 14) and the climb animation's motion; guard 46's stagger.
  • 38
    Level 5 playable: the remote, the robots, the float

    play3 questions

    1. The beam's speed, life and look: the port draws a small marker, 600 a frame for 40 frames. The wall bounce is not ported.
    2. Animation 1209 (standing with the remote); the remote drawn in hand.
    3. The elevator's half-range hold and its arming by landing only.
  • 37
    Level 4 playable, spawn groups, movers, loading screens

    play2 questions

    1. Spike's fall and other states have no frames in DB04 (bind pose); what states 10-13's ids 902/903/901/900 are.
    2. The splash particles, the water footstep sound, the ambient speech and the running water emitter.
  • 36
    The puzzle board and the result screens

    ui

    1. Whether 326 + i is really a shadow; the speech under the screens.
  • 35
    Mini golf, room cameras, hazards and the level timer

    play

    1. The sizes of sprites 291 and 375; hazards' hurt rate.
  • 34
    Finishing levels, the cry, and level 3 playable

    play5 questions

    1. How state 16 uses 0x800c426c: half of 2500 as air speed is fitted to the oracle's landing.
    2. The pie and can hit radii; the pie's descriptor fields.
    3. The aim when the stick is let go while frozen (the port stops it).
    4. Fixed cameras (room flag 4) outside the pie toss; hazard damage on touch (0x8005e1f4); the aim marker; the splats.
    5. The fourth bonus bar's tests (0x80076ba8, 0x80076bf0, 0x80076c24).
  • 33
    The HUD: health meter and gauges as sprites

    render2 questions

    1. Where 0x8008fa9c puts each piece of a multi-part sprite. The meter's cap sits on the fill's full top here.
    2. How a gauge's fill shows damage; at full health it cannot be seen.
  • 32
    Level 2 playable: geese, the Spike chase, the shuffleboard, the win

    play2 questions

    1. The original's move test for NPCs (they run the player's state machine and collision). The port moves them along the COL floor.
    2. The meters (HUD sprites, TEXPOS); the puck's touched-object rule; the cry animation and its speech.
  • 31
    Pause menu, collectibles, progress and saving

    play · save · ui

    1. Whether the original hides found bars or makes them again differently.
  • 30
    Hint cards, carrying and throwing

    play · ui

    1. The touched-object test proper (0x800631d8). The port takes the nearest resting object within 520.
  • 29
    Characters, cinematics between levels, room music

    play · audio · video2 questionsclosed by #71, #123

    1. The room lookup proper (0x8002b660 walks portals); the port takes the first room whose bounds hold the player.
    2. The crossfade (0x800a5bbc, 0x800a59f4) is not ported; songs switch at once.
  • 28
    Play: the hub and levels, Tommy running, jumping and colliding

    play · engine2 questions

    1. The hub's starting heading: LP says 2048, but the oracle shows 877 after the start cinematic.
    2. Where levels below 22 get their music.
  • 27
    Collision: the COL height field and its query, pinned to the original

    engine · ui2 questions

    1. Tile bytes 4, 5, 7 and header +0x24.
    2. The wall and object collision functions (0x8002b660 to 0x8002cd7c).
  • 26
    Music and menu effects: a software SPU playing libsnd's songs

    audio2 questions

    1. How close the volume law, pitch and envelopes are to libsnd's. Nothing compares them against the original yet: the oracle has no SPU.
    2. Reverb, vibrato, portamento.
  • 25
    Two-sided model faces, and hunting the trash can

    video · tooling

    1. Where the trash-can vanish happens. It needs a time from the user.
  • 24
    rugrats-re on rrt-dis, and XA through rrt-kit's Player

    tooling · audio

    1. nothing
  • 23
    Faces, the milk spray and the lens splash in the opening

    video · tooling2 questions

    1. Whether a real PlayStation drops cinematic records as the oracle does, which decides when the characters blink.
    2. Model face flags bits 8-9 (culling, 0x800101dc) and the other bits.
  • 22
    The opening's sound: the drive drops the repeated audio sectors

    audio · video · tooling

    the opening's milk: a model with semi-transparent faces (face flag bit 25, POLY_G3 with blend 3), drawn by the C model path 0x8002390c; which object it is; the characters' eyes and mouths (0x80074ec0, 0x80075304: 8x32 blocks copied into their face textures); the swirl transition in the opening

  • 21
    The title's peeking babies, in step with the original's rand

    ui · decomp · test

    the leaning states (4-6) and what sets them; the giggle's sound

  • 20
    The title menu answers the pad, and the attract cycle runs

    ui · input · play3 questionsclosed by #21, #70

    1. the Start Game menu, Load Game and Audio screens
    2. the menu's sounds
    3. the babies, whose rand calls the demo pick depends on
  • 19
    The title's sign and buttons, from the original's cameras

    ui · render · decomp · test2 questions

    1. the menu's input, sounds and submenus
    2. whether MatrixNormal changes the cubes
  • 18
    The title screen begins: text, the backdrop, and main's chooser

    ui · render · tooling · test2 questions

    1. the submenus
    2. the front end's sounds
  • 17
    Memory cards as folders, the save file byte for byte

    save · decomp · tooling · test

    1. the game state's 328 bytes
  • 16
    The oracle takes input: SIO0 and the BIOS interrupt queues

    tooling · input · engine2 questionsclosed by #17, #18

    1. where the opening cinematic plays with a pad in (after Main Game?)
    2. the memory card's BIOS calls, which the oracle answers as no card
  • 15
    The port plays the opening cinematic

    engine · render · play · decomp · test · input2 questions

    1. the Euler round trip for turns about more than one axis
    2. whether Triangle skips (the oracle cannot take input: libpad drives the serial port directly)
  • 14
    The opening cinematic's frame matches the oracle's: camera, props, characters

    format · render · decomp · engine2 questions

    1. the actors' and poses' animation and state fields
    2. the LP kinds 6 and 99
  • 13
    Animation: quaternion keys by channel, pinned to the original's matrix

    format · render · decomp · test3 questions

    1. the frame duration's unit and run-down rate
    2. which animations belong to which character
    3. what fills VRAM past DB00A.RAW's end in the original
  • 12
    Characters assembled: hierarchies (HIE) as depth-first skeletons

    format · render · decomp

    1. the hierarchy header's byte lists
  • 11
    Models: the MOD format, all 6286 parsed, drawn in the viewer

    format · render · decomp

    1. the vertex's fourth halfword and the face flags word
  • 10
    Rooms drawn natively: blob meshes, the texture table, room centres, rugrats-viewer

    format · render · decomp · tooling · build2 questionsclosed by #14, #108

    1. the far colour the depth cue blends to, and where the game sets it
    2. whether the house has ceilings the camera never sees, or none
  • 9
    The oracle plays the opening cinematic: a rewound CD FIFO and a lost load delay

    bug · tooling · engine · render

    1. whether other oracle faults remain on paths not yet run (the front end, play)
  • 8
    LEVELnn.BIN read the way the room loader reads it

    format · decomp · tooling

    1. why LEVEL08.BIN does not fit the loader's walk
  • 7
    After the logos: the opening is an in-engine cinematic, and the oracle renders it empty

    engine · decomp · tooling

    1. the per-frame record's fields and the cinematic table's entries
  • 6
    The logo movies play in the port: STR, BS version 3, XA sound, the input module

    video · audio · format · input · test3 questions

    1. the exact frame pacing of movie_play (frame drops, the CD's start-up seek)
    2. what the B movies are
    3. the controller maps' contents and the action list
  • 5
    The port begins: rugrats on retro_rt shows the legal screen, pixel for pixel

    build · video · format · test · design

    1. the opening cinematic's stream format (OPEN.BIN: data sectors starting with 0xf00dbabe and a frame counter, interleaved with XA audio)
  • 4
    A model of the CD-ROM drive: libcd and the opening stream run natively in the oracle

    tooling · engine · video · audio

    1. how the opening stream's video sectors are decoded (the CINEPAK file names suggest Cinepak, not MDEC)
  • 3
    The original boots in a harness on rrt-emu, to the legal screen

    tooling · engine · decomp · video · test2 questions

    1. what the words game_init patches at 0x8009f2f8, 0x8009f870 and 0x8009fc70 are
    2. whether the MDEC model's colour conversion and IDCT match the hardware bit for bit
  • 2
    The image puts its rodata between hand-written asm and the compiled code

    decomp · tooling2 questions

    1. what reaches the unowned stretches at 0x800a624c, 0x800a6c54 and 0x80097bd8
    2. where the hand-written asm's entry points are and what calls them
  • 1
    The disc, and the file table the game reads it through

    disc · content · format · tooling · build3 questions

    1. whether the database name list at 0x800bb744 is indexed by database number
    2. what the 0-byte cinematic entries are for, and where cinematics take their pictures
    3. what CDFIX.DAT holds
  • The B movies

    Reference · Cutguess2 questions

    • What they are: a high-resolution or PAL encode, or placeholders of a fixed size, is a guess; none has been decoded and looked at.
    • Whether any code reaches file entries 93-105 (odd).
  • Cinematic entries no table row names

    Reference · Cutpartial

    • What the 0-byte entries are for, and where cinematics take their data.
  • Database 19, on the disc but out of the table

    Reference · Cutpartial3 questions

    • Which level DB19 was; whether the name list is indexed by database number.
    • Whether the room geometry and collision load without the model files.
    • What Q.DAT is.
  • Database 22's animation files

    Reference · Cutpartial

    • Whether DB22 animates anything without them, or loads another database's.
  • Sound on the disc that no table entry reaches

    Reference · Cutpartial

    • Whether DB14's and DB17's own music is the right music for those levels and the table entry a late redirect, or the files are superseded.
  • The CD and its file system

    Reference · Discpartial2 questions

    • What CDFIX.DAT holds (padding to the disc's outer edge is the guess).
    • The submode 0x20 sectors' owners.
  • Boot, main and the start-up calls

    Reference · Enginepartial2 questions

    • What the patched words at 0x8009f2f8, 0x8009f870 and 0x8009fc70 are.
    • The modes main dispatches: what 0x80030158, 0x80017c0c and 0x8007475c run.
  • In-engine cinematics

    Reference · Enginepartial3 questions

    • unknown_02 (1380, the setup's size, in every OPEN.BIN frame), the setup block, the rest of the 16-byte table entries.
    • Whether the real drive and GPU drop records as the oracle does, which sets when the characters blink.
    • Whether Triangle really skips: the oracle has no input during the cinematic (see input).
  • Hinged and sliding doors

    Reference · Enginepartial6 questions

    • The doors in DB15 (Mirrorland): their placements turn about tilted axes; whether +0x24 is still the vertical there, and what the facing rule (a y-only matrix) does with them.
    • Whether a game frame ever takes 3 VSyncs in these rooms (dt 15, 0x800c3f20 204: the gate's step would be 1 still, 218's 25).
    • Template 217's negative speed: by the code it turns away from its target until +0xa8 wraps (32768 thinks); only in DB19 (cut).
    • What sounds 14 / 15 / 16 / 17 / 54 / 135 / 136 / 170 are (numbers only).
    • 0x8006add8's neighbour scan and 0x8006abbc's cylinder sizes for the blocking test, beyond what the runs showed.
    • Who else counts down 0x800c4ba0 in the house levels.
  • The front end

    Reference · Enginepartial2 questions

    • The submenus, the sounds' ids.
    • Whether MatrixNormal (0x8009f398) changes the cubes' matrices.
  • Gameplay loop

    Reference · Enginepartial13 questions

    • What 0x8007737c's other cinematic cases do (0x80079c10, 0x8007a314, ...), and the per-level EpisodeStart callbacks.
    • Why the pause's -2 ("Returning to Pickles' House") reaches main as level 2: main takes the absolute value (0x80017c6c). Not yet seen in the oracle.
    • 0x800746bc: what "seen" levels 1 and 2 do instead of playing the cinematic.
    • State names (the table is from animations and sounds only), the handlers of states 1, 3, 17-21, and the animation numbers' meaning per character.
    • The object collision path in 0x80066014 (0x80067ba4, 0x80065c5c, 0x800658cc). (+0x130 is the slant between the step and the face that held it: under 384 head-on (220 for Spike) the stand handler tries the climb (0x80062cf4), up to 1024 the slide (0x80065120), which an object of flag 0x4000 never takes.)
    Show 8 more
    • COL +0x24, record byte +7, the plane equation's exact form (0x80068510). (Byte +4 is the floor flags: 1 water in level 4, 2 slippery, 4 a puff at a foot, 16 dust, 32 and 64 the sink as drawn; 8 read by nothing found.)
    • The follow camera's details (0x80027304 is 1885 instructions): its flag bits 0x800c4a3c, easing, what R1 (0x80026ddc) does exactly, camera modes 2, 5 and 12.
    • The world-update callees 0x8008851c, 0x8008a358, 0x8008c0d4, 0x8009173c and the draws 0x8006f88c .. 0x80034a98 (NPCs, effects: guesses; the characters' shadows are 0x8003414c, above).
    • The HUD elements: which pool shows what.
    • Which VSync count the thinks read on the hardware (the oracle reads the frame's start in one harness, one later in another).
    • LP kind 7, record +0x46..+0x4a (template 835 chains), and template bytes +0x07..+0x0b's tables. (LP kind 3 is a sound source: sound.md.)
    • Level-specific code in the player update (levels 4, 6, 7, 11, 20-31).
    • State +0x23 (0x800b2920) and the flags in state +0x30 / 0x800c56a8.
  • The input module

    Reference · Enginepartial2 questions

    • The action list and the six maps' contents.
    • The status word's meaning beyond 0 = present.
  • The PsyQ libraries in the executable

    Reference · Enginepartial

    • The exact bounds of libgpu, libspu and libsnd, and libpad/libmcrd if linked (the pad has not been traced).
  • The memory card and the save file

    Reference · Enginepartial3 questions

    • The game state's 328 bytes.
    • The table at 0x800b8718.
    • Where in play the game saves, and the load path's menus.
  • Pickups, level goals, hint cards, HUD and pause

    Reference · Enginepartial15 questions

    • The hand slots' real names (12, 15). (+0xe0 bits 2048 and 16 are the animation frames' events: FRM +0x00, or'd in as a frame ends, 0x80055d40.)
    • A flight from outside every room (0x8008864c: no room, no flight; a put-down then sets the object at the player's floor +0x148 plus the least top of its boxes, 0x8005fdb4; a throw leaves it where it is) is ported but never seen on the original. Spike's put-down (1024 ahead, line 190) is ported unchecked; his part slot 0x24 back to model 79 is not.
    • An object's size (+0x86) is 0x80046570's (boxhit::bound_size: the floor square root of the larger squared length of its boxes' least and greatest corners; none, 1024's cube, 1773), its bound +0x78 the cube of it; characters then get 8192 and collectibles' shared boxes are ±375 (649). An object is sized when it is set up, in LP order, before its set-up's own changes to its model's boxes (0x8004691c's template cases, e.g. 1028's first box's top to -1000 at 0x80047890; a collectible's ±375 at 0x80048a44): those set up before such a change keep the old size (level 6's first 1028, 1167; level 3's 883 before the one at 0x1bd56, 5930). The port keeps each placement's (Set::sizes); checked against every object of levels 1, 3, 6, 12 and 16 but the characters.
    • A collectible is touched by the walk's probes on the ground (0x8005e1f4 at 0x8005e31c: 0x80064a34 held by +0xf4 of class 11, its +0x58 run, no step that frame, before any slide) and by the air's move test in the air (0x8005ee78: 0x80066014's object met, 0x8005ed2c for class 11 or template 711 but 1177, the move then had as if clear), as the port has them; the air's has not been seen on the original. Template 711 is not among the port's touchable objects.
    • The nearby list's order. 0x80062ed4 rebuilds it (+0x100, count +0xff) each frame through 0x8006add8: the player's room's lists +0x48 and +0x4c, then each portal's room (room +0x30 portals of 48 bytes at +0x34, the room at +0xe), each object not the player and without flag 0x80000 that 0x8006abbc passes put at the head (so the list runs from the last found). 0x8006abbc: the object's bound box middle (+0x78.. +0x84, turned by its angles, plus its place) within +0x86 plus the cylinder's radius across (squared, unsigned) and within +0x86 of the cylinder's height. The port measures as 0x8006abbc does (a model's radius, its place the bound's middle) but goes down its things in their own order, from every room, which decides 0x800631d8's ties and its stacking preference.
    Show 10 more
    • What the kind 5 touches (8, 13, 15) throw; kinds 1, 2 and 4's drawing. (The +0x50 table 0x800b7eb0's class 10 entries, their record +0x98 and launches: gameplay.md, "Emitters". Entries 1, 8, 11, 16 and 19, 0x80053604, 0x800537c4, 0x80053b88, 0x80054708 and 0x80054894, no class 10 template takes.)
    • Use callback 2's 0x8007d0f4 / 0x8007d02c (which level, what the six characters 207-212 are).
    • What posts cine 3 and cine 4 in level 2 (room events, LP +0x44 or triggers), and who calls 0x8007ec48 (cine 16).
    • Characters 11, 14 and 900-904 in level 2 (goose, Spike, geese are guesses).
    • The second argument of 0x80044434 (4-9), and how ~ and the button glyphs are drawn by the font.
    • The puzzle screen's input and drawing (0x80092754 and neighbours), and the "You've found all the Reptar bars for this level" screen (strings 223, 224).
    • State +0x23 and +0x3c; flag bits 32, 128, 256 of +0x30.
    • The 32 x 16-byte table at 0x800e6c80 and the 8-entry pool 0x800c461c.
    • The pause's -2 path; the menu's save / load states (3-31).
    • Whether level 1's EpisodeStart placement always overrides the respawn point set by cine 5.
  • In-level screens, the puzzle board, bars, restart and loading

    Reference · Enginepartial8 questions

    • Whether sprite 326 + i is a shadow (one dark CLUT for all twelve, drawn 2 down and right) and the colours of the CLUTs at (944, 384..396).
    • The VRAM page (896, 256) and (640, 256): which file puts the puzzle art there.
    • The pause's -2 page: dead or reached from somewhere not found.
    • The teardown's leftover s2 with twelve earned (step 4 posting SwitchEpisode(7)); whether a posted SwitchEpisode survives the level change.
    • Template 657 in DB23 (use callback 1, id 0) and the board in DB07 and the bonus databases: whether they are reachable.
    Show 3 more
    • What calls 0x800c3ecc during a load; 0x8008a7ec(-1) at the teardown.
    • 0x8006f828 (guess: stops the object sounds) and 0x8008dbec (guess: pauses speech).
    • Movie 11 and cine 85's end path (+0x30 bit 4) were read, not run.
  • Music and sound effects

    Reference · Enginepartial3 questions

    • libsnd's exact volume and pan law and its pitch formula (tone shift taken as 1/128 semitone).
    • Reverb (the SPU's reverb is not modelled).
    • Vibrato and portamento from the tone attributes.
  • Speech

    Reference · Enginepartial3 questions

    • Whether a cine posted in the same frame as a line waits for it. The port's cine replaces the line at once.
    • 0x800c4618 and 0x800c45e4 (900).
    • Level 26's prowler and 0x800c4614.
  • Animations (DBnnANM.BIN, DBnnFRM.BIN, DBnnROT.BIN)

    Reference · Formatspartial2 questions

    • unknown_0, the duration's unit and how fast it runs down.
    • Which animations belong to which hierarchy, and which ids mean what.
  • BS still pictures

    Reference · Formatspartial2 questions

    • Version 3's differential DC (only E3SCR512.BS) is not decoded.
    • Where THQ512, NICK512 and NSPAC512 are shown, if anywhere (the logos at boot are .STR movies).
  • LEVELnn.COL, a database's collision

    Reference · Formatspartial2 questions

    • Tile bytes 4, 5 and 7, and header +0x24.
    • The other collision functions (0x8002b660 to 0x8002ba30): walls and objects.
  • The file table in the executable

    Reference · Formatspartial

    • Whether any load reaches a file by LBA without this table.
  • DBnnHIE.BIN, a database's hierarchies

    Reference · Formatspartial

    • The header's byte lists, unknown_00, unknown_20.
  • LEVELnn.BIN, a database's rooms

    Reference · Formatspartial3 questions

    • LEVEL08.BIN does not fit: its first quad reads as 32-bit values (0xfffe5c00, 0xfffffe80, ...) and the third count is not a count. Whether another loader reads it, or the file is stale, is open.
    • The room record's fields from +0x44 to +0x5d and +0x64 on, the portals' tails and corner flags beyond corner 1's (the room a portal leads to), the 24-byte records, the byte lists.
    • The blob header's halfwords at +0x0a and +0x12.
  • DBnnLP.BIN and TEMPLATE.BIN, placements and templates

    Reference · Formatspartial2 questions

    • Kinds 6 and 99, unknown_14, unknown_28, the record's tail.
    • The template's other fields.
  • DBnnMOD.BIN, a database's models

    Reference · Formatspartial2 questions

    • The vertex's fourth halfword, the bounds block, unknown_0a, and the face flags' other bits.
    • How GT faces' colours and the lighting combine (the renderer was not read past the vertex pass).
  • STR movies

    Reference · Formatspartial3 questions

    • unknown_0c in the sector header.
    • The exact pacing: the original shows a frame when its sectors are in; the port schedules frame k at its last sector's time at 150 sectors a second.
    • The ...B.STR files (640 x 192, BS version 2, submode 0x42): no movie table entry names them; see the B movies.
  • Mini golf, levels 23-31

    Reference · Levelspartial10 questions

    • What +0xe0 bit 2048 is in animation 31 (the strike frame), and what returns state 15 to 0.
    • The stack leftovers in the descriptor (+0x50, +0x54 to 0x80086114, +0x58..+0x60) and what the record uses them for.
    • The object scan 0x80086340 and the world test 0x8002cd7c in detail (which normal a wall gives, which objects stop the ball; whether the cup can block it).
    • Whether the Circle+Cross+Up/Down camera adjust does anything.
    • The level 23 object (template 1264) and the template 1231 object (id 524); ids 9999 (DB26), 9998 and 6660 (DB31).
    Show 5 more
    • 0x8007614c's sign (which side a lip out turns to).
    • The loading screen's text for the holes (read only).
    • The activity edge cases: count 0 after two Triangles, a pick landing on taken face 0 after a wrap (0x800960a0), a Load Game from the pause mid-round; the GTE H used for the heads.
    • Whether a Select restart (0x80043d58) leaves the total too high (the hole's byte is cleared, the total is not); nothing in single play reads the total.
    • Speech line contents; whether level 8 ever loads its own database.
  • Level 1, Pickles' Home

    Reference · Levelspartial6 questions

    • Whether carrying a pickable door toy (the door to 5, 6, 11, 13, 4, 2) away moves the door with it (its trigger follows the object; not tried).
    • What the class 5 objects (flags 0x400000) do. (The kind 3 sounds are the looping sound sources, 0x8006fe04 and 0x8006f88c: gameplay.md.)
    • Who 13, 15 and 16 are and whether 600, 13, 15, 16 can ever be seen.
    • Object 518 (template 1149 made 1130, at (-920, 0, 118), room 3) and LP 71 (template 111, outside the house): why they exist (guess: left over).
    • Where Spike goes when Tommy is far but Spike is near home (goal not updated).
    • Card arg for 712 (from 0x8004f78c: a1 is the player pointer).
  • Level 2, Grandpa's Teeth

    Reference · Levelspartial10 questions

    • How the frozen Tommy gets the puck as touched object (+0xf4 needs the nearby list +0x100, which was empty in the oracle while standing).
    • The flight's exact end for a puck: flags 0x19070000, lifetime 0, no gravity; whether it stops on the court floor at once or slides.
    • Why pad input did not reach the level in the oracle runs (an oracle matter, not the game's).
    • Post flag 8 (posts 117-249), room flag 16, kind 2 record +0x1d, and whether kind 2 posts double as cameras for room 68 (post 125).
    • +0x688 bits 0x800 and 0x1000; 0x8008a7ec(-1); 0x8006eac4(2, 0).
    Show 5 more
    • What ids 335 and 1313 are; what chars 13, 7, 8 (ids 16, 13, 15) are and whether anything in level 2 moves them.
    • The order of cine 16 and SwitchEpisode(1) when the last try is lost in phase 3, and whether cine 16 plays before the exit.
    • 0x80090554's results (1, 0, an object) and 0x800825fc's probe.
    • The gauge offsets 0x800c4a04 / 0x800c4a06 (0 in the EXE).
    • Cine 14 is "Episode 2 Ending" (level 3), not a level 2 cinematic.
  • Level 3, Incident on Aisle 7

    Reference · Levelspartial7 questions

    • Which of 75 / 76 is Larry and which is Steve; what ids 13, 74, 79, 81, 333 look like (79 the cart, 81 the balloon and 333 something to climb are guesses).
    • Why "opened cans make Tommy cry": templates 650 / 651 are pickable with +0x6d 8 and no callbacks; no code found that makes them hurt.
    • Who sets player +0x188 bit 128 (cleared on level 3 room changes and after cine 13); what player +0x00 bit 0x80 with +0x148 / +0x14c does (0x80067084 eases y), and why cine 15 leaves bit 0x80 set.
    • Whether 0x8007dfe0's hierarchy write is per object or shared by every char 23 (+0x154 copies).
    • The camera's +0x4a values (the phase 1 cry test).
    • The cart ride and balloon cines' content; whether the balloon and the cart can both be taken.
    • Re-adding lobsters to the trigger list in 0x8007ece4 makes duplicate entries; whether that matters.
  • Level 4, 7 Voyages of Cynthia

    Reference · Levelspartial9 questions

    • What Spike's animation slots 10-13 and ids 900-903 are.
    • What char 3 (id 600) is, and what ids 51, 52, 600, 1492, 1776 do (cine 48 props, guess).
    • Room flag 1 (rooms 0-3, 6-25, 35, 38) and COL floor flag 32 (room 40).
    • Whether the dump can be reached without room 40 (Cynthia before the timer).
    • Why walking into LP 111 (template 661) gave state 9 and no Damage.
    Show 4 more
    • Object bit 0x20000 and +0xbe bits 64 / 128 / 256 of the movers; whether Spike rides them.
    • Template 1141 (kind 16): what it looks like.
    • The sprite 287 position formula (0x800c4a06 is 0 in the EXE).
    • How long cine 28 and cine 48 really are (the oracle may cut them short: 191 and 100 VSyncs).
  • Level 5, Visitors from Outer Space

    Reference · Levelspartial11 questions

    • Where cine 37 leaves the player in the real game. The oracle's (38395, -5590, 28281) is with the loader fix above (guess: right).
    • Animation 1209 and slot +0x58 of the hierarchy table (guess: the standing animation with the remote).
    • The beam's speed and life in world units (table 0x800bb28c entry 0: +4 10, +0xc 1000, +0x10 297, +0x12 300, +0x14 1000) and what 0x8007666c's 1025 bound means.
    • What happens to the remote if put down and how the gauge follows it.
    • Why room 28 makes a floating Angelica cry (it is on the lower deck, far from the ducts; guess: a safety net).
    Show 6 more
    • Sound 64 heard 60 VSyncs after each robot hit (source not traced).
    • 8801 (template 1268): what it looks like; whether it blocks the way back to the lower deck (guess).
    • Who uses posts 10-15 (the robots do not).
    • Templates 1139, 1156, 866, 867, 97: what they look like and do.
    • Whether 0x8007b3d0 resetting the phase to 2 on a later room 42 entry can happen (guess: 8801 stops it).
    • How long cines 37, 38 and 40 really are (the oracle: 1658, 1425 and 524 VSyncs).
  • Level 6, Toy Palace

    Reference · Levelspartial9 questions

    • Which guard is Thorg (46, char 16, or 506, char 22) and what chars 9, 8, 22 and 41 look like; the clowns are a guess from HINT23.
    • How the player gets onto a breakable toy 1102 (its top is about 1290 above the floor) and whether walking into its side does anything.
    • The intended box route to the switch platform (the COL table above; how many boxes and where).
    • What sets the player's health to 255 just after the swap.
    • What ids 507, 15, 334 and 527 and template 924 are for (cine props, guess), and what posts 1-16 and their flag 0x200 are for.
    Show 4 more
    • The extra level 6 collision tests of the class 15 walker against ids 1776 and 506 (0x8004dc4c..0x8004dccc).
    • The class 8 objects 990 / 991: what they look like.
    • How long cines 45, 46 and 47 really are (the oracle: 1513, 1211 and 44 VSyncs).
    • Card arg 7 (HINT24) against arg 6.
  • Level 7, Reptar 2010

    Reference · Levelspartial9 questions

    • Whether anything can hurt Reptar in normal play (none found; guess: no).
    • The exact test in 0x8006b6d0 (the player's shape against a model box) and why a building broke 2400 from Reptar while he stood (guess: the tail).
    • What templates 401 and 795 are (guess: a vehicle and a moving thing; 795 is class 11, a mover, at the far north-west).
    • Rooms 10 and 21.
    • Whether speech 161 in room 5 is the intended line (1185 was passed).
    Show 4 more
    • What 0x800c4ba0 = 100 is for in level 7 (it also changed to 10 during play; not traced).
    • The animation lengths that end states 29 and 30 (seen about 110 and 70 VSyncs).
    • The hub's load-time page after the credits ("Pickles' Home / Returning to" by the table in screens.md; not looked at).
    • screens.md's "movie 11": 11 is the display mode 0x8008b2c8 sets (0x8001de04); the movie is 6, CREDITS.STR, and the runner returns 1, the hub, not the front end.
  • Level 9, The Mysterious Mr. Friend

    Reference · Levelspartial10 questions

    • What Tommy's logical animation 49 is and when level 9 plays it (232-235 replace it at EpisodeStart).
    • Whether 46 always waits in state 19 after cine 18 in normal play, and whether that is intended.
    • What templates 777, 716 and 390 look like (balls and cans, guess from HINT28), and what template flag 0x200 (777) and 0x2000 (732, 733) do.
    • What speech 0 does (0x8008da4c(0) when no Mr. Friend can be hit).
    • What the kind 3 sound sources play (sound 0) and what the kind 99 record (2, 7) is for.
    Show 5 more
    • What rooms 0-2 are (above and behind the workshop) and whether Tommy can reach them; post 2 is never used by a room.
    • Where cine 18's end hook means 800 to stand ((19913, 7500, 251) is overwritten by 0x80083728).
    • Card args 4 and 5.
    • How long cines 17, 18 and 19 really are (the oracle: 1387, 623 and 634 VSyncs).
    • What ids 15, 16, 47, 48, 49, 93-97, 802 and 804 are (cine actors and props, guess).
  • Level 10, Chuckie's Glasses

    Reference · Levelspartial11 questions

    • The exact playpen test (0x8006abbc and 0x8006a714 on model 1442) and its extent.
    • What animations 46 and 47 are (guess: the hiding pose and the "found" reaction).
    • What object bit 0x400000 (class 5 objects) and NPC bit +0x688 0x1000 do.
    • Whether the hinged doors (LP 88, 89, 151, 152) close off any hiding spot; none sits near them.
    • What the three sound sources play (sounds 0, 1, 2) and what template 1192 and the template 126 copy are for.
    Show 6 more
    • Whether template 117's training message (33) shows outside level 16.
    • What phase 4 with tries left would do (no respawn); only reachable if something else cost a try, and nothing in level 10 seems to.
    • Where cines 41-43 and 75-77 leave the babies in general (seen once for Lil after cine 75) and Chuckie after cines 41-43 (then the respawn moves him anyway).
    • Card arg 5.
    • What ids 13, 14, 15 and 16 are (cine 44 actors, guess).
    • How long cines 44, 41-43, 75-78 really are (the oracle: 379, 282, 204 and 778 VSyncs).
  • Level 11, Circus Angelicus

    Reference · Levelspartial12 questions

    • What the take-off zone's extent is exactly (model 1235; seen entering at about x 15000 on the ramp).
    • Why the distance bands skip exactly 6000 and 7500 (left unchanged).
    • What the tricycle's top speed is in the real game and the speed bar's scale (seen 20).
    • Whether the ring 2 hazards (204, 380) hurt the tricycle and what a cry in ring 2 by damage would do to the step.
    • What the kind 3 rooms 4 and 16 do with post 12 (no flag 8).
    Show 7 more
    • What Chuckie's logical animations 7 and 8 are; what ids 200, 201, 203 were and what 0x8004da50 was for.
    • What char 34's wall case (0x80068e68) does.
    • What rooms 9 and 10 are.
    • Where the camera kind 4's angles (3146, -203, 0) point exactly and what 0x800e5790 (Chuckie + (0, -1000, 0)) is used for.
    • Card args 6, 7, 8.
    • How long the cines really are (the oracle's lengths above).
    • Whether Lil and Phil's records (LP 60, 61) and the template 1211 id 202 matter outside the cines.
  • Level 12, Let There Be Light

    Reference · Levelspartial8 questions

    • What hierarchies 44 and 45 look like.
    • What templates 1070, 1271, 954, 678 and 960 are (the stairs? the doghouse?) and what template +0x24 means.
    • What rooms 32 and 44 are; why 510 and 511 copy the refrigerator doors.
    • Whether the battery's write to address 0x6d matters on hardware.
    • Card args 6 and 3.
    Show 3 more
    • What 0x800e2b48 +0x1f8 (the grip) is for the flashlight given at the start (no grip computed).
    • Where cines 67 and 68 really leave Tommy, Spike and the flashlight from a natural approach (the oracle's are from teleports).
    • How long the cines really are (the oracle: 455, 705 and 710 VSyncs).
  • Level 13, Cookie Race

    Reference · Levelspartial8 questions

    • How long mode 1 lasts after a bump, and whether a bump or a throw is meant as a way to slow her (not seen).
    • What hurts Tommy here, if anything (the generic Damage posters).
    • "Areas that are blocked off" (HINT35): which objects block the way.
    • Room flag 16; LP kind 3 records 1-13 and the kind 99 record; the camera post of room 21 (+0x5c 1) and posts 52-55.
    • What the speech lines say (608-612, 643-646, 664, 723, 556, 557).
    Show 3 more
    • Card arg 5.
    • Whether the cookies at (30475, 0, -7302) in activity play can be reached (guess: no).
    • The cines' lengths from natural play, and where cine 6 leaves Angelica with other timings.
  • Level 14, The Return of Mr. Friend

    Reference · Levelspartial7 questions

    • Why Mr. Friend stops at (4880, -5620, 8100) on his first walk (an obstacle on the straight line, guess) and whether he paths around it.
    • What Tommy's floor is at the start (-5365) against -5610 elsewhere in the room (a rug or a lower step).
    • Whether a 0-damage pickup staggers him in play, and whether a hit while staggered restarts the stagger (code says yes; not run).
    • What templates 168 (16 copies), 277 (class 5), 278, 279, 282, 283, 373 and 840 are; why the bar and health start in room 1.
    • What the kind 99 record (0, 4) is for.
    • Whether level 14 was meant to be a bonus level (the 2-bar case in 0x80076d6c) reached from the hub (DB19 LP 278 has 14 at +0x42) and how it was meant to end.
    • Pause, Quit Level from level 14 and where the hub puts Tommy after it (0x800b8718[14] = (5775, 779, 19403), the default; not seen).
  • Level 15, Mirrorland

    Reference · Levelspartial9 questions

    • What the invisible copies of templates 223, 248 and 54 are for (blockers, stair steps?).
    • What Spike does in the level. (His +0x688 bit 0x2000, from his template's flag 0x10000000 (0x80081d64), keeps him unsettled where he is put: 0x800452f8 skips the room and floor for it.)
    • What the 255 -> 225 health loss in room 45 was (a fall after a teleport, guess).
    • What 0x80054894's colour table by room shows (the balloon colour, guess) and what 0x8004cdfc draws.
    • Card arg 6 for HINT13.
    Show 4 more
    • What post ring 5-18 at y -9134 is for.
    • Whether the mirror (ids 602 / 135 in DB15) is meant to be used at the end ("get to the mirror"): no level 15 code reads it; the win is automatic on the sixth colour.
    • Whether a player can stand in a room the table does not map while the box's use fires (slot -1).
    • How long the cines really are from natural play (the oracle: 73 1255 and 72 417 VSyncs).
  • Level 16, Training Level

    Reference · Levelspartial7 questions

    • What turned Tommy from 2048 to 1536 between messages 28 and 27 with no input (camera mode 4, guess).
    • Whether a door's swing can hit Tommy in normal play (message 24), and whether any fall in the house is long enough for message 31.
    • Where the flight that did Damage 4 in room 0 came from (guess: the spinning cans, template 526).
    • Templates 315 and 318 (touch 2 and 3), 1164 (flag 0x400000), 611's burst, and whether 969 hurts here as in level 6.
    • Why "6 times" when five hits win (guess: Angelica's health was 300 once).
    • Whether bars found in training buy pieces in the main game that follows (from the code they count like any level's).
    • Card arg 4.
  • Level 17, Gold Rush

    Reference · Levelspartial7 questions

    • What 0x800c4018 is (6500 in level 17; no reader found, also not through gp 408); guess: a draw or fog distance for the open park.
    • What the coins' +0xc0 handle is (0x8008a2a4(0x1011), the gold coin's 0x1022; 0x8008a1f8 sets its +0x18 to 62, 0x8008a1b8 runs on each take); guess: a shared sparkle or sound.
    • Room flag 16 on all ten rooms; the LP kind 3 and kind 99 records.
    • What speech 0-4 say; what model 1008 is (tears, guess).
    • Card arg 6 and 1.
    • Whether the gold coin at (1956, 0, 27889) can be reached in activity play (it is in room 0's list; guess: under the ground).
    • Where cine 27 leaves Lil from natural play (seen once: (-3657, -342, 10523)), and the cines' lengths from natural play.
  • Level 18, Egg Hunt

    Reference · Levelspartial6 questions

    • What hurts Tommy here (the generic Damage posters; guess: falls).
    • Camera kinds 7 (room 16) and 9 (room 15) and the camera posts of rooms 9, 17, 27, 32; room flag 16; the LP kind 99 record and the one post.
    • Ids 98 and 100 (templates 796 and 794) and the five ids outside the house (14, 13, 15, 16, 1776): not read by level 18's code; guess: props and actors for other uses of the house.
    • Card arg 6.
    • Whether the gold egg at (29942, 0, -5181) can be reached in activity play (guess: no).
    • The cines' lengths from natural play.
  • Level 20, No More Cookies

    Reference · Levelspartial7 questions

    • How the kind 3 camera uses the box as its subject.
    • Whether the pitch limit of the cone matters in the flat kitchen.
    • What happens on a miss in practice (the floor-box loss is from the code), and whether Angelica can be outrun for 15 eats.
    • What state 20 is for the new player after a swap (handler 0x8005cc24 is empty) and why the swap gives health 0.
    • The kind 3 records (LP 30-32) and the kind 99 record.
    • Card args 5 and 1.
    • Where cines 63, 64 and 65 leave each baby from a natural approach (the oracle's are from teleports or standing play).
  • Level 21, Touchdown Tommy

    Reference · Levelspartial9 questions

    • What 0x80054708 draws (a milk splash, guess) and its sprite.
    • What models 1238 and 1245 are exactly (Tommy's arm with the bottle and the bottle, guess), and which of 366 / 365 is the gauge's frame and which its fill.
    • How the kind 3 camera uses the bottle as its subject; why the view changed after a swap.
    • Whether 20 drinks can be done in practice; how many throws a natural win needs.
    • What the stale 0x800c4298 does in the hub after a win.
    Show 4 more
    • Ids 54, 56-58, 60, 80 and the invisible template 1192 copies; the kind 99 record; room 25's flag 16.
    • Which grown-up each of ids 13, 15, 16 is.
    • Card args 6 and 1.
    • Where cines 49, 50 and 51 leave each baby from natural play (the oracle's are from standing play and pokes).