sdkLua module
Import common game helpers from one Lua library.
Import sdk with local sdk = require("sdk"). sdk.version is the installed library version. sdk.entities provides the entities helper, and sdk.ui_sdk provides the ui_sdk helper.
The functions below call the corresponding game functions with the same parameters, results, and limits. See the game reference for full contracts and examples.
Character and world
sdk.local_position()
Parameters and result: No parameters; {x, y, z} or nil, error.
sdk.local_health_fraction()
Parameters and result: No parameters; health fraction or nil, error.
sdk.local_level()
Parameters and result: No parameters; integer level or nil, error.
sdk.local_name()
Parameters and result: No parameters; UTF-8 name or nil, error.
sdk.local_character_class()
Parameters and result: No parameters; class code or nil, error.
sdk.local_pc_data_id()
Parameters and result: No parameters; character data ID or nil, error.
sdk.local_resource_text()
Parameters and result: No parameters; displayed {health, mana} strings or nil, error.
sdk.local_displayed_resources()
Parameters and result: No parameters; numeric health and mana pairs or nil, error.
sdk.current_level_name()
Parameters and result: No parameters; loaded level name or nil, error.
sdk.current_map_id()
Parameters and result: No parameters; map ID or nil, error.
sdk.current_area_id()
Parameters and result: No parameters; area ID or nil, error.
local sdk = require("sdk")
local level, err = sdk.local_level()
if level then log.info("Level " .. level) else log.warn(err) endMovement and travel
sdk.clear_target()
Parameters and result: No parameters; true when the clear request is sent, or nil, error.
sdk.request_path(x, y, z)
Parameters and result: Finite world coordinates; true when requested, or nil, error.
sdk.path_destination()
Parameters and result: No parameters; {x, y, z} or nil, error.
sdk.destination_marker()
Parameters and result: No parameters; {id, x, y, z} or nil, error.
sdk.popup_message_text()
Parameters and result: No parameters; visible message text or nil, error.
sdk.is_teleport_unlocked(id)
Parameters and result: Destination ID; true, false, or nil, error.
sdk.unlocked_dungeon_waypoints()
Parameters and result: No parameters; ordered ID array or nil, error.
local marker = sdk.destination_marker()
if marker then
local ok, err = sdk.request_path(marker.x, marker.y, marker.z)
if not ok then log.warn(err) end
endItems, shortcuts, and quests
sdk.use_item(uid)
Parameters and result: Positive item UID; true on accepted request, or nil, error.
sdk.shortcut_press(slot)
Parameters and result: Slot 0–59; true when sent, or nil, error.
sdk.shortcut_release(slot)
Parameters and result: Slot 0–59; true when sent, or nil, error.
sdk.place_skill(skill_id, slot, combo_index)
Parameters and result: Positive skill ID, slot 0–255, combo 0–3; true or nil, error.
sdk.active_quest_ids()
Parameters and result: No parameters; ordered ID array or nil, error.
sdk.available_quest_ids()
Parameters and result: No parameters; ordered ID array or nil, error.
sdk.completed_quest_ids()
Parameters and result: No parameters; ordered ID array or nil, error.
sdk.claim_quest(id)
Parameters and result: Quest ID; true when requested, or nil, error.
sdk.execute_quest(id, track_id)
Parameters and result: Quest and track IDs; true when requested, or nil, error.
sdk.submit_quest(quest_uid, reward_index)
Parameters and result: Active quest UID and reward index; true when requested, or nil, error.
local quests, err = sdk.active_quest_ids()
if quests then
log.info("Active quests: " .. #quests)
else
log.warn(err)
end