CyberM.blips

Runs inside the game process. Reads and presentation are local; anything that changes shared state has to go through the server.

client runtime18 functionsMarkdown

CyberM.blips.attachToEntity(id, entity, [slot], [offset])

Makes a blip follow a CyberM entity.

Changes an owned blip from a fixed world position to tracking a streamed CyberM entity. The entity id is ephemeral and the call requires ui.vanilla.map; remove or reattach the blip when its gameplay target changes.

Parameters

  • iddecimal stringrequired
  • entityentityrequired
  • slotstringoptionaldefault poi_mappin
  • offsettable { x, y, z }optional

Returns

  • boolean
  • reason

Registered in ResourceHost.cpp as LuaBlipAttachToEntity (line 6779).

clear

GAME

CyberM.blips.clear()

Removes every blip owned by the current resource.

Removes every vanilla-map blip owned by the calling resource generation. Other resources' blips are left untouched, and generation teardown performs the same cleanup automatically.

Returns

  • true

Registered in ResourceHost.cpp as LuaBlipClear (line 6790).

create

GAME

CyberM.blips.create(options)

Creates a resource-owned vanilla map pin.

Requires ui.vanilla.map. Provide exactly one of position or entity. The returned 64-bit generation handle is a decimal string and is cleaned up automatically when the resource stops.

Parameters

  • optionstable { position|entity, sprite?, label?, icon?, active?, visibleThroughWalls?, slot?, offset? }required

Returns

  • decimal-string blip id, or nil
  • reason

Example

local id = assert(CyberM.blips.create({
  position = { x = 10, y = 20, z = 30 },
  sprite = "objective", label = "Street race"
}))

Registered in ResourceHost.cpp as LuaBlipCreate (line 6776).

get

GAME

CyberM.blips.get(id)

Reads one blip owned by the current resource.

Returns a read-only snapshot of one blip owned by the calling resource. The handle must still belong to the current generation; a stale or foreign id is rejected.

Parameters

  • iddecimal stringrequired

Returns

  • snapshot table, or nil
  • reason

Registered in ResourceHost.cpp as LuaBlipGet (line 6791).

list

GAME

CyberM.blips.list()

Lists blips owned by the current resource.

Lists snapshots of all vanilla-map blips owned by the calling resource generation. The returned tables are copies and changing them does not mutate the map.

Returns

  • array of snapshot tables

Registered in ResourceHost.cpp as LuaBlipList (line 6792).

remove

GAME

CyberM.blips.remove(id)

Removes one owned blip.

Deletes one blip owned by the calling resource and invalidates its handle. Removal is resource-scoped, so one package cannot erase another package's map state.

Parameters

  • iddecimal stringrequired

Returns

  • boolean
  • reason

Registered in ResourceHost.cpp as LuaBlipRemove (line 6789).

CyberM.blips.setActive(id, active)

Activates or deactivates a vanilla mappin.

Updates the active/highlighted state of an owned vanilla-map blip. This changes presentation only and does not create a route or change server state.

Parameters

  • iddecimal stringrequired
  • activebooleanrequired

Returns

  • boolean
  • reason

Registered in ResourceHost.cpp as LuaBlipSetActive (line 6785).

CyberM.blips.setDescription(id, description)

Sets the custom fullscreen-map description of an owned blip.

Requires ui.vanilla.map. The description is displayed by CyberM's fullscreen-map tooltip for the selected native mappin.

Parameters

  • idstringrequired
  • descriptionstringrequired

Returns

  • true on success, otherwise false
  • reason

Registered in ResourceHost.cpp as LuaBlipSetDescription (line 6783).

CyberM.blips.setIcon(id, icon)

Sets a declared PNG icon or restores the native sprite.

Accepts a path, a texture descriptor, { asset, size }, or false. The native mappin remains underneath for map selection, routing, tooltips, and fallback.

Parameters

  • iddecimal stringrequired
  • iconstring|table|falserequired

Returns

  • boolean
  • reason

Registered in ResourceHost.cpp as LuaBlipSetIcon (line 6784).

CyberM.blips.setLabel(id, label)

Changes the fullscreen-map tooltip title.

CyberM keeps the label in private script data, independent from the vanilla variant's generic title.

Parameters

  • iddecimal stringrequired
  • labelstringrequired

Returns

  • boolean
  • reason

Registered in ResourceHost.cpp as LuaBlipSetLabel (line 6782).

CyberM.blips.setPosition(id, position)

Moves a blip to a world position.

Also detaches an entity-following blip.

Parameters

  • iddecimal stringrequired
  • positiontable { x, y, z }required

Returns

  • boolean
  • reason

Registered in ResourceHost.cpp as LuaBlipSetPosition (line 6778).

CyberM.blips.setSprite(id, sprite)

Changes the vanilla mappin variant.

Accepts an exact 2.31 variant name, a stable alias, or an integer from 0 through 146. See wiki/blips.md for the complete list.

Parameters

  • iddecimal stringrequired
  • spritestring|integerrequired

Returns

  • boolean
  • reason

Registered in ResourceHost.cpp as LuaBlipSetSprite (line 6780).

CyberM.blips.setTitle(id, title)

Sets the custom fullscreen-map title of an owned blip.

Requires ui.vanilla.map. This is the semantic title alias of setLabel; the HUD does not permanently render it beside the icon.

Parameters

  • idstringrequired
  • titlestringrequired

Returns

  • true on success, otherwise false
  • reason

Registered in ResourceHost.cpp as LuaBlipSetTitle (line 6781).

CyberM.blips.setTrackingAlternative(id, target)

Sets another owned blip as the routing alternative.

Passing nil clears it. This does not force the world-map controller to start tracking.

Parameters

  • iddecimal stringrequired
  • targetdecimal string|nilrequired

Returns

  • boolean
  • reason

Registered in ResourceHost.cpp as LuaBlipSetTrackingAlternative (line 6787).

CyberM.blips.setVisibleThroughWalls(id, visible)

Changes vanilla through-wall visibility.

Controls whether an owned world marker remains visible when geometry occludes it. The setting affects presentation on this client only and requires ui.vanilla.map.

Parameters

  • iddecimal stringrequired
  • visiblebooleanrequired

Returns

  • boolean
  • reason

Registered in ResourceHost.cpp as LuaBlipSetVisibleThroughWalls (line 6786).

CyberM.blips.sprites()

Lists every usable mappin variant in the current build.

Returns 147 entries for Cyberpunk 2077 2.31. This metadata query does not require map mutation permission.

Returns

  • array of { name, value }

Registered in ResourceHost.cpp as LuaBlipSprites (line 6793).

CyberM.blips.untrack(id)

Safely clears manual tracking for this blip.

The native action is invoked only if this owned blip is currently tracked, so a resource cannot untrack a quest or another system's pin.

Parameters

  • iddecimal stringrequired

Returns

  • true
  • whether it was tracked

Registered in ResourceHost.cpp as LuaBlipUntrack (line 6788).

update

GAME

CyberM.blips.update(id, patch)

Updates several properties of an owned blip.

A replacement mappin is registered before the previous one is removed. position switches to positional mode; entity switches to attached mode.

Parameters

  • iddecimal stringrequired
  • patchtablerequired

Returns

  • boolean
  • reason

Registered in ResourceHost.cpp as LuaBlipUpdate (line 6777).

For agents and LLMs: this page as Markdown · llms.txt · llms-full.txt