Skip to content

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_H
  • AOWL_SIDE_BEAR
  • AOWL_SIDE_SAVAGE
  • AOWL_SIDE_USEC

Functions

SignatureLine
int aowl_role_is_boss_tier(int role)40

aoughwl — self-hosted platform for things n stuff. Contact / Support on Discord for access to the private backends.