HomeJavaModsBowSpleef
ModsJava

BowSpleef

MySQL/QLite | Bungee/MultiArena | Achievements | Shop | Leaderboards | 1.8-1.21 |. Free Minecraft Java mod for 1.8, 1.12, 1.13.

⬇ Download on Spigot
[​IMG]

[​IMG]

Bugs
Do not use the rating area to report bugs or request features. Please go to discussion.

Dependencies
HolographicDisplays (optional):

Arena Restore System.
There are two restore system types.

Per World Arena (Config -> Advanced.Per-World-Arena)

If set to true, each arena will be a world. This will make so arenas will reset a lot faster, and no risks of restoring problems.

Normal Restore System
You will be able to create multiple arenas per world, with this you can tweak some options:

Restore-Task-Delay-Delay: '1' -> Defines the task delay, X
Blocks-Per-Iterator: '10' -> The amount of blocks that will be placed per X ticks

This restore system is slower and if your server crashes while the arena is restoring you may have to replace the TNTs. This system works with server shutdowns, if you server shutdown during a game or during the restoring process it should still restore the arena, but there's no way to detect crashes so just a warning.

Bungee Systems
If you want to run multiple game instances on a Bungee Server, set Multiple-Games-Per-Bungee-Server to true. You'll need to have multiple arenas on that server for the system to work.

There's no sign system for this just yet, it's planned for the future, meanwhile you can use the API (see below) to access the game and get data from the server.

ParticleEffects (for trails and effects)
Spoiler: ParticleEffects 1.8-1.12
Code (Text):
There is more particles than that, to avoid issues we're working with:

EXPLODE
LARGEEXPLODE
HUGEEXPLOSION
FIREWORKSSPARK
CRIT
MAGICCRIT
SMOKE
LARGESMOKE
SPELL
INSTANTSPELL
MOBSPELL
WITCHMAGIC
DRIPWATER
DRIPLAVA
HAPPYVILLAGER
ANGRYVILLAGER
NOTE
PORTAL
ENCHANTMENTTABLE
FLAME
FOOTSTEP
CLOUD
REDSTONE
SNOWBALL
SNOW_SHOVELD
SLIME
HEART
LAVA
 

For 1.13+, check HERE.

[​IMG]

Player commands

Manager commands

Others:

Creating an arena below.

[​IMG]
Arena setup
Required permission: bs.admin
First of all set global spawn using /bs setgspawn
  1. Create your arena - /bs create <name>
    1. BowSpleef will create a empty world and teleport you the map.
    2. If you already have a world with the name of the arena on the server root, BowSpleef will load the world and teleport you to setup the arena. (Note: Don't load the world with any world plugin or BowSpleef will not able to delete them)
  2. Set arena lobby - /bs setLobby <name>
    1. Set the location where players will be teleported after joining.
  3. Add spawn - /bs setSpawn <name>
    1. Set the location where players will be teleported after game starts.
  4. Add Arena Bounds - /bs setBounds <name>
    1. IMPORTANT! Use /bs wand to get the selection tool.
    2. You don't need to select the whole arena, just where the TNTs are, but if you arena has multiple floors you should select the arena.
    3. You don't need to use this command if you are using Per World Arenas.
  5. Add Spectator Spawn /bs setSpectatorSpawn <name>
  6. Set min players - /bs setMinPlayers <name> <amount>
  7. Set max players - /bs setMaxPlayers <name> <amount>
  8. Finish the arena with - /bs finish <name>
    1. Loads/reloads the arena, you need to use this command after editing or creating a map.

[​IMG]
Item Config
Code (Text):
Normal item "MATERIAL : AMOUNT"
Item with data "MATERIAL:DATA : AMOUNT"
Item with enchantment "MATERIAL : AMOUNT : enchant:ENCHANT_NAME:LEVEL"
Item with name and/or lore "MATERIAL : AMOUNT : name:name :
lore:lore"
Item with color: "ID : AMOUNT : dye:COLOR"
 
You can combine all those type of items however you want.

Placeholders
PlaceholderAPI

Others placeholders can be found in settings.yml.

Extra permissions

Join Sign

  1. [BowSpleef]
  2. join
  3. ArenaName
Leaderboard Hologram (HolographicDisplays)
Placeholder: {bowspleef_wins_position}
Placeholder: {bowspleef_shots_position}
Shop

You can buy trails, effects, double jump and triple shots! If you leave the game after purchasing a triple shot or a double jump before the game starts you will receive your money back.

Trails & Effects config

Screenshots
Spoiler: All Screenshots
[​IMG]
[​IMG]
[​IMG]
[​IMG]
[​IMG]

Files
Spoiler: Options File
Code (Text):
# ##### Important options in configuration #####
# Storage.Type: Types -> MYSQL, SQLITE
# Storage.Update-Interval: Interval (in minutes) to send a updated version of all the player data to your DB.
#
# Advanced.Advanced-Restore:  If enabled, THE WORLD WILL BE DELETED and recreated from a backup at maps folder.
# Advanced.Iterator-Delay: De delay between the block place -> 50 Blocks Per Iterator * 5 ticks Iterator Delay = 200 blocks placed per second.
Locations:
  spawn: ''
System:
  debug: 'false'
Advanced:
  Restore-Task-Delay-Delay: '1'
  Blocks-Per-Iterator: '15'
  Per-World-Arena: 'false'
Storage:
  Type: SQLite
  MySQL:
    Host: localhost
    Port: '3306'
    User: user
    Password: '123456'
    Database: database
  Update-Interval: '5'
Options:
  Leaderboard:
    Enabled: 'true'
    Data-Limit: '10'
    Refresh-Rate: '25'
  Bungee:
    Enabled: 'false'
    Lobby-Server: lobby
    Server-Name: bowspleef1
  Titles:
    Fade-In: '8'
    Stay: '28'
    Fade-Out: '5'
  Save-Inventory: 'true'
  Disable-Shop: 'false'
  Trails-Enabled: 'true'
  Arrow-Effects:
    Enabled: 'true'
  Double-Jump-Enabled: 'true'
  Triple-Shot-Enabled: 'true'
  Per-Game-Double-Jump: '2'
  Double-Jump-Limit: '5'
  Per-Game-Triple-Shot: '3'
  Triple-Shot-Limit: '5'
  Trails:
    Stop-Particles-When-Looking-Up: 'true'
    Stop-Particles-When-Invisible: 'false'
    Per-Player-Particle: 'false'
  Multiple-Games-Per-Bungee-Server: 'false'
  Offline-Mode: 'false'
  Join-While-Starting: 'true'
  Disable-Spectator: 'false'
  Use-Spectator-Game-Mode: 'true'
  Use-Vault: 'false'
  Double-Jump-Multiply-Forward: '1.5'
  Double-Jump-Multiply-Y: '0.8'
  Time-After-Game: '8'
  Economy:
    Coins-Per-Win: '250'
    Coins-Per-Player-Death: '5'
    Coins-For-Participation: '50'
  Game:
    Pre-Start-Countdown: '35'
    Game-Length: '600'
    Grace-Period: '10'
  Whitelisted-Commands:
  - bs
  - tell
  - r
Items:
  Spectator-Item: 'COMPASS : 1 : name:&7Players'
  Spectator-Item-Slot: '0'
  Arena-Item: 'EMERALD_BLOCK : 1'
  Join-Arena-Item: 'EMERALD_BLOCK : 1'
  Leave-Item:
    Type: 'BED : 1 : name:&cLeave'
    Slot: '8'
  Shop-Item:
    Type: 'EMERALD : 1 : name:&eShop'
    Slot: '4'
Sounds:
  Double-Jump: ENTITY_BAT_LOOP:0.2
  Grace-Time: UI_BUTTON_CLICK:1
  Purchase-Sound: ENTITY_PLAYER_LEVELUP:2
Rewards:
  Win-Commands:
  - eco give %player% 100
  Second-Place:
  - eco give %player% 50
  Third-Place:
  - eco give %player% 25
Shop:
  Settings:
    Items:
      Double-Jump-Slot: '0'
      Triple-Shot-Slot: '2'
  Effects-Slot: '6'
  Trail-Slot: '8'
  Balance-Slot: '4'
  Main-Shop-Rows: '1'
  Effects-Rows: '6'
  Trails-Rows: '6'
  Double-Jump-Price: '500'
  Triple-Shot-Price: '750'
  Double-Jump-Name: '&7Double Jump'
  Double-Jump-Lore:
  - '&eUse your double jump to scape from death!'
  Triple-Shot-Name: '&7Triple Shot'
  Triple-Shot-Lore:
  - '&eLeft click to shot triple arrows!'
Menus:
  Trails:
    No-Permission-Item: 'BARRIER : 1'
    Locked-Item: 'RED_STAINED_GLASS_PANE : 1'
 

Spoiler: Language File
Code (Text):
Messages:
  Permission: '&cNo permission!'
  Server-Loading: '&cPlease try again in 3 seconds!'
  Item-Selected: '&aItem %item% &aselected!'
  Bow-Name: '&aBowSpleef''s Bow'
  Data-Still-Loading: '&cYour data is still loading, try again!'
  Permission-To-Buy: '&cNo permission to unlock this item!'
  Join: '&7%player% &ejoined the game. (&7%players%&e/&7%maxplayers%&e)'
  Left: '&7%player% &eleft the game. (&7%players%&e/&7%maxplayers%&e)'
  Already-Started: '&cThis game already started!'
  Restoring-Period: '&cThis game is restarting, please wait...'
  Already-InGame: '&cAlready playing!'
  Game-Is-Full: '&cThis game is full!'
  Game-Error: '&cAn unexpected error has occurred.'
  CannotSpectate: '&cYou cannot spectate this game right now.'
  CannotSpectatePlayer: '&cYou cannot spectate this player right now.'
  Game-Not-Found: '&cNo game found, you are now on the Queue to play.'
  Not-In-Game: '&cYou can only do that while playing BowSpleef!'
  Player-Eliminated: '&7%player% &ewas eliminated! %alive% player(s) left.'
  Eliminated: '&cEliminated! &7You''re now on spectator mode.'
  Already-Purchased: '&cYou already have this or a better shovel!'
  Shovel-Selected: '&aShovel selected!'
  Starting: '&eThe game starts in &b%time% &eseconds.'
  Grace-Period: '&eThe Grace-Period ends in &b%time% &eseconds!'
  Game-Started: '&e&lGame started! Goodluck!'
  Successfully-Purchased: '&aYou successfully purchased item &afor &c%cost%&a.'
  Money-Back-Info: '&aYou got your money back because you left from the game before
    the start!'
  Enough-Money: '&cYou don''t have enough money to buy this!'
  Balance: '&7&lBalance: &6&l%balance%'
  Win: '&7%player% &ewon the game!'
  Nobody: '&7Nobody'
  CommandFailed: '&cYou cannot use commands while playing BowSpleef!'
  Countdown-Canceled: '&cNot enough players to start the game, countdown &lCANCELED.'
  Game-Canceled: '&cGame canceled by an Administrator.'
  Achievement:
  - '&7&m---------------&7[&6&lACHIEVEMENT&7]&m---------------'
  - ' '
  - '%name% - %description%'
  - ' '
  - '&7&m----------------------------------'
  Game-End:
  - '&2&m-------------------&r'
  - ' '
  - '&7Winner: - &b%winner%'
  - '&7Earned coins: - &b%coins%'
  - ' '
  - '&2&m--------------------&r'
  Player-Stats:
  - '&7&m---------------&7[&c&lBowSpleef STATS&7]&m---------------'
  - ' '
  - '&8Games Played: &b%games_played%'
  - '&8Wins: &b%wins%'
  - '&8Losses: &b%losses%'
  - '&8Shots: &b%broken_blocks%'
  - '&8Balance: &b%balance%'
  - ' '
  - '&7&m----------------------------------'
  Data-Invalid: '&cFailed to load data.'
  Waiting-For-Data: '&7Waiting...'
  Chat:
    Format: '&7%displayname%: &f%message%'
    Spectator-Format: '&7[SPECTATOR] &7%displayname%: &f%message%'
  Placeholders:
    None: '&7none'
  Titles:
    Titles:
      Player-Eliminated: '&b%player%'
      Grace-Time: ''
    Subtitles:
      Player-Eliminated: '&7has eliminated!'
      Grace-Time: '&c&l%time%'
  DoubleJump-Limit: '&cYou cannot buy more than %limit% double jumps!'
  TripleShot-Limit: '&cYou cannot buy more than %limit% triple shots!'
  Spectator:
    Menu-Name: '&7Players'
    Game-Name: '&7Games'
    Item-Lore: '&7Click to spectate!'
  JoinMenu:
    Menu-Name: '&7Players'
    Game-Name: '&7Games'
    Item-Lore: '&7Click to play!'
  Shop:
    Name: '&7BowSpleef Shop'
    Effects-Name: '&7Effects Shop'
    Trails-Name: '&7Trails Shop'
    Effects:
      Name: '&bEffects (Click to open)'
      Lore:
      - '&eBuy in-game particles!'
    Trails:
      Name: '&bTrails (Click to open)'
      Lore:
      - '&eBuy in-game arrow particles!'
    Balance:
      Name: '&7Total coins: &6%balance%'
    Balaance:
      Lore:
      - ''
    MoneyName: Coins
  Sign:
    Line:
      '1': '&7[&cBowSpleef&7]'
      '2': '%state%'
      '3': '%mapname%'
      '4': '%players%/%maxplayers%'
    Auto-Join:
      Line:
        '2': '&8Auto-Join'
        '3': ' '
        '4': '&8%allPlayers% PLAYING'
    State:
      Waiting: '&aWAITING'
      Starting: '&6STARTING'
      InGame: '&cIN GAME'
      Ending: '&4ENDING'
      Restoring: '&8RESTORING'
  Motd:
    State:
      Waiting: '&aWAITING'
      Starting: '&6STARTING'
      InGame: '&cIN GAME'
      Ending: '&4ENDING'
      Restoring: '&8RESTORING'
Scoreboard:
  Lobby-Title: '&e&lBOW SPLEEF'
  Lobby-Format:
  - ' '
  - '&fMap: &a%mapname%'
  - '&fPlayers: &a%players%/%maxplayers%'
  - '&fNeeded: &a%minplayers%'
  - ' '
  - '&fState: %capitalize_state%'
  - ' '
  - '&fBalance: &a%balance%'
  - ' '
  - '&fyourserver.com'
  Game-Title: '&e&lBOW SPLEEF'
  Game-Format:
  - '&7Time Left: %formatted_time_left%'
  - ' '
  - '&fDouble Jumps: &a%double_jumps%'
  - '&fTriple Shots: &a%triple_shots%'
  - ' '
  - '&fAlive Players: &a%alive%'
  - ' '
  - '&fShots Fired: &a%shots_fired%'
  - '&fCoins: &a%earned_coins%'
  - ' '
  - '&fyourserver.com'
Leaderboard:
  Messages:
    Wins-Format: '&e%position%. &b%player% &7- &e%wins% &7wins'
    Shots-Format: '&e%position%. &b%player% &7- &e%shots% &7shots'
 

Spoiler: Trails
Code (Text):
'1':
  name: '&cFirework Arrow'
  permission: bs.trails.unlock.firework
  buyPermission: bs.trails.firework
  particles: FIREWORKS_SPARK
  menuItem: 'FIREWORK : 1'
  lore:
  - '&eDisplays firework particles on your arrows!'
  buyCommands:
  - pex user %player% add %permission%
  price: 18000
  slot: 11
'2':
  name: '&cLove Arrow'
  permission: bs.trails.unlock.love
  buyPermission: bs.trails.love
  particles: HEART
  menuItem: 'RED_ROSE : 1'
  lore:
  - '&eDisplays heart particles on your arrows!'
  buyCommands:
  - pex user %player% add %permission%
  price: 12000
  slot: 12
'3':
  name: '&cMusic Arrow'
  permission: bs.trails.unlock.music
  buyPermission: bs.trails.music
  particles: note
  menuItem: 'NOTE_BLOCK : 1'
  lore:
  - '&eDisplays note particles on your arrows!'
  buyCommands:
  - pex user %player% add %permission%
  price: 15000
  slot: 13
'4':
  name: '&cExplosive Arrow'
  permission: bs.trails.unlock.explosion
  buyPermission: bs.trails.explosion
  particles: EXPLOSION_NORMAL
  menuItem: 'TNT : 1'
  lore:
  - '&eDisplays explosion particles on your arrows!'
  buyCommands:
  - pex user %player% add %permission%
  price: 50000
  slot: 15
'5':
  name: '&cWater Arrow'
  permission: bs.trails.unlock.water
  buyPermission: bs.trails.water
  particles: DRIP_WATER
  menuItem: 'WATER_BUCKET : 1'
  lore:
  - '&eDisplays drip water particles on your arrows!'
  buyCommands:
  - pex user %player% add %permission%
  price: 15000
  slot: 14
'6':
  name: '&cBlizzard Arrow'
  permission: bs.trails.unlock.blizzard
  buyPermission: bs.trails.blizzard
  particles: SNOWBALL
  menuItem: 'SNOW_BALL : 1'
  lore:
  - '&eDisplays snowball particles on your arrows!'
  buyCommands:
  - pex user %player% add %permission%
  price: 12000
  slot: 16
'7':
  name: '&cLava Arrow'
  permission: bs.trails.unlock.lava
  buyPermission: bs.trails.lava
  particles: DRIP_LAVA
  menuItem: 'LAVA_BUCKET : 1'
  lore:
  - '&eDisplays drip lava particles on your arrows!'
  buyCommands:
  - pex user %player% add %permission%
  price: 10000
  slot: 19
'8':
  name: '&cFlame Arrow'
  permission: bs.trails.unlock.flames
  buyPermission: bs.trails.flames
  particles: FLAME
  menuItem: 'BLAZE_POWDER : 1'
  lore:
  - '&eDisplays flames particles your on arrows!'
  buyCommands:
  - pex user %player% add %permission%
  price: 20000
  slot: 10
 

Spoiler: Effects
Code (Text):
'1':
  name: '&cRedstone'
  permission: bs.unlock.redstone
  buyPermission: bs.redstone
  particles: REDSTONE
  menuItem: 'REDSTONE_BLOCK : 1'
  helmet: 'REDSTONE_BLOCK : 1'
  lore:
  - '&eDisplays redstone particles in-game!'
  - '&eGives you a cosmetic redstone block helmet!'
  buyCommands:
  - pex user %player% add %permission%
  price: 18000
  slot: 11
  rotateParticles: false
'2':
  name: '&cLover'
  permission: bs.unlock.love
  buyPermission: bs.love
  particles: HEART
  menuItem: 'RED_ROSE : 1'
  helmet: 'GOLD_HELMET : 1'
  lore:
  - '&eDisplays heart particles in-game!'
  - '&eGives you a cosmetic gold helmet!'
  buyCommands:
  - pex user %player% add %permission%
  price: 16000
  slot: 12
  rotateParticles: true
'3':
  name: '&cMusic Lover'
  permission: bs.unlock.music
  buyPermission: bs.music
  particles: NOTE
  menuItem: 'NOTE_BLOCK : 1'
  helmet: 'NOTE_BLOCK : 1'
  lore:
  - '&eDisplays note particles in-game!'
  - '&eGives you a cosmetic noteblock helmet!'
  buyCommands:
  - pex user %player% add %permission%
  price: 14000
  slot: 13
  rotateParticles: true
'4':
  name: '&cAngry'
  permission: bs.unlock.angry
  buyPermission: bs.angry
  particles: VILLAGER_ANGRY
  menuItem: 'JACK_O_LANTERN : 1'
  helmet: 'JACK_O_LANTERN : 1'
  lore:
  - '&eDisplays note particles in-game!'
  - '&eGives you a cosmetic jack o''lantern helmet!'
  buyCommands:
  - pex user %player% add %permission%
  price: 12000
  slot: 14
  rotateParticles: true
'5':
  name: '&cFireworks'
  permission: bs.unlock.firework
  buyPermission: bs.firework
  particles: FIREWORKS_SPARK
  menuItem: 'FIREWORK : 1'
  helmet: 'IRON_HELMET : 1'
  lore:
  - '&eDisplays note particles in-game!'
  - '&eGives you a cosmetic iron helmet!'
  buyCommands:
  - pex user %player% add %permission%
  price: 10000
  slot: 15
  rotateParticles: true
'6':
  name: '&cWater'
  permission: bs.unlock.water
  buyPermission: bs.water
  particles: DRIP_WATER
  menuItem: 'WATER_BUCKET : 1'
  helmet: 'CHAINMAL_HELMET : 1'
  lore:
  - '&eDisplays note particles in-game!'
  - '&eGives you a cosmetic chain helmet!'
  buyCommands:
  - pex user %player% add %permission%
  price: 8000
  slot: 16
  rotateParticles: true
'7':
  name: '&cCloud'
  permission: bs.unlock.cloud
  buyPermission: bs.cloud
  particles: CLOUD
  menuItem: 'SNOW_BLOCK : 1'
  helmet: 'SNOW_BLOCK : 1'
  lore:
  - '&eDisplays note particles in-game!'
  - '&eGives you a cosmetic snow block helmet!'
  buyCommands:
  - pex user %player% add %permission%
  price: 8000
  slot: 19
  rotateParticles: true
'8':
  name: '&cFlames'
  permission: bs.effects.unlock.flames
  buyPermission: bs.effects.flames
  particles: FLAME
  menuItem: 'DIAMOND_HELMET : 1'
  helmet: 'DIAMOND_HELMET : 1'
  lore:
  - '&eDisplays flames particles in-game!'
  - '&eGives you a cosmetic diamond helmet!'
  buyCommands:
  - pex user %player% add %permission%
  price: 20000
  slot: 10
  rotateParticles: true
 

API
Events: GameStartEvent, GameEndEvent
Methods:
Code (Java):
GamePlayer getPlayerData (Player bukkitPlayer ) ;
GamePlayer getPlayerData ( String name ) ;
GamePlayer getPlayerData (UUID uuid ) ;

Game getGame ( String name ) ;
Game getGame (GamePlayer fromPlayer ) ;

void saveData (Player... p ) ;
void updateLeaderboards ( ) ;

List <LeaderboardManager. LeaderType. LeaderData > getTopData (LeaderboardManager. LeaderType type )

LeaderboardManager. LeaderType. LeaderData getOfflineData (LeaderboardManager. LeaderType type )
 
There are some planned features for the future, meanwhile you can check Splegg for a similiar game. Also check Wizards, SpeedRun and Dragons, which are my premiums resources and I can give a better support for them.

By downloading BowSpleef you agree to
Like the plugin? Consider donating!

Commands

Plugin details

Read from the plugin's own plugin.yml.

BowSpleef is a free Minecraft Java mod. Compatible with Minecraft 1.8, 1.12, 1.13, 1.16 and newer. Downloaded 4,858 times (via Spigot). Download it and open it directly in the game.

Explore more