This wiki was in read-only mode for many years, but can now be edited again. A lot of information will need to be updated.
BZFS API Events
Note: The most up-to-date information on this topic can be found here: https://www.bzflag.org/documentation/developer/bzfs_api/events/
A comparison and overview of BZFS API events.
| BZFS API event | Function |
| bz eAllowAutoPilotChangeEvent | bz_eAllowAutoPilotChangeEvent is an API event that is called each time a player is about to change autopilot. |
| bz eAllowCTFCaptureEvent | bz_eAllowCTFCapEvent is an API event that is called each time a flag is about to be captured. |
| bz eAllowFlagGrab | bz_eAllowFlagGrab is an API event that is called each time a player is about to grab a flag. |
| bz eAllowKillCommandEvent | bz_eAllowKillCommandEvent is an API event that is called each the /kill command is executed. |
| bz eAllowPlayer | bz_eAllowPlayer is an API event that is called each time a player connects to the server. |
| bz eAllowSpawn | bz_eAllowSpawn is an API event called before a player respawns. |
| bz eAnointRabbitEvent | Bz_eAnointRabbitEvent is an API event that is called each time a new rabbit is to be selected. |
| bz eAuthenticatonComplete | bz_eAuthenticatonComplete is an API event that is called each time global authentication for a player is complete. |
| bz eAutoPilotChangeEvent | bz_eAutoPilotChangeEvent is an API event that is called each time a player is about to change autopilot. |
| bz eBanEvent | bz_eBanEvent is an API event that is called each time a regular ban is executed. |
| bz eBZDBChange | bz_eBZDBChange is an API event that is called each time a BZDB variable is changed. |
| bz eCaptureEvent | bz_eCaptureEvent is an API event that is called each time a team's flag has been captured. |
| bz eFilteredChatMessageEvent | bz_eFilteredChatMessageEvent is an API event that is called for each chat message the server receives. It is called after the server or any plug-ins have done chat filtering. |
| bz eFlagDroppedEvent | bz_eFlagDroppedEvent is an API event that is called each time a flag is dropped by a player. |
| bz eFlagGrabbedEvent | bz_eFlagGrabbedEvent is an API event that is called each time a flag is grabbed by a player. |
| bz eFlagResetEvent | bz_eFlagResetEvent is an API event that is called each time a flag is reset. |
| bz eFlagTransferredEvent | bz_eFlagTransferredEvent is an API event that is called each time a player with Thief steals a flag. |
| bz eGameEndEvent | bz_eGameEndEvent is an API event that is called each time a game ends. This only triggers when the game countdown ends (A Game Over), or when /superkill is initiated. |
| bz eGamePauseEvent | bz_eGamePauseEvent and bz_eGameResumeEvent are API events triggered when a game (i.e., a time- or score-limited match) pauses or resumes, respectively |
| bz eGameResumeEvent | bz_eGamePauseEvent and bz_eGameResumeEvent are API events triggered when a game (i.e., a time- or score-limited match) pauses or resumes, respectively. |
| bz eGameStartEvent | bz_eGameStartEvent and bz_eGameEndEvent are API events triggered when a game (i.e., a time- or score-limited match) begins or ends, respectively. |
| bz eGetAutoTeamEvent | bz_eGetAutoTeamEvent is an API event that is called for each new player is added to a team. |
| bz eGetPlayerInfoEvent | bz_eGetPlayerInfoEvent is an API event that is called each time the server sends out a player info update message to a remote player. |
| bz eGetPlayerMotto | bz_eGetPlayerMotto is an API event that is called when the player joins. It gives us the motto of the player. |
| bz eGetPlayerSpawnPosEvent | bz_eGetPlayerSpawnPosEvent is an API event that is called each time the server needs a new spawn position. |
| bz eGetWorldEvent | bz_eGetWorldEvent is an API event that is called before the BZFS server defines the world. |
| bz eHostBanModifyEvent | bz_eHostBanModifyEvent is an API event that is called each time before a hostban is going to happen. |
| bz eHostBanNotifyEvent | bz_eHostBanNotifyEvent is an API event that is called each time a hostban is executed. |
| bz eIdBanEvent | bz_eIdBanEvent is an API event that is called each time a ban on bzid (idban) is executed. |
| bz eIdleNewNonPlayerConnection | bz_eIdleNewNonPlayerConnection is an API event that is called each time there is an idle connection. |
| bz eKickEvent | bz_eKickEvent is an API event triggered when a player is kicked from the server. This event may be triggered by both the /kick Slash Command,another plug-in, or the game's core logic... |
| bz eKillEvent | bz_eKillEvent is an API event triggered when a player sends the /kill Slash Command to kill another player. |
| bz eListServerUpdateEvent | bz_eListServerUpdateEvent is an API event called before the server adds itself to the list server. |
| bz eLoggingEvent | bz_eLoggingEvent is an API event called whenever a debug message is outputted. These can normally be seen with the -d verbose options. |
| bz eLuaDataEvent | bz_eLuaDataEvent is an API event that is called each time a BZDB variable is changed. |
| bz eMessageFilteredEvent | bz_eMessageFilteredEvent is an API event that is called whenever a message is censored by the swear filter. |
| bz eMsgDebugEvent | bz_eMsgDebugEvent is an API event called every time packets are sent to the server. |
| bz eNetDataReceiveEvent | bz_eNetDataReceiveEvent is an API event that is called each time net data is received. |
| bz eNetDataSendEvent | bz_eNetDataSendEvent is an API event that is called each time net data is sent. |
| bz eNewNonPlayerConnection | bz_eNewNonPlayerConnection is an API event that is called each time there is a connection to the server not from a player. |
| bz eNewRabbitEvent | Bz_eNewRabbitEvent is an API event that is called each time a new rabbit is selected. |
| bz eNullEvent | bz_eNullEvent is the start point for the bz_eEventType enumeration. It is never called and has no data. |
| bz ePlayerAuthEvent | bz_ePlayerAuthEvent is an API event triggered when a player's authorization status changes. |
| bz ePlayerCollision | bz_ePlayerCollision is an API event that is called each time two players collide. |
| bz ePlayerCustomDataChanged | bz_ePlayerCustomDataChanged is an API event that is called each time bz_setPlayerCustomData() is run. |
| bz ePlayerDieEvent | bz_ePlayerDieEvent is an API event that is called each time a tank is killed. |
| bz ePlayerJoinEvent | bz_ePlayerJoinEvent is an API event that is called each time a player joins the game. |
| bz ePlayerPartEvent | bz_ePlayerPartEvent is an API event that is called each time a player parts (ie, leaves) a game. |
| bz ePlayerPausedEvent | bz_ePlayerPausedEvent is an API event that is called each time a playing tank is paused. |
| bz ePlayerPauseRequestEvent | bz_ePlayerPauseRequestEvent is an API event that is called each time a player wants to pause. |
| bz ePlayerScoreChanged | bz_ePlayerScoreChanged is an API event that is called when a player's score changes. |
| bz ePlayerSentCustomData | bz_ePlayerSentCustomData is an API event that is called each time a player is sent custom data. |
| bz ePlayerSpawnEvent | bz_ePlayerSpawnEvent is an API event that is called each time a playing tank is being spawned into the world. |
| bz ePlayerTeamChangeEvent | bz_ePlayerTeamChangeEvent is an API event that is called each time a player switches teams via bz_changeTeam(). |
| bz ePlayerUpdateDoneEvent | bz_ePlayerUpdateDoneEvent is an API event that is called each time a player update finishes. |
| bz ePlayerUpdateEvent | bz_ePlayerUpdateEvent is an API event that is called each time a player sends an update to the server. |
| bz ePluginLoaded | bz_ePluginLoaded is an API event that is called each time a plugin is loaded. |
| bz ePluginUnloaded | bz_ePluginUnloaded is an API event that is called when a plugin is unloaded. |
| bz eRawChatMessageEvent | bz_eRawChatMessageEvent is an API event that is called for each chat message the server receives. It is called before any filtering is done. |
| bz eReloadEvent | bz_eReloadEvent is an API event that is called each time a player reloads. |
| bz eReportFiledEvent | bz_eReportFiledEvent is an API event that is called each time a player or plugin files a report. |
| bz eServerMsgEvent | bz_eServerMsgEvent is an API event that is called each time the server sends a message. |
| bz eShotEndedEvent | bz_eShotEndedEvent is an API event that is called each time a shot ends. |
| bz eShotExpiredEvent | bz_eShotExpiredEvent is an API event that is called each time a shot expires. |
| bz eShotFiredEvent | bz_eShotFiredEvent is an API event that is called each time a shot is fired. |
| bz eShotRicochetEvent | bz_eShotRicochetEvent is an API event that is called each time a shot ricochetes. |
| bz eShotStoppedEvent | bz_eShotStoppedEvent is an API event that is called each time a shot stops. |
| bz eShotTeleportEvent | bz_eShotTeleportEvent is an API event that is called each time a shot teleports via a teleporter. |
| bz eSlashCommandEvent | bz_eSlashCommandEvent is an API event that is called each time a player sends a slash command. |
| bz eTeamScoreChanged | bz_eTeamScoreChanged is an API event that is called when a team's score changes. |
| bz eTeleportEvent | bz_eTeleportEvent is called when a tank passes through a teleportor. |
| bz eTickEvent | bz_eTickevent is an API event that is called once for each BZFS main loop. The wait time between tick calls can vary greatly depending on server load network conditions. Plug-ins that wish to enforce a maximum wait time between ticks should call bz_setMaxWaitTime with the longest wait time that is acceptable. |
| bz eUnknownSlashCommand | bz_eUnknownSlashCommand is an API event that is called when the BZFS server does not have an installed handler for a specific slash command. |
| bz eWorldFinalized | bz_eWorldFinalized is an API event that is called when the world is done loading. |
| bz eZoneEntryEvent | bz_eZoneEntryEvent is an API event that is called each time a player enters a zone on a BZW map. The event is unused and has no data. |
| bz eZoneExitEvent | bz_eZoneExitEvent is an API event that is called each time a player leaves a zone on a BZW map. The event is unused and has no data. |