✦ Staking / Dueling (1v1)✦ [1.8-1.14.X] Supported! ✦ Duel Players for staked Items & Money! ✦ icon

✦ Staking / Dueling (1v1)✦ [1.8-1.14.X] Supported! ✦ Duel Players for staked Items & Money! ✦ -----

Duel players for items & money that you have staked! Highly configurable, save player stats



[​IMG]
This plugin provides a way for players to stake items, or money, against other players. These items are held while the players duel using pre-defined kits. Players are teleported to arenas that are setup ingame, the winner will be given the bet items & money. This plugin has the ability to save player wins/looses, using SQLite.

[​IMG]
Come and join our official Discord Server!​

[​IMG]
  • Allow players to duel one another in pre-defined arenas
  • Allow players to stake items (or money using Vault) against one another
  • Configure (and customise) the Kits players can select during a duel
  • Allow players to fight with their own items
  • Disable McMMO Abilities during duels
  • Save player stats data to an SQLite database
  • Works out the box, however very configurable
[​IMG]
[​IMG]
(Kit selector - All kits & items configurable..)
[​IMG]
[​IMG]
[​IMG]
Stats:
[​IMG]

[​IMG]
Default Permissions:
/Stake <Player> - staking.player.stake
/Stake stats - staking.player.stats
/Stake stats <Player> - staking.player.statsother


Admin Permissions:
/Stake createarena <arenaName> - staking.admin.createarena
/Stake deletearena <arenaName> - staking.admin.createarena
/Stake setspawn <1 or 2> <arenaName> - staking.admin.setspawn
/Stake reload - staking.admin.reload

Valid Aliases:
/Duel
/Pvp
/Staking


[​IMG]
Installation steps follow:
  1. Download Staking (Vault too if you wish to enable money!)
  2. Place these jars within your 'plugins' directory
  3. Run the server to produce the files
  4. Create the arenas and set the spawns ingame using the ingame commands!
  5. Optional: Configure the various kits, messages, and configuration file generated within the /staking directory. Although I suggest rebooting after making changes to these files, /staking reload will work fine in most cases
[​IMG]
Many options can be configured, below are the configuration files generated by the plugin.
Code (Text):

#The prefix used for messages
PluginsPrefix: "&7[&eStaking&7] "


#The time needed to wait before sending another duel request, this prevents players from spamming duel requests (Measured as Seconds, must be integer)
TimeForDuelRequestToExpire: 15

## Inventory Options ##
#When both players have accepted, a timer will tick down. Set the number of seconds you wish this timer to play for
ConfirmTime: 3

## Stats Options ##
#The plugin automatically uses SQLite in order to store data
#Editing any Stats Options will require a reboot in order to take effect
SaveStatInformation: true
SQLiteTableName: "stats"
EnableQuickStatsCommand: true #Whether /stats can be used rather than /stake stats

## PvP Options ##
#If McMMO is enabled, Do you want to disable McMMO abilities during dueling?
DisableMcMMOAbilitiesDuringDuels: true
#This is the time allowed for each player to choose their kit (in seconds)
MatchCountDownTime: 15
#This is the duration (in seconds) that the match will last
MatchTime: 300

#Where would you like to teleport the players when the battle is over?
#Either enter in a world name (and they will be teleported to the worlds spawn) or type 'LastLocation' for their last location
#NOTE: If an invalid world is entered, last location will be used
WhereToTeleportAfterDuel: "LastLocation"

 
Code (Text):

# Messages for the plugin - Use %PLUGINPREFIX% in any message to get the plugins prefix from the configuration file

#No permission to command message
NoPermission: "%PLUGINPREFIX%&cYou do not have permission for this!"
InvalidSyntax: "%PLUGINPREFIX%&cUsage: &6/Stake &a<Player> &eor &6/Stats &a<Player>"

#Invalid target - The message shown if the target player is invalid
InvalidTarget: "%PLUGINPREFIX%&6Player &c%PLAYER% &6cannot be found!"
#The message shown if the target player is already in a duel - %PlAYER% can be used in order to get the target player
TargetPlayerIsInDuel: "%PLUGINPREFIX%&c%PLAYER% &6is currently in a duel!"
#The message shown if the user performing the command is in a duel
PlayerInDuel: "%PLUGINPREFIX%&6Finish your current duel before starting another one!"
#Duel Expired (This message is shown if the opponent does not accept the players duel)- use %PLAYER% to get opponents name
DuelExpired: "%PLUGINPREFIX%&6Your duel request against %PLAYER% has now expired!"
#Duel is in cooldown - This message is sent to the player if player is in cooldown
DuelCooldown: "%PLUGINPREFIX%&cPlease wait before sending another duel request!"
#The message sent to the target player for a duel - use %PLAYER% to get the player sending the duel request
DuelRequest: "%PLUGINPREFIX%&cPlayer &a%PLAYER% &chas challenged you to a duel! &a[CLICK]"
#The message sent to the player for a duel - use %PLAYER% to get the target players name
DuelSent: "%PLUGINPREFIX%&6You have sent &c%PLAYER%&6 a duel!"
#The message sent if the player sends a duel to him/her self
DuelSentToSelf: "%PLUGINPREFIX%&cYou cannot stake yourself!"
#If the user adds more money to a duel but does not have enough this message is shown
NotEnoughFunds: "%PLUGINPREFIX%&cYou do not have enough funds to stake this much!"
#The message sent when a user closes the Kit Inventory without choosing a kit
NoKitSelected: "%PLUGINPREFIX%&cYou must choose a kit!"
#Title messages that are sent during countdown
TitleMatchCountDown:
#  timeInSeconds:<title|subtitle>
  - "10:&cMatch Starting in..|&610"
  - "5:&cMatch Starting in..|&65"
  - "3:&cMatch Starting in..|&63"
  - "2:&cMatch Starting in..|&62"
  - "1:&cMatch Starting in..|&61"
  - "0:&cFIGHT|&6Goodluck!"

#Messages that are sent during countdown
MessageMatchCountDown:
#  timeInSeconds:message
  - "10:%PLUGINPREFIX%&cMatch Starting in &610"
  - "5:%PLUGINPREFIX%&cMatch Starting in &65"
  - "3:%PLUGINPREFIX%&cMatch Starting in &63"
  - "2:%PLUGINPREFIX%&cMatch Starting in &62"
  - "1:%PLUGINPREFIX%&cMatch Starting in &61"
  - "0:%PLUGINPREFIX%&cFIGHT &6Goodluck!"

#The message sent to the person who won the duel
WinnerMessage: "%PLUGINPREFIX%&aCongratulations! You won the duel!"
#The message that is sent to the person who won, due to the opponent disconecting
WinnerMessageDueToOpponentDisconnect: "%PLUGINPREFIX%&aCongratulations! You won due to your opponent quiting!"

#The message sent to the person who list the duel
LooserMessage: "%PLUGINPREFIX%&cUnlucky, You lost the duel"
#After a while (such as if the users AFK within the arena) the match will expire. This is the message shown if the match timer reaches 0
MatchEndDueToTime: "%PLUGINPREFIX%&6The match has now ended! &cKill the opponent quicker next time!"

NoArenaFound: "%PLUGINPREFIX%&6No arenas are currently available"
#The message shown when the a user has been force removed from a duel or trade (On server reboot, or plugin reload for example)
ForceKickOutOfDuel: "%PLUGINPREFIX%&cThe plugin has been reloaded &6(Items have been refunded)"

#Stats messages
#If the stats option is not enabled, this is the message that is sent
StatsNotEnabled: "%PLUGINPREFIX%&cStats has not been enabled!"
#Message of the players stats - Replace %WR% for the win/loose ratio, %WINS% for the total wins, and %LOOSES% for the looses
PlayersStats: "%PLUGINPREFIX%&6You have won &a%WINS%&6 games and lost &c%LOOSES%&6. Your win/loose ration is &e%WR%"
#Similar to the above, however for a specified player, %TARGETPLAYER% can be used to get the target players name
TargetPlayerStats: "%PLUGINPREFIX%&6%TARGETPLAYER% has won &a%WINS%&6 games and lost &c%LOOSES%&6. Your win/loose ratio is &e%WR%"
#If the target player is invalid, this message is shown
TargetPlayerNotFound: "%PLUGINPREFIX%&c%TARGETPLAYER% is not online"

#If an error occurs while processing a command, the following message is sent
ErrorOccurred: "%PLUGINPREFIX%&cAn error has occurred while processing your last request, please try again soon"
 
Code (Text):

#Up to 54 kits can be created
#Kits are selected by the player just before the duel starts
#If only one kit is present in this file, that kit will be automatically wielded by the player - Else the player will select a kit via a GUI
#specifiy slot in here
#When a material is specified, first define the material type, then the amount, then the display name (use _ for spaces), then the lore (use _ for spaces and \n for new line) then the enchants
#Enchants must be one from here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/enchantments/Enchantment.html
#Example:
# "DIAMOND_SWORD:0 1 displayname:&7Fighter_&7Sword lore:&7Trusty_Sword|&7New_line! DAMAGE_ALL:5 "
KitsGUI:
  DisplayName: "&7Kits"
  Size: 9 #Must be a multiple of 9, 54 is max
Kits:
  Fighter: #This can be called anything really..
    DisplayIcon:
      DisplayMaterial: "DIAMOND_SWORD:0 1 displayname:&7Fighter DAMAGE_ALL:1 "
      HideEnchants: false #Whether enchants should be hidden
    Items:
      HeadSlot: "DIAMOND_HELMET:0 1" #Simply put "none" if you do not want anything in slot
      ChestSlot: "IRON_CHESTPLATE:0 1"
      LegSlot: "IRON_LEGGINGS:0 1"
      BootSlot: "DIAMOND_BOOTS:0 1"
      Inventory:
        - "DIAMOND_SWORD:0 1 displayname:&aTrusty_Sword DAMAGE_ALL:1"
        - "GRILLED_PORK:0 16"
  Archer:
    DisplayIcon:
      DisplayMaterial: "BOW:0 1 displayname:&7Archer ARROW_DAMAGE:3 ARROW_KNOCKBACK:1 "
      HideEnchants: false
    Items:
      HeadSlot: "LEATHER_HELMET:0 1"
      ChestSlot: "CHAINMAIL_CHESTPLATE:0 1"
      LegSlot: "CHAINMAIL_LEGGINGS:0 1"
      BootSlot: "LEATHER_BOOTS:0 1"
      Inventory:
        - "BOW:0 1 ARROW_DAMAGE:3 ARROW_KNOCKBACK:1"
        - "ARROW:0 32"
        - "STONE_SWORD:0 1"
        - "GRILLED_PORK:0 16"
 
Code (Text):

#Use this config for editing GUI settings

#Replace %PLAYER1% for the player, and %PLAYER2% for their opponent
StakeInventoryName: "&7<= My Staking | Their Staking =>"

#Not Accepted Item - shown when the user has not accepted the stake yet
NotAcceptedItem: STAINED_GLASS_PANE:14
NotAcceptedDisplayName: "&c&lNOT ACCEPTED"
#Accepted Item - shown when the user has accepted the trade
AcceptedItem: STAINED_GLASS_PANE:5
AcceptedDisplayName: "&a&LACCEPTED"

#The item that is located down the middle of the inventory (the divider)
DividerItem: STAINED_GLASS_PANE:15

#If Vault is enabled, would you like a money option in the GUI to appear where users can deposit money?
EnableMoneyInGUI: true
MoneyItem: GOLD_INGOT:0
#Increments
RightClick: -10
LeftClick: 10
ShiftRightClick: -100
ShiftLeftClick: 100

#This is the item that is shown to the user - Replace %AMOUNT% with the amount that the player has put up
PlayersMoneyDisplayName: "&7Your current stake is &e$%AMOUNT%"
#The lore of their money item, %RIGHTCLICK%, %LEFTCLICK%, %SHIFTRIGHTCLICK% and %SHIFTLEFTCLICK% can be used in order to get the prices
PlayersMoneyLore:
  - "&aLeft click to &craise &aby &e$%LEFTCLICK%"
  - "&aRight click to &clower &aby &e$%RIGHTCLICK%"
  - "&aShift Left click to &craise &aby &e$%SHIFTLEFTCLICK%"
  - "&aShift Right click to &clower &aby &e$%SHIFTRIGHTCLICK%"

#When the opponent places money up, the display name of the item will be this:
# (Replace %OPPONENTSAMOUNT% with the amount that they have staked)
OpponentsMoneyDisplayName: "&7Their current stake is &e$%OPPONENTSAMOUNT%"
OpponentsLore:
  - "&aThis is the amount of money they have bet!"

#Noises - https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Sound.html (This may differ depending on Spigot version) - Set any to 'none' for no noise to occur
ChangeMoneyNoise: ENTITY_EXPERIENCE_ORB_PICKUP
AddItemNoise: none #BLOCK_NOTE_CHIME
CountDownNoise: BLOCK_NOTE_PLING
EndCountDownNoise: ENTITY_PLAYER_LEVELUP #This sound is played on 0, when they are tp'd to the arena


#This item is shown as a filler, when no money is at stake for example
DudItem: STAINED_GLASS_PANE:15
 

[​IMG]
Coming soon :)

[​IMG]
Any problems, questions or suggestions send me a PM here, on Spigot :)

[​IMG]
By buying this plugin you agree to the following terms:
  • You will not chargeback - If you have a problem message me, in most cases I will happily refund the purchase (If within 48 Hours of purchase)
  • I cannot guarantee support indefinitely.
  • You may not redistribute or resell this plugin
  • I may refuse to give you support with or without any specific reason
  • If you have an issue with this plugin, please contact me before leaving a 1 or low star rating
  • I can update this terms of use at any time, without notification
Thanks!
Resource Information
Author:
----------
Total Downloads: 195
First Release: Nov 28, 2020
Last Update: Nov 28, 2020
Category: ---------------
All-Time Rating:
1 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings