VERGELua API

UserMessage

User messages dispatched to the client — hook them with callbacks.DispatchUserMessage.

UserMessage

um:GetID():number

User message ID.

um:GetBitBuffer():BitBuffer

Bit buffer holding the message payload.

User message types

Every user message the client can dispatch — delivered to callbacks.Register("DispatchUserMessage", fn). Match on um:GetID() against E_UserMessage.* (see Constants).

Source core

Geiger 0Train 1HudText 2SayText 3SayText2 4TextMsg 5ResetHUD 6GameTitle 7ItemPickup 8ShowMenu 9Shake 10Fade 11VGUIMenu 12Rumble 13CloseCaption 14SendAudio 15VoiceMask 16RequestState 17Damage 18HintText 19KeyHintText 20HudMsg 21AmmoDenied 22AchievementEvent 23UpdateRadar 24

TF2 gameplay

VoiceSubtitle 25HudNotify 26HudNotifyCustom 27PlayerStatsUpdate 28MapStatsUpdate 29PlayerIgnited 30PlayerIgnitedInv 31HudArenaNotify 32UpdateAchievement 33TrainingMsg 34TrainingObjective 35DamageDodged 36PlayerJarated 37PlayerExtinguished 38PlayerJaratedFade 39PlayerShieldBlocked 40BreakModel 41CheapBreakModel 42BreakModel_Pumpkin 43BreakModelRocketDud 44CallVoteFailed 45VoteStart 46VotePass 47VoteFailed 48VoteSetup 49PlayerBonusPoints 50RDTeamPointsChanged 51SpawnFlyingBird 52PlayerGodRayEffect 53PlayerTeleportHomeEffect 54

MvM

MVMStatsReset 55MVMPlayerEvent 56MVMResetPlayerStats 57MVMWaveFailed 58MVMAnnouncement 59MVMPlayerUpgradedEvent 60MVMVictory 61MVMWaveChange 62MVMLocalPlayerUpgradesClear 63MVMLocalPlayerUpgradesValue 64MVMResetPlayerWaveSpendingStats 65MVMLocalPlayerWaveSpendingValue 66MVMResetPlayerUpgradeSpending 67MVMServerKickTimeUpdate 68

Extra

PlayerLoadoutUpdated 69PlayerTauntSoundLoopStart 70PlayerTauntSoundLoopEnd 71ForcePlayerViewAngles 72BonusDucks 73EOTLDuckEvent 74PlayerPickupWeapon 75QuestObjectiveCompleted 76SPHapWeapEvent 77HapDmg 78HapPunch 79HapSetDrag 80HapSetConst 81HapMeleeContact 82

Examples

Notify on user messages

Dispatches a toast when a specific user message arrives, using the E_UserMessage ids.

callbacks.Register("DispatchUserMessage", function(um)
    local id = um:GetID()
    if id == E_UserMessage.PlayerIgnited then
        engine.Notification("Fire!", "You were set on fire")
    elseif id == E_UserMessage.MVMWaveChange then
        engine.Notification("MvM", "Wave state changed")
    end
end)