BlockShuffle Minigame

This project is abandoned and its default file will likely not work with the most recent version of Minecraft. Whether this project is out of date or its author has marked it as abandoned, this project is no longer maintained.

Warning: This project is experimental. Its files will not synchronize across the CurseForge network.

My implementation for the "Block Shuffle" minigame as seen in this video.
Original creator/inspiration for my implementation can be found: here 


Source code can be viewed on GitHub

Notes:
- When a match is started there is a grace period of x amount of minutes before the first round starts.
This value can be changed in the configuration file

- All players that have joined the game have x amount of time to find the block assigned to them.

- Players need to stand on their assigned block in order to win a round.
- If a player does not find their block within the given time, they will lose a round and lose max health (up until 1 health, which is half a heart)

- If a player wins a round their max health increases slightly (up to the default max health)
- The chance of players getting a "rare" block increases every round

Commands:
The commands for this should all be prefixed by "/blockshuffle"

- start [first-round-time:opt] [min-round-time:opt] [num-rounds:opt]
Starts a match.
Parameters:
  - first-round-time: The time the first round lasts in minutes
  - min-round-time: The shortest possible time for a round
  - num-rounds: The number of rounds that will be played
Examples:
  - /blockshuffle start 15 5 7
This will start a match that has a first round time of 15 minutes, a shortest round time of 5 minutes and lasts 7 rounds.
  - /blockshuffle start
This will start a match where the first round time, shortest round time and number of rounds will be read from the config.

- stop
Stops the current match.
Example:
  - /blockshuffle stop

- block
Tells the player that executes the command what their current target block is.
Example:
  - /blockshuffle block

- join
Join a match that is currently in progress.
Example:
  - /blockshuffle join

- timeleft
Tells the player that executes the command how much time there is left in the current round.
Example:
  - /blockshuffle timeleft

 

Config
When the plugin is first loaded a config.yml file will be created.
The first four variables kind of speak for themselves, however, the fifth variable "whitelisted-blocks" is a tad bit more complicated.
This variable is an array of blocks that the game can pick from. Each block has two separate variables "block" which is the name of the block and "weight" which indicates the chance a block will be given to a player. The higher the weight, the likelier it is to be given to a player!


Comments

Posts Quoted:
Reply
Clear All Quotes

About This Project

  • Project ID
    385611
  • Created
    May 24, 2020
  • Last Released File
    May 24, 2020
  • Total Downloads
    453
  • License

Categories

Members

Recent Files

Bukkit