actors
actors: Record<string, unknown>
bag
bagex
bagid
bagid: number
Optionalboard
boardedges
boardedges: number[][]
cancelstreak
cancelstreak: number
cheesespawned
cheesespawned: number
Optionalclearsbypiece
clearsbypiece?: Record<string, Record<string, number>>
clutchCount
clutchCount: number
countdown_started
countdown_started: boolean
destroyed
destroyed: boolean
diyusi
diyusi: number
endqueued
endqueued: boolean
enemies
enemies: number[]
esc
esc: boolean
escAllowed
escAllowed: boolean
esciter
esciter: number
Optionalfalling
falling?: { flags: number; hy: number; irs: number; keys: number; kick: number; locking: number; lockresets: number; r: number; rotresets: number; safelock: number; skip: unknown[]; type: Engine.Mino; x: number; y: number;} fire
fire: number
fireAppr
fireAppr: number
fireGrace
fireGrace: number
firstInputTime: number
g
g: number
gameoverreason
garbageacknowledgements
garbageacknowledgements: {
incoming: Record<number, number>;
outgoing: Record<number, { amt: number; iid: number }[]>;
}
garbageareentries
garbageareentries: unknown[]
garbagearelockeduntil
garbagearelockeduntil: number
garbagebonus
garbagebonus: number
garbageid
garbageid: number
garbagereceived
garbagereceived: number
glock
glock: number
handling
haschangedcolumn
haschangedcolumn: boolean
hesitatedattacks
hesitatedattacks: unknown[]
hold
holdlocked
holdlocked: boolean
hyperForfeitAllowed
hyperForfeitAllowed: boolean
hyperRetryAllowed
hyperRetryAllowed: boolean
impendingdamage
impendingdamage: {
ackiid: number | null;
active: boolean;
actor_neg?: string;
actor_pos?: string;
amt: number;
cid: number | null;
color: unknown;
column: number | undefined;
delay: number;
firstcycle?: boolean;
gameid: number | null;
hardened?: boolean;
id: number;
iid: number | null;
neg: unknown;
pos: unknown;
position: unknown;
queued: boolean;
shielded?: boolean;
size: number;
status: "caution" | "spawn" | "sleeping";
type: unknown;
username: string | null;
x: number;
y: number;
}[]
inputHold: boolean
inputRotate180: boolean
inputRotateCCW: boolean
inputRotateCW: boolean
inputSoftdrop: boolean
interactionid
interactionid: number
killer
killer: { gameid: number; type: "sizzle"; username?: string | null }
lastatktime
lastatktime: number | null
lastcolumn
lastcolumn: number | null
lastdoublepiece
lastdoublepiece: unknown
lastGenerated
lastGenerated: number | null
lastoffensive
lastoffensive: {
defense: number;
offence: number;
surge: number;
x: number;
y: number;
}
lastpiecetime
lastpiecetime: number
lastreceivedcount
lastreceivedcount: number
lastshift
lastshift: -1 | 1
laststrategychange
laststrategychange: number
lasttanktime
lasttanktime: number
lastwasattack
lastwasattack: boolean
lastwasclear
lastwasclear: boolean
lShift
lShift: { arr: number; das: number; dir: -1; held: boolean }
nextwilltank
nextwilltank: boolean
notyetreceivedattacks
notyetreceivedattacks: number
Optionalotherstates
pause
pause: boolean
placement
placement: number
playing
playing: boolean
quadcolumns
quadcolumns: number[]
retry
retry: boolean
retryAllowed
retryAllowed: boolean
retryiter
retryiter: number
rng
rng: number
rngex
rngex: number
rShift
rShift: { arr: number; das: number; dir: 1; held: boolean }
setoptions
spike
spike: { count: number; count_nomult: number; timer: number }
started
started: boolean
stats
stock
stock: number
subframe
subframe: number
successful
successful: boolean
targets
targets: number[]
time
time: {
frameoffset: number;
locked: boolean;
prev: number;
start: number;
zero: boolean;
}
totalRotations
totalRotations: number
tutorial
tutorial: {
finished: number;
freeze: number;
progress: number;
reqs: number;
stage: number;
}
unsafewaitingframes
unsafewaitingframes: unknown[]
waitingframes
waitingframes: { data: any; target: number; type: string }[]
windupwaituntil
windupwaituntil: number
zenith
zenith: {
allyincapacitated: boolean;
blighted: boolean;
blockrationing: number;
blockrationing_app: number;
blockrationing_final: number;
bonusfromally: number;
bonusremaining: number;
climb_pts: number;
columnsicknessbuckets_i: unknown[];
columnsicknessbuckets_lj: unknown[];
columnsicknessbuckets_sz: unknown[];
escapeartist: number;
garbageahead: unknown[];
garbagerowcount: number;
garbageside: number;
gracestillmessy: boolean;
hasseenI5: boolean;
highestrevive: number;
incapacitated: boolean;
isDanger: boolean;
last_rank_change_was_promote: boolean;
lastcancel: number;
lastclearcount: unknown;
lastclearpiece: unknown;
lastclearspin: unknown;
lastclearwasdupe: boolean;
lastfloorchange: number;
maxmessy: boolean;
nogarbagesince: unknown;
promotion_fatigue: number;
promptstarttime: number;
quadbuckets: unknown[];
rank_locked_until: number;
revivelevel: number;
reviveprompts: unknown[];
spinbuckets: unknown[];
stalepieces: number;
staletime: number;
szsickness: unknown[];
talentless: boolean;
top3rowsince: unknown;
was180Used: boolean;
wasCCWUsed: boolean;
wasCWUsed: boolean;
}
Note:
boardis reversed compared to triangle