BlockParty
BlockParty
Description
BlockParty is a Minecraft minigame plugin. You can easily set up multiple arenas in multiple worlds. After the arena is set up the players have to dance on the floor. A random block is given to each player on every level. After that, the players have to run to a block on the floor with the matching color. If they are not standing on the right one, they are out of the game. You can use your own floor patterns and let the floor create randomly.
Requirements
This plugin requires no other plugins to run. Add these plugins to enable extra features.
- NoteBlockAPI - Needed to play the note block music
Installation
Download the jar file and place it into your plugins folder. A new folder is created (named BlockParty) after the server is started. A few file and sub-folders should be located there.
Configuration
config.yml
# BlockParty configuration
# Locale file located in plugins/BlockParty/Locale/*.yml
LocaleFileName: locale_en.yml
# Saves all data on plugin shutdown. Not necessary
SaveOnDisable: false
# Disables listed sub commands, example:
# DisabledSubCommands: ["help", "reload", "join"]
DisabledSubCommands: []
Chat:
# Chat format when in arena
# Placeholders:
# %ARENA%: Arena player is in
# %NAME%: Player name without formatting (e.g. rank, colors)
# %DISPLAY%: Name with formatting
# %MESSAGE%: Message sent
ArenaChatFormat: "&8[&7%ARENA%&8] &7%DISPLAY% &8> &r%MESSAGE%"
# Separates normal from arena chat
# Useful for non-bungee servers
ArenaPrivateChat: True
# How to use join signs:
# Line 1: [BlockParty]
# Line 2: Arena name (case sensitive)
JoinSigns:
# Enable join signs
Enabled: True
# Update signs every x milliseconds
UpdateMillis: 1000
Lines:
Disabled:
1: "&4[Off-%ARENA%]"
2: "Not available"
3: "&8&l%PLAYERS%/%MAX_PLAYERS%"
4: "&4• Stopped •"
Lobby:
1: "&5[Join-%ARENA%]"
2: "Voting..."
3: "&8&l%PLAYERS%/%MAX_PLAYERS%"
4: "&5• Lobby •"
LobbyFull:
1: "&4[Full-%ARENA%]"
2: "Voting..."
3: "&8&l%PLAYERS%/%MAX_PLAYERS%"
4: "&5• Lobby •"
Ingame:
1: "&8[Ingame-%ARENA%]"
2: "%ALIVE% players alive"
3: "&8&l%PLAYERS%/%MAX_PLAYERS%"
4: "&8• Ingame •"
Ending:
2: "&8&lLobby"
3: "&8&lrestarting..."
BungeeCord:
# When set to "True", players will automatically connect to DefaultArena (see below)
# and will be kicked from the server when leaving the arena.
# This is mostly useful for BungeeCord servers
Enabled: False
# Arena players will connect to when BungeeCord is enabled. Please note the spelling and case sensitivity
DefaultArena: Arena
MusicServer:
# When "True", music playback in browser will be activated. You will need a web server for this
Enabled: False
# Available libraries: "websocket", "jetty", "tcp/ip", "mcjukebox"
WebSocketLibrary: jetty
# Web server port (Not Minecraft server port!)
Port: 8080
Database:
# Use "MySQL" to enable MySQL, "SQL" to store data locally
Method: SQL
# Tables will have this prefix in front of the name
TablePrefix: "bp_"
SQLOptions:
# File to save database to when using SQL
FileName: "database.db"
# MySQL credentials
MySQLOptions:
Host: localhost
Port: 3306
Database: database
Username: username
Password: password
# End of configuration
Arena setup
- Create an arena
- Use the /bp create [arenaName]
- Replace [arenaName] with the name of your arena
- Set the lobby spawn
- Place yourself where you want to have your lobby spawn. Use /bp setspawn [arenaName] lobby
- Players get teleported to this position when they enter the lobby
- Set the boundaries of the arena floor
- Use /bp pos <1|2> to set the positions to your current positions. OR:
- Use /bp wand to get a stick to set the positions via left and right click
- Finally use /bp setfloor [arenaName] to set the floor boundaries for you arena
- Set the game spawn
- Place yourself where you want to have your game spawn. Use /bp setspawn [arenaName] game
- Players get teleported to this position when the game starts
- Enable your arena
- To be able to play in an arena you need to enable it first. Use /bp enable [arenaName]
Thats it for the arena setup. To customize your arena, use ingame commands or head to the [arenaName].yml located in your plugins/BlockParty/Arenas/
folder. Here you can find an example arena config:
Settings:
DistanceToOutArea: 5
TimeToSearch: 8
LevelAmount: 15
MinPlayers: 2
MaxPlayers: 20
LobbyCountdown: 30
TimeReductionPerLevel: 0.5
TimeModifier: 0.1
Enabled: true
EnableParticles: true
EnableLightnings: true
AutoRestart: false
AutoKick: false
EnableBoosts: true
EnableFallingBlocks: false
UseAutoGeneratedFloors: true
UsePatternFloors: true
EnableActionbarInfo: true
UseNoteBlockSongs: false
UseWebSongs: true
EnableFireworksOnWin: true
TimerResetOnPlayerJoin: false
AllowJoinDuringGame: true
EnableScoreboard: false
Name: example
SongManager:
- examplesong.mp3
Signs: []
LobbySpawn:
World: world1.13
X: 119.96556415260845
Y: 64.0
Z: 26.73431969945681
Yaw: -57.567917
Pitch: 35.83339
GameSpawn:
World: world1.13
X: 126.06898491630506
Y: 63.0
Z: 30.055373974750374
Yaw: -57.567917
Pitch: 35.83339
Floor:
A:
World: world1.13
X: 124.0
Y: 62.0
Z: 28.0
Yaw: 0.0
Pitch: 0.0
B:
World: world1.13
X: 127.0
Y: 62.0
Z: 31.0
Yaw: 0.0
Pitch: 0.0
Patterns:
- exampleFloor
Width: 4.0
Length: 4.0
Floor setup
In BlockParty we are using our own format to save block data. We are making use of the Run-length encoding to keep the file as small as possible. You can create your own floors, save and use them.
Creating your own floor
- Build a two dimensional pattern using terracotta, wool and/or glass (all blocks supported in > 1.13)
- Set the boundaries of pattern
- Use /bp pos <1|2> to set the positions to your current positions. OR:
- Use /bp wand to get a stick to set the positions via left and right click
- Save your pattern
- Finally use /bp save [patternName] to save your pattern to the
/plugins/BlockParty/Floors/
folder
- Finally use /bp save [patternName] to save your pattern to the
Add a floor to your arena
- Test your pattern
- This is optional but you may want to test your floor
- Use /bp placepattern [patternName] to test it
- Activate UsePatternFloors
- Make sure you set
UsePatternFloors: true
in your arena config - You can also add patterns in your arena config
- Reload with /bp reload if you have just changed a value
- Make sure you set
- Selecting an initial pattern
- If you name a pattern start it will load first
- Selecting the game over pattern
- If you name a pattern end it will load when the game is over
Remove a pattern
- List the active patterns
- Use /bp listpatterns [arenaName] to list all active patterns for this arena
- Remove a paattern
- Use /bp removepattern [arenaName] [patternName] to list all active patterns for this arena
Web player setup
This is a basic tutorial on how to set up the build in web player.
- Enable the web player
- Head over to the config.yml located in you
plugins/BlockParty/
folder - Make sure to enable your enable the MusicServer
- Make sure to use jetty, other librarys are in development, and a non-blocked port
- Your section should look like this now:
- Head over to the config.yml located in you
MusicServer:
# When "True", music playback in browser will be activated. You will need a web server for this
Enabled: True
# Available libraries: "websocket", "jetty", "tcp/ip", "mcjukebox"
WebSocketLibrary: jetty
# Web server port (Not Minecraft server port!)
Port: 8080
Adding songs
- Add songs to your web player songs folder
- Head over to
plugins/BlockParty/web/songs/
- Place any songs here (e.g. example.mp3)
- Head over to
- Add songs to your arena
- Add them ingame by typing /bp addsong [arenaName] [songName]
- Important: Make sure to also include the file type. You command should look something like this: /bp addsong exampleArena example.mp3
- Add them to your arena config. The config section should look something like this:
SongManager:
- examplesong.mp3
- Enable the use of web player songs
- Make sure
UseWebSongs: true
is set to true in your arena config
- Make sure
Sign setup
You can also use signs to let players join to the arena. Your sign should look something like this:
Line | Content |
---|---|
1 | [BlockParty] |
2 | [arenaName] |
3 | |
4 |
Replace [arenaName] with your arena name.
Customize your sign messages
Head over to your config.yml in the plugins/BlockParty/
folder. You can edit the used text that is displayed on the sign right there.
Permissions
- blockparty.admin
- This provides access to all BlockParty commands (/bp admin)
- blockparty.user
- This provides access to basic BlockParty commands (/bp help)
@Leon167
Multiple arenas are not supported! :) Try to create 2 arenas and ask for some players to play at the same time. All players (from arena1 and arena2) will be teleported to the SAME arena. Eventually, the first arena will stop working (arena1) and only arena2 will work.
Now what features work?
@Leon167
any command
@Jackiedk100
Please create a ticket for error logs or problems next time!
Check your floor size.
[21:59:45] [Server thread/WARN]: [BlockParty] Task #572 for BlockParty v0.9.2 generated an exception java.lang.NullPointerException at com.lekohd.blockparty.floor.FloorBlock.givePlayer(FloorBlock.java:129) [?:?] at com.lekohd.blockparty.level.Period.start(Period.java:182) [?:?] at com.lekohd.blockparty.level.Period$2.run(Period.java:361) [?:?] at org.bukkit.craftbukkit.v1_8_R2.scheduler.CraftTask.run(CraftTask.java:71) [spigot_server.jar:git-Spigot-2f787bd-ea28011] at org.bukkit.craftbukkit.v1_8_R2.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [spigot_server.jar:git-Spigot-2f787bd-ea28011] at net.minecraft.server.v1_8_R2.MinecraftServer.A(MinecraftServer.java:718) [spigot_server.jar:git-Spigot-2f787bd-ea28011] at net.minecraft.server.v1_8_R2.DedicatedServer.A(DedicatedServer.java:368) [spigot_server.jar:git-Spigot-2f787bd-ea28011] at net.minecraft.server.v1_8_R2.MinecraftServer.z(MinecraftServer.java:651) [spigot_server.jar:git-Spigot-2f787bd-ea28011] at net.minecraft.server.v1_8_R2.MinecraftServer.run(MinecraftServer.java:554) [spigot_server.jar:git-Spigot-2f787bd-ea28011] at java.lang.Thread.run(Thread.java:745) [?:1.7.0_75]
Now what features work?
@Artemuidak
Which command?
After the game the players are not running the command
@epicbananaboss1
Everything is listed here
@Leon167
You can give me all changelogs?
@JayRayHay
Please create a ticket with all information.
@epicbananaboss1
Multiple arenas are already supported.
Now supports multiple arenas? What is the full changelog ?
@xion87
Required:
Optional:
which plugin are required now?
@Milkyway705
Fixed in 0.9.2.1
0.9.2 signs are not work
@reschiram
Yes ->Setup signs<-
does this plugin include join-sing?
CPx1989 can give us a release date? Or tell us about how it will take roughly
@Milkyway705
It is only up when testing but since I have other daily activities I chose to shut it down and develop locally