Configuration

Configuration

The configuration file is located at config.lua. This file controls general settings for the waypoint system including map sync, default appearance, DUI rendering, and server-side cleanup.

Map Waypoint Sync

When enabled, a 3D waypoint marker will be automatically created at the player's map waypoint position.

config.syncToWayPoint = true
 
config.mapWaypoint = {
    type = 'checkpoint',
    label = 'WAYPOINT',
    color = '#f500fc',
    size = 1.0,
    drawDistance = 1000.0,
}
OptionTypeDefaultDescription
syncToWayPointbooleantrueEnable automatic 3D marker at the player's map waypoint
mapWaypoint.typestring'checkpoint'Waypoint style type ('small' or 'checkpoint')
mapWaypoint.labelstring'WAYPOINT'Text label displayed on the marker
mapWaypoint.colorstring'#f500fc'Hex color for the marker
mapWaypoint.sizenumber1.0Size multiplier for the marker
mapWaypoint.drawDistancenumber1000.0Maximum distance to render the marker

Default Waypoint Settings

Default values applied to all waypoints unless overridden per-waypoint.

config.defaults = {
    drawDistance = 500.0,
    fadeDistance = 400.0,
    size = 1.0,
    minHeight = 0.5,
    maxHeight = 50.0,
    groundZOffset = -2.0,
    color = '#f5a623',
    label = 'CHECKPOINT',
    displayDistance = true,
}
OptionTypeDefaultDescription
drawDistancenumber500.0Maximum distance to render the waypoint
fadeDistancenumber400.0Distance at which the waypoint starts fading
sizenumber1.0Base size multiplier
minHeightnumber0.5Minimum marker height (checkpoint type)
maxHeightnumber50.0Maximum marker height (checkpoint type)
groundZOffsetnumber-2.0Offset from coords.z for ground position
colorstring'#f5a623'Default marker color (hex)
labelstring'CHECKPOINT'Default label text
displayDistancebooleantrueShow distance on marker by default

DUI Settings

Controls the resolution of the DUI texture used for rendering waypoint visuals.

config.dui = {
    width = 512,
    height = 1024,
}
OptionTypeDefaultDescription
widthnumber512DUI texture width in pixels
heightnumber1024DUI texture height in pixels
⚠️

Increasing DUI resolution improves visual quality but uses more VRAM. The default values provide a good balance for most setups.

Rendering Settings

Fine-tune how waypoints are rendered in the game world.

config.rendering = {
    updateInterval = 100,
    perspectiveDivisor = 20.0,
    checkpointBaseMultiplier = 4.0,
    checkpointMinScale = 0.1,
    checkpointAspectRatio = 2.0,
    smallMinScale = 1.0,
    smallAspectRatio = 2.0,
}
OptionTypeDefaultDescription
updateIntervalnumber100Main loop update interval in milliseconds
perspectiveDivisornumber20.0Camera distance divisor for perspective scaling
checkpointBaseMultipliernumber4.0Multiplier for checkpoint base size
checkpointMinScalenumber0.1Minimum perspective scale for checkpoints
checkpointAspectRationumber2.0Height-to-width ratio for checkpoint quads
smallMinScalenumber1.0Minimum perspective scale for small markers
smallAspectRationumber2.0Height-to-width ratio for small marker quads

Server Settings

config.server = {
    cleanupInterval = 60000,
}
OptionTypeDefaultDescription
cleanupIntervalnumber60000Interval in milliseconds for cleaning up waypoints belonging to disconnected players

Waypoint Data

All waypoint creation functions accept a WaypointData table with the following properties:

PropertyTypeDefaultDescription
coordsvector3requiredThe 3D position of the waypoint
type'small' | 'checkpoint''small'Waypoint style type
colorstring'#f5a623'Hex color for the waypoint
labelstring'CHECKPOINT'Text label (mainly for checkpoint type)
iconstringnilIcon name for the waypoint
imagestringnilImage URL for the waypoint
sizenumber1.0Size multiplier
displayDistancebooleantrueWhether to show distance text
drawDistancenumber500.0Maximum distance to render
fadeDistancenumber400.0Distance to start fading
minHeightnumber0.5Minimum height for checkpoint line
maxHeightnumber50.0Maximum height for checkpoint line
groundZnumbercoords.z - 2Ground Z coordinate for the line
removeDistancenumbernilDistance to player for auto-removal (client only)

Waypoint Types

Small

A compact marker suitable for nearby points of interest. Displays an icon or image at the specified coordinates. Best used for short-range markers like interaction points, pickups, or nearby objectives.

Checkpoint

A tall beacon-style marker visible from far distances. Features a vertical line extending from the ground with a label and distance display at the top. Ideal for navigation, mission objectives, and event locations.

The checkpoint type uses minHeight, maxHeight, and groundZ to control the vertical beam. The small type ignores these properties.