Skip to content

The mod API

Every exported symbol of aowl/src/aowlspt/*.nim — the library a mod is written against — extracted from the source by tools/gendocs.py. Signatures are lifted verbatim; nothing on these pages is retyped, so nothing on them can drift away from the code while still reading as authoritative.

Only exported symbols appear (a * on the name). An unexported proc is not API and is deliberately absent.

Overloads are listed separately rather than merged, because in this codebase they differ in behaviour — server.put has five, and collapsing them would hide the thing a caller has to choose between.

ModuleExportsWhat it is
aowlspt/server84HTTP routes and the loaded database — serve, dbRead, dbWrite, dbKeys, and the JSON builders a handler returns.
aowlspt/settings46Declaring a mod's settings, and reading them back.
aowlspt/trader37Trader inventories, assortments and prices.
aowlspt/json49Parsing and building JSON.
aowlspt/game73The managed object surface — GameType, GameObj, and invoke/get/set.
aowlspt/capability23What the host will and will not let a mod do.
aowlspt/callrva35Byte-verified calls to a managed method at a static RVA.
aowlspt/callproof7Proving a call target is what its name claims before calling it.
aowlspt/il2cpp95The IL2CPP runtime surface the layers above are built on.
aowlspt/abi52The nimony side of the host C ABI.
aowlspt/fast70The hot-path helpers that must not allocate per frame.
aowlspt/botnav18Bot navigation.
aowlspt/menutext3Reading and writing menu text.
aowlspt/ctext4C string interop.
aowlspt/fixture6Test fixtures.
aowlspt/sync3Main-thread synchronisation.

Totals: 16 modules, 463 routines, 86 types, 56 constants.

Declarations the extractor could not read back: 0. It drops those rather than printing a guessed signature, and prints the count here so a silent loss is impossible.

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