Skip to content

The manual — aowlspt's own documents

This section is an archive

aowlspt is finished. It was folded into Jester, and nothing here is maintained. It is kept because the work is precise and the answers were expensive to get.

The 63 documents below are the aowlspt repository's own docs/ directory, published as it stands. They are not tutorials. They were written by and for people with the checkout open — an ABI reference, RVA tables resolved offline against a specific build, coverage audits, boot-flow maps, decision records — and they say what was measured, with the instrument that measured it, rather than what would read well.

The pages above this one, starting at Installation, are the reader-facing account of the same system. Start there. Come here when you want the working notes behind a sentence on one of those pages.

Reading these

  • Each page names its source file and links to it on GitHub. Paths in the prose — abi/aowlspt_net.h, mods/tarkov/tarkov.nim — are links to the real file.
  • A handful of documents cite other documents that were held back from publication. Those references go nowhere; that is deliberate.
  • Several pages describe designs that were never built, or work that was switched off before 1.0. Every one of those carries a banner saying so.
  • Where a page here and a page above disagree, check the dates. These were written as the work happened; the reader-facing pages were written after.
  • The repository is aoughwl/aowlspt, under the PolyForm Noncommercial License 1.0.0.

The system

The shape of aowlspt
The C ABI
The wire format
Mod-to-mod capabilitiesHow one mod offers a named service and another mod finds and calls it, server-side, without either one knowing the other exists.
Three gaps in the mod APIThree features mods/pathtotarkov wanted and the mod API could not express, each written up as a fix with its cost.

The client host — IL2CPP

The post-1.0 client hostPredates the token-gate discovery
Decrypting global-metadata.dat
The interaction layerThe complete map of the seam where the host touches the running client — the layer every crash of early September came out of.
The client boot flow
Getting past character-selectWho answers Tarkov's character/mode screen when the game starts — the host, natively, rather than the launcher driving the UI.
Actuating the local player
Starting an offline raid natively
Native menu-screen navigation

Offline recon — RVA and screen maps

The main-menu UI map
The settings screen map
The auto-raid flows
The reload / magazine-load path
The post-processing mapMap only — nothing implements it
FOV — static RVAs
SAIN driver — the RVA tableThe byte-verified static address table that let the bot driver stop resolving game methods by name at runtime.
Voice — offline IL2CPP archaeology
The audio path, resolved offlineThe second half of the raytraced-audio track: the addresses in the client's own audio path that a computed occlusion gain…

The backend and the emulator

The backend
The emulator
Emulator coverageThe gap list for the emulator: every operation the real client can ask for, and whether this backend answers it.
Every refusal, re-auditedEvery place the emulator deliberately declines to answer, taken back to the database and re-checked to see whether the reason…
Importing a real database
The pre-1.0 database against post-1.0
Loot configuration
The backend, made fast

Writing mods

Writing a mod
Getting a new mod to stay loaded
Changing the mod set while everything runs
Mod Settings API — designDesign only — never built
What a mod may do on the load pathThe budget for what a mod may do while the game is loading, with the measurement behind each rule.
What a client-side call costs
Debugging a native mod
The in-game debug overlay

UI and settings

In-game settings and the config schemaPartly superseded
The settings UI API
UIHOOKS — subscribe to a screen
Native Unity UI from a mod
nativetabs — one declarative call
Native settings controls
Shelved: native in-game settingsWhy the in-game settings work was switched off before 1.0, and exactly what is left to finish if anyone picks it up.

Bots

Bot navigation — IL2CPP recon
SPT 4.1.5 bot controlA separate study: driving bot spawns in a stock, pre-1.0 SPT 4.1.5 install from the same backend. Different client, different…
Squad-shared objectivesA design for giving a bot squad one shared objective instead of per-bot goals. Never built.

Automation and the inspector

The automation librarySuperseded by the API reference
The automation library — API referenceThe current shape of the library
The live inspector — verb reference
The live inspector as a product
Headless and unattended runningWhether the game client can be run without a screen or a person — asked, measured, and answered no, with what is possible instead.

Graphics and content

DLSS on this installOne machine, one day
DLSS-NR on this installOne machine, one day
Ripping and re-importing the mapsResearch, not a pipeline anyone ran here
Importing all maps into one Unity sceneResearch, not a pipeline anyone ran here
Port plan — ammo loading animationsA port plan

Shipping it

Installing
Distribution — the final buildDesign pass
Beta distribution and IP protectionThe design for a free public beta and the licence gate behind it.
1.0 release readinessA read-only audit of what was and was not ready at 1.0. Nothing was built or run in this pass; that is the point of it.

The record

Backlog — everything not doneThe unfinished list, frozen

Every page here is one file in docs/. If a page you expected is missing, it was withheld rather than lost.

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