fix: example NPC outfits at full durability; /rnpc here a metre in front (D323–D325) #16

Merged
whitlocktech merged 2 commits from fix/example-kit-outfits into edge 2026-10-09 06:09:17 +00:00
Member

What & why

Found in the stage 9d player session (2026-10-09), all asked for by the org lead.

  • D323, outfits. Raider: coffee-can helmet, roadsign jacket and kilt, hoodie, pants, boots, leather gloves. Camp guard: metal facemask and chest plate, long-sleeve shirt, pants, boots, roadsign gloves. Sniper: boonie hat, balaclava, hide poncho, pants and boots. Juggernaut: heavy plate, as before. Weapons unchanged.
  • D324, durability. Kits sets an item's condition and maximum straight from its file. The writer put 0 on all armour (metal facemask 0/320, heavy plate 0/1000) and a flat 100 on every weapon (an M249's maximum is 500). Each item is now written at this Rust's own maximum, read from the item definition; 0 where the item has none. Harness: s6.examples.fullCondition.
  • D325, /rnpc here. It stood the NPC at the admin's feet, inside them and facing away. It now stands 1 m in front on the ground, facing the admin. If something is in the way at chest height, there is no ground within 2 m below, or a walker would have no navmesh, it falls back to the admin's spot and the reply says so. Harness: cmd.chat.here checks the metre.

How it was tested

  • node scripts/checkPlugin.js ok; node --test scripts/checkPlugin.test.js 24/24.
  • Both rigs (Rust 25797215, Oxide 2.0.7815, Carbon 2.0.262): the four kits removed and examplesWritten reset, then this build's first load wrote them; read back at full durability (e.g. heavy plate 1000/1000, M249 500/500). The org lead checked the outfits in game.
  • /rnpc here played in game on both rigs: the NPC stood a metre in front, facing.
  • Not this PR: on Carbon the automatic Kits reload after the first-load write did not take until Kits was reloaded by hand (Oxide fine). Recorded in docs#328 for a decision.

Checklist

  • I have read CONTRIBUTING.md.
  • The change builds and existing tests/checks pass locally.
  • I have added or updated tests/docs where it makes sense.
  • My commits are reasonably scoped with clear messages.

AI-assisted contributions (required)

  • No AI tools were used to produce this contribution.
  • AI tools were used. Tool(s): Claude Code (Claude Opus 5.5). I have reviewed and understand
    every change, and take responsibility for it. AI-authored commits are
    marked with a Co-Authored-By / Assisted-By trailer.

License

  • I agree that my contribution is licensed under this project's license
    (GNU GPL v3.0 or later), and I have the right to contribute it.

Companion: docs#328.

🤖 Generated with Claude Code

https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY

## What & why Found in the stage 9d player session (2026-10-09), all asked for by the org lead. - **D323, outfits.** Raider: coffee-can helmet, roadsign jacket and kilt, hoodie, pants, boots, leather gloves. Camp guard: metal facemask and chest plate, long-sleeve shirt, pants, boots, roadsign gloves. Sniper: boonie hat, balaclava, hide poncho, pants and boots. Juggernaut: heavy plate, as before. Weapons unchanged. - **D324, durability.** Kits sets an item's condition and maximum straight from its file. The writer put 0 on all armour (metal facemask 0/320, heavy plate 0/1000) and a flat 100 on every weapon (an M249's maximum is 500). Each item is now written at this Rust's own maximum, read from the item definition; 0 where the item has none. Harness: `s6.examples.fullCondition`. - **D325, `/rnpc here`.** It stood the NPC at the admin's feet, inside them and facing away. It now stands 1 m in front on the ground, facing the admin. If something is in the way at chest height, there is no ground within 2 m below, or a walker would have no navmesh, it falls back to the admin's spot and the reply says so. Harness: `cmd.chat.here` checks the metre. ## How it was tested - `node scripts/checkPlugin.js` ok; `node --test scripts/checkPlugin.test.js` 24/24. - Both rigs (Rust 25797215, Oxide 2.0.7815, Carbon 2.0.262): the four kits removed and `examplesWritten` reset, then this build's first load wrote them; read back at full durability (e.g. heavy plate 1000/1000, M249 500/500). The org lead checked the outfits in game. - `/rnpc here` played in game on both rigs: the NPC stood a metre in front, facing. - **Not this PR:** on Carbon the automatic Kits reload after the first-load write did not take until Kits was reloaded by hand (Oxide fine). Recorded in docs#328 for a decision. ## Checklist - [x] I have read [CONTRIBUTING.md](CONTRIBUTING.md). - [x] The change builds and existing tests/checks pass locally. - [x] I have added or updated tests/docs where it makes sense. - [x] My commits are reasonably scoped with clear messages. ## AI-assisted contributions (required) - [ ] No AI tools were used to produce this contribution. - [x] AI tools were used. Tool(s): `Claude Code (Claude Opus 5.5)`. I have reviewed and understand every change, and take responsibility for it. AI-authored commits are marked with a `Co-Authored-By` / `Assisted-By` trailer. ## License - [x] I agree that my contribution is licensed under this project's license (**GNU GPL v3.0 or later**), and I have the right to contribute it. Companion: docs#328. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
wtclaude added 1 commit 2026-10-09 04:53:38 +00:00
fix(examples): each example NPC its own outfit, every item at full durability (D323, D324)
All checks were successful
PR Checks / plugin-checks (pull_request) Successful in 9s
6b15d68071
The 9d player walk found the example kits looked alike and shipped broken armour.

- D323: the raider wears scrap armour, the camp guard metal, the sniper hide, the
  Juggernaut heavy plate. Weapons are unchanged.
- D324: Kits sets an item's condition straight from its file, and the writer put 0 on
  armour (heavy plate 0 of 1000) and a flat 100 on weapons (an M249's maximum is 500).
  Each item is now written at this Rust's own maximum for it, read from the item
  definition; 0 where the item has none.
- The harness checks it: s6.examples.fullCondition.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
wtclaude added 1 commit 2026-10-09 05:11:51 +00:00
feat(commands): rnpc here stands the NPC a metre in front, facing you (D325)
All checks were successful
PR Checks / plugin-checks (pull_request) Successful in 8s
246ad17c60
At the admin's feet it spawned inside them, looking away (9d player walk). It now
stands 1 m ahead on the ground, turned to face the admin. If something is in the way
at chest height, there is no ground within 2 m below, or a walker would have no
navmesh, it falls back to the admin's own spot and the reply says so.

The harness's cmd.chat.here now checks the metre.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
wtclaude changed title from fix(examples): each example NPC its own outfit, every item at full durability (D323, D324) to fix: example NPC outfits at full durability; /rnpc here a metre in front (D323–D325) 2026-10-09 06:08:13 +00:00
whitlocktech merged commit 00be8d8d74 into edge 2026-10-09 06:09:17 +00:00
whitlocktech deleted branch fix/example-kit-outfits 2026-10-09 06:09:18 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: RunicGateway/runicnpc-rust#16
No description provided.