跳到主要内容

Minigame Arena Definition

PropertyValue
Entry IDminigame_arena
TypeDefinition / Manifest
ColorOrange
Iconmdi:grid

Description

The core arena definition entry for the minigame extension. Configures every aspect of a minigame arena: game type, spawn positions, team mode, player limits, kits, power-ups, rounds, artifact references for score/time tracking, and triggers for game lifecycle events.

Fields

General Configuration

FieldTypeDescription
gameTypeGameTypeGame type: TPP, Spleef, Parkour, Archery, etc.
descriptionVar<String>Description shown to players in browser
regionRef<RegionDefinitionEntry>Protection region defining play area

Spawn Positions

FieldTypeDescription
lobbySpawnVar<Position>Lobby waiting position
gameSpawnVar<Position>Game start position
endTeleportVar<Position>End teleport position
spectatorSpawnVar<Position>Spectator position
lobbyRadiusVar<Double>Lobby movement radius in blocks

Player Limits

FieldTypeDescription
minPlayersVar<Int>Minimum players to start
maxPlayersVar<Int>Maximum players allowed
autoStartCountdownVar<Int>Countdown before game starts in seconds
maxGameDurationVar<Int>Max game duration in seconds
allowLateJoinBooleanAllow joining during game
allowSpectateBooleanAllow eliminated players to spectate

Team Configuration

FieldTypeDescription
teamModeTeamModeTeam mode: NONE, SOLO, RED_BLUE, TEAMS_CUSTOM
teamCountIntTeam count if TEAMS_CUSTOM
teamNamesStringTeam names separated by commas

Kit Configuration

FieldTypeDescription
giveKitBooleanGive kit to players at start
bringOwnItemsBooleanAllow players to keep own inventory
clearInventoryOnEndBooleanClear inventory at end
kitItemsList<Item>Kit items given at start

Gameplay Options

FieldTypeDescription
floorMaterialVar<String>Floor material for Spleef/BlockParty
powerUpEnabledBooleanEnable power-ups
powerUpIntervalVar<Int>Power-up spawn interval in seconds
useRoundsBooleanEnable rounds with reset between each
maxRoundsVar<Int>Maximum number of rounds

Artifact References

FieldTypeDescription
winStatArtifactRef<MinigameWinsArtifactEntry>Artifact storing wins/losses
scoreArtifactRef<MinigameScoreArtifactEntry>Artifact storing scores
stateArtifactRef<MinigameStateArtifactEntry>Artifact storing game state
bestTimeArtifactRef<MinigameBestTimeArtifactEntry>Artifact storing personal best time
topTimesArtifactRef<MinigameTopTimesArtifactEntry>Artifact storing leaderboard times
topTimesLimitIntNumber of times kept in leaderboard

Triggers

FieldTypeDescription
onGameStartRef<TriggerableEntry>Trigger on game start
onGameEndRef<TriggerableEntry>Trigger on game end
onPlayerJoinRef<TriggerableEntry>Trigger on player join
onPlayerEliminateRef<TriggerableEntry>Trigger on player elimination
onRoundStartRef<TriggerableEntry>Trigger on round start
onPersonalBestRef<TriggerableEntry>Trigger on personal best
onWorldRecordRef<TriggerableEntry>Trigger on world record

UI & Messages

FieldTypeDescription
customLobbyMenuRef<MinigameLobbyMenuEntry>Custom lobby menu
showScoreboardBooleanShow in-game scoreboard
scoreboardLinesVar<String>Scoreboard lines using %minigame_... placeholders
joinMessageVar<String>Welcome message
leaveMessageVar<String>Leave message
winMessageVar<String>Win message
eliminationMessageVar<String>Elimination message

Usage Example

minigame_arena:
gameType: Spleef
description: "Classic Spleef - break the floor under your opponents!"
lobbySpawn: <world,0,64,0>
gameSpawn: <world,0,50,0>
spectatorSpawn: <world,0,80,0>
lobbyRadius: 5.0
minPlayers: 2
maxPlayers: 8
autoStartCountdown: 10
teamMode: SOLO
giveKit: true
kitItems:
- DIAMOND_SHOVEL
useRounds: true
maxRounds: 3
winStatArtifact: ref:my_wins_artifact
scoreArtifact: ref:my_scores_artifact
showScoreboard: true
scoreboardLines: "Players: %minigame_players%\nRound: %minigame_round%"
joinMessage: "Welcome to Spleef!"
winMessage: "%player% wins Spleef!"

This defines a Spleef arena with solo mode, 2–8 players, a 10-second start countdown, 3 rounds, kits with diamond shovels, and scoreboard display.