Appearance
aowlspt_wildspawn.h
Source: abi/aowlspt_wildspawn.h — 68 lines, 1 file-scope functions.
What this header owns
Reproduced verbatim from the header's own banner comment — these notes are frequently the only written record of why the subsystem is shaped the way it is.
text
aowlspt_wildspawn.h -- THE ONE WildSpawnType numeric table.
WHY THIS FILE EXISTS
--------------------
The classification "is this contact a boss, a boss's escort, a cultist, a
Raider or a Rogue" was derived twice: once in mods/maps/sp/world.nim by
NUMERIC enum value, and once in host/Aowlspt.Host.Il2Cpp/natesp.nim by a
case-insensitive SUBSTRING test on the role NAME. The substring test is
wrong, and wrong SILENTLY (fact #325, measured):
exUsec = 24 -- these are the ROGUES. The name contains no "rogue".
pmcBot = 9 -- these are the RAIDERS. The name contains no "raider",
and it does contain "pmc", which is a different faction
from the one the player actually sees.
A name-shaped test assigns a faction by SPELLING. Nothing about the name is
a contract; the numeric values are, because they are what the client stores
in ProfileSettings+0x10. So the table lives here, once, in a header both the
host DLL and every mod already have on their include path (tools/aowl.nim
adds `-I<repo>/abi` to both), and both callers delegate to it. Two tables
that agree today are two tables that disagree after the next enum addition.
NOT AN OFFSET FILE. Nothing here dereferences anything. It is pure integer
classification over a value the CALLER has already read through its own
guarded walk, which is why it is safe to share between two binaries with
very different safety envelopes.Constants
AOWLSPT_WILDSPAWN_HAOWL_SIDE_BEARAOWL_SIDE_SAVAGEAOWL_SIDE_USEC
Functions
| Signature | Line |
|---|---|
int aowl_role_is_boss_tier(int role) | 40 |

