<aside>
<img src="/icons/notification_orange.svg" alt="/icons/notification_orange.svg" width="40px" /> Edit your minigames in game with /mgm menu
</aside>
Execute commands when different events happen in the game. You can choose to add as many or as few commands as you want. Prefer a YAML list under Commands: (numbered maps still work). Minigame Maker’s subcommands do not need an mgm prefix. Use {player} for the player the event is running for.
Events:
Minigame_Join:
Commands:
- 'set-private-data {player} score 0'
- 'set-private-data {player} deaths 0'
- 'save-stats {player} ign {player} pvpBattle'
<aside> 🔥
YAML keys must match the event names below exactly (underscores included).
</aside>
Below is a list of all the events that are available in Minigame Maker.
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
Minigame_Join
Fires when a player joins this minigame. Common place to reset private data, apply kits, and teleport (Kit PVP / TNT Run style).
Minigame_Leave
Fires when a player leaves this minigame. Use for cleanup, restoring inventory, or ending game logic for that player.
Server_Join
Fires when a player joins the Minecraft server. Runs for players already tied to a minigame, or for the default join flow when they are not.
Server_Leave
Fires when a player disconnects from the server while in a minigame context.
Server_Kick
Fires when a player is kicked from the server.
World_Change
Fires when a player changes worlds. Also updates the tracked interacted world for that player.
Plugin_Disable
Fires for every current minigame participant when Minigame Maker is disabling (server stop or plugin unload).
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
Constant_Scheduler
Runs once per server tick for each current minigame participant (normally 20 times per second). It does not run as an independent loop for a game with no participants. TNT Run uses this with Movement for floor removal style logic.
Per_Second_Scheduler
Runs once every 20 server ticks for each current minigame participant (normally once per second). Shared game actions should include a state check so they are not repeated for every participant.
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
Movement
Fires when a player’s X/Y/Z position changes. Also updates the tracked interacted block under or at their feet (TNT Run style).
Jumping
Fires when the player starts a jump from the ground (detected from upward movement).
Falling
Fires while the player is moving downward in a fall.
Climbing
Fires while the player is climbing (ladder/vine style upward climb movement).
Head_Move
Fires when the player’s look direction changes (yaw or pitch) without requiring position change.
Teleport
Fires when the player teleports (any Bukkit teleport cause).
Respawn
Fires when the player respawns after death.
Vehicle_Exit_Event
Fires when a player who was riding a vehicle is no longer in one (checked each tick for minigame participants).
Elytra_Glide Minecraft 1.9+
Fires while the player is gliding with an elytra.
Player_Swimming Minecraft 1.13+
Fires while the player is swimming.
Player_Sneaking
Fires when the player is sneaking.
Player_Velocity
Fires when the player’s velocity is changed (knockback, explosions, velocity commands, and similar).
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
Player_Hand_Damage_Player
Fires when a player melee-hits another player. Kit PVP uses this for hit logic.
Player_Hand_Damage_Entity
Fires when a player melee-hits a non-player entity.
Player_Arrow_Damage_Player
Fires when a player’s arrow damages another player.
Player_Arrow_Damage_Entity
Fires when a player’s arrow damages a non-player entity.
Player_Rod_Damage_Player
Fires when a player’s fishing rod damages another player.
Player_Rod_Damage_Entity
Fires when a player’s fishing rod damages a non-player entity.
Player_Potion_Damage_Player
Fires when a player’s potion damages another player.
Player_Potion_Damage_Entity
Fires when a player’s potion damages a non-player entity.
Player_Snowball_Damage_Player
Fires when a player’s snowball damages another player.
Player_Snowball_Damage_Entity
Fires when a player’s snowball damages a non-player entity.
Player_Egg_Damage_Player
Fires when a player’s thrown egg damages another player.
Player_Egg_Damage_Entity
Fires when a player’s thrown egg damages a non-player entity.
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
Entity_Hand_Damage_Player
Fires when a non-player entity melee-hits a player.
Entity_Arrow_Damage_Player
Fires when an entity’s arrow damages a player.
Entity_Fireball_Damage_Player
Fires when a fireball damages a player.
Entity_Potion_Damage_Player
Fires when an entity’s potion damages a player.
Player_Interact_With_Entity
Fires when a player right-clicks an entity. Sets the interacted entity for follow-up commands.
Rod_Caught_Entity
Fires when a player’s fishing rod hooks an entity.
Arrow_Ground_Landing
Fires when a player-shot arrow hits a block. Sets that block as the interacted block.
Snowball_Ground_Landing
Fires when a player-thrown snowball hits a block. Sets that block as the interacted block.
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
</aside>
<aside> <img src="/icons/info-alternate_red.svg" alt="/icons/info-alternate_red.svg" width="40px" />
</aside>