StrikePractice – 1v1, 2v2, Bots Fights, PvP Events, Parties, Build fights and more icon

StrikePractice – 1v1, 2v2, Bots Fights, PvP Events, Parties, Build fights and more -----

Customizable and affordable practice plugin with many features!




This update may contain some breaking changes to some gamemodes:
- Explosions now follow /battlekit extramaterials. Meaning that arena won't explode unless players could also break them by hand (which requires the blocks to be added in /battlekit extramaterials)
- "/battlekit bedwars" now works differently than "/battlekit bridge|mlgrush". Make sure these gamemodes still work (see /battlekit info and make sure "deathcooldown" is enabled for gamemodes where there should be a cooldown and "bestofreset" is enabled if the arena should reset between rounds)

You can wait a while before updating if you want to make sure it does not break anything.

New stuff:

- Make block explosions follow extramaterials (POSSIBLY BREAKING CHANGE!! Add the blocks you want to be breakable by explosions)
- Added command /battlekit shootfireballs <kit> (allow shooting fireballs, see "fireball" in the config.yml)
- Added command /battlekit autotnt <kit> to automatically ignite TNT
- Added command /battlekit nofalldamage <kit> (to disable fall damage)
- Real bedwars, kill after breaking bed (/battlekit bedwars)
- Changed /battlekit mlrush|bridge (and help info) because they no longer work like /battlekit bedwars
- Added alias commands: /duel requests and /duel settings
- Added placeholders <win_streak>, <win_streak_kit> (only with SQL database) and <opponent_rank>
- Added botfight#getBots method in the developer API
- Added enderpearl-cooldown.modify-exp-level configuration
- Added RoundEndEvent for winners/losers in the developer API
- Added PartyJoinEvent, PartyLeaveEvent, and PartyInviteEvent in the developer API
- Added respawn-countdown-time for separate death countdown duration
- Added support for async-teleport (this was in some very old versions but was removed)
- Added /surrender command (pretty much same as StrikeSurrender addon)
- Added snowball on snow block break in spleef (snowball-on-snow-break in the config)
- Added copied arenas for FFA (use-copied-arena-for-ffa in the config)
- Allow windcharge explosion in non-build kits
- Improved TNT experience and Fireball functionality
- Make /battlekit extramaterial support newer items
- Make messages work as a list too (easier to add multiline messages)
- Better support for newer Minecraft versions (1.21.1)

Fixes:
- Fixed command "/battlekit extramaterials <kit> all"
- Fix: make block below water unbreakable if part of the map
- Fixed issue with resetting beds placed by players
- Fixed error with <wlr> placeholder while loading
- Fixed renaming newer items in hand
- Fixed kit editor not using correct location for countdown.
- Fixed bridge and insta void not respawning in the bridge gamemode
- Fixed extra bedwars check for player online and fight status
- Fixed error with bedwars colored items
- Fixed double scoring in bridge gamemodes
- Fixed improper handling of block breaking
- Fixed projectile explosion issues and windcharge explosion

Other:
- Removed unused code etc.
- Small overall optimizations and refactoring
- Minor corrections (e.g., typos) and cleanup
----------, Sep 28, 2024

Thanks to iiAhmedYT for their contributions!

More new things are available in dev builds on Discord!
https://discord.gg/SkFbkgg

- Fixing paper 1.20.6 remapping
- Improve paper 1.20.5+ compability
- Initial support for 1.20.5 & 1.20.6 (1_20_R4)
- Fix color support for placeholders
- Fail siltently when setting 1.8 inventories
- Clearing crafting/cursor item when clearing inventory
- Improved how NPC (bot) data is saved
- Other minor improvements to bots/NPCs
- Improved performance by refactoring how healthbars are removed
- Fixed brackets arena sometimes not being available when a round starts
- Added separate option "disable-lobby-teleport" to completely disable SP from teleporting to spawn
- Fixed a bug caused by update checks not having a timeout
- Fixed plugin not enabling if citizens doesn't work
- Fixed blocks below water being breakable even if the bloc kwas part of the map
- Fixed SP API#forcewin with party vs party
- Fixed errors related to scoreboard scores and some spigot versions
- Fixed party friendly fire when player damages themselves
- Improved how /battlekit stickspawn checks for y coordinate changes
- Bunch of internal refactoring and other work was done :)
----------, Jun 9, 2024

Possibly breaking change:
Previously explosions broke the arena blocks. Now that is fixed so you will need to add the arena blocks as breakable blocks with "/battlekit <kit> [material or hold it in your hand]" so that explosions (TNT and crystals etc.) will break that material of the arena.

Also, it's recommended to always wait a while before updating in case you are afraid of breaking something :)

- Improved compatibility with newer materials, especially with /battlekit extramaterials command and related functionality
- Made brackets/sumo work even if in main arenas world
- Fixed issues related to damage events in the bridge/bedwars mode
- Refactored allowed blocks checking and fixed extramaterials issues
- Added debugging for block breaking
- Fix issue when error during fight would keep arena marked as in use
- Fixed some typos (Invanlid -> Invalid etc.)
- Made keep-arenas-loaded not crash if it fails for specific arena
- Fixed /battlekit types <kit> none showing in preview menu
- Added debugging for SQL based fight stats
- Allowed bots to receive kits even if inventories were disabled (i.e., on survival servers)
- Added warning log messages in case of invalid spawnitem names
- Fixed koth team placeholder not working (unless arena "koth" was available)
- Fixed autoReconnect for MySQL
- Reduce best of X round reset delays
- Fixed arena copypaste not copying new materials
- Improved stats SQL queries performance
- Added custom cache configuration for stats and fixed koth team placeholder
- Arena reset functionality to include more entities
- Added API method #respawnInFight and added Fight#hasStarted
- Unobfuscated Difficulty and SimpleFight in the API
- Other internal changes and refactoring
- Other minor fixes and changes
----------, Mar 17, 2024

This release has some nice new features, includes many fixes (and many related to the developer API) and some other minor changes.
The complete list of changes can be found below in a less readable format (sorry I was lazy)


Features:
- remove pearls immediately when one dies in a duel (or when the round ends)
- "duel-max-rounds for" /duel (20 default) to customize max rounds for duels
- 'spectator-keep-inside-arena' to force spectators to stay inside arenas
- possibility to decide gamemode for spectators (SURVIVAL by default)
- allow removing broadcast message
- trace debug logging (/sprac trace - not useful for most people unless you want to debug something more complex)
- added api#getLastSelectedEditedKit(Player) in the developer API
- debug log error when cooldown module failed to load
- add api#sendDuelRequest in the developer API
- made some command messages better
- added debug logging to "deleteeditedkits"
- update api (more in fixes section)
- added <is_in_queue> placeholders
- overall better debug logging

Fixes:
- ensure sync when giving spawn items (removed async item giving)
- Use autoReconnect=true by default for SQL databases
- added extra check to make sure the arena is available (for some reason the plugin would sometimes try to start a fight in an arena that was already in use when no other arenas were available - the "hacky" fix is for duels only though)
- fix: add Recordable in the API
- fix: bed break if newer material bed
- fixed blockdisappear in ffa arenas
- fixed lms event duration and arena displayname placeholders
- fix: ignore errors when setting biome
- fix: api#getQueuedKit not returning party queue kit
- fixed BotDuelEndEvent.WinnerType not being included in the API
- fixed RoundStartEvent#getPlayer2 although it was deprecated
- removed use of async inventory close
- fixed error on #forceEnd if reason is null
- check kit type in /queue <kit>
- made ffa fight players thread-safe
- fixed language items not being saved sometimes
- fix: send left-queue before actually left the queue for placeholders to work
- mark CitizensNPC as api class (even though it's kind of a bad decision but may help addon devs
- fixed bedwars materials not always changing
- unobfuscate DefaultCachedBlockChange
- mark multiple fight related things as @APIClass
- do not teleport to duplicate ffa arenas on /ffaarena
- /arena alerts not turning off debug logging
- keep DefaultPlayerStats unobfuscated for legacy reasons
- add short delay when forceEnding a fight due to error
- fixed prevent taking armor off in kit editor
- fixed deleting database keeping data.dat failing
- fixed some errors with kit editor
- error with koth capper 1.20
- made storm-wall-outside-arenas work with performance-mode
- fixed attempting to use long scoreboard lines on 1.13
- offline-player-stats was missing from config.yml, disabled by default
- API: do not obfuscate PlayerStats#CachedStatistic etc
- fix: error with CheckKitItemsHelper.java:54
- possibly fix some data migration, use "unknown" as fallback

Misc:
- refactor: minor refactor
- fix some dependencies and repositories (mainly for development)
- remove old references to /party open
- use HIGHEST priority in bedwars EntityDamageEvent, fixes compatibility with some other plugins
- Improved 1.20 (and other newer version) compatibility
----------, Jan 13, 2024

Fixes:
- Fixed /sprac placeholders
- Fixed top_elo_rank not displaying "(none)"
- Fixed placeholders in post match inventory message
- Fixed (hopefully) newer items (netherite etc.) support for kit editor abuse
- Fixed check for duplicate armor in inventory in kit editor
- Fixed automatically add fight_players#id and stats#id columns
- Fixed removing wrong item from bot's inventory (soup/gapple)
- Fixed difficulty selector item arrangement in multiple row inventories
- Fixed <in_ranked_queue> and <in_unranked_queue> and <in_ranked_fight>

New things:
- StrikePracticeAPI was finally updated: https://github.com/toppev/StrikePracticeAPI
- Added #loadPlayerKits(UUID) and #getPlayerKits(Player) in the API
- Some minor code cleanup etc. as always
----------, Jun 8, 2023

Fixes:
- 1.7 clients inventory message in one line instead of multiple
- Added better error logging if changelog fetching fails
- Fixed some bugs caused by asynchronous code when duel ends (opt back in with "async-match-end: true" for performance, not really recommended though)
- Fixed a bug where inventory message did not appear when the bot is killed
- Fixed a bug where players couldn't build in arenas without corners
- Fixed typo in ChangeLogFetcher (StrikeTab -> StrikePractice)
- Fixed custom-kit.replaces-kits not working (and added it back)
- Fixed <no_colors_kit> placeholder not working properly
- Fixed support for <arena> in koth/lms events and auto-disable the placeholder when not available
- Fixed spectating events being broken by config changes (by forcing wait-before-teleport to be at least 2 for spectators)
- Fixed some other placeholders not always working as intended
- Fixed some null pointer exceptions
- Fixed prevent-tool-dropping not working for netherite tools
- Fixed players not being able to use /juggernaut leave in the event
- Fixed /battlekit seticon not working with newer items
- Fixed fight-start-commands and fight-end-commands making texts (e.g., custom messages/titles) lower case
- Fixed being able to accept duel requests from players in kit editor
- Fixed events with auto-start ("start after X players") not start if player hosted (else it would start with the default kit)
- Fixed water inside fences and other water loggable blocks not resetting in arenas
- Fixed multiline messages not always in order
- Fixed bot name not showing in the death message (may still occur in some cases)
- Fixed multiple hex colors not working in messages (previously only the first one worked)
- Fixed players being teleported to lobby in events even if not supposed to be teleported
- Fixed bestof duels in bot fights not working properly when the bot is killed by damage
- Fixed some typos in the default config.yml

New features:
- Added #getPlayerSettings in the API
- It's now possible to make ffa instant /spawn by setting wait-before-leaving-ffa-arena: 0
- custom kits now support netherite armor
- custom kits now support newer items (e.g., netherite tools)
- Make /spec more editable (check the new config) and make spectator-teleport-title configurable (the teleport GUI title)
- Refactored (partially recoded) the scoreboard system
- Added support for unlimited scoreboard lines in 1.13+
- Players will now respawn in the arena instead of teleporting to spawn and back to the arena to spectate
- Only show custom kit in kit selector if player has strikepractice.customkit permission
- Reset arenas starting from the bottom up instead of randomly (this still doesn't make sand etc. reset properly)
- [display=<placehodler>] now works in messages too (let's you make, for example, separate message for ranked vs unranked fight/queue)
- Added "fight-start-message.party-bots" messages.yml option to customize the message
- Implemented ""/sprac trace" (for debugging, not really useful for normal use like "/sprac debug")

Misc:
- Increase default max block changes
- Refactoring of code and cleanup
- Better error handling in some cases
- Added quite a lot fo debug logging
- Maven exclusions for citizens
- Update some dependencies
- Removed some unused code and messages
- Add debug logging to KB module when it's not available on the server version
----------, May 7, 2023

Hot fix update
There was a problem with the post match inventory messages (because of changes in 3.7.1)

See 3.7.1 update for other changes
----------, Jan 20, 2023

- Fixed post-match inventory message lines sometimes being in incorrect order
- Fixed off hand item not changing color in bedwars
- Fixed some missing/incorrect things in /battlekit auto-completion
- Fixed "request-sent" message placeholders. Use <sender> and <target>.
- some improvements to (debug) logging
----------, Jan 20, 2023

Fixes
- Implement a hack to make colored wool/clay work (with /battlekit bedwars kits) on newer servers too
- Add /battlekit blockdisappear in the help command (as it was missing from there)
- Allow longer replay data in SQL database
- Minor experimental improvement to scoreboards
- Fixed plugin not enabling on 1.7 servers
- Fixed "/sprac debug" cancelling the teleportation in fight (this was a debugging method for which plugin teleports player from fight. It still exists but no longer cancels it)
- Fixed missing space in some command message

Features
- hex support to chat messages

Other changes
- Remove premade maps as they never even worked
- Clarify /sprac debug command messages
- Changed author Toppe5 -> Toppe
- Simple CI pipeline (#9) (this is just for development and automatic testing)
----------, Dec 26, 2022

New
- Added /battlekit blockdisappear <kit> <seconds>. Places blocks will disappear in X seconds when enabled. This was supposed to be released a while ago but I somehow forgot it so including it now in this minor update :oops:

Fixes
- Fixed custom golden head effects not working if "bridges-instant-golden-apples" was enabled
- 1.7 client nametags should work again even if scoreboard is disabled in the lobby world
----------, Dec 3, 2022

Improvements/Fixes
- Fixed incorrect check if a player has a totem in Best of X fights. Previously it did not make sure it was in their hand.
- Prevent arena creation below y=0 because players will die instantly
- Added <opponent_wins_circles> and <own_wins_circles> placeholders
- Fixed some issues with Discord fight webhooks - should be working fine now
- Fixed /sprac cancel (or the API method) not setting the fight state as ended resulting in the fight duration limit not being cancelled and players being teleported after the duration limit has been reached in the cancelled fight.
- Fixed a few typos
- Added more helpful logging and debug logging


Want to support further development & support of StrikePractice after all these updates since you purchased the plugin :)?
Check https://strikepractice.ga/donate
----------, Nov 19, 2022

- Added better debug to "/sprac placeholders" and Discord webhooks. If you have problems with these features, do "/sprac debug" to see more detailed errors now
- Allow players to pick up items after a fight has ended if "disable-inventory-modifications" is enabled
- Reverted the change of <player> placeholder in duel request messages, <player> is now the player who sent the request (same as <sender>). This was a bad change in 3.6.0 that broke how the messages should work.
- Added <target> in all "wants-duel" (and similar) messages. <target> is the player who was dueled.
----------, Oct 29, 2022

Fixes:
- Fixed KoTH team could be incorrect in API (#playersAreTeammates etc.)
- <wlr> placeholder incorrectly checking if wins/losses are supported
- <wlr> placeholder when player has not lost a fight yet
- Prevent entering duel if either of the player is in kit editor
- Show <ffa_rollback> value only in build FFA arenas
- Cancel fall damage during FFA arena reset only in build arenas
- Fixed wrong <player> placeholder value in duel "request-sent message"
- Fixed party duel request message sent multiple times to the target and not the other party members
- Fixed old fights migration not fixing inventories. Delete data.dat to fix if the web addon shows empty inventories for very old fights.

Features
- Added <queuetype> in waiting-for-duel message
- Added support to save replays in SQL database (if database is enabled). This makes the loading faster and memory footprint smaller and is a more elegant way to store replays. You can force file storage with "force-replay-file-storage: true". Any recorded replays will reset otherwise (but fights are still saved and won't affect player statistics)

For other developers:
- Added RoundEndEvent, deprecate some methods in RoundStartEvent
- Added #forceWinRound and #forceWinFight and deprecate #forceWin that works ike #forceWinRound

Misc:
- Updated dependencies and Kotlin version
- Refactored code quite a lot
----------, Oct 19, 2022

SEE 3.5.0 RELEASE NOTES BELOW THIS UPDATE

Fixes

- Fixed plugin not enabling without citizens (due to 3.5.0 Discord webhooks feature not being properly tested)
----------, Sep 10, 2022

SEE 3.5.0 RELEASE NOTES BELOW THIS UPDATE

Fixes

- Fixed botduel not being removable from Discord fight webhooks (it was accidentally left hard coded)
- Prevent players going to the end world if they are in a fight or spectating
----------, Sep 10, 2022

Features:
  • Discord webhooks to post fights into a discord channel (see "discord:" in the new config) and "discord-webhooks.json" to configure the message. NOTE: to enable discord webhooks, you will need to have citizens installed.
Code (Text):

discord:
  enable-webhooks: false
  # discord server settings -> integrations -> webhooks -> create new and copy the URL
  # paste the URL below and configure discord-webhooks.json
  fight-webhook-url: 'https://discord.com/api/webhooks/123'
  webhook-types:
    - ranked
    - unranked
  #- botduel
 
  • Refactored the plugin message system, you can now:
    • use any placeholder in any line
    • disable messages by making it empty ('') or 'false'
    • use any placeholder (that would work e.g., in score board) in messages
  • Support hex colors in almost all messages ("#ff0000")
  • Arrows automatically reload every 5 seconds if /battlekit bedwars is enabled and "bedwars-reload-arrows: true" (enabled by default)
  • Gapples heal instantly in the bridge gamemode (kit name contains "bridge", /battlekit info <kit>)
  • Improved new material support, newer items like netherite tools should work in more places now. The plugin still uses legacy materials due to compatibility.
  • <arena>, <kit>, <duration> etc. placeholders work in "fight-inventory-message"

Fixes
  • A fix to slowly falling bots has been implemented
  • Improved new material support, newer items like netherite tools should work in more places now. The plugin still uses legacy materials due to compatibility.
  • Fixed some API methods not working as expected
  • Fixed using ffa commands in kit editor
  • Fixed double hits in boxing (a bug in older mc/spigot servers)
  • Fixed players not being notified of reaching max-block-changes in fight
  • Fixed accessing chests in kit editor (/battlekit chestaccess) for some newer MC versions by increasing the inventory size
  • A few other minor fixes
----------, Sep 9, 2022

- Fixed some party queue/duel related minor issues
- Fixed Party FFA team placeholders (API users: fixed PartyFFA#playersAreOpponents returning everyone else on the server being an opponent)
- Fixed boxing double hits on broken spigots with more debug logging (at least I hope it got fixed)
- Fixed <enemy_team_left> placeholder off by one
----------, Jun 29, 2022

- Fixed latest citizens version breaking the pvp bots
- Fixed clicking leave queue item not working
- Added "cancel-explosions" option to allow explosions also outside arenas
- Added debug info to fix boxing double hits on broken spigot versions (possibly already fixed, untested)
- Relocated Kotlin libraries to avoid some issues
----------, Jun 12, 2022

- IMPORTANT: legacy-fight-format is now "false" by default. Make sure you have it in your config and set to true if you're using the old strike web addon (or other custom stuff relying on the database setup)
- Fixed hitting other players when best of fight is resetting
- Fixed clicking replay in post match inventory views while in fight/event
- Fixed enderpearl cooldown error [ #3]
- Fixed /sprac placeholders (broken in v3.4.3)
- Fixed a few other minor things (you probably won't notice anything at all)
- Added database.override-connection-url to fully customize the connection url. Advanced users could use this to use PostgreSQL for example (with some hacks needed)
----------, Apr 6, 2022

This update brings bunch of fixes. The devbuilds (available in discord to patreons) include more features.

Changes:
- clarified some config.yml values
- fixed some queue related minor things
- some more helpful /sprac debug logging
- fixed some previously broken pvp bot things (e.g., bestof)
- fixed changelog not clearing each update check resulting in duplicate changelog messages
- make spectator menu show fight player instead of based on distance, if possible
- fixed some typos
- fixed fight duration limit showing nothing instead of automatic coloring
- made some changes to the built in maps, they may work now (though they are not recommended)
- clarified usage of some /battlekit commands
- removed unnecessary code/functionalities (trust me, you certainly did not use them)
- changed some default texts, command outputs etc
- added some helpful logging if the lobby is invalid
- made bots die faster in sumo
- added features_enabled bStats chart for future use
- removed enderpearl related optimization that caused more problems, no longer pearling after a fight even if the cooldown is 0
- ignore y coords in teleport-debug mode
- fixed elo modifier not working properly
- added BlockExplodeEvent support, more explosions happening inside arenas (see /arena corner1 <arena> and /arena corner2 <arena>)
- fixed some ffa related issues
- prevent teleporting to kit editor in queues, events etc
- minor clenaup and internal refactoring
----------, Feb 15, 2022

- Fixed the previous update causing players being not able to build on top of wood. (The log stripping prevention caused this).
- Fixed a weird spectator bug caused by "ffa-rejoin-automatically". If it still happens disable that setting in the config.yml
- Minor internal clean up
----------, Dec 18, 2021

Features
- configurable elo modifier with "elo-change-modifier" in config.yml

This update does not bring other new features, the "devbuild" version on Discord has more features, check here for what you're missing: https://discord.gg/jB4cPv3hpm


Fixes
- placeholders 10th "none" is not displayed
- random null pointer with legacy saved fights
- move preloading of duels to avoid conflicts with arenas
- bedwars/bridge broke
- lower ffa command listener priority so it is not blocked
- make kit potion effects less buggy sometimes
- fix a few typos in default files
- bedwars changing arena positions slightly
- implement a fix for team colors in koth
- fight end commands on force end
- cancel stripping logs in fights

Improvements (mainly minor internal changes):
- more debug logging
- make teleport-debug also work with just /sprac debug
- teleport-debug is also triggered if teleporting more than 200 blocks in the same world
- minor insta void optimization
- minor other optimizations

Other changes
- better version support message
- make /sprac findarena detect incorrectly setup arenas
- /sprac debug print cancelled teleportations and the reason
- minor change to some output of /battlekit
Developers:
- add fight#getFightStatistics(Player) for convenience
- add Fight#getSpectator for convenience
- add "virtual" BattleKit#isBridges method for future use and better compa
- (convert some more Java code to Kotlin)
----------, Dec 16, 2021

It has been a while since last update but this one has reasonably many things. As always, I highly recommend taking a backup (you should always have backups of your server anyway!). There's no need to change anything in your configs/setup. Just delete the old plugin jar file and upload the new one.

# Fixes
- Fixed 2v2 queue "in_match" numbers
- Fixed off-by-one top placeholders (not displaying as "(none)")
- Fixed a few errors
- Fixed bot kb affecting mobs
- Fixed /battlekit bestof not being in the help text
- Fixed console not being able to execute /battlekit give <kit> <player>
- Fixed clickable messages in the compatibility mode
- Fixed minor and rare error with scoreboard when player disconnects
- Catch some errors when the server stops instead of giving up on the rest (i.e. less likely to lose any data)
- Fixed selecting language on 1.16+ servers
- Added a workaround for compatibility with getting player ping in different server versions (=fix <ping> in most cases on 1.16+ servers)
- Fixed fight-start/end-commands in LMS event
- Fixed insta-soup if it's in the player's second hand
- Fixed a weird bug with potion effects on some spigot versions
- Fixed other minor things and errors
- (probably) fixed a bug when quickly reconnecting after you died and executing /spec could let you hit players
- Fixed /brackets leave as a spectator
- Fixed /hostevent brackets|lms <kit> syntax to work as a player too

# New Features
- Added <hits_difference> placeholder (red (negative) / green (positive))
- Added <in_ranked_fight> and <in_unranked_fight> placeholders
- Added italian translations in the defualt messages.yml
- Added option to disable respawn on death
Code (Text):

death:
  respawn: true/false
 
- Added /dueltoggle (previously only "/duel toggle")
- It's now possible to disable the spectator inventory messages by making the message empty (spectator-inventory-message: '')
- Added /duel <player> [rounds] [kit] syntax
- Added /botduel [rounds] [kit] syntax
- Added /2v2 [ranked | kit] syntax (previously only "/2v2" or "/2v2 ranked")
- Added /kiteditor [kit] syntax
- Added /battlekit nodamage <kit> to allow hitting others but not taking damage (e.g., for sumo kits)
- Added /battlekit pearlcooldown <seconds | 0 for default | -1 to disable>
- Added arenas-world-allow-monsters: true/false and - arenas-world-allow-animals: true/false config options
- Added StrikePracticeAPI#createParty method
- Added any-kit-colored-armor to allow any kit with leather armor to be blue/red based on team

# Improvements
- Added "keep-arenas-loaded" (enabled by default) to tell the server to keep the arenas loaded all the time on 1.14+ servers. So the arena chunks do not need to unload/load, consequently reducing CPU usage and sync loading when required by the plugin.
- Optimized the <team> / %rel_strikepractice_team% placeholders in some cases (especially in events and party ffa). If the tags do not work, check #faq on the Discord server
- Other minor general improvements and code optimizations
- Added countdown-inventory-update to disable the sometimes annoying refresh of inventory after the countdown which stops drinking/eating on some versions (set it to false to disable)

# Internal changes

- Tweaked some bstats charts/data
- Bunch of internal refactoring (shouldn't break anything)
- Cleaning the code :sick:
- Made it easier to modify elo changes (StrikePractice.getAPI()#setEloCalculator/getEloCalculator and its #withModifier method)
----------, Nov 1, 2021

- Fixed players or bots not dying in water in sumo on newer servers
- Fixed empty events GUI (broken in 3.3.1)
- Minor tweaks to 1.17 support (still not official)
- Fixed a few errors (null pointers)
- Some internal cleaning/refactoring
- (developers) Added methods to get if players are enemies/teammates to the Fight interface
----------, Aug 31, 2021

This update consist mainly on minor fixes and improvements.

If you encounter any new issues with this update let me know. Can always downgrade back to 3.3.0 (see the versions page) if needed.

- Prevent sleeping in beds in bedwars
- Fix /party ffa if already in a fight
- Added version compatibility mode. There's still no official 1.17 support but the plugin should be able to start with any version (1.7+) although some features might not work at all.
- Replace some top stats with (none) if they don't yet exists.
- Wins/losses placheolders now get automatically disabled if not supported
- Temp fix to 2v2 queue inventories as wins/losses (or any placeholders) are not available there
- Tweaks to 1.16 bot potting
- Should fix a bug where drinking potions on newer clients is buggy (you can disable the auto-removal of bottles if this update doesn't fix it)
- Added a better version of "/sprac placeholders" to browse all available placeholders
- Bunch of internal refactoring, cleaning and config changes (that do not affect your setup unless you delete config.yml)
- It is now possible to change how ELO is calculated in ranked matches with the API ( #setEloCalculator(implementation...)).
- Scoreboard was moved to scoreboard.yml. There's no need to do any changes.
- Added "copy-previous-colors" option in the scoreboard.yml. Try if it fixes scoreboard bugs on newer clients or disable if it causes more problems.
- <queuetype> placeholder now works in fights.
- Added <is_botfight> and <is_spectator>. Use like [display=<is_spectator>] to display only in spectator mode or [display=!<is_spectator>] to not display in spectator mode.
- Fixed some rare issues with rematch items
- Bestof fights should now work correctly with totems
- Some other minor changes and fixes :)

Known issues:
- 1.16+ colored nametags are still broken
- Still no official 1.17 support
----------, Aug 14, 2021

Note: if you want the most stable experience, it is recommended to wait a few days before updating.

Read below before updating.


New features

Added boxing
.
- /battlekit boxing <kit> to enable. In boxing you kill the opponent when you hit them 100 times (or vice versa)
- For now, boxing only works in duels
- Added placeholders for boxing <hits> (how many times you have hit the opponent), <opponent_hits> and <is_boxing>
Example scoreboard config ("duels" section):
Code (Text):

...
- '&fHits: [display=<is_boxing>]'
- ' &fYou: &e<hits>/100 [display=<is_boxing>]'
- ' &fThey: &e<hits_opponent>/100 [display=<is_boxing>]'
- ' [display=<is_boxing>]'
...
 
Web addon update coming
- Prepared for the new web addon update by adding code for database migration. The old database is still used but will be updated automatically when the addon updates. This is configurable in the config.yml. "legacy-fight-format: true". If you have a fork of the web addon or use the database fights table, keep that setting enabled and add it in your config so it will be kept disabled. The migration is irreversible. (although it should copy the old table as 'fights_old')

Other
- In bedwars (mlgrush, bridge etc) you now get colored leather armor and your wool & stained clay changes color automatically based on your team. You don't have to change or configure anything.
- Added option to configure custom max block changes in fights with "max-block-changes: 1000" in the config.yml. By default a dynamic limit exists so only change if you have got the limit message.
- Added #startEditing in the API
- Wins/losses placeholders. This is experimental and requires SQL database to be enabled, the database migration to be done (see above) and "save-all-fights: true". Note that on big servers this may cause more strain on the database and you can make sure they get disabled with "disable-queried-stats: true", this will (probably) be improved in the future.
Format:
Code (Text):

<wins>
<losses>
<wins_kitname>
<losses_kitname>
 
You can use the following to display them in the queues.
Code (Text):

in-match: '&dPlayers Fighting: &e<players>\n \n&dWins: &e<wins_<raw_kit>>\n&dLoses: &e<loses_<raw_kit>>'
 
- winner-commands now supports party and bot fights.
- Dragon eggs should work in bedwars too (replace the bed with them for eggwars, unfortunately this was left untested)
- Many other small changes such as bStats, recoded the duel queue partly to support per player placeholders and bunch of internal changes
See the default config if the config values were not explicitly mentioned here

Fixes/improvements

- Custom kit armor should now work in newer server versions
- The plugin now should remove explosives entities when a fight starts (experimental, I recommend testing)
- Some improvements to SQL database stuff
- A lot of minor fixes that I'm too lazy to list here
- Bunch of minor general improvements

Fun fact: in this update 142 files were changed, 4150 lines were added, 2908 lines were deleted :)
----------, Jun 12, 2021

Note: if you want the most stable experience, it is recommended to wait a few days before updating.

Read below before updating.

New
- Bridges. If a kit has /battlekit bedwars <kit> enabled, you can jump into a (end) portal to score - no changes needed. Currently, if the kit name has "bridges" (or "mlgrush") it should disable countdown between rounds. I will make this an option later.
- The bots are more customizable. See the generated new config for the new values in "bot-difficulty" section. Note: this resets your current difficulty icons. You can just copy the config section into your config and edit them.
- Winner commands. You can now specify unranked and ranked 1v1 winner commands. Most placeholders (such as "<player>", "<opponent>", "<raw_kit>") work in these commands. See "winner-commands" section in the new default config.
- Added /queue <kit name>. Use to queue directly with specified kit (e.g NPC commands).
- Stickspawn now sets the players walk speed to 0 - looks better now :)
- Added <started> placeholder. Returns whether the current fight has started ("true" or "false"). Use [display=<started>] to display a line during countdown and [display=!<started>] to display after the countdown until they are teleported back to the spawn.

Fixes
- Prevent kit editor abuse. The plugin now checks for extra items and also the amount of items to prevent abusing glitches.
- A few other minor fixes

Misc

- Minor improvement to pvp bot potions
- Minor optimizations
- Added a small Easter egg for 1st of April. Disable by adding "disable-easter-eggs: true" in the config
----------, Mar 24, 2021

Bedwars and parkour should be fixed in this update (I broke teleporting back to the spawn in 3.1.1).
Also, the enderpearl cooldown should work better in this version.

See what changed in 3.1.1 here and 3.1.0 here.
----------, Jan 27, 2021

This update mainly consists of minor bug fixes. Most of the bugs appeared in the 3.1.0 version.

NOTE: bedwars/parkour seems to have broken in this update. I'll publish another tomorrow

You can just delete the old plugin jar file and upload this one. There's no need to do any changes to your config files.

See what changed in 3.1.0 here.


Changes in this update (3.1.1):

Fixes
- Fixed placeholders breaking if elo ranks were disabled
- Fixed some other issues with placeholders
- Fixed an issue where players were teleported twice (if spectating in the end of the duel was disabled)
- Fixed players automatically joining the event they are hosting
- Fixed some issues automatic events and updated the default config
- Fixed building while arena is resetting in bestof fights (e.g spleef)
- Fixed some issues when spectating events (after you leave the spectator mode)
- Fixed some issues with duel and party duel requests not working correctly
- Other very minor fixes (mainly in the default config)

Other changes

- Added "prevent-tool-dropping" (enabled by default). This should prevent dropping swords, pickaxes etc in fights.
- Party icon size is now equal to the number of players in the party
- Added RoundStartEvent in the API
- BotDuelEndEvent now has winner type for convenience
- Updated some things in the default config.
----------, Jan 26, 2021

Note: This version should be stable but consider waiting at least a few days before updating if you really don't want anything to break.

It's been a long time since last update. In this update there are quite a few bug fixes, optimizations and small features.

Fixes
- Fixed a weird leak when players disabled scoreboards (this should be a good stability improvement)
- All items in the arena clear immediately when reseting the arena (good for best of fights)
- Fixed <kdr> placeholder decimals
- Fixed <ffa_rollback> placeholder
- Fixed next inventory item in some fights
- Fix some database stuff (constraints/indexes)
- Fixe elo_rank if out of ranges
- /duel <player> [rounds] now works as expected (sends the bestof duel message)
- Fix bow health, back button, typos, bot errors, some other placeholders, fix #forceWin method in some fights, fix /battlekit give <kit> [player]
- Fix juggernaut total players (API and some placeholders)
- Bunch of other minor fixes

Optimizations
- Optimized some database queries
- Top stats are cached. Top stats will work fine even without SQL database
- Autosave stats only if they have changed
- Removed player kit autosave (not needed because kits are saved when edited)
- Optimized all server placeholders and some player placeholders
- Other minor optimizations

Features/Other/Misc
- Added "/arena seticon <arena>" for the map selector
- Added "bot-kb-amount-upward-min" to set minimum kb for the bot (defaults to around 0.25). The "bot-kb-amount-upward" is the maximum kb and "fix-bot-kb" must be set to true for these settings to take affect.
- Non official support for 1.16.4 servers (good luck trying)
- Autocomplete most (admin and party) commands
- Added ffa-countdown in the config. Set to -1 to disable. Added <ffa_fight_total> placeholder for players in all ffa fights.
- Experimental arena reset: enable with "experimental-block-updater: true", disabled by default and might cause blocks to be left in the arenas.
- Now spectators get the inventory messages in all fights
- Players will now spectate brackets and sumo after they die (by default)
- Deleted bunch of unused code
- Some code cleaning
- Removed tablist support. You can purchase StrikeTab addon for a better tablist (7€, contact: Toppe#4670 on discord or pm me here, source included). The previous tablist only supported 1.7.10 clients on 1.7.10 servers and was laggy. You can still use older version or other tab plugins.
- Added battlekit type "none" for convenience
- Refactored queue and arena reset
- Added some methods to Fight interface (#getOpponents, #getTeammates)
- Added "PartyFight" interface that has #getParties, added a way to get event types/names easier in PvPEvent[End|Start]Event and some other nice things in the API (use the plugin as a dependency for up-to-date API)
- FFA arenas reset faster than other arenas and ffa fight scoreboard uses the fight update delay instead of the lobby delay
- All fights should support cages (place stained glass around the spawnpoint but not below, the plugin will add and remove the floor). The cage will also work if you die in bedwars
- Horses now get armor
- Some tweaks to the bots
- Better /arena list [all | filter]
- Updated default config. A copy of the default config is now copied to the plugin directory automatically.
- Increase duel request expiration to 30 seconds. You can now invite players to party multiple times.
- Some other minor changes

Join the StrikePractice discord server!

strike-tab.png
----------, Jan 12, 2021

This will most likely be last update (for a while).

UPDATE: Join the discord for a development version. The spigot version will be updated a bit later.

Bug fixes and minor tweaks:
- Some changes to default config
- Fixed a possible dupe glitch in kit editor
- Tweaks to 1.12 bot
- FFA /spawn should work better
- Added ".split" to split a line in queue kit selector lore
- Fixed party vs party elo if opponent disconnects
- Added <raw_kit> placeholder back
- Fixed /party ffa command always opening the GUI for the party owner (even when another party member executed it)

There will still be bug fix updates.
----------, Jul 22, 2020

- Fixed a few placeholders not working properly
- Changed some default values in the config (e.g
disable-building-outside-arenas: false)
- Fixed a few other minor bugs/errors
----------, May 6, 2020

Note: It's highly recommended to wait at least a few days before updating if you want to be sure it's stable!

- Recoded parts of the placeholder system. Report if there are broken placeholders.
- Scoreboard tweaks and improvements
- Added option to prevent building outside the arenas (outside arena corners).
Code (Text):

# If true players can't build outside the arenas
# Only applies to arenas that have corners and when the player is in a fight
disable-building-outside-arenas: true
 
- Made it possible to prevent saving any items that the kit does not have. If this causes any problems set "no-kit-editor-check: true" in the config.yml
- Fixed a bug with bedwars kits
- Fixed silent spectating message
- Fixed a few other minor bugs
----------, Mar 3, 2020

- Added support for silent spectating. If you have "strikepractice.staff" and start spectating a regular player they won't see the spectating message.
- Added "give-kit-automatically" in the config. If it's true players will receive default kit if they don't have any edited kits. Does not send any messages though.
- Added /ffaarena <arena> command to join an ffa arena. /<arena> still works but is not a real command so this makes binding FFA arenas to items or NPCs easier.
- Added <difficulty> placeholder for scoreboard (bot fights). If it's not a bot fight that line will not show.
- Added support for 1.15 minecraft (very little tested so report any bugs)

- Bunch of small bug fixes and tweaks

Installation: Just download and drop the jar file in plugins folder. Be sure you have deleted the old version. There's no need to reset any config files.

Join the StrikePractice discord https://discord.gg/SkFbkgg and leave a review to receive updates and fixes before anyone else!
----------, Feb 5, 2020

Note: As always, I recommend waiting a few days before updating if your server is public because there may be new bugs in new releases.

- Added option in the scoreboard config that you can try if you have other scoreboard/tag/tab plugins (or something else) that may cause incompatibility/crashes/errors. Note that scoreboard update periods shouldn't be too low, 20 is the recommended value.
Code (Text):

scoreboard:
  # This is the new setting you can add in your config, by default it's false
  # Will force the strikepractice scoreboard to set lines in main thread instead of asynchronously
  sync-set: false
 
- Added /sprac bugreport command that will zip config files and information of server (version, tps, players, uptime etc) into a file that you can send when reporting a bug.
- Fixed a few bugs and errors (bots, replays, rematch items etc)
- Minor tweaks and improvements
----------, Dec 10, 2019

- Fixed a few problems with support for 1.13/1.14
- Small tweaks/fix a few errors
----------, Nov 28, 2019

- Fix errors with scoreboard updating
- Fix some errors with the bot's latest version
----------, Nov 24, 2019

- Fixed selecting kit layout in events
- Fixed bot sometimes bugging and staying in the tab/on the server
- Fixed a few random errors
- Fixed a problem with party 2v2 queue
- Small improvements and small changes to default config files

This should be quite stable version now
----------, Nov 23, 2019

- Fixed an error with scoreboard
- Fixed kits not loading properly on 1.7 servers
- Fixed KitSelectEvent if the kit is editable. Should fix plugins using the API
- Fixed a few other (harmless) errors
----------, Nov 19, 2019

- Fixed a bug with bedwars respawning. Also, there's no delay now
- Fixed /battlekit give command
- Fixed bots sometimes targeting dead people (spectators)
- Fixed a few other small things
----------, Nov 18, 2019

- Fixed a replay bug
- Fixed a few other small bugs/errors
----------, Nov 17, 2019

This version still may have some bugs. 2.10.1 or 2.9.2 may be more stable.

- Fixed a few bugs and errors
- Changed default configs slighly
- Added enderpearl cooldown support for lunar client (tested) and BAC (not tested)
----------, Nov 17, 2019

If you encounter any problems please report them (Toppe#4670 on discord) and use older versions until it's fixed. You can always wait a few days if you want to be sure everything works.

New:
- Added 2v2 unranked and ranked queues. Copy or create new spawnitems for them ("/2v2" and "/2v2 ranked")
- Added kit editor GUI. You can now save multiple versions of one kit and select the kit when a fight starts. The plugin will try to convert your current player kits. You can always go back to the old version by adding "legacy-kit-editor: true" in the config
- Fixed delay with scoreboard player settings
- Fixed enderpearl cooldown (this depends on the version, you can always use the old version by adding "right-click-block-enderpearl-cooldown: true" in the config)
- You no longer get armor in kit editor
- Replaced the "sign search" with in-game chat (you can always go back by adding "enable-sign-search: true" in the config)
- Improvements to the pvp bots (features and performance)
- Improvements to replay playing. Now works in performance-mode too
- Improvements to replay recording performance (asynchronous)
- Bot fights can be recorded too
- Recordings are pre-loaded more quickly
- "/sprac totalfights" will work in performance-mode too
- CPS placeholder is slightly better (still updates only every second)
- Fixed match link for spectators
- Fixed a lag spike caused by top stats
- Fixed a few other things

Join the StrikePractice Discord to get your VIP rank and access to the development version.

Note: dropping support for some spigot versions. 1.7.10 1.8.8 1.9 1.12 1.13 1.14 are still supported (but for example 1.7.4 and 1.11 won't have all features properly working (at least for now))
----------, Nov 14, 2019

- Fixed an error with bots
- Fixed premade maps
- Nothing special
----------, Oct 26, 2019

Note: If you want to have the most stable experience it's highly recommended that you wait a few days before downloading this version. If you're still building your server or want to test this version download it now :)

Updates:
- Minor bug fixes (more below)
- Fixed host message with "/hostevent"
- Fixed a few errors
- Other small fixes
- Performance tweaks
- Database optimizations
- Optimized duels a bit
- Other misc optimizations
- A small easter egg

Remember to join the support & community discord channel for cool stuff https://discord.gg/SkFbkgg
----------, Oct 24, 2019

- Fixed a few minor bugs

SUMMER SALE!
----------, Jun 27, 2019

Note this is a quite big update and might break things. Take backups before updating!

Changes:

- New StrikePractice API. Some old StrikePractice Extensions may need to be recompiled (especially if they interact with arenas and kits). The API can be found here
- Support for MC 1.14, finally! (only tested basic stuff, not everything)
- Fix: beds no longer explode, so you no longer get stuck in bedwars.
- Fix: a few errors
- Fix: bots causing errors if the kit has gapples
- Fix: Player's no longer can spam party leave while in a match
- Fix: accepting duels while in a match
- [Beta] notify staff if a player abused items to their kit editor kit
- StrikeLeaderboards was also updated to support 1.14 and the new API. Github link here
- Next inventory button in the inventory snapshots! (Unfortunately there was a type and this won't work yet, will publish a fix within 2 days)
----------, Jun 26, 2019

Note: This update hasn't been tested well. If you have a public server it's recommended to wait until the new version has 50+ downloads (check Version History page).

New stuff

- Updated PlaceholderAPI api
- Added isEditingKit and getEditingKit to the StrikePracticeAPI
- Added support for \n in queue kit icon lores for multiple lines
- Small improvements to the bots
- Added some kind of support for 1.14 spigot (not tested!)

Fixes

- Fixed spectators being able to extinguish fire
- Fixed a small bug with scoreboards if the line length was small
- Fixed armor sometimes not appearing properly in newer mc versions
----------, May 29, 2019

- Fixed automatic events not starting

Nothing else in this update. Just noticed the bug and because I won't be able to update it for a week, I decided to fix and push the new update now.
----------, Apr 13, 2019

I'm currently busy and won't be updating for a while and support may take longer. If you have bugs with this version please download the previous version from the "Version History" tab.

- Added spectator-menu to edit the inventory title
Config:
Code (Text):
spectator-menu: '&aSpectate'
- Added effect-displayname to rename fight-inventory effect item
Config:
Code (Text):

  #Name of the effect item
  effect-displayname: '&7Potion Effects'
  #First line of the lore
 
- Added auto-respawn in KOTH event (enabled by default)
Config:
Code (Text):

koth:
  auto-respawn: true
 
- Fixed bestof damage bug (players were respawned before they had actually died)
- Fixed a typo in settings (disable/disabled)
- Changed default spectator scoreboard
- Fixed an error that was sometimes happening when the juggernaut event stopped
- Fixed cooldown hours (placeholders only) being wrong by hours
- Fixed <host>/<player> placeholder in hosted events
- Fixed a rare error with scoreboards
- Fixed bestof message being sent twice in bot fights
- Fixed "<in-queue>" sometimes not being displayed in the ranked queue
- Fixed spectators stepping on pressure plates
----------, Apr 12, 2019

- Send matchlink to spectators too
- Changed "bot-teleport-error-fix" to be "true" by default
- Added map selector permission (enabled by default so give negative permission to remove): strikepractice.mapselector
- Fixed a bug where spectators were able to break bedwars beds
- Misc: fixed rank placeholder even if the ranks are invalid, fixed a bug with duel requests


If you're running a public server I recommend not to download new version until they have around 100 downloads (you see the numbers in the Version History tab)

I don't have much free time nowadays and that's the main reason why there haven't been that many updates lately. That's also a reason why new updates are not fully tested.
----------, Mar 16, 2019

- Removed invalid character from messages.yml. Caused problems on some servers
- Other very small fixes
----------, Feb 10, 2019

- Fixed enderpearl cooldown
- Fixed dropping items
- Fixed messages.yml
- If your messages.yml is missing a message it *should* take it from the new messages.yml so you don't have to add new messages
- Fixed a few other little things
----------, Feb 8, 2019

- Fixed a few things
- Added chinese in the messages.yml. Add it in languageitems if you want to.
- Hopefully there are no any big bugs anymore



There won't be updates for a few weeks now! If there are problems please try to previous versions from Version History
----------, Jan 27, 2019

- Fixed ffa block limit
- Fixed a few other bugs




Note that new updates might not be stable. If you want to be sure the update is stable download the update once the update has 100+ downloads or so.
----------, Jan 25, 2019

- Fixed a few small bugs
- Added "enderpearl-fix" in the config. A simple fix for players getting stuck when pearling. If this doesn't fix some enderpearl glitch just use other plugins for it.
- Added <ended> placeholder. "true" if the current fight has ended "false" if not. You can use something like this to add "Match finished" in scoreboard:
Code (Text):

- '&aMatch Finished[display=<ended>]'
 
----------, Jan 20, 2019

- Fixed bStats
----------, Jan 1, 2019

- The default config is a lot more organized now. Let me know if there's something wrong now.
- Default config looks a bit nicer now
- Performance tweaks, especially with scoreboard
- Fixed a few bugs
- Added bStats metrics

Note: New versions might have new bugs and other issues. If you're already running a public server I recommend downloading a version that already has 100+ downloads from here
----------, Jan 1, 2019

- Hopefully fixed rest of the bugs
- Map selector should now work in party vs party too
----------, Dec 29, 2018

- Fixed an error that I forgot to fix -.-
----------, Dec 29, 2018

- Fixed a few bugs

Map selector config was changed from
Code (Text):

map-chooser:
  enabled: true
  title: '&bSelect Map'
  default-item:
  random-map-button:
    ==: org.bukkit.inventory.ItemStack
    type: WOOL
    meta:
      ==: ItemMeta
      meta-type: UNSPECIFIC
      display-name: "\xa79\xa7lRandom Map"
 
To
Code (Text):

map-selector:
  enabled: true
  title: '&bSelect Map'
  default-item:
  random-map-button:
    ==: org.bukkit.inventory.ItemStack
    type: WOOL
    meta:
      ==: ItemMeta
      meta-type: UNSPECIFIC
      display-name: "\xa79\xa7lRandom Map"
 
Old config works but you should rename the "map-chooser" to "map-selector"

Click here for 2.6.0 change log
----------, Dec 27, 2018

- Fixed a few bugs
----------, Dec 26, 2018

- Fixed a few bugs that came in 2.6.0:
  • Scoreboard not being updated
  • arena selector not working in some gamemodes
  • other very small things

Should be a more stable version now, hopefully

See below for 2.6.0 features
----------, Dec 24, 2018

- Fixed a bug with fights

2.6.0 AND 2.6.1 ARE NOT STABLE VERSIONS YET.
Use 2.5.7 if your server is public. 2.6.1 only for testing


2.6.0 update:

  • Parkour! /battlekit parkour kitname and place a pressure plate in the finish line
  • Map Selector! Choose the arena for the fight
  • Added rematch-item to easily challenge your opponent again
  • Added fight statistics to the post match inventory preview (hits, combo potions, thrown, missed and potion accuracy)
  • Added fight duration limit. See the config.yml and messages.yml below.
  • Added max block changes per fight (5000 changes maximum, can't be configured at the moment). This is to prevent players from building anything that would cause arena reseting taking too long or lag
  • You can configure the settings item slots now.
  • Performance improvements
  • Fixed a few things

Note: Wanted to get this update live before Christmas and due to tight schedule there might be some bugs with the new features


New in messages.yml ( You must add these! Line doesn't matter, just under the main language, "english" by default)
Code (Text):

  #This message is sent when the fight has 20% of max duration left
  #for example if the limit is 20 minutes this message is sent every minute for (20*0.2 = 4) 4 minutes before the match ends
  fight-duration-limit: '&cThe fight duration is limited to <limit> minutes. <left> minutes left of the match.'
  #sent if the fight exceeds the fight-duration-limit
  fight-duration-force-end: '&cThe fight exceeded fight duration limit and was stopped!'
 
New in config.yml (you can add these if you want to. Line doesn't matter but you should find "fight-inventory" and "player-settings" already there, copy the new things there)
Code (Text):

rematch-item:
  #should players get an spawnitem to duel the opponent again
  enabled: true
  #after how many seconds will the spawnitem be removed
  remove-after: 10
  #the slot (0-8)
  slot: 8
  #the item
  item:
    ==: org.bukkit.inventory.ItemStack
    type: DIAMOND
    meta:
      ==: ItemMeta
      meta-type: UNSPECIFIC
      display-name: "\xa7a\xa7lRematch <opponent>"

map-chooser:
  enabled: true
  title: '&bSelect Map'
  default-item:
  random-map-button:
    ==: org.bukkit.inventory.ItemStack
    type: WOOL
    meta:
      ==: ItemMeta
      meta-type: UNSPECIFIC
      display-name: "\xa79\xa7lRandom Map"

#Find this in your config
fight-inventory:
  match-stats-lore:
  - '&dHits: &e<hits>'
  - '&dLonges combo: &e<combo>'
  - '&dPotions Thrown: &e<potions_thrown>'
  - '&dPotions Missed: &e<potions_missed>'
  - '&dHealing Accuracy: &e<potion_accuracy>'

#In minutes, for all fights
fight-duration-limit: 20

#Find this in your config
player-settings:
  inventory-size: 27
  title: '&a&lSettings'
  language-item: PAPER
  language-name: '&eChange Language'
  language-slot: 14
  duel-requests-item: BLAZE_ROD
  duel-requests-name: '&eDuel Settings'
  duel-requests-slot: 12
  scoreboard-item: BOOK
  scoreboard-name: '&eToggle Scoreboard'
  scoreboard-slot: 10
  hide-players-item: SLIME_BALL
  hide-players-name: '&eToggle Player Hider'
  hide-players-slot: 16
  #Default values for each setting
  default-values:
    scoreboard-disabled: false
    hide-players: false
    duel-requests-disabled: false
    admin-scoreboard: false
 
Merry Christmas and Happy New Year to everyone!
----------, Dec 24, 2018

  • Parkour! /battlekit parkour kitname and place a pressure plate in the finish line
  • Map Selector! Choose the arena for the fight
  • Added rematch-item to easily challenge your opponent again
  • Added fight statistics to the post match inventory preview (hits, combo potions, thrown, missed and potion accuracy)
  • Added fight duration limit. See the config.yml and messages.yml below.
  • Added max block changes per fight (5000 changes maximum, can't be configured at the moment). This is to prevent players from building anything that would cause arena reseting taking too long or lag
  • You can configure the settings item slots now.
  • Performance improvements
  • Fixed a few things

Note: Wanted to get this update live before Christmas and due to tight schedule there might be some bugs with the new features


New in messages.yml ( You must add these! Line doesn't matter, just under the main language, "english" by default)
Code (Text):

  #This message is sent when the fight has 20% of max duration left
  #for example if the limit is 20 minutes this message is sent every minute for (20*0.2 = 4) 4 minutes before the match ends
  fight-duration-limit: '&cThe fight duration is limited to <limit> minutes. <left> minutes left of the match.'
  #sent if the fight exceeds the fight-duration-limit
  fight-duration-force-end: '&cThe fight exceeded fight duration limit and was stopped!'
 
New in config.yml (you can add these if you want to. Line doesn't matter but you should find "fight-inventory" and "player-settings" already there, copy the new things there)
Code (Text):

rematch-item:
  #should players get an spawnitem to duel the opponent again
  enabled: true
  #after how many seconds will the spawnitem be removed
  remove-after: 10
  #the slot (0-8)
  slot: 8
  #the item
  item:
    ==: org.bukkit.inventory.ItemStack
    type: DIAMOND
    meta:
      ==: ItemMeta
      meta-type: UNSPECIFIC
      display-name: "\xa7a\xa7lRematch <opponent>"

map-chooser:
  enabled: true
  title: '&bSelect Map'
  default-item:
  random-map-button:
    ==: org.bukkit.inventory.ItemStack
    type: WOOL
    meta:
      ==: ItemMeta
      meta-type: UNSPECIFIC
      display-name: "\xa79\xa7lRandom Map"

#Find this in your config
fight-inventory:
  match-stats-lore:
  - '&dHits: &e<hits>'
  - '&dLonges combo: &e<combo>'
  - '&dPotions Thrown: &e<potions_thrown>'
  - '&dPotions Missed: &e<potions_missed>'
  - '&dHealing Accuracy: &e<potion_accuracy>'
 
#In minutes, for all fights
fight-duration-limit: 20

#Find this in your config
player-settings:
  inventory-size: 27
  title: '&a&lSettings'
  language-item: PAPER
  language-name: '&eChange Language'
  language-slot: 14
  duel-requests-item: BLAZE_ROD
  duel-requests-name: '&eDuel Settings'
  duel-requests-slot: 12
  scoreboard-item: BOOK
  scoreboard-name: '&eToggle Scoreboard'
  scoreboard-slot: 10
  hide-players-item: SLIME_BALL
  hide-players-name: '&eToggle Player Hider'
  hide-players-slot: 16
  #Default values for each setting
  default-values:
    scoreboard-disabled: false
    hide-players: false
    duel-requests-disabled: false
    admin-scoreboard: false
 
Merry Christmas and Happy New Year to everyone!
----------, Dec 24, 2018

- Fixed a bug with battlekit extramaterials. Spleef etc should work better now.
----------, Dec 3, 2018

- Removed the new stickspawn method because it caused weird bugs
- Very minor tweaks/fixes

(No need to update if it didn't cause problems for you)
----------, Dec 2, 2018

- Fixed bugs (hopefully didn't create new bugs)
----------, Nov 30, 2018

- Added spanish in the messages.yml and languageitems.yml
- Fixed a few bugs
- Small performance improvements & tweaks
- Added (beta) option to disable respawning in worlds (might add more things here later):
Code (Text):

disabled-worlds:
'- exampleworld'
 
----------, Nov 26, 2018

- Fixed a few other bugs

See below for 2.5.0, 2.5.1 and 2.5.2 update logs
----------, Nov 22, 2018

- Fixed another bug with some spigot versions

See below for 2.5.0 and 2.5.1 update log
----------, Nov 21, 2018

- Fixed bugs that came in 2.5.0
- Added "ping-multiplier: 1" in the config
- Changed the way clickable messages are sent. Also results in much better performance.
----------, Nov 21, 2018

- Added some simple commands every practice server should have. These commands are only registered if you don't have them already. You can also disable them in the config:
Code (Text):

#/night, /day, /ping etc. See all with /practicecommands
enable-practice-commands: true
 
- Added tabcompletion to some commands. For example /battlekit and /arena.
- Your config will get 'golden-head-effects' if you have golden-head: true and you can change the effects there
- Adjusted stickspawn/freeze
- Added fight-start-commands and fight-end-commands:
Code (Text):

#note that this might cause slight performance decrease at the moment
#keeping the list empty will disable it completely
#remove the # to enable the commands below
fight-start-commands:
#- 'example console command'
#- 'player command: /example player command'
fight-end-commands:
#- 'example console command'
#- 'player command: /example player command'
 
Other new things in the config:
Code (Text):

#If this is false global elo is average elo of all kits. If it's true global elo is average elo of kits with different elo than the starting-elo
global-elo-ignore-starting-elo: false

#you should find "party:" in your config. Add 'allow-rod-boosting: false/true' under it
party:
  #Allow hitting team mates with a rod
  allow-rod-boosting: false
 

Misc:

- Removed cache-rollback-blocks from the config. This method will be used (and nothing will change unless you had it disabled)
- Fixed BotDuelStartEvent not being called
- All FightStartEvents are called when the fight starts (instead of how it was before; the events were called when the fight was initialized and kit was being selected)
- Tweaks & minor bug fixes
----------, Nov 21, 2018

- Global elo is calculated differently now.
If kit's elo is equal to starting elo the elo is not taken in account in the formula. (For example before 1000+1020+995 was 1005 global elo and now it would be 1007). The reason was that usually servers have many elo kits and without this everyone's global elo would be too close to starting elo.

- Added 1.13.2 nms code, version should work now

- Fixed some things to have better support for 1.13 and later versions

- Added option to disable scoreboard in selected worlds (not much tested). See below for configuration.



config.yml
(copy paste the disabled-worlds if you want to use the feature)

!!!Use lower case letters!!!

scoreboard:
enabled: true
#In ticks
update-time: 20
#When the player has the 'default' scoreboard
lobby-update-time: 100
disabled-worlds:
- 'exampleworld'
----------, Nov 4, 2018

- Performance improvements! If you get a lot of errors when using performance-mode try adding "no-async: true" in your config.yml. That will disable some of the new performance-mode features

- Fixed some small bugs
----------, Oct 25, 2018

- Fixed teleporation issue
----------, Oct 8, 2018

- Fixed a bestof bug. Now works in queue too
- Added /ranks command. The command displays all elo ranks.
- Added <host> placeholder in hostevent broadcast messages.
- Bug fixes and some improvements.
- LMS has now 10 second countdown and player's are teleported in a circle
- Bedwars now has a 3 second delay before respawning
- /Battlekit extramaterial now works with multiple materials


Next update will have many performance improvements.
----------, Oct 8, 2018

- Fixed some bugs
- Fixed plugin randomly stopping working
----------, Sep 26, 2018

- Bedwars added! Use /battlekit bedwars <kit> to enable bedwars. Place beds near both spawn points.
- Health under nametags added! /battlekit healthbar <kit> to enable it.
- Added elo ranks! See the configuration below. Calculated based on global elo (average elo). Also added <elo_rank> placeholder.
- Spectator gui has been changed a little. Easier to use and more performance friendly.
- Fixed spectator scoreboard placeholders
- Fixed scoreboard bug when enhanced-performance or performance-mode is not used.
- Fixed other bugs
- Changed admin scoreboard, added tps and adjusted arena/kit info
- The fight inventory message potions/soups left placeholders will be replaced with the player's hp if the player doesn't have any heal potions or soups.


New in messages.yml (Must add these)
Code (Text):

rank-message: '&c&lYour rank is now <rank>!'
bestof-duel-request: '&cThe duel is best of <rounds>!'
 
New in config.yml (just copypaste somewhere if you want to edit. Find the "party:" in your config and paste the party stuff there)
Code (Text):

elo-ranks:
  enabled: true
  send-everytime: false
  ranks:
    silver1:
      name: '&7Silver I'
      elo-range: '0-900'
    silver2:
      name: '&7Silver II'
      elo-range: '901-930'
    silver3:
      name: '&7Silver III'
      elo-range: '931-950'
    silver4:
      name: '&7Silver IV'
      elo-range: '951-980'
    silver5:
      name: '&7Silver V'
      elo-range: '981-1000'
    gold1:
      name: '&6Gold I'
      elo-range: '1001-1010'
    gold2:
      name: '&6Gold II'
      elo-range: '1011-1020'
    gold3:
      name: '&6Gold III'
      elo-range: '1021-1035'
    gold4:
      name: '&6Gold IV'
      elo-range: '1036-1050'
    emerald1:
      name: '&aEmerald I'
      elo-range: '1051-1100'
    emerald2:
      name: '&aEmerald II'
      elo-range: '1101-1150'
    emerald3:
      name: '&aEmerald III'
      elo-range: '1151-1200'
    diamond:
      name: '&bDiamond'
      elo-range: '1201-9999'
#find this in the config and add the new things
party:
  info-command:
  - '&6Party Leader: &e<owner>'
  - '&6Members [<size>]: &e<members>'
  settings:
    player-limit: '&6Player Limit: &e<value>'
    open-party:
      enabled: '&6Party Is Now Open'
      disabled: '&6Click To Open Your Party'
    public-party:
      enabled: '&6Party Is Now Public & Broadcasting'
      disabled: '&6Click To Open & Broadcast Your Party'
 
----------, Sep 24, 2018

- Performance mode no longer affects arena stack feature
- Fixed spectator start/stop messages
- Fixed some placeholders
- Prepared "killcam" feature (not sure if it works yet, requires fight recording enabled), disabled by default
- Other small fixes

messages.yml
kill-cam: '&bClick here to replay the last seconds of the fight.'

config.yml
kill-cam: false
----------, Aug 30, 2018

- Added message when someone starts spectating your match. Use 'false' if you want to disable it
- Added bow health feature. 'bow-health-kits' means the kits, use '*' for all kits, otherwise separate the kits with a comman
- Added 1.13 support, although it hasn't been tested much yet
- Added spectator scoreboard
- Made the 'unlimited' message on scoreboard configurable in the config.yml. The message shows if the player has more than 1000 ranked or unranked matches left
- Fixed bugs
- SPECIAL: StrikePractice Web is now available! Demo & more: https://demo.legendeffects.co.uk/StrikePractice-Web
- StrikeLeaderboards is now available for free!

messages.yml (you must add these)
started-spectating: '&e<player> &6is now spectating your match!'
stopped-spectating: '&e<player> &6is no longer spectating your match!'
#<player>, <hearts>, <hp>
bow-health-message: '&e<player> &6is now at &e<hearts>!'

config.yml
#add this under "scoreboard:" just like "default" and "party-vs-party" etc
#spectator scoreboard is a bit different and tries to "fix" itself automatically
spectator:
- '&8&m------------------------'
- '&6Spectating - &e<arena>&6 - &e<kit>'
- '&6Round: <round>/<total_rounds>[display=<is_bestof>]'
- '&6Your Team Left: &e<own_team_left>&6/&e<own_team_members>'
- '&6Enemy Team Left: &e<enemy_team_left>&6/&e<enemy_team_members>'
- '&6Fight duration: &e<duration>'
- '&8&m------------------------[display=!<is_party>]'
unlimited: 'unlimited'
bow-health: true
#* means all kits
#otherwise separate them with a comma, for example 'builduhc, sg'
bow-health-kits: '*'

New placeholders
<ffa_players>
<ffa_rollback>
<is_ffa> - use [display=<is_ffa>] to have ffa only lines.
<build>


Please report all bugs with the new features. Some of the features haven't been tested that much yet.
----------, Aug 14, 2018

Release notes
- Fixed a few things as usually
- Revamped the fight inventory message
- Added new events to the developer API
- Added "change-icon-amount", enabled by default. The icons will change stack size in queue inventories, 1 (doesn't show up) means there is no one in queue and 2 means there is 1 player in queue and 3 that there are 2 players in the queue.
- Added "no-hunger-in-lobby", enabled by default.
- Changed/fixed some other small things

Fixes:
- Fixed LMS
- Total players placeholder in events fixed
- Party kick should be fixed
- Item change thing should be fixed (hopefully)
- Sumo/brackets spectator thing should be fixed

New in config.yml:
#- '&8&m----------------------------'
#- '&6&lClick for inventories'
#- '&aWinner: &f<winner>&7[&e<winner_pots>&7]'
#- '&cLoser: &f<loser>&7[&e<loser_pots>&7]'
#- '&8&m----------------------------'
# OR
# - '&eClick for inventories'
# - '&aWinner: <winner>&7[&e<winner_pots>&7] - &cLoser: <loser>[&e<loser_pots>&7]'
#
fight-inventory-message:
- '&8&m----------------------------'
- '&6&lClick for inventories'
- '&aWinner: &f<winner>&7[&e<winner_pots>&7]'
- '&cLoser: &f<loser>&7[&e<loser_pots>&7]'
- '&8&m----------------------------'
fight-inventory-player: '&e<player>'
change-icon-amount: true
no-hunger-in-lobby: true

New permission(s)
strikepractice.openparty (true by default) - permission to click on the open party icon in /party settings

New things in the developer API:
PlayerStartSpectatingEvent - When a player is put in spectating mode
PlayerStopSpectatingEvent - When a player stops spectating
PlayerHostEvent - When a player uses /hostevent to host a pvp event
PvPEventStartEvent - When a pvp event starts
PvPEventEndEvent - When a pvp event ends, the winner is null when the event completely stops or /<event> stop is used so check if the winner is null first

/fightinventory <player name> now opens the player's latest inventory.
----------, Jun 24, 2018

- Enderpearl cooldown exp bar will be updated every tick (to make it smoother) even if you have performance-mode: true
- Fixed an error with bots
- Stickspawn interval is now 2 ticks instead of 1 second.
- Spawnitem can now have permissions (/spawnitem permission <name> <permission>). Only players with the permission will get the spawnitem
- /hostevent now has cooldowns
- Fixed a few other things

New placeholders:
<is_cooldown_<tag>> - True or false. Tag can be "sumo", "brackets", "koth", "juggernaut" or "lms", for example <is_cooldown_sumo>
<cooldown_<tag>> - Returns the time left of the cooldown (for example "00:36:27")Tag can be "sumo", "brackets", "koth", "juggernaut" or "lms", for example <cooldown_sumo>

config.yml (add if you want to change, line doesn't matter):
Code (Text):

#in minutes, per player
cooldowns:
  hostevent:
    brackets: 90
    sumo: 60
    lms: 90
    koth: 120
    juggernaut: 120
 
----------, May 18, 2018

- Added best of x rounds! /battlekit bestof <kit name> <number>
- Added more placeholders: <cps> <opponent_cps> and sumo/brackets placeholders: <player1_cps> <player2_cps>
- [EXPERIMENTAL] Improved performance-mode and especially scoreboard enhanced-performance. Disable it if it causes problems
- Added /party list and /party settings now has also open parties (no permission and doesn't broadcast like public party)
- Fixed knockback things
- Hopefully the scoreboard is fixed now
- Fixed bot AI, now it's super hard again
- Player's should not be able to fight at spawn after typing /koth join
- Disabled crop trampling
- Added match links, config.yml:
match-link-after-fight: true
#<started> <ended>, system time when the fight started/ended
match-link: '&9Match link: https://www.yoursite.com/<started>'

More placeholders:
<total_rounds>
<round> - current round
<own_wins>
<opponent_wins>
<is_bestof> - true/false, use [display=<is_bestof>] to disable the line when it's a normal duel. For example:
- 'Best Of <total_rounds>. Round: <round>[display=<is_bestof>]'

messages.yml (add if you want to change):
best-of-round: '&aBest of <total_rounds>. Round: <round>. &6<player1>: &e<player1_wins> : &6<player2>: &e<player2_wins>'
----------, May 13, 2018

IMPORTANT: If you get scoreboard errors try this:
Code (Text):
scoreboard:
  avoid-errors: true
- Added /events. Simple inventory to host events. You can edit the items in the config. You can bind any command
- Fixed <time> placeholder in messages in some situations. Should now work in cooldown-message
- Enderpearl cooldown is now shown in the exp bar too
- Improved arena regeneration
- Chests reset now! Good for skywars gamemodes.
- Added aliases for /brackets: /1v1tournament and /tournament
- Increased golden heads' regen by 1 second
- Added sumo 'water death'. You die if you land in water in a fight with a kit whose name contains "sumo"
- Players now stay spectating brackets/sumo after death. They have access to normal spawnitems and can use them.
- Prepared cooldown system
- If sumo or brackets doesn't have enough players to start the even will stop and players will be teleported to the spawn

Some of the reported bugs haven't been fixed yet but they will be fixed in next update.

New things in the config (you don't need to add unless you want to change them):

events-gui:
title: '&cEvents'
size: 27
items:
- ==: GUIItem
item:
==: org.bukkit.inventory.ItemStack
type: INK_SACK
meta:
==: ItemMeta
meta-type: UNSPECIFIC
display-name: "\xa7a\xa7lHost Sumo Event"
slot: 10
command: /hostevent sumo
- ==: GUIItem
item:
==: org.bukkit.inventory.ItemStack
type: POTION
damage: 34
meta:
==: ItemMeta
meta-type: POTION
display-name: "\xa7a\xa7lHost Brackets Event"
slot: 12
command: /hostevent brackets
- ==: GUIItem
item:
==: org.bukkit.inventory.ItemStack
type: DIAMOND_SWORD
meta:
==: ItemMeta
meta-type: UNSPECIFIC
display-name: "\xa7a\xa7lHost Last Man Standing Event"
slot: 14
command: /hostevent sumo
- ==: GUIItem
item:
==: org.bukkit.inventory.ItemStack
type: GOLD_SWORD
meta:
==: ItemMeta
meta-type: UNSPECIFIC
display-name: "\xa7a\xa7lHost King of The Hill Event"
slot: 16
command: /hostevent sumo
----------, May 11, 2018

- Added french language support. You can stop the server and delete the languageitems.yml so the language is displayed in /lang
- 1000+ ranked/unranked matches placeholder will display as "unlimited"
- Fixed a few bugs as always
- If scoreboard: enhanced-performance or performance-mode causes scoreboard errors try adding this
scoreboard:
avoid-errors: true
- [BETA] /battlekit create will automatically generate the kit based on its name
- Added /party discord and /party setdiscord
You can change the links in the config:
party:
discord-invites:
- 'link 1'
- 'link 2'
#etc
----------, May 2, 2018

Fixed damage issues when "disable-spawn-damage" was enabled.
----------, Apr 19, 2018

- Hopefully fixed problems with queue icons
- Some other small things fixed
----------, Apr 19, 2018

- You can now click event broadcast messages to join the event
- Updated playersettings
- Added "strikepractice.premiumqueue" permission to /premiumqueue command. Players have the permission by default. You can delete the permission by giving "-strikepractice.premiumqueue".
- Added premium-permission-message: '&cYou do not have access to the premium queue' in the config.
- You can now have both QUEUE and PREMIUM in battlekit types so the kit will be in both queues (kits will share the elo)
- You can now choose the colors for admin scoreboard (in the config):
admin-scoreboard-color1: '&6'
admin-scoreboard-color2: '&e'
- Small tweaks and fixed a few bugs
----------, Apr 17, 2018

- Fixed things
- Use [display=<placeholder that returns "true" or "false">] in scoreboards to define when the scoreboard line shows. [display=!<placeholder>] to reverse it.

A few placeholders that return "true" or "false":
<ranked>
<is_enderpearl_cooldown>
<sumo_started>
<juggernaut_started>
<koth_started>
<lms_started>
<brackets_started>
----------, Mar 27, 2018

- Fixed another error with citizens npcs, nothing else
----------, Mar 21, 2018

- Fixed sumo event ("sumoevent" arena will be used)
- Fixed sumo scoreboard
- Fixed a problem with bot
- Fixed a small problem with the knockback when "only-combo: true"
----------, Mar 20, 2018

New updates might have new bugs. Use with caution.
You must add new messages but you don't need to add new config values (defaults will be used).

The actual update log:
- Added premium matches.

Commands:
/premiumqueue, /premiummatches
messages.yml:
no-premium-matches-left: '&cYou don''t have any premium matches left.'
config.yml:
premium-queue-inventory-title: '&cPremium Queue'

- A lot better performance:
config:
#uses better settings and ignores parts of your config
#some features are disabled or might not work that well
performance-mode: true/false (default false)
scoreboard:
#I'd recommend this instead of async
enhanced-performance: true/false (default false)
- fixed bugs
- and more
(e.g. bot dies from void, custom kb for combo, top stats without mysql)

Placeholders:
<premiummatches>
and sumo placeholders:
<players_left>
<total_players>
<estimated_time_left> (not tested)

Other stuff:
commands:

/sprac ? <question> (adding in-game help, still in beta)
/matchlimit update <player>
/premiummatches add/set <player> <number>
/hostevent sumo fixed
You can choose kit when using /hostevent:
- /hostevent brackets/lms/koth [kit]
config:
#if you leave the arena you start taking damage after a while
storm-wall-outside-arenas: false
allow-brackets-spectating: true
#default values, probably not the best ones
knockback:
enabled: true
only-combo: true
#non combo kits
default:
air-horizontal: 0.93
air-vertical: 0.93
horizontal: 0.82
vertical: 0.88
#in combo kits
combo:
air-horizontal: 0.82
air-vertical: 0.82
horizontal: 0.75
vertical: 0.78
----------, Mar 20, 2018

Please note that the update has many new features and new features require supervision and caution. I'd recommend taking backups of your kits, arenas and configs just in case. Please read this update message before installing the update!

- Added an option in the scoreboard config for better performance (= different update interval for players at spawn)
- Added elo-rewards. Note that players may get rewarded more than once for the same level.
- Added /arena copypaste command. Copy paste an entire arena with the positions and everything. Easy way to make more arenas!
- Fixed bugs and errors
- Added ranked and unranked matches limits. Check /matchlimit command. You can add extra ranked matches with strikepractice.extrarankeds.<number> permission and unranked matches with strikepractice.extraunrankeds.<number> permission.
- Added option to remove bottles after drinking ("remove-bottles" in the config)
- Added sumo event. (Similar to brackets but named sumo). Sumo requires a "sumoevent" arena.
- Use \n to split messages! Some placeholders (placeholders without "<placeholder_" prefix) might only work in the last line


config.yml (just copy if you want to change them, otherwise you don't need to add these). The whitespaces infront matter the line in the config doesn't.
Code (Text):

#When the player has the 'default' scoreboard
scoreboard:
  lobby-update-time: 100
limit-rankeds: true
limit-unrankeds: false
rankeds-per-day: 20
unrankeds-per-day: 50
elo-rewards:
  example_level:
    elo: 1200
    commands:
    #<player> means the player's name and <level> the level's name ('example_level')
    - 'examplecommand <player> <level>'
sumo:
  winner-cmd: eco give <player> 100
  auto-start: 15
  auto-start-after-seconds: 10
#(you should find 'automatic-event' in the config, paste under it, just like other events are there)
automatic-event: #(be sure there are only one of this line)
  broadcast:
    sumo: '&cSumo event is starting soon! Type /sumo join!'
  sumo-kit: sumo
 
#you should find "party:" in your config. Add under it like this:
party:
  #lore in /party fight inventory items
  #leave null for no members list
  member: '&e<name>'
  show-members-limit: 9
  #<more_members> will always be greater than 1, otherwise 'member:' will be used
  show-members-limit-reached: '&e&lAnd <more_members> members more.'


Add to messages.yml (REQUIRED or your messages won't work properly):
no-rankeds-left: '&cYou don''t have any ranked matches left for today.'
no-unrankeds-left: '&cYou don''t have any unranked matches left for today.'
sumo-next-fight: '&6The next sumo fight is &e<player1> &6VS &e<player2>!'
sumo-slays: '&e<player1> &6slays &e<player2> &6in the sumo event!'
sumo-winner: '&e&l<player>&6 has won the sumo event!'
sumo-joined: '&e<player>&6 has joined the sumo event!'
sumo-left: '&e<player>&6 has left the sumo event!'
sumo-already-started: '&cThe event has already started!'
sumo-not-started: '&cThe sumo event is not open yet!'
 
New placeholders:
<limits_update> - When match limits will update again (HH:mm)
<rankeds_left> - Number of ranked matches left
<unrankeds_left> - Number of unranked matches left
sumo placeholders will be added later
 
----------, Feb 11, 2018

- Added "spectator-inventory-view" in the config. True by default. Set to false if you don't want spectators to be able to view players' inventories
- Fixed a few bugs
----------, Jan 20, 2018

If you have any problems you didn't have before let me know and go back to 1.3.5 until a new update is released.

Update log:
- Many bugs fixed
- Some errors have been fixed
- Some new placeholders such as "<opponent_elo> (opponent's global elo in 1v1's )"
- Placeholders should now work in chat messages. "<placeholder_[the placeholder]". For example "<placeholder_ping>"
----------, Jan 17, 2018

- Fixed a bug with brackets when using /hostevent to host it or automatic event system
- Fixed some other things
----------, Nov 17, 2017

- Fixed a problem with 'trial version' message (now removed)
- Fixed & improved some other things
- Fixed performance problems
- (1.3.3 is not available, this version has the problem fixed)
----------, Nov 16, 2017

- Fixed error sending
- Fixed some errors
- Some little performance improvements
- Fixed some other little things

Remember to leave a review if you enjoy this resource :)
----------, Nov 9, 2017

- Possibly a huge improvement with scoreboard when async is not enabled (only when the delay is not 1 tick)
- Fixed bugs and fixed the problem when enabling the plugin
- Fixed some things with events and other things
- Fixed a problem with elo changes not saving in fights table in MySQL
----------, Nov 5, 2017

- Fixed some little things
- Prepared StrikeCheat
----------, Nov 4, 2017

- Fixed some minor bugs including fight inventory message and events (hopefully)
- Players without permission will no longer see the replay items in fight inventories
- Some little changes
----------, Nov 2, 2017

- Hopefully fixed some problem with scoreboard (didn't have it myself now)
- Some small things have been fixed
- The system should now send all errors, performance etc. automatically
----------, Oct 31, 2017

- Fixed small bugs
- Fight inventories now have the playback item if the match was recorded (added fight-inventory. playback-slot: 46 in the config)
- Fixed some things with events
- Fixed some problems with placeholder system and when you didn't have any automatic events
- Some other things that I forgot

It's recommended to download this update. The system will automatically give me information of possible bugs and errors etc.
----------, Oct 30, 2017

- Fixed the problem caused by <queuetype> placeholder. (1.2.5 download will be removed.)
- Added placeholders for top 10 (not tested): <top_[stats][number]> and <top_[stats][number]_value>.
Example: Top 3 with "debuffelo" kit
- #1<top_elo_nodebuffelo1>: <top_elo_nodebuffelo1_value>
- #2<top_elo_nodebuffelo1>: <top_elo_nodebuffelo1_value>
- #3<top_elo_nodebuffelo1>: <top_elo_nodebuffelo1_value>
MySQL must be enabled for this!
----------, Oct 28, 2017

- Fixed some things
----------, Oct 28, 2017

- Added <player> placeholder for 1v1 start message
- Added <opponent_ping> placeholder for 1v1 scoreboard
- Fixed some things
- Should work better with newer MC versions (1.12 etc)
- Some improvements
- Join the discord server: https://discord.gg/SkFbkgg
----------, Oct 27, 2017

- Togglesprint will be enabled even if you change the world
- Fight inventory has 6 rows instead of 5. You might want to configure it again now.

Discord Support & Community Channel: https://discord.gg/SkFbkgg (beta)
----------, Oct 26, 2017

- You can add a door in kit editor place that players can use to exit the editing place.
- Some other little things and fixes
----------, Oct 25, 2017

- Improved (and possibly fixed a problem with async scoreboard)
- Golden Heads should be fixed now
----------, Oct 22, 2017

- Added <opponent_ping> placeholder for 1v1 opponent's ping
- Fixed a bug with recorded match search when the player didn't have any recorded matches
- Fixed <time> placeholder in some messages
----------, Oct 21, 2017

- Fixed some small bugs and improved some things a bit
----------, Oct 18, 2017

- Some bug fixes, nothing special (╯°□°)╯︵ ┻━┻
----------, Oct 17, 2017

- Added own message for party ffa death. (ffa-died: '&c&e<player>&6 died! There are <alive> players alive.')
- Fixed some small bugs
- /battlekit stickspawn <kit name> (now released officially)
----------, Oct 9, 2017

Resource Information
Author:
----------
Total Downloads: 3,038
First Release: Sep 16, 2017
Last Update: Sep 28, 2024
Category: ---------------
All-Time Rating:
342 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings