RailheadWorld
A component script.
Interface
What this asset declares: the schema it conforms to, what it exposes, and the rendered structured payload.
conforms to
zero/source-extract/v2Railhead: Dust Sea — the battle. One instance owns the shared half of a run: the wave director, every machine on the field, the slugs in flight, the Rig and the battery's integrity, the wind, and the time of day. It is deliberately separate from the gunner: this is the world every crew member sees, the gunner component is one crew member's gun, scope and HUD. Shared numbers are `Sync` so a second crew member joining sees the same battle rather than a private copy.
groundY(x: number, z: number) → number
| arg | type | description |
|---|---|---|
| x | number | |
| z | number |
windVector( ) → void
upgradeLevel(id: string) → number
| arg | type | description |
|---|---|---|
| id | string |
upgradeValue(id: string) → number
Total effect of an upgrade at its purchased level.
| arg | type | description |
|---|---|---|
| id | string |
scheduleSound(delay: number, kind: string, vol: number, pitch: number) → void
| arg | type | description |
|---|---|---|
| delay | number | |
| kind | string | |
| vol | number | |
| pitch | number |
findSpireSites( ) → void
buildWorld( ) → void
spawnMachine(kind: string) → Machine
| arg | type | description |
|---|---|---|
| kind | string |
killMachine(mach: Machine, byPlayer: boolean, range: number) → void
| arg | type | description |
|---|---|---|
| mach | Machine | |
| byPlayer | boolean | |
| range | number |
damageMachine(mach: Machine, amount: number, pen: number, range: number) → void
Damage a machine, honouring armour, shields and the Monolith's plates. Returns the damage actually applied and whether the hit killed it.
| arg | type | description |
|---|---|---|
| mach | Machine | |
| amount | number | |
| pen | number | |
| range | number |
queueWave(n: number) → void
| arg | type | description |
|---|---|---|
| n | number |
startWave(n: number) → void
| arg | type | description |
|---|---|---|
| n | number |
flushRecords( ) → void
saveRecords( ) → void
loadRecords( ) → void
clearField( ) → void
endRun(won: boolean) → void
| arg | type | description |
|---|---|---|
| won | boolean |
startRun(fromWave: number?, custom: { [string]: any }?) → void
═════════════════════════════════════════════════════════════════════════ Public methods — the gunner and the menus drive the run through these. ═════════════════════════════════════════════════════════════════════════
| arg | type | description |
|---|---|---|
| fromWave | number? | |
| custom | { [string]: any }? |
abandonRun( ) → void
buyUpgrade(id: string) → boolean
Buy the next level of an upgrade. Returns true when the purchase happened.
| arg | type | description |
|---|---|---|
| id | string |
upgrade(id: string) → number
Cumulative effect of a purchased upgrade.
| arg | type | description |
|---|---|---|
| id | string |
upgradeLevelOf(id: string) → number
| arg | type | description |
|---|---|---|
| id | string |
groundAt(x: number, z: number) → number
Ground altitude at a world XZ. The gunner uses it for the rangefinder.
| arg | type | description |
|---|---|---|
| x | number | |
| z | number |
threatList(ox: number, oy: number, oz: number) → void
A snapshot of live machines for the threat board.
| arg | type | description |
|---|---|---|
| ox | number | |
| oy | number | |
| oz | number |
machineCount( ) → number
windVec( ) → void
batteryRefs( ) → any
playCue(name: string, volume: number?, pitch: number?) → void
| arg | type | description |
|---|---|---|
| name | string | |
| volume | number? | |
| pitch | number? |
resolveImpact(s: Slug, hitMachine: Machine?) → void
| arg | type | description |
|---|---|---|
| s | Slug | |
| hitMachine | Machine? |
updateSlugs(dt: number) → void
| arg | type | description |
|---|---|---|
| dt | number |
launchShell(m: Machine) → void
| arg | type | description |
|---|---|---|
| m | Machine |
updateShells(dt: number) → void
| arg | type | description |
|---|---|---|
| dt | number |
updateMachines(dt: number) → void
| arg | type | description |
|---|---|---|
| dt | number |
updateEnvironment(dt: number) → void
| arg | type | description |
|---|---|---|
| dt | number |
mix3(a: ?, b: ?, t: ?) → void
| arg | type | description |
|---|---|---|
| a | ? | |
| b | ? | |
| t | ? |
updateSpawns( ) → void
updatePending( ) → void
tick(dt: number) → void
| arg | type | description |
|---|---|---|
| dt | number |
awake( ) → void
start( ) → void
update(dt: number) → void
| arg | type | description |
|---|---|---|
| dt | number |
editorUpdate(dt: number) → void
| arg | type | description |
|---|---|---|
| dt | number |
onDestroy( ) → void
Sub-parts
Everything contained inside this part. Assets are composite children (clickable cards). Files are leaf payloads. Expand any row to view its source.
Showing up to 3 levels deep. Open a part to see what it holds further down.
Problems
Everything affecting this asset right now: its own problems, anything wrong inside it, and problems on its direct dependencies.
These counts cover only the parts this page shows. Problems on the parts it leaves out are not counted here.
Inside
2 problems across 1 itemagent_score is exposed.+ quality × 0.35
+ performance × 0.25
± compat factor
Usability ratings
Did the part work as advertised when consumers tried to drop it in. Separate from upvotes: those are taste; this is "did it function".
Scoped to this part · feeds back into the world's score.