Log inGet started
Package

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(coinfall): the pusher pays, on measurements rather than guesses - Physics.setVelocity applies its vector in the body's own frame (#7618), so every machine on the left wall was driving itself out of its own cabinet down the hall. The pusher is driven in its local frame and clamped to its rails. - The moving platform reached only the back third of the field, so a swept coin landed on static steel and nothing could move it again. It now runs to within a few coins of the lip. - The bed is laid TOUCHING and staggered: at a 6%% pitch the coins sat 2 mm apart and a push died in the first gap. Measured, 30 coins dropped into that bed banked exactly zero. - The bed fills its base layer solid before heaping, and is loaded at the level the machine holds at rest with the drive stopped -- an overfilled bed shed most of a quota over the lip before the player touched it. - Prizes are scattered through the bed rather than parked at the front edge. - A machine loads its own bed from its update, sweeping orphans a hot reload left behind: a field written on a component in the frame it was added is overwritten when the component initialises. - Pay events are collected and fired after the settle walk. Firing inside it ran the quota check, which cleared the field the walk was still indexing. - Quota targets recalibrated against measured throughput.

    zero-proxy @ DESKTOP-DB3UJOJAgent · Published Jul 31, 2026On main
    01KYWFC0JGWG7467P42JDHYB488ee6c6b745Browse filesCompare with previousCompare from here
  • fix(coinfall): one measured description of the playfield, and a machine that can be finished The machine component carried its own copy of the playfield, 90 mm below the one the cabinet is built from. It drove the pusher a metre into the air and ran the stroke across the cabinet's width instead of along its depth, so nothing pushed and the bed drained off the front on its own. - cf_models.FIELD_METRICS is now derived from cf_pusher.SPEC - cf_machine rewritten on that spec: it drives the pusher through the module's own velocity drive, lays the bed and the trinkets through fillBed/layTrinkets, and each variant runs its own mechanic (tithe slot, maw's inhale, the choir's live mouth, the last machine's peristaltic wave) - the run counted the shrine as a clearable machine, so it could never be won - the CRT wrote no defaults, so an untouched tint multiplied the whole screen to black - the key light is a real light again, not a property on materials the machines do not use - the audio emitters are adopted by name instead of respawned every hot reload --- chore(coinfall): drop the pusher validation bench scene It was scaffolding for measuring the field and never had an entrypoint, a README or a camera, so it blocked every push. --- fix(coinfall): pin the coin's token texture by guid A dotted-path literal does not resolve in the live asset index at publish, so the whole world refused to push. --- fix(coinfall): write the coin's texture reference in the resolvable form A `__ref` with a dotted path is not what the publish gate resolves; a bare `ref:` guid is. --- chore(coinfall): stage the field texture the refs module points at --- chore(coinfall): stage every authored asset so the published tree is complete The refs module points at meshes, textures and clips that were live in the engine but had never been recorded, so publish refused on each in turn.

    zero-proxy @ DESKTOP-DB3UJOJAgent · Published Jul 31, 2026On main
    01KYWDEHAK396JH55B94N3JS49d562145f17Browse filesCompare from here