Engine Specific API

Unreal Engine Helpers

The following helpers are designed for Unreal Engine–based games (UE4 & UE5), including both float-precision and double-precision view structures.


bool unreal_read_tarray(proc_t &in proc, uint64 tarray_addr, array<uint64> &out result, uint max_count = 4096)

Reads an Unreal TArray from memory and fills a script array with the pointer values inside it.

Parameters

  • proc — target process handle

  • tarray_addr — memory address of the TArray

  • result — output array that will receive the entries

  • max_count — safety limit for max number of elements (default 4096)

Returns

true on success, false on invalid address, invalid process, or corrupted data.

On failure, result will be empty.

Example

array<uint64> actors;
if (unreal_read_tarray(proc, actors_addr, actors))
{
    for (uint i = 0; i < actors.length(); i++)
        log("Actor pointer: " + actors[i]);
}

bool unreal_read_minimal_view_info(proc_t &in proc, uint64 pov_addr, vector3 &out location, vector3 &out rotation, double &out fov)

Reads a float-precision Unreal camera view.

Parameters

  • proc — process handle

  • pov_addr — address of camera/view structure

  • location — output camera world position

  • rotation — output camera rotation (pitch, yaw, roll)

  • fov — output field-of-view

Returns

true on success, false on invalid input.


bool unreal_read_minimal_view_info_f64(proc_t &in proc, uint64 pov_addr, vector3 &out location, vector3 &out rotation, double &out fov)

Same as above but for double-precision UE5 view structures.

Use this if the game uses large-world coordinates or 64-bit FOV/rotation data.


bool unreal_world_to_screen(const vector3 &in world_pos, const vector3 &in cam_location, const vector3 &in cam_rotation, double fov_deg, vector2 &out screen_pos)

Projects a 3D world point into 2D screen coordinates using a UE-style camera.

Parameters

  • world_pos — world-space position

  • cam_location — camera location

  • cam_rotation — camera rotation (pitch, yaw, roll)

  • fov_deg — vertical field-of-view in degrees

  • screen_pos — output pixel coordinate

Returns

  • true if the point is visible, and screen_pos is valid

  • false if the point is behind the camera

Example

vector2 screen;
if (unreal_world_to_screen(targetPos, viewLoc, viewRot, viewFov, screen))
{
    draw_text("Target", screen.x, screen.y);
}

Source 2 Helpers


bool source2_world_to_screen(const vector3 &in world_pos, const matrix4x4 &in view_matrix, vector2 &out screen_pos)

Projects a world position using a row-major 4×4 view-projection matrix.

Parameters

  • world_pos — world-space vector

  • view_matrix — 16-element row-major view-projection matrix

  • screen_pos — output pixel position

Returns

  • true if visible

  • false if behind the camera

Example

vector2 s;
if (source2_world_to_screen(world, vpMatrix, s))
{
    draw_circle(s.x, s.y, 4, color_red);
}

Fortnite Helper


string fortnite_get_player_name(proc_t &in proc, uint64 addr)

Reads and decrypts a Fortnite player name from memory.

Returns

  • Player name on success

  • Empty string "" on failure

Example

string name = fortnite_get_player_name(proc, name_addr);
if (name.length() > 0)
    log("Player: " + name);

Rust Helper


vector3 rust_get_transform_position(proc_t &in proc, uint64 addr)

Resolves the world-space position of a Rust (Unity) transform hierarchy.

Returns

  • A vector3 world position on success

  • (0,0,0) on invalid memory or failure

Example

vector3 pos = rust_get_transform_position(proc, transform_ptr);
if (pos.x != 0 || pos.y != 0 || pos.z != 0)
{
    vector2 s;
    if (unreal_world_to_screen(pos, camLoc, camRot, camFov, s))
        draw_point(s.x, s.y, color_green);
}

Last updated