Game API
Category: API Reference
Query game client state and environment information.
Functions
floor
game:floor() -> number
Get current floor/plane level (0-3).
Returns:
number- Floor level
client_state
game:client_state() -> number
Get client state code.
Returns:
number- State (30 = logged in, 10-24 = login screen)
logged_in
game:logged_in() -> boolean
Check if logged into the game.
Returns:
boolean- True if logged in
Example:
if not game:logged_in() then
logger:error("Not logged in!")
return
end
cycle
game:cycle() -> number
Get current game cycle/tick.
Returns:
number- Game cycle number
login_state
game:login_state() -> number
Get login screen index.
Returns:
number- Login state index
is_at_login_screen
game:is_at_login_screen() -> boolean
Check if at login screen.
Returns:
boolean- True if at login
viewport_width
game:viewport_width() -> number
Get viewport width in pixels.
Returns:
number- Width
viewport_height
game:viewport_height() -> number
Get viewport height in pixels.
Returns:
number- Height
Common Patterns
State Checking
local function wait_for_login()
while not game:logged_in() do
logger:info("Waiting for login...")
sleep(1000)
end
logger:info("Logged in!")
end
wait_for_login()
Viewport-Aware Clicking
local function is_clickable(x, y)
return x > 0 and x < game:viewport_width() and
y > 0 and y < game:viewport_height()
end
if is_clickable(300, 250) then
mouse:left_click(300, 250)
end
Related APIs
- Game Objects API - Game world objects
- Worlds API - World/server information