perf: harden runtime for weaker hardware

This commit is contained in:
Rijad Zuzo
2026-08-12 10:02:45 +02:00
parent cd29da95e0
commit 34428d836a
47 changed files with 2164 additions and 243 deletions
+18
View File
@@ -474,6 +474,13 @@ keeps identical final checksums after one reusable per-tick population view and
improves that case from 65.84 to 85.81 ticks per second. Revisit the target when
world presentation or LOD enters the measured workload.
[Baseline 03](benchmarks/SIMULATION_SCALING_BASELINE_03.md) versions the
workload after combat was added and corrects its fixture to require one matching
combatant per synthetic NPC. Indexed callbacks and cached combatant iteration
keep the now-honest 600-record workload at 90.63 ticks per second with identical
checksums across three samples. It remains data-only; rendered scale still
requires the active-visual workload described by this milestone.
[Loaded Resource Discovery 01](benchmarks/LOADED_RESOURCE_DISCOVERY_01.md)
proves the first real spatial consumer. Exact loaded-anchor resolution remains
near four inspected candidates from 18 through 1,800 resources, preserves every
@@ -1015,6 +1022,17 @@ Headless tests cover combat determinism, wolf attacks, enemy definitions,
player downing/recovery, defend duty, war motivation, raid-to-resolution
chains, player kills, and save/restore.
The subsequent runtime health pass tightened those contracts: recovery revives
both player records, hostile strikes require melee reach and deterministic
approach, NPC death listeners see completed authoritative death state, player
attacks revalidate faction/exact weapon reach and use an unscaled real-time
cooldown, raids withdraw actual pantry food, and dash has one `CharacterBody3D`
movement owner with separate duration and re-entry cooldown. Presentation hot paths are
bounded through the existing spatial/population indexes, 510 Hz UI/environment
updates, cached combatant order, and navigation retry backoff. High, Balanced,
and Low profiles now prove a reversible weak-PC structural budget; real
weak-hardware frame-time/GPU/memory measurement remains intentionally open.
Recently completed:
- `Jajce Villager Field Note 12`: a separate player-facing note selects the