Support persistent residents with normal resurrection and closer companions
Core tests / core (push) Successful in 2m54s

This commit is contained in:
Codex
2026-09-24 05:33:45 +12:00
parent 0731774457
commit 64e2796a74
11 changed files with 85 additions and 16 deletions
+8 -3
View File
@@ -36,9 +36,14 @@ and only when fresh and at their class starting level.
5. Recreate only the world container with `docker compose up -d --no-deps ac-worldserver`.
6. Restart the ALE relay to load priority delivery for permanent-death events.
The guard is enabled by installing its Lua file, independently of the dashboard
hardcore toggle. Remove the guard and recreate the world before intentionally
switching back to non-hardcore play. Do not erase the registry to recycle deaths.
The installed guard reads `acore_auth.azerothai_realm_rules.hardcore`, synchronized
from the dashboard setting by the operations agent (normally within one minute).
When disabled, future deaths use the native playerbot resurrection behavior:
identities, memories, gear, and party membership survive. Dead active residents
still occupy their faction slots, so a recoverable death cannot spawn a replacement
or bypass the 50-bot cap. Historical permanent retirements remain retired.
For an immediate mode switch, update the dashboard first and synchronize the
native rule before declaring the transition complete. Do not erase the registry.
## Verification and recovery
+17
View File
@@ -55,3 +55,20 @@ before any model call. Model instructions explicitly prioritize survival over
quests, loot and social goals. Stuck recovery yields to the native survival hold.
Mortality improvement must be measured over subsequent real playtime; these rules
do not make bots invulnerable or resurrect dead characters.
## Persistent companions and failed-encounter avoidance
New party invitations now require a level gap of at most five. Followers regroup
at eight yards; healthy leaders pause when a nearby companion is injured or more
than fifteen yards away (the existing bounded wait still prevents permanent idle).
A recently observed dead party member in normal resurrection mode does not trigger
the runtime's separation-based party departure. Human and unmanaged groups remain
protected.
Overpowered enemies, extra attackers, and rapid health loss mark that selected
enemy for ten minutes of avoidance. The guard stops renewed attacks and asks the
native AI to flee if that hostile target is selected again within range. This
memory is local to the running Lua process, expires, and is not a pathfinding
barrier or a guarantee that the bot can escape. No automatic gear, talent, or level
boosts are applied.