--- title: userdata - Opaque objects summary: Objects supplied by the embedding application. Do not treat userdata as a table or guess its fields and methods. LuaJIT cdata is a separate category. section: reference kind: guide status: reference updated: 2026-10-26 tags: ["API","X4"] sources: ["https://wiki.egosoft.com/X4%20Foundations%20Wiki/Modding%20Support/","https://www.lua.org/manual/5.1/manual.html","https://luajit.org/ext_ffi_api.html"] --- ## Meaning Objects supplied by the embedding application. Do not treat userdata as a table or guess its fields and methods. LuaJIT cdata is a separate category. ## Example ```lua local function describe(value) return type(value) end ``` **What happens:** Only describe is declared; it has not been called, so no call result exists yet. This fragment does not print or write a log message. The values shown are the expected results of the example. ## Methods and related calls [API reference](wiki:api-index).