Build configurable BlockParty minigame
Build / build (push) Failing after 27s

Co-Authored-By: Claude Sonnet 5 <[email protected]>
This commit is contained in:
Michael Burgess
2026-08-07 05:47:55 -04:00
co-authored by Claude Sonnet 5
commit 7b02b7efb7
49 changed files with 4349 additions and 0 deletions
+55
View File
@@ -0,0 +1,55 @@
# BlockParty global configuration
ui:
scoreboard: true
bossbar: true
titles: true
actionbar: true
scoreboard-update-interval-ticks: 10
sounds:
join: ENTITY_EXPERIENCE_ORB_PICKUP
countdown: BLOCK_NOTE_BLOCK_PLING
target-select: ENTITY_ENDER_DRAGON_GROWL
floor-disappear: ENTITY_GENERIC_EXPLODE
eliminate: ENTITY_VILLAGER_NO
round-complete: BLOCK_NOTE_BLOCK_BELL
victory: UI_TOAST_CHALLENGE_COMPLETE
performance:
# blocks processed per server tick when generating/removing/restoring the floor
floor-blocks-per-tick: 200
# example/default timings used when creating a brand-new arena via /blockparty create
defaults:
countdown-duration: 15
starting-round-time: 20
minimum-round-time: 4
round-time-reduction: 1
default-floor-materials:
- RED_CONCRETE
- ORANGE_CONCRETE
- YELLOW_CONCRETE
- LIME_CONCRETE
- GREEN_CONCRETE
- CYAN_CONCRETE
- LIGHT_BLUE_CONCRETE
- BLUE_CONCRETE
- PURPLE_CONCRETE
- MAGENTA_CONCRETE
- PINK_CONCRETE
- WHITE_CONCRETE
- BLACK_CONCRETE
- GRAY_CONCRETE
- LIGHT_GRAY_CONCRETE
- BROWN_CONCRETE
rewards:
winner:
commands:
- "eco give %player% 100"
- "say %player% won BlockParty in %arena% after %round% rounds!"
integrations:
placeholderapi: true
+56
View File
@@ -0,0 +1,56 @@
# BlockParty messages - MiniMessage format supported (https://docs.advntr.dev/minimessage/format.html)
errors:
no-permission: "<red>You do not have permission to do that.</red>"
unknown-arena: "<red>Unknown arena: %arena%</red>"
already-in-arena: "<red>You are already in an arena. Use /blockparty leave first.</red>"
not-in-arena: "<red>You are not currently in an arena.</red>"
arena-disabled: "<red>Arena '%arena%' is disabled.</red>"
arena-full: "<red>Arena '%arena%' is full.</red>"
no-region: "<red>Arena '%arena%' has no floor region set (use pos1/pos2).</red>"
no-materials: "<red>Arena '%arena%' has no floor materials configured.</red>"
admin:
arena-exists: "<red>Arena '%arena%' already exists.</red>"
arena-created: "<green>Arena '%arena%' created.</green>"
arena-deleted: "<green>Arena '%arena%' deleted.</green>"
arena-enabled: "<green>Arena '%arena%' enabled.</green>"
arena-disabled: "<yellow>Arena '%arena%' disabled.</yellow>"
validation-failed: "<red>Arena '%arena%' failed validation:</red>"
lobby-set: "<green>Lobby set for '%arena%'.</green>"
spawn-set: "<green>Spawn set for '%arena%'.</green>"
spectator-set: "<green>Spectator location set for '%arena%'.</green>"
pos1-set: "<green>Position 1 set for '%arena%'.</green>"
pos2-set: "<green>Position 2 set for '%arena%'.</green>"
floor-set: "<green>Floor palette for '%arena%' set to %count% material(s).</green>"
floor-generated: "<green>Floor generated for '%arena%'.</green>"
reloaded: "<green>BlockParty configuration reloaded.</green>"
player:
joined: "<green>You joined arena '%arena%'.</green>"
left: "<yellow>You left the arena.</yellow>"
countdown:
actionbar: "<yellow>Starting in %time%s...</yellow>"
title: "<gold>%time%</gold>"
cancelled: "<red>Not enough players - countdown cancelled.</red>"
round:
title: "<white>Round %round%</white>"
subtitle: "<yellow>Stand on <bold>%color%</bold>!</yellow>"
actionbar: "<yellow>Target: %color% - %time%s</yellow>"
game:
eliminated: "<red>You were eliminated in round %round% of '%arena%'.</red>"
win-title: "<gold><bold>%player% wins!</bold></gold>"
no-winner: "<gray>The match ended with no winner.</gray>"
scoreboard:
title: "<gold><bold>BlockParty</bold></gold>"
lines:
- "&7Arena: &f%arena%"
- "&7Round: &f%round%"
- ""
- "&7Players: &f%players%"
- "&7Target: &f%target%"
- "&7Time: &f%time%s"
+44
View File
@@ -0,0 +1,44 @@
name: BlockParty
version: '${version}'
main: us.tss3.blockparty.BlockPartyPlugin
api-version: '1.21'
author: tss3
description: Colored-floor elimination minigame.
softdepend: [PlaceholderAPI, Vault]
commands:
blockparty:
description: BlockParty main command
aliases: [bp]
usage: /<command> help
permissions:
blockparty.play:
description: Allows playing BlockParty (join/leave/stats)
default: true
blockparty.join:
description: Allows joining arenas
default: true
blockparty.spectate:
description: Allows spectating arenas
default: true
blockparty.admin:
description: Grants all BlockParty admin permissions
default: op
children:
blockparty.admin.create: true
blockparty.admin.delete: true
blockparty.admin.setup: true
blockparty.admin.reload: true
blockparty.admin.create:
description: Allows creating arenas
default: op
blockparty.admin.delete:
description: Allows deleting arenas
default: op
blockparty.admin.setup:
description: Allows configuring arenas (lobby/spawn/floor/etc)
default: op
blockparty.admin.reload:
description: Allows reloading the plugin
default: op