traceless.engine
Camera coordinates are world-space values, angles are degrees, and engine times are seconds except timestamp. Availability is specified per function.
camera_angles
traceless.engine.camera_angles([pitch, yaw])
Returns: pitch, yaw when reading; none when writing; nil without client input.
Pass both numeric pitch and yaw to set the view angles; existing roll is preserved. With fewer than two arguments it reads instead. The unavailable result is a single nil, without a reason.
camera_position
traceless.engine.camera_position()
Returns: x, y, z numbers.
Returns the current cached render origin. It does not validate readiness, so values can reflect the last rendered frame.
eye_position
traceless.engine.eye_position()
Returns: x, y, z numbers; or nil.
Reads the local pawn eye position; a missing local pawn returns a single nil.
latency
traceless.engine.latency()
Returns: number.
Network-channel latency in seconds; returns 0 when the channel is unavailable.
screen_size
traceless.engine.screen_size()
Returns: width, height integers.
Returns current renderer screen dimensions in pixels.
timestamp
traceless.engine.timestamp()
Returns: number.
High-resolution monotonic counter in milliseconds, suitable for elapsed-time comparisons. This is not Unix time.
system_time
traceless.engine.system_time()
Returns: hour, minute, second, millisecond integers.
Windows local wall-clock time on the client, not server time.
unix_time
traceless.engine.unix_time()
Returns: number.
Whole seconds since the Unix epoch, from the client system clock.
random_int
traceless.engine.random_int(min, max)
Returns: integer.
Inclusive integer range. Raises an error if max is below min.
random_float
traceless.engine.random_float(min, max)
Returns: number.
Computes min + (max - min) * u with u in [0, 1). Unlike random_int, it does not reject reversed bounds.
reload_scripts
traceless.engine.reload_scripts()
Returns: none.
Queues reload of active scripts. If called during dispatch, the runtime applies pending work after safe callback completion; references owned by replaced instances become invalid.
absolute_frame_time
traceless.engine.absolute_frame_time()
Returns: number.
Absolute engine frame duration in seconds; 0 when globals are unavailable.
current_time
traceless.engine.current_time()
Returns: number.
Engine current time in seconds; 0 when globals are unavailable.
frame_count
traceless.engine.frame_count()
Returns: integer.
Engine frame counter; 0 when globals are unavailable.
frame_time
traceless.engine.frame_time()
Returns: number.
Engine frame duration in seconds; 0 when globals are unavailable.
max_players
traceless.engine.max_players()
Returns: integer.
The client's MAX_PLAYER_COUNT constant, not an active-player count.
real_time
traceless.engine.real_time()
Returns: number.
Engine real time in seconds; 0 when globals are unavailable.
tick_count
traceless.engine.tick_count()
Returns: integer.
Engine client tick counter; 0 when globals are unavailable.
tick_interval
traceless.engine.tick_interval()
Returns: number.
The client's TICK_INTERVAL constant in seconds.
local traceless = require("traceless")
local x, y, z = traceless.engine.eye_position()
if x then traceless.console.info("Eye: ", x, ", ", y, ", ", z) end