Documentation / @debuffjp/dev / DevHooks
Interface: DevHooks
Defined in: dev/src/index.ts:42
The dev inspection and control surface, available as window.__DEBUFF_DEV__ in dev builds. Every method takes and returns JSON-serialisable values so browsers, CLIs and agents can call it.
Properties
controlled
readonlycontrolled:boolean
Defined in: dev/src/index.ts:45
True when the page was opened with ?debuff-scenario: the loop is stopped and time only advances via step.
version
readonlyversion:2
Defined in: dev/src/index.ts:43
Methods
capture()
capture():
string
Defined in: dev/src/index.ts:94
PNG data URL of the current frame.
Returns
string
command()
command(
name, ...args):unknown
Defined in: dev/src/index.ts:104
Run a game command, e.g. to start a scenario at a checkpoint. Recorded in replays.
Parameters
name
string
args
...unknown[]
Returns
unknown
commands()
commands():
string[]
Defined in: dev/src/index.ts:102
Names of the commands the game registered with devTools({ commands }).
Returns
string[]
errors()
errors():
ExplainedError[]
Defined in: dev/src/index.ts:92
Runtime errors since load, explained: kind says whose problem it is ("your-code", "debuff-usage", "debuff-bug", "outside"), where points at the game's source, hint suggests a next step. Repeats are counted.
Returns
events()
events(
sinceTick?):GameEventRecord[]
Defined in: dev/src/index.ts:80
The latest game events (game.emit), oldest first, optionally only those after sinceTick.
Parameters
sinceTick?
number
Returns
frames()
frames(
n?):FrameSample[]
Defined in: dev/src/index.ts:63
The latest n frame breakdowns (update/render ms, steps, quads, draw calls, long tasks), oldest first.
Parameters
n?
number
Returns
keepForReload()
keepForReload():
void
Defined in: dev/src/index.ts:85
Save the session for a state-preserving reload (the debuff dev client calls this just before a code change reloads the page). After the reload the new code replays it to the same tick.
Returns
void
luminance()
luminance(
cols,rows,region?):number[]
Defined in: dev/src/index.ts:100
The current frame's relative luminance (0 black to 1 white, WCAG), averaged over a cols × rows grid, row by row. region ([x, y, w, h] in logical units) samples part of the screen. For flash and contrast checks in scenarios.
Parameters
cols
number
rows
number
region?
[number, number, number, number]
Returns
number[]
notes()
notes():
Note[]
Defined in: dev/src/index.ts:87
Moments the human flagged in the overlay, with the game state at that tick.
Returns
Note[]
params()
params():
Record<string,ParamDescription>
Defined in: dev/src/index.ts:60
Returns
Record<string, ParamDescription>
pause()
pause():
DevState
Defined in: dev/src/index.ts:49
Returns
pointerDown()
pointerDown(
x,y):void
Defined in: dev/src/index.ts:57
Parameters
x
number
y
number
Returns
void
pointerMove()
pointerMove(
x,y):void
Defined in: dev/src/index.ts:58
Parameters
x
number
y
number
Returns
void
pointerUp()
pointerUp():
void
Defined in: dev/src/index.ts:59
Returns
void
press()
press(
code):void
Defined in: dev/src/index.ts:53
Parameters
code
string
Returns
void
profile()
profile():
Report
Defined in: dev/src/index.ts:68
myaku's report: frame-time percentiles, hitches per minute, and the worst hitches explained (cause, confidence, the script to look at, a hint), with debuff's update and render as spans.
Returns
Report
release()
release(
code):void
Defined in: dev/src/index.ts:54
Parameters
code
string
Returns
void
replay()
replay(
toTick?):Replay
Defined in: dev/src/index.ts:73
Everything played since page load (keys, pointer, param changes) up to toTick (default: now), as a scenario that replays it exactly. Pass a note's tick to get the session leading up to that note.
Parameters
toTick?
number
Returns
resume()
resume():
DevState
Defined in: dev/src/index.ts:50
Returns
rewind()
rewind(
tick):void
Defined in: dev/src/index.ts:78
Reload and replay this session's inputs to tick, then pause there: the exact state at that moment. Within the known session you can go forward again, until new play branches off.
Parameters
tick
number
Returns
void
setParam()
setParam(
group,key,value):void
Defined in: dev/src/index.ts:61
Parameters
group
string
key
string
value
Returns
void
speed()
speed(
scale):void
Defined in: dev/src/index.ts:52
Simulation speed multiplier (1 = normal).
Parameters
scale
number
Returns
void
state()
state():
DevState
Defined in: dev/src/index.ts:48
Returns
step()
step(
steps?):DevState
Defined in: dev/src/index.ts:47
Advance steps fixed simulation steps (pausing first) and return the new state.
Parameters
steps?
number
Returns
tap()
tap(
x,y):void
Defined in: dev/src/index.ts:56
Press and release the primary pointer at logical coordinates across one step.
Parameters
x
number
y
number
Returns
void