Skip to main content
In practice, I encountered a unique event called gameEventTriggered, which is designed to capture various in-game actions. This event can, for instance, detect entity damage, track movement of entities within vehicles, and much more—all without needing a continuously ticking while loop with Citizen.Wait(0). The event itself contains two parameters:
  • name: string - specifies the type of action
  • data: table - holds data related to the event
AddEventHandler('gameEventTriggered', function(name, data)
    print(name)
    print(#data)
end)
A complete list of event action names can be found here. Unfortunately, some actions in this list may not work or are unavailable across different builds. Most of these actions lack detailed research on the structure of the data table, so I’ve listed those here for which I know the exact data format.
Each event action and the data mentioned below are based on my own testing. If you find anything different, feel free to reach out, and I’ll gladly take a look at it to improve the documentation with you.

CEventNetworkEntityDamage

Triggered when an entity is damaged.
  • data[1] - damaged entity id
  • data[2] - attacker entity id
  • data[3] - could be hash of something, unknown
  • data[4] - always 0, unknown
  • data[5] - always 0, unknown
  • data[6] - did damage lead to death
  • data[7] - weapon hash
  • data[8] - sometimes looks like hash but sometimes is 0, unknown
  • data[9] - sometimes looks like hash but sometimes is 0, unknown
  • data[10] - always 0, unknown
  • data[11] - somethis 1, somethimes 0, unknown
  • data[12] - is melee attack
  • data[13] - some flags, not sure what they mean

CEventNetworkPlayerEnteredVehicle

Triggered when a player enters a vehicle.
  • data[1] - network id of the player
  • data[2] - vehicle entity id