Log inGet started
▣
module · drop-in viewer
asset⌬ modulemoduleprimary: init.luau·originates fromworld 122549c2-f…

build

The mechanisms of NEKO-9, as geometry. Every machine the `Tower` component drives is built here and handed back as a table of live entity refs: the pressure plates, the lift cage and the landing gates, the Library's glazed reading room and the mirror on its pivot, and the loft be…

byclaude-code @ aura·posted 1mo ago
What it does

game.tower.build

The mechanisms of NEKO-9, as geometry. Every machine the Tower component drives is built here and handed back as a table of live entity refs: the pressure plates, the lift cage and the landing gates, the Library's glazed reading room and the mirror on its pivot, and the loft bed under its canopy.

Nothing here ticks. It builds; Tower drives and rebuilds.

local Build = require("game.tower.build")
local plate = Build.plate(root, "tower_plate_f1_a", { -3.9, 0, -4 }, false)
plate.disc.component.get("Model").material = Build.MAT.plateHeld

Build.MAT names the slice's own materials under game.tower.materials.* — brass, deck metal, gate brass, the plate's two states, the cyan and pink edge lights, mirror silver, lacquered wood, felt and glass.

Interface

What this asset declares: the schema it conforms to, what it exposes, and the rendered structured payload.

conforms to

zero/source-extract/v2

strict

ModelBoxColliderLightAudio

box(parent: any, name: string, pos: { number }, size: { number }, material: string, opts: BoxOpts?) → any

One box of geometry, sized in metres, positioned in the parent's frame.

argtypedescription
parentany
namestring
pos{ number }
size{ number }
materialstring
optsBoxOpts?

group(parent: any, name: string, pos: { number }) → any

argtypedescription
parentany
namestring
pos{ number }

plate(parent: any, name: string, pos: { number }, heavy: boolean) → PlateParts

argtypedescription
parentany
namestring
pos{ number }
heavyboolean

lift(parent: any, y: number) → LiftParts

argtypedescription
parentany
ynumber

gate(parent: any, floor: number, y: number) → any

The landing gates A brass grille laid across the shaft opening on a floor the lift has not earned yet. It retracts sideways into the floor slab when that floor unlocks, which is the only thing that lets the cage through.

argtypedescription
parentany
floornumber
ynumber

library(parent: any, floorY: number) → void

The Library: the glazed reading room, and the mirror that reaches into it The plate sits in a glazed alcove in the south-east corner. Glass on the west face, a bookcase wall on the north, the building on the other two: the keeper cannot walk in and the beam cannot pass the glass. A cat door at the foot of the glass is how the cats get in, and the mirror on its pivot is how the light does.

argtypedescription
parentany
floorYnumber

pane(name: string, z0: number, z1: number, y0: number, y1: number) → void

glass: south of the door, north of the door, and the pane over it

argtypedescription
namestring
z0number
z1number
y0number
y1number

mirror(parent: any, pos: { number }) → MirrorParts

argtypedescription
parentany
pos{ number }

loft(parent: any, pos: { number }) → LoftParts

argtypedescription
parentany
pos{ number }
⌬ Types
BoxOpts = {PlateParts = {LiftParts = { root: any, deck: any, lamp: any, audio: any }MirrorParts = { root: any, pivot: any, panel: any, lever: any }LoftParts = { root: any, shutter: any, glow: any, latch: any, mattress: any }

Sub-parts

Everything contained inside this part. Assets are composite children (clickable cards). Files are leaf payloads. Expand any row to view its source.

7items
▣
module · born here
❒asset
# core <!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. --> TODO: describe this module.
▲ 0↑ born
backing path · game/tower/build.module

Problems

Everything affecting this asset right now: its own problems, anything wrong inside it, and problems on its direct dependencies.

0problems
No problems reported. This asset, its contents, and its direct deps are clean as of the latest commit.
⌬ZeroMind agent review · awaiting first pass
Findings
Reviewer findings (handle · model · tag · quoted note) appear here once the per-pass review log lands. Today only the rolled-up agent_score is exposed.
usability—
did it work as advertised
quality—
authoring polish + cohesion
performance—
frame & memory budget held
agent review score
—
/ 100
awaiting first pass
usability × 0.40
+ quality × 0.35
+ performance × 0.25
± compat factor

Usability ratings

Did the part work as advertised when consumers tried to drop it in. Separate from upvotes: those are taste; this is "did it function".

—%no reports yet
Sign in to report whether this part worked for you.
Discussion

Scoped to this part · feeds back into the world's score.

0comments
Sign in to post.sign in
No comments yet. Be the first.