Log inGet started
World

Fencing with Fences

the-shell: a front door a played world cannot lock out, and a sitting that can be started fresh The writ is raised from this component's own boot flag and from nothing that persists. The sitting lives in a module-local table and the seven public fields are written FROM it every tick, so the layer overlay restoring a docket counter seconds after a load is undone inside a frame. assizes stops being a replicated gate. Arriving in the middle of somebody's live bout raises the writ and leaves their fight alone. N rises the court from anywhere - mid-bout, on a verdict, on the court-rises card - clearing the docket, putting the boundary to nought and naming the first neighbour. It asks the scheme for a 'rise' action first and falls back to the raw KeyN code, so declaring one in fencing_controls needs no edit here. Three defects found by playing and fixed: - A click on a neighbour's tile fenced the wrong neighbour. playerImpatient() asked the action layer whether any commitment was pressed, and the scheme binds the LEFT MOUSE BUTTON to thrust, so every pointer landing on the writ read as a commitment and opened the standing assize under the tile that was clicked. It now reads keys_pressed against each action's key bindings only. - The card's button could half-restart the game. restart() rebuilds the garden, the fence and the rival; run from onCallback it outran the 1000 ms script watchdog and was cut off with the board at nought-all and state still 'over', while clickElement reported ok. onCallback now records what was asked and the component's update serves it, and a board that reads 'over' with nobody named is a restart that did not finish - no card, no docket entry, asked again. - assizes counted only the assizes the shell itself opened. Verified by playing: two cold arrivals into a played world, two full six-assize sittings from the writ to the court-rises card and back, all six neighbours reached by name, four fresh sittings called from a bout and from a verdict, ten verdicts answered by KeyR and by the card's button. Shell coverage unchanged at top 5.3-9.2%, bottom 9.4%, painted 7.9-8.6% of a 1280x720 frame.

4b3f2eaa50b3612486bec87107c6fe0827b98c05a2f843749b643b578263896d
Author
claude-code @ aura
Date
Aug 3, 2026
Branch
main
Parent
1e5984549a

35 files changed

  • ChangedDuelHud.component/README.md4.1 KB → 7.3 KBBeforeAfter
  • ChangedDuelHud.component/init.luau63.3 KB → 81.2 KBBeforeAfter
  • ChangedFencerAI.componentFolderBeforeAfter
  • Changeddesign/journal.md256 KB → 271 KBBeforeAfter
  • Addeddesign/shots/r4_shell_cold_arrival_1.textureFolderAfter
  • Addeddesign/shots/r4_shell_cold_arrival_1.texture/.metadata352 BAfter
  • Addeddesign/shots/r4_shell_cold_arrival_1.texture/README.md174 BAfter
  • Addeddesign/shots/r4_shell_cold_arrival_1.texture/data.ztex330 KBAfter
  • Addeddesign/shots/r4_shell_cold_arrival_1.texture/preview.png47.9 KBAfter
  • Addeddesign/shots/r4_shell_cold_arrival_1.texture/r4_shell_cold_arrival_1.png330 KBAfter
  • Addeddesign/shots/r4_shell_cold_arrival_2.textureFolderAfter
  • Addeddesign/shots/r4_shell_cold_arrival_2.texture/.metadata352 BAfter
  • Addeddesign/shots/r4_shell_cold_arrival_2.texture/README.md174 BAfter
  • Addeddesign/shots/r4_shell_cold_arrival_2.texture/data.ztex180 KBAfter
  • Addeddesign/shots/r4_shell_cold_arrival_2.texture/preview.png47.7 KBAfter
  • Addeddesign/shots/r4_shell_cold_arrival_2.texture/r4_shell_cold_arrival_2.png180 KBAfter
  • Addeddesign/shots/r4_sit1_assize1.png533 KBAfter
  • Addeddesign/shots/r4_sit1_assize2.png482 KBAfter
  • Addeddesign/shots/r4_sit1_assize3.png513 KBAfter
  • Addeddesign/shots/r4_sit1_assize4.png348 KBAfter
  • Addeddesign/shots/r4_sit1_assize5.png436 KBAfter
  • Addeddesign/shots/r4_sit1_courtrises.png541 KBAfter
  • Addeddesign/shots/r4_sit2_assize1.png512 KBAfter
  • Addeddesign/shots/r4_sit2_assize2.png442 KBAfter
  • Addeddesign/shots/r4_sit2_assize3.png470 KBAfter
  • Addeddesign/shots/r4_sit2_assize4.png400 KBAfter
  • Addeddesign/shots/r4_sit2_assize5.png415 KBAfter
  • Addeddesign/shots/r4_sit2_courtrises.png521 KBAfter
  • Addeddesign/shots/r4_verdict_at_minus10.textureFolderAfter
  • Addeddesign/shots/r4_verdict_at_minus10.texture/.metadata348 BAfter
  • Addeddesign/shots/r4_verdict_at_minus10.texture/README.md174 BAfter
  • Addeddesign/shots/r4_verdict_at_minus10.texture/data.ztex297 KBAfter
  • Addeddesign/shots/r4_verdict_at_minus10.texture/preview.png51.1 KBAfter
  • Addeddesign/shots/r4_verdict_at_minus10.texture/r4_verdict_at_minus10.png297 KBAfter
  • Changedduel.moduleFolderBeforeAfter