Guides
One page per concept of the library, in the words its API uses.
Handles and Wrappers
How a Wrapper owns one Handle, why the same Handle always gives the same object, and the one error rule of the library, creation throws and lookup returns undefined.
Events
The two ways to react to a game event, the Trigger Wrapper and the Event descriptors with on(), what a Subscription owns, and how payloads are read.
Timers
Running code later or on a period with the Timer Wrapper, who owns each Timer, waiting inside a function with sleep, and reading game time.
Init stages
The four points of a map's initialization where library and Map project code runs, what exists at each, how failures are reported, and why nothing starts at module top level.
Systems
The library utilities that wrap no Handle, sync, host, file, binary and base64, and game time, and the rule they share, a value local to one client becomes shared only through sync.
Players
The MapPlayer Wrapper, one per slot and never created, the players in the game, the local player and runLocal, forces, and a Map project's own player model.
Frames and UI
Building custom UI with the Frame Wrapper, from FDF definitions to layout, showing a frame to one player, reading what a player did through frame events, and the other UI Wrappers.
3.0.0 systems
The game systems Patch 3.0.0 added and how the library wraps them, tiers 1 and 2 in release 1.0; written with build step 7.
Desync safety and guards
What the type layer, the lint and Dev mode catch of the classic Warcraft III scripting pitfalls, every runtime Guard with its message, and the four safe collections.
Lint rules
12 items
Runtime facts
What the Lua of Warcraft III 3.0.0 has and lacks, measured in the game, and what to do about each fact.
Testing your map
Run map logic on the Lua harness of reforged-test, real Lua 5.3 with the Natives stubbed, without opening the game.
Typings
reforged-types, the TypeScript declarations of the Natives generated from each Patch's own files, how a Map project selects a Game version, and how the Overlay is curated.