init.luau
Versions
Every version of this package its world published, newest first by when it first appeared. A version published again later keeps its place.
fix: the title card is the first thing a player sees again, the room stops holding dust that is not there, and the Kid's verdict stays on the end card The boot never reached the title. is answered both by the presentation slice, which lands the title card, and by the camera director, which started the opening flythrough, and whichever the bus reached last decided what the player looked at — so a fresh session went straight into the flythrough and on to the launcher, and BACK TO THE BOX from the end card did the same. The director no longer starts the flythrough from that event: every path that wants it asks for it by name. The bus dispatches in subscription order rather than in whatever order a table iterates, and the title handoff is spent when the player leaves the title, so it cannot come due again mid-session. An effect that has finished sometimes leaves its last frame of particles standing. Three clouds of dust and splinters were hanging over a settled city with nothing having been hit for five minutes, one of them in shot on the title card. The set slice now gives the idle pool back at the beats where nothing is playing and no frame is being flown. The Kid's verdict left the end card after the clip finished rather than after the twelve seconds the card is written to hold it for; a line running out no longer clears the words. Six modules shipped the scaffolded README placeholder into a public world; they now say what they are. World validation: 8 warnings down to 2.
01M1TZGR3JBXXTSCD68HGZ5CSM1bd17c5cd1Browse filesCompare with previousCompare from hereset: the room is lit, the blocks are wood, and every hit throws dust Grade off the UI. The playroom_grade PostProcess declares layer = "scene", so the pass runs before the interface is composited. Its twelve-tap bloom was printing a displaced copy of every cream glyph over the 0.90 threshold, which read as a second misregistered heading on every card, and its tilt-shift band was defocusing the top and bottom of each one. The scene is still graded. The sun comes over the player's shoulder. It travelled -Z, towards the camera, so every block face the player saw was backlit and the fill did the lighting on its own; that is what read as pale plastic. It now travels (-0.78, -0.42, 0.46) and rakes the camera-facing faces, with the fill warmed to room bounce and lifted to 0.28, the key dropped from 3.7 to 2.6 (at 3.7 the newly-lit faces sat at 0.85 luminance and had no colour left in them), the sky IBL down to 0.20 and the grade's saturation from 0.26 to 0.15 now the colour comes from the light. The window opening runs from z = -40 rather than -22 to fit the new angle: the key crosses the +X wall 14.7 m before the point it lands on, and at the old opening the whole launcher end of the table stood in the wall's shadow. The ten block materials move to playroom_paint, the shader the table already wears, at grain_scale 3.2 / grain_strength 0.42 / wear 0.32 / clearcoat 0.22 and reflectance down from 0.35 to 0.12. The painted_wood texture they used to bind is white to within four code values, so the albedo pass showed ten flat colours; it now shows grain and edge wear (albedo spread 115 -> 125). impacts.module is new: one subscriber on the game's bus that plays the wood impact effect on impact and blockDisplaced, a bigger burst plus a shockwave ring on towerToppled, and a puff where a block leaves the table. Plays are rate-limited by a token bucket, and a burst the bucket refuses is folded into the next play's count rather than dropped, so a collapsing tower is a handful of large clouds and not fifty small ones. The lamp shade and the window get playroom_glow, a new surface with a gradient down world Y and a fresnel term, so the shade reads as lit paper rather than a flat white triangle and the window as sky rather than a hole. The four picture frames get playroom_crayon, also new: a child's drawing of the aeroplane and a child's tower of blocks, in wax crayon on sugar paper. box() is now shape() with the cube already chosen. Model.mobility = "static" was tried on the 58 props and taken back out: three 20-second windows read mesh_transform_compose at 0.82 ms with no flag, 0.80 on auto and 0.83 on static. Set gains onModuleReload so a sibling's edit to game.game does not leave the effects silently unsubscribed.
01M1TWF6DVKJHKSHA1HYGN3YT6c28394b1fdBrowse filesCompare from here