diff --git a/rust-link/PLAYER_WALK.md b/rust-link/PLAYER_WALK.md index b1838c7..24fd309 100644 --- a/rust-link/PLAYER_WALK.md +++ b/rust-link/PLAYER_WALK.md @@ -266,9 +266,8 @@ this walk. It is §27.7's and §28.8's "not proven" lists, done by a person. 2. **`EventsEnabled` on** — Admin → Rust mod config → `RunicGateway.json`. It takes effect at once. 3. **The four event verbs switched on** in Admin → Events → Actions: `core.lease`, `rust.zone.open`, `rust.crate.place`, `rust.npc.place`. -4. **A non-admin Steam account for steps 1 and 6.** Kits applies its gate to an admin too, so step 1 - works on the owner's account; ZoneManager's flags do not (§12.5), which is why step 6 wants the - second account. +4. **A non-admin Steam account for step 6** is preferable but not required. Kits applies its gate to an + admin too, so step 1 works on the owner's account, and nothing in steps 2–6 depends on a permission. Each step is an event you author in Admin → Events, publish, and start by hand. A monument is picked from the dropdown (it lists this map's monuments by name and grid square); stand near it before you @@ -277,11 +276,11 @@ start the run. | # | Author this, start it, then | You should see | |---|---|---| | 1 | **A `core.lease` on `rust.group.permission`**: target `/default/`, value `true`, 10 minutes. Open the kit menu before and after starting it | The kit goes from **locked** to **available** when the step runs, and back to locked when the run ends or its ten minutes pass — whichever comes first. Redeem it once while it is open: the items stay in your inventory after it locks again, which is correct (the lease borrowed the *right*, not the loot) | -| 2 | **`rust.zone.open`** at a monument you are standing next to, radius 30, 15 minutes, a name you will recognise. Walk in and out of it | The zone is there: `zone.list`/ZoneManager's own `/zone list` at the console shows it with your name, and `rg.hooks` shows `OnEnterZone`/`OnExitZone` counted (13b subscribes to them; they fire either way). Walking in and out is the check a console could not make — §28.8's first item | -| 3 | **Leave step 2's run going and restart the server.** Rejoin and walk back into the zone | The zone is **back** after the restart, at the same place, with the same name — re-created from the bridge's own record, because ZoneManager forgets temporary zones. On the site the run's zone row still reads `confirmed` | +| 2 | **`rust.zone.open`** at a monument you are standing next to, radius 30, 15 minutes, a name you will recognise. At the console run `rgp.inzone` with you **outside** the zone, then walk in and run it again | `zone_list` at the console lists the zone with your name (`rg--…`). `rgp.inzone` answers *nobody* for it while you are outside and **your name** once you are in — that is ZoneManager's own `IsPlayerInZone` saying a player is inside a zone the bridge made, which is §28.8's first item. (`rgp.inzone` is the rig-only probe, `RgProbe13`, on both rigs; ZoneManager itself has no command that says who is in a zone.) Nothing reaches the website yet: the bridge subscribes to `OnEnterZone`/`OnExitZone` in 13b, not 13a | +| 3 | **Leave step 2's run going and restart the server.** Rejoin, walk back into the zone and run `rgp.inzone` | `zone_list` shows the zone **back** after the restart, at the same place and with the same name, re-created from the bridge's own record because ZoneManager forgets temporary zones. `rgp.inzone` names you again. On the site the run's zone row still reads `confirmed` | | 4 | **`rust.crate.place`**: `crate.hackable` ×1 and `crate.elite` ×3 at the same monument, spread 8. Loot one elite crate empty; start the hack on the locked crate. Then cancel the run | The crates are there and lootable, the hack timer runs. At teardown the untouched crates vanish, and the looted one is simply **gone** already — its row reads `reverted` all the same (§15.2: reverting something a player took is a success) | | 5 | **`rust.npc.place`**: `npc.scientist` ×3 at the monument. Kill one; let the others see you | They are hostile and fight. The one you killed is just gone; at teardown the survivors vanish mid-fight. Every row reads `reverted`. If an NPC spawned **inside a wall or fell through the ground**, note the monument — some offsets land off the navmesh, and that is a finding about where to put things, not a bug to hide | -| 6 | **On the non-admin account**: a zone for 3 minutes. Stand inside it when the three minutes run out | The zone disappears around you **without anybody on the website doing anything** — the game keeps the deadline (D96). The sidecar's `/events?kind=world.expired` shows the frame | +| 6 | **A zone for 3 minutes.** Stand inside it (`rgp.inzone` names you) and wait out the three minutes | The zone disappears around you **without anybody on the website doing anything**, because the game keeps the deadline (D96). `zone_list` no longer lists it, and the sidecar's `/events?kind=world.expired` shows the frame. Best done on the non-admin account, which is the view a real player has | | 7 | **If players can be arranged, a `core.lease` on `spawn.max_rate`** — these two scalars are left out of the catalogue today because they only matter with people online (§27.5) | With several players on, the population system's spawn rate moves (`spawn.report`) while the lease holds and returns after. If it does, the two `spawn.max_*` keys can be added to the allowlist; if nothing moves even with players, they stay out | **Run steps 1–5 on both frameworks.** One thing is specific to Carbon: ZoneManager was only installed