Built-In Engine Events

From Valve Developer Community
Jump to navigation Jump to search
English (en)Русский (ru)中文 (zh)Translate (Translate)

查阅 https://github.com/SteamDatabase/GameTracking-Dota2/blob/master/game/dota/pak01_dir/resource/game.gameeventshttps://github.com/SteamDatabase/GameTracking-Dota2/blob/master/game/core/pak01_dir/resource/core.gameevents 来获取最新内容。

游戏事件格式

  • 事件名称中不能有空格,最大长度32
  • 所有字符都是大小写敏感的
  • 总游戏事件字节长度必须 < 1024
  • 有效的数据键值类型包括:
  • none : 未联网的值
  • string : 以0结尾的字符串
  • bool : 无符号整数, 1 bit
  • byte : 无符号整数, 8 bit
  • short : 符号整数, 16 bit
  • long : 符号整数, 32 bit
  • float : 浮点数, 32 bit
  • uint64 : 无符号整数 64 bit
  • local : 任意数据, 不联网到客户端
  • 下述的键值名是保留字
  • local : 如果设置为1, 事件不与客户端联网
  • unreliable : 联网, 但不可靠
  • suppress : 永不触发
  • time : 发送服务器时间
  • eventid : 保持事件ID

核心队伍事件

  • team_info: 队伍信息
  • teamid ( byte ): 队伍id
  • teamname ( string ): 队伍名称 (例如 Team Blue)
  • team_score: 队伍得分改变
  • teamid ( byte ): 队伍id
  • score ( short ): 总计队伍得分
  • teamplay_broadcast_audio: 对队伍成员发出声音信号
  • team ( byte ): 队伍id
  • sound ( string ): 要发射的声音名称

玩家事件

  • player_team: 玩家改变队伍
  • userid ( short ): 服务器上的用户id
  • team ( byte ): 队伍id
  • oldteam( byte ): 旧队伍id
  • disconnect( bool ): 由于玩家失去连接改变队伍
  • autoteam( bool ): 玩家被自动分配队伍则为true
  • silent( bool ): 不输出加入队伍信息则为true
  • player_class: 玩家改变职业(英雄)
  • userid ( short ): 服务器上的用户id
  • class ( string ): 新的玩家职业 / 模型
  • player_death [broken]: 玩家死亡[损坏]
  • userid ( short ): 死亡的用户ID
  • attacker ( short ): 凶手ID
  • player_hurt [broken]:玩家受伤害[损坏]
  • userid ( short ): 受伤的玩家索引号
  • attacker ( short ): 攻击者索引号
  • health ( byte ): 剩余生命值
  • player_chat [broken]: 公频玩家聊天[损坏]
  • teamonly ( bool ): 队伍聊天则为true
  • userid( short ): 聊天玩家
  • text( string ): 聊天文本
  • player_score: 玩家得分改变
  • userid ( short ): 服务器上的用户id
  • kills ( short ): 击杀数
  • deaths ( short ): 死亡数
  • score ( short ): 总游戏得分
  • player_spawn: 玩家在游戏中出生
  • userid ( short ): 服务器上的用户id
  • player_shoot: 玩家射出武器
  • userid ( short ): 服务器上的用户id
  • weapon ( byte ): 武器ID
  • mode ( byte ): 武器模式
  • player_use: 玩家使用实体情况
  • userid ( short ): 服务器上的用户id
  • entity ( short ): 玩家使用的实体
  • player_changename: 玩家改变名称
  • userid ( short ): 服务器上的用户id
  • oldname ( string ): 玩家旧(当前)名称
  • newname ( string ): 玩家新名称
  • player_hintmessage: 玩家提示信息
  • hintmessage ( string ): 提示本地化字符串
  • player_reconnected : 玩家重连进游戏
  • event(local): 包含相关信息的数据

游戏事件

  • game_init: 游戏开始时发送
  • game_newmap: 地图完全载入时发送
  • mapname ( string ): 地图名称
  • game_start: 新游戏开始
  • roundslimit ( long ): 最大回合数
  • timelimit ( long ): 回合时间限制
  • fraglimit ( long ): frag时间限制
  • objective ( string ): 回合物件
  • game_end: 游戏结束
  • winner ( byte ): 获胜队伍/用户id
  • round_start
  • timelimit ( long ): 回合时间限制,按秒
  • fraglimit ( long ): frag时间限制,按秒
  • objective ( string ): 回合物件
  • round_end
  • winner ( byte ): 获胜队伍/用户id
  • reason ( byte ): 获胜理由
  • message ( string ): 结束文字信息
  • round_start_pre_entity: 回合开始预实体
  • teamplay_round_start: 回合重新开始
  • full_reset ( bool ): 是否地图完全重置
  • hostname_changed: 主机名称改变
  • hostname ( string ): 主机名称
  • difficulty_changed: 难度改变
  • newDifficulty ( short ): 新难度
  • oldDifficulty ( short ): 旧难度
  • strDifficulty( string ): 新难度,字符串
  • finale_start: 终局开始
  • rushes ( short )
  • game_message: 游戏逻辑发送给每人的信息
  • target ( byte ): 0 = console, 1 = HUD
  • text ( string ): 信息文本
  • break_breakable: 破坏可破坏物(breakable)
  • entindex ( long ): 实体id
  • userid ( short ): 用户id
  • material ( byte ): BREAK_GLASS, BREAK_WOOD, etc
  • break_prop: 破坏支柱(prop)
  • entindex ( long ): 实体id
  • userid ( short ): 用户id
  • npc_spawned: NPC产生
  • entindex ( long ): 实体id
  • npc_replaced: NPC替换
  • old_entindex ( long ):旧实体id
  • new_entindex ( long ): 新实体id
  • entity_killed: 实体被杀死
  • entindex_killed( long ): 被杀实体id
  • entindex_attacker ( long ): 攻击者实体id
  • entindex_inflictor ( long ): 凶手实体id
  • damagebits ( long ): 伤害值
  • entity_hurt: 实体受伤
  • entindex_killed( long ): 实体id
  • entindex_attacker ( long ): 攻击者id
  • entindex_inflictor ( long ): 凶手id
  • damagebits ( long ): 伤害值
  • bonus_updated: 奖励更新
  • numadvanced ( short ): 高级数量
  • numbronze ( short ): 青铜级数量
  • numsilver ( short ): 白银级数量
  • numgold ( short ): 黄金级数量
  • player_stats_updated: 玩家状态更新
  • forceupload ( bool ): 强制上传
  • achievement_event: 成就事件
  • achievement_name ( string ): 非本地化的成就名称
  • cur_val ( short ): 朝向完成成就的步数
  • max_val ( short ): 成就的总步数
  • achievement_earned: 成就完成
  • player ( byte ): 玩家实体id
  • achievement ( short ): 成就ID

): 用于写入成就失败时的提示信息

  • achievement_write_failed: 成就写入失败
  • physgun_pickup: V蠢你根本是把HL里东西忘了删吧!!!!!
  • entindex ( long ): entity picked up
  • flare_ignite_npc: 同上
  • entindex ( long ): entity ignited
  • helicopter_grenade_punt_miss: V社你快够!
  • user_data_downloaded: 当成就/状态从Steam或者XBox Live下载时发送
  • ragdoll_dissolved: 骨骼贴图(Ragdoll)消散
  • entindex ( long ): 实体id
  • gameinstructor_draw
  • gameinstructor_nodraw
  • map_transition:地图过渡
  • instructor_server_hint_create : 创建一个提示,完全使用服务器/地图提供的数据
  • hint_name ( string ): 提示名称,用于随后引用(例如用指令清除提示,而不是等待其过期消失)
  • hint_replace_key ( string ): 输入名称,同类信息将取代彼此
  • hint_target ( long ): 显示提示的实体id
  • hint_activator_userid ( short ): 激活者用户id
  • hint_timeout ( short ): 消失前所需秒数, 0 = 永不
  • hint_icon_onscreen ( string ): 提示在画面内时的提示图标(例如 icon_alert_red)
  • hint_icon_offscreen ( string ): 提示在画面外时的提示图标(例如 icon_alert)
  • hint_caption ( string ): 提示文本(例如 #ThisIsDangerous)
  • hint_activator_caption ( string ): 只有激活者能看见的提示文本 (例如 #YouPushedItGood)
  • hint_color ( string ): 提示颜色,使用(r,g,b(数值范围 0-255))格式
  • hint_icon_offset ( float ): 相对实体原点的Z轴位移
  • hint_range ( float ): 提示剔除范围
  • hint_flags ( long ): 提示标签(flags)
  • hint_binding ( string ): 当use_binding为屏幕内图标时,绑定使用
  • hint_allow_nodraw_target ( bool ): 设置为false时, 当目标实体不可见时提示将消失
  • hint_nooffscreen ( bool ): 设置为true时, 提示超出玩家视野时不会显示
  • hint_forcecaption ( bool ): 设置为true时, 提示即使被阻挡也会显示文本
  • hint_local_player_only ( bool ): 设置为true时, 只有本地玩家会看到提示
  • instructor_server_hint_stop :摧毁一个服务器/地图产生的提示
  • hint_name ( string ): 提示停止,将会停止全部此名称的提示
  • chat_new_message: 包含新消息的指定频道
  • channel ( byte ): 频道
  • chat_members_changed: 玩家离开或加入的指定频道
  • channel ( byte ): 频道
  • game_rules_state_change: 游戏规则改变状态

经济事件

  • inventory_updated
  • itemdef ( short )
  • cart_updated
  • store_pricesheet_updated
  • gc_connected
  • item_schema_initialized
  • drop_rate_modified
  • event_ticket_modified

Mod事件

  • modifier_event
  • eventname ( string )
  • caster ( short )
  • ability ( short )
  • dota_player_kill
  • victim_userid ( short )
  • killer1_userid ( short )
  • killer2_userid ( short )
  • killer3_userid ( short )
  • killer4_userid ( short )
  • killer5_userid ( short )
  • bounty ( short )
  • neutral ( short )
  • greevil ( short )
  • dota_player_deny
  • killer_userid ( short )
  • victim_userid ( short )
  • dota_barracks_kill
  • barracks_id ( short )
  • dota_tower_kill
  • killer_userid ( short )
  • teamnumber ( short )
  • gold ( short )
  • dota_roshan_kill
  • teamnumber ( short )
  • gold ( short )
  • dota_courier_lost
  • teamnumber ( short )
  • dota_courier_respawned
  • teamnumber ( short )
  • dota_glyph_used
  • teamnumber ( short )
  • dota_super_creeps
  • teamnumber ( short )
  • dota_item_purchased( edit: not dota_item_purchase )
  • userid ( short )
  • itemid ( short )
  • dota_item_gifted
  • userid ( short )
  • itemid ( short )
  • sourceid ( short )
  • dota_rune_pickup
  • userid ( short )
  • type ( short )
  • rune ( short )
  • dota_rune_spotted
  • userid ( short )
  • rune ( short )
  • dota_item_spotted
  • userid ( short )
  • itemid ( short )
  • dota_no_battle_points
  • userid ( short )
  • reason ( short )
  • dota_chat_informational
  • userid ( short )
  • type ( short )
  • dota_action_item
  • reason ( short )
  • itemdef ( short )
  • message ( short )
  • dota_chat_ban_notification
  • userid( short )
  • dota_chat_event
  • userid ( short )
  • gold ( short )
  • message ( short )
  • dota_chat_timed_reward
  • userid ( short )
  • itmedef ( short )
  • message ( short )
  • dota_pause_event
  • userid ( short )
  • value ( short )
  • message ( short )
  • dota_chat_kill_streak
  • gold ( short )
  • killer_id ( short )
  • killer_streak ( short )
  • killer_multikill ( short )
  • victim_id ( short )
  • victim_streak ( short )
  • dota_chat_first_blood
  • gold ( short )
  • killer_id ( short )
  • victim_id ( short )
  • dota_player_update_hero_selection
  • tabcycle ( bool )
  • dota_player_update_selected_unit
  • dota_player_update_query_unit
  • dota_player_update_killcam_unit
  • dota_player_take_tower_damage
  • PlayerID ( short )
  • damage ( short )
  • dota_hud_error_message
  • reason ( byte )
  • message ( string )
  • dota_action_success
  • dota_starting_position_changed
  • dota_money_changed
  • dota_enemy_money_changed
  • dota_portrait_unit_stats_changed
  • dota_portrait_unit_modifiers_changed
  • dota_force_portrait_update
  • dota_inventory_changed
  • dota_item_picked_up
  • itemname ( string )
  • PlayerID ( short )
  • ItemEntityIndex( short )
  • HeroEntityIndex( short )
  • dota_inventory_item_changed
  • entityIndex ( short )
  • dota_ability_changed
  • dota_portrait_ability_layout_changed
  • dota_inventory_item_added
  • itemname ( string )
  • dota_inventory_changed_query_unit
  • dota_link_clicked
  • link ( string )
  • nav ( bool ): internal to item panel - preserve the nav stack
  • nav_back ( bool ): internal to item panel - preserve the nav stack
  • recipe ( short )
  • shop ( short ): show the item in a particular shop
  • dota_set_quick_buy
  • item ( string )
  • recipe ( byte )
  • toggle ( bool )
  • dota_quick_buy_changed
  • item ( string )
  • recipe ( byte )
  • dota_player_shop_changed
  • prevshopmask ( byte )
  • shopmask ( byte )
  • dota_player_show_killcam
  • nodes ( byte )
  • player ( short )
  • dota_player_show_minikillcam
  • nodes ( byte )
  • player ( short )
  • gc_user_session_created
  • team_data_updated
  • guild_data_updated
  • guild_open_parties_updated
  • fantasy_updated
  • fantasy_league_changed
  • fantasy_score_info_changed
  • player_info_updated
  • game_rules_state_change
  • match_history_updated
  • SteamID ( uint64 )
  • match_details_updated
  • matchID ( uint64 )
  • result ( byte )
  • live_games_updated
  • recent_matches_updated
  • Page ( short )
  • news_updated
  • persona_updated
  • SteamID ( uint64 )
  • tournament_state_updated
  • party_updated
  • lobby_updated
  • dashboard_caches_cleared
  • last_hit
  • PlayerID ( short )
  • EntKilled ( short )
  • FirstBlood ( bool )
  • HeroKill ( bool )
  • TowerKill ( bool )
  • player_completed_game
  • PlayerID ( short )
  • Winner ( byte )
  • player_reconnected
  • PlayerID ( short )
  • nommed_tree
  • PlayerID ( short )
  • dota_rune_activated_server
  • PlayerID ( short )
  • rune ( short )
  • dota_player_gained_level
  • player ( short )
  • level ( short )
  • dota_player_pick_hero
  • player ( short )
  • heroindex ( short )
  • hero ( string )
  • dota_player_learned_ability
  • player ( short )
  • abilityname ( string )
  • dota_player_used_ability
  • PlayerID ( short )
  • abilityname ( string )
  • dota_non_player_used_ability
  • abilityname ( string )
  • dota_ability_channel_finished
  • abilityname ( string )
  • interrupted ( bool )
  • dota_holdout_revive_complete
  • caster( short )
  • target( short )
  • dota_player_killed
  • PlayerID ( short )
  • HeroKill ( bool )
  • TowerKill ( bool )
  • bindpanel_open
  • bindpanel_close
  • keybind_changed
  • dota_item_drag_begin
  • dota_item_drag_end
  • dota_shop_item_drag_begin
  • dota_shop_item_drag_end
  • dota_item_purchased
  • PlayerID ( short )
  • itemname ( string )
  • itemcost ( short )
  • dota_item_used
  • PlayerID ( short )
  • itemname ( string )
  • dota_item_auto_purchase
  • item_id ( short )
  • dota_unit_event
  • victim ( short )
  • attacker ( short )
  • basepriority ( short )
  • priority ( short )
  • eventtype ( short ): EDOTAHeroChaseEventType
  • dota_quest_started
  • questIndex ( long ): entity index
  • dota_quest_completed
  • questIndex ( long ): entity index
  • gameui_activated
  • gameui_hidden
  • player_fullyjoined
  • userid ( short ): user ID on server
  • name ( string ): player name
  • dota_spectate_hero
  • entindex ( byte )
  • dota_match_done
  • winningteam ( byte ): The ID of the winning team
  • dota_match_done_client
  • set_instructor_group_enabled
  • group ( string )
  • enabled ( short )
  • joined_chat_channel
  • channelName ( string )
  • left_chat_channel
  • channelName ( string )
  • gc_chat_channel_list_updated
  • today_messages_updated
  • num_messages ( short )
  • file_downloaded
  • success ( bool )
  • local_filename ( string )
  • remote_url ( string )
  • player_report_counts_updated
  • positive_remaining ( byte )
  • negative_remaining ( byte )
  • positive_total ( short )
  • negative_total ( short )
  • scaleform_file_download_complete
  • success ( bool )
  • local_filename ( string )
  • remote_url ( string )
  • item_purchased
  • itemid ( short )
  • gc_mismatched_version
  • demo_skip
  • local (1)
  • playback_tick ( long ): current playback tick
  • skipto_tick ( long ): tick we're going to
  • user_message_list ( local ): CSVCMsgList_UserMessages
  • dota_hero_chase_list ( local ): CSVCMsgList_GameEvents
  • demo_start
  • local (1)
  • dota_combatlog_list ( local ): CSVCMsgList_GameEvents that are combat log events
  • dota_hero_chase_list ( local ): CSVCMsgList_GameEvents
  • dota_pick_hero_list ( local ): CSVCMsgList_GameEvents
  • demo_stop


  • map_shutdown
  • dota_workshop_fileselected
  • filename ( string )
  • dota_workshop_filecanceled
  • rich_presence_updated
  • dota_hero_random
  • userid ( short )
  • heroid ( short )
  • dota_rd_chat_turn
  • userid ( short )
  • dota_favorite_heroes_updated
  • profile_closed
  • item_preview_closed
  • dashboard_switched_section
  • section ( short )
  • dota_tournament_item_event
  • winner_count ( short )
  • event_type ( short )
  • dota_hero_swap
  • playerid1 ( byte )
  • playerid2 ( byte )
  • dota_reset_suggested_items : reset the purchased / checked off state of suggested items in the store
  • halloween_high_score_received
  • round ( short )
  • halloween_phase_end
  • phase ( byte )
  • team ( byte )
  • halloween_high_score_request_failed
  • round ( short )
  • dota_hud_skin_changed
  • skin ( string )
  • style ( byte )
  • dota_inventory_player_got_item
  • itemname ( string )
  • player_is_experienced
  • player_is_notexperienced
  • dota_tutorial_lesson_start
  • map_location_updated
  • richpresence_custom_updated
  • game_end_visible
  • antiaddiction_update
  • highlight_hud_element
  • elementname ( string )
  • duration ( float )
  • hide_highlight_hud_element
  • intro_video_finished
  • matchmaking_status_visibility_changed
  • practice_lobby_visibility_changed
  • dota_courier_transfer_item
  • full_ui_unlocked
  • client_connectionless_packet
  • local (1
  • buffer( (local
  • buffersize( long )
  • address( string )
  • hero_selector_preview_set
  • setindex( short )
  • antiaddiction_toast
  • message ( string )
  • duration ( float )
  • hero_picker_shown
  • hero_picker_hidden
  • dota_local_quickbuy_changed
  • show_center_message
  • message ( string )
  • duration ( float )
  • clear_message_queue ( bool )
  • hud_flip_changed
  • flipped ( bool )
  • frosty_points_updated
  • defeated
  • entindex ( short )
  • reset_defeated
  • booster_state_updated
  • event_points_updated
  • event_id ( short )
  • points ( short )
  • premium_points ( short )
  • local_player_event_points
  • points ( short )
  • conversion_rate ( short )
  • custom_game_difficulty
  • difficulty ( byte )
  • tree_cut
  • tree_x ( float )
  • tree_y ( float )
  • ugc_details_arrived
  • published_file_id ( uint64 )
  • ugc_subscribed
  • published_file_id ( uint64 )
  • ugc_unsubscribed
  • published_file_id ( uint64 )
  • prizepool_received
  • success ( bool )
  • prizepool ( uint64 )
  • leagueid ( uint64 )
  • microtransaction_success
  • txnid ( uint64 )
  • dota_rubick_ability_steal
  • abilityIndex ( short )
  • abilityLevel ( byte )
  • compendium_event_actions_loaded
  • account_id ( uint64 )
  • league_id ( uint64 )
  • local_test( bool )
  • original_points ( uint64 )
  • compendium_selections_loaded
  • account_id ( uint64 )
  • league_id ( uint64 )
  • local_test( bool )
  • compendium_set_selection_failed
  • account_id ( uint64 )
  • league_id ( uint64 )
  • local_test( bool )
  • community_cached_names_updated