I've been informed of a bug in which players could fire their bows by pressing Q as if they were trying to drop the item. However, it seems some people actually like this. So, I've decided to make it an optional feature. By default, it will be disabled, but you can enable it by changing the config value dropToFire from false to true.
In the config.yml there are now settings to enable AimAssist and QuickFire, as well as customize them to your liking. By default, both will be disabled.
AimAssist tries to identify which opponent a player is targeting and adjusts the trajectory of their arrow to help them aim. The new aimAssistTolerance value defines how accurate (in degrees) a player's aim has to be before AimAssist will help them. aimAssistStrength is a value between 0 and 1 which determines how much of the arrow's final velocity will come from the player's aim and how much will come from AimAssist.
QuickFire will let players fire their bows much faster than in vanilla Minecraft without loosing the arrow's speed. You can determine how fast arrows fired by QuickFire will be with the autoFireArrowSpeed value in the config.
Hey!
Today I added some more options to the config. You can now separately set how long FFA and Teams games will run (default to 300 seconds). You can also change which type of block will behave as a jump pad(default is slime block), and you can set the strength of the jump pad.
Also, the plugin will save the contents of your inventory as your are joining a game and will return the items to you when the game ends.
Looking toward the future, I've got a few possible improvements in mind. Sorted by how soon I expect to add them.
1. More than 2 teams in Teams mode
2. Custom team names and colors
3. Spectator mode
4. Rather than selecting all players in the world, only players who opt in will be placed in the game (maybe with a join command)
5. Multiple arenas (maybe a voting system to select a map)
6. Multiple games running at one time.
If /ffastartgame or /teamsstartgame is executed by a player, the plugin will check what world the player is in. If that world is not the world assigned to the plugin in the config file, then the game will not begin.