Commit Graph

8 Commits

Author SHA1 Message Date
a4d308cb90 docs(runicnpc): 9e step 2 — the Carbon Kits reload, found and fixed (D329)
A real Carbon first boot does not meet it: the automatic Kits reload took. The
session's failure was a second load of RunicNPC inside the one second before
its Kits reload timer fired, which died with it; Oxide never shows it because
loading RunicNPC reloads Kits there too. D329 (the org lead's choice): the
reload is owed in state.json until Kits has the example kits, three tries at
most. API.md describes the two new state fields. Code: runicnpc-rust#17.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
2026-10-09 02:08:27 -05:00
5c47de8445 docs(runicnpc): example outfits and full durability (D323, D324)
Decisions from the 9d player walk, 2026-10-09: each example profile wears its own
outfit, and the example kits' items are written at full durability read from the
item definitions. API.md's note on the example kits says both.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
2026-10-08 23:53:12 -05:00
846119220e docs(runicnpc): stage 7 built and walked; API 6 and the dropLoot switch
- runicnpc/API.md: version 6, the profile's loot block and a spawn's
  loot.dropTable override.
- rust-link/PROTOCOL.md: §19.15, world.place's dropLoot.
- runicnpc/PLAN.md: stage 7's "Built" section. It covers the builds it
  was tested on (Rust 25681086, Oxide 2.0.7801, Carbon 2.0.262), the
  harness (s7 25/25, all 270/270, both rigs) and the walk on both rigs
  through the site. It also lists what building it found: Rust's
  ApplyLoot after the hook, and the inventory already emptied when the
  hook runs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
2026-10-06 01:43:15 -05:00
6d319c843b docs(runicnpc): stage 6 built and walked; API 5; protocol §19.14
API.md version 5: the profile's boss and use blocks, the passive role
and stand, the boss hooks and OnRunicNpcUsed, role and boss in
RunicNpc_List, RunicNpc_Despawn taking a boss's adds, the example kits
written once, and a Kits reload taking RunicNPC with it (D283).

PROTOCOL.md §19.14: npc.boss.spawned, npc.boss.phase and npc.boss.died,
their classes, and runicnpc_api 5.

PLAN.md stage 6: what was built, the builds it was tested on, the
harness and the site walk on both rigs, and what building it found.
The example kits' permission is kits.runicnpc.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
2026-10-05 13:12:16 -05:00
8ef7da034f docs(runicnpc): stage 5 built, tested and walked; API 4; protocol 13 §19.13
- runicnpc/PLAN.md: stage 5 as built, what the build found that the spike
  did not (Rust's CanSeeTarget is no line of sight for an NPC target; a
  destroyed escort target compares equal to null; a rocket's line of
  sight), the harness results on both rigs, and the site walk;
- runicnpc/API.md: API 4 (the faction table, escort, ally, tether, the
  profile's stage 5 fields, a placement's tether, OnRunicNpcEscortEnded,
  the new rows of RunicNpc_List, rnpc.faction, /rnpc follow, tether=);
- rust-link/PROTOCOL.md §19.13: the faction table on npc.profiles and
  npc.profiles.set, world.place's escort, ally and tether, the three new
  world.error reasons; the bridge needs RunicNPC API 4. Joins protocol 13
  (D253).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
2026-10-05 01:16:34 -05:00
2ad2043060 docs(runicnpc): stage 4 built and walked; protocol 13 §19.12; API 3
PROTOCOL.md §19.12: RunicNPC over the bridge — integrations.runicNpc, the
npc.profiles, npc.profiles.set, npc.placements and npc.placement commands and
their refusals, the npc.died, npc.health and npc.placement.changed frames,
world.place with a profile, attackerNpc and attackerProfile, the tally's
npcProfileKills, the four sidecar routes, and overlay.toml's runicnpc_api.

API.md: API 3 — RunicNpc_AddPlacement, RunicNpc_RenamePlacement,
RunicNpc_RespawnPlacement and OnRunicNpcPlacementChanged.

PLAN.md stage 4: what was built in five repositories, the walk on both rigs
row by row, what was not walked and why, and what building it found.

rust-link/INSTALL.md: RunicNPC as the bundle's third file, by hand, the egg,
doctor and uninstall.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
2026-09-30 08:45:21 -05:00
953044b806 docs(runicnpc): stage 3 as built, and its in-game walk
- PLAN.md stage 3: what was built (runicnpc-rust#5), the results on
  both rigs (134/134, reload and restart 5/5), what building it found
  (Rust leaves an NPC in the air when its floor goes; a route leg can
  be on the navmesh and still unwalkable; a shore floor not covered;
  stage 2's JSON leak), the console-only at= option for the org
  lead's call, and the in-game walk checklist.
- API.md: SetPlacement's navmesh check and D239 fallback, the
  placements' note, List's regrounded, and SetRoute's unchecked legs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
2026-09-30 03:19:14 -05:00
1e00c5da6e docs(runicnpc): stage 2 as built, and API.md
runicnpc/API.md is the reference for other plugins: owners, every
RunicNpc_* call, the four hooks, and the profile, placement and route
shapes. PLAN.md records stage 2's results on both rigs and what building it
found: Rust's chase needs an AI zone like its roam, and a player-built floor
joins the navmesh 0.1-0.3 s after it spawns, which corrects stage 1's Q4
(left open for the org lead). README indexes API.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
2026-09-30 01:31:44 -05:00