Inactive [FUN/MECH] Duels v0.7.0 - Arranged PVP between players. [Major Economies][Permissions][1000]

Discussion in 'Inactive/Unsupported Plugins' started by zonedabone, Jun 14, 2011.

  1. Offline

    zonedabone

    NOTE: The plugin has been moved to the bukkitDev site here.


    Duels - A simple plugin to control battles between players - Safe PVP:
    Version: v0.7.0

    Duels controls PVP so that two players can fight only if they have both agreed. It also allows users to define terms for a battle, such as whether or not items are lost on death, what each player stakes, (iConomy) whether or not food can be eaten, if wolves will fight at your side, etc. It is currently under heavy development but testing is highly welcomed and appreciated.

    Features:
    • Blocks PVP between players that aren't dueling.
    • Allows for staking over a duel by participants. (iConomy)
    • Player forfeits match if they log out or run away.
    • Allows keeping of item on death, else puts drops directly in winner's inventory.
    • Controls wolves based on a setting.
    • Controls food use based on duel settings.
    • Messages can be set by a configuration value.
    Downloads:

    Download Duels (WGet)

    Source Code

    Instructions/Wiki

    How To Use:
    • Download Duels.jar and put it in your plugin directory.
    • Restart your server or /reload.
    • Edit the configuration at /plugins/Duels/config.yml to fit your needs.
    • Restart your server or /reload.
    • The plugin is now ready to use!
    • To initiate a duel with someone, type:
    Code:
    /duel challenge <player>
    • The other person will receive a notification. Accept duels with:
    Code:
    /duel challenge <player>
    • Once the duel has been accepted by both people, it is time to configure the duel using any of these parameters:
    Code:
    /duel set stake <money>      - Sets how much money you are staking.
     
    /duel set food <on/off>      - enables or disables food use.
    /duel set wolves <on/off>    - enables or disables wolves.
    /duel set keepitems <on/off> - sets whether you lose your items on death.
    • When you are satisfied with the current duel parameters, use:
    Code:
    /duel confirm
    • Once both players confirm, it's a fight to he death!
    Disabling in certain worlds:


    To disable in worlds, add this to the end of your config:
    Code:
    disabledworlds:
        - worlds
        - go
        - here
    Permission Nodes:
    The permissions nodes are divided into two main sections, user and admin.
    (Nodes with a # are for features that aren't yet implemented)
    • duels
      • user
        • challenge - can challenge others to duels
        • set
          • stake - can set a new stake
          • wolves - can change wolf settings
          • food - can change food settings
          • keepitems - can change keepitems settings
        • #admin - admin tasks
        • #peace - can stop all duels in progress
    To give users access to standard functions, simply give them the following node:

    Code:
    duels.user.*
    For admin tasks, (Not yet added) give users the following node:
    Code:
    duels.admin.*
    Some times, you might want to force a duel parameter to stay at the default setting. (Defined in the config) to do this, you can cancel out the node for that option. For example, if you always want users to lose items on death, (If defined in the config) you could add the following node to users:
    Code:
    -duels.user.set.keepitems
    To Do:
    • General bug fixing. (Pretty much bug free)
    • Add support for bukkit perms. (Can't wait?)
      • Depreciate permissions.
    If you have any ideas for additions, please post them on this thread. If you want to help out, you can fork the project on github and make any changes you'd like. I'll be sure to look at any pull requests!​

    Bugs:
    I currently know of no bugs in particular with Duels, though I'm sure there are some. If you find a problem, please be sure to post a detailed bug report on this thread.​

    Changelog:
    Version 0.7.0
    • Added support for more economies with Register. (iCo4, iCo5, BOSE, Essentials) As more economies are added to register, we will support them.
    Version 0.6.2
    • Added option to allow pvp outside of duels. (noduelpvp)
    Version 0.6.1
    • Added back commands. (No idea how they got removed)
    • Added back force fields. (Disabled by default) Try them out and tell me how they work! (I'm hoping they'll work again with bukkit 928)
    Version 0.6.0
    • Fixed bugs when parsing chat colors.
    • Added highscores support with ELO algorithm.
    • Added support for disabling in certain worlds.
    Version 0.5.0
    • Added permissions support!
    • Added ability to set default duel parameters.
    Version 0.4.0
    • Added configuration system. (Not all messages have been added yet!)
    • Fixed a few bugs. (Less serious this time ;))
    • Cleaned up the code a bit.
    Version 0.3.0
    • Cleaned up item respawn system.
    • Added food control!
    Version 0.2.0
    • Added wolf control.
    Version 0.1.0
    • Initial plugin release.
     
    KragTheDark and kahlilnc like this.
  2. Offline

    zonedabone

    What do you mean by compatible? If you mean you want it to not allow pvp during duels if in worldguarded, set forcepvp to false. If you want dueling allowed in worldguarded regions, set forcepvp to true.

    caron, internal error doesn't help. Please post the actual error from the console. I built it against 860, so I don't guarantee any compatibility with 818. In fact, I took advantage of a few new api elements to do this, so 818 will probably not work. Upgrade to 860. It won't break any plugins as far as I know and it should add support for this plugin.
     
  3. Offline

    zonedabone

    I've got the current changelog up. If anyone has any features they want implemented in 0.6.x, please speak now or hold your peace until 0.7.x.
     
  4. Odd bug:

    messageprefix: '&4[DUELS]&f'

    But ingame on Duel request it shows in white:

    4[DUELS]fName
     
  5. Offline

    zonedabone

    This is already fixed for 0.6.0, which I hope to release soon.

    P.S. are you an admin on buxville? I'd be honored if this plugin were used on it.
     
  6. I am its owner ;)

    I can't really find any info on the highscore feature, any commands or info about that?
     
  7. Offline

    zonedabone

    Yeah, it's not fully complete, so I haven't made documentation for it. It uses an ELO ranking algorithm, similar to that used in chess. Depending on rankingweight in the config, If it's one, the result of the battle will be either win or loss. (1 or 0 in ELO) If It's 1, the result will be on a scale from 0 to 1 based on the winner's health. (Or still 1/0 in the case of a retreat) If rankingweight is anything else, it will use a reverse parabolic scale. I prefer 2, because it gives a weighted scale while still favoring a number closer to 1.

    Note: basically I just take the rankingweighth root of the result. (Winner's hp over 20)

    Ok, so once I get that rank, I multiply it by Rankingmagnitude. This would be the k factor in the ELO ranking system. I then add this on to the winner's score and subtract it from the loser's score. These new scores are then saved back into the config file. I also keep track on games, losses, and wins. The save format is yaml and should be easily human readable.

    For more info on ELO, you can check out this website: www.chesselo.com/

    Currently, I wanted to get the bugfixes from 0.6.0 out ASAP so I didn't get to fully complete the highscore display system. The only way to display highscores now is to run command /duel highscores which displays the top 10 players or whatever value you set in the config. I'm hoping to add a number of players argument to this, and I also have a really cool display idea in the process of forming. I'm hoping to be able to use an array of signs in game to display a high score table, which would hopefully update at regular intervals or every time a duel takes place. (Probably a config option)

    If I left out anything, please don't hesitate to ask. Also, if there are any features you need in 0.7.0, I'd be happy to implement them.
     
  8. Offline

    darkwarriors

    but i dont understand something, if i have pvp enabled player can do pvp and also duel or this plugin disable all pvp and player can do pvp only with duel?
     
  9. Offline

    zonedabone

    This plugin blocks pvp between palyers that aren't in an active duel. Otherwise, there'd be no point.
     
  10. Offline

    RG_PankO

    I lost 2 hours trieing to set up a duel :/

    nickanme1: /duel challenge nickanme2
    nickanme2: /duel challenge nickaname1
    nickanme1: /duel set stake 5
    nickname2: /duel set stake 5
    nickanme1: /duel confirm
    nickname2: /duel confirm

    1 win, other lost, no diferences in iConomy money :/
    Anyone - what do I do wrong :/ ?

    my config:

    Code:
    useiconomy: true
    defaults:
        keepitems: true
        stake: 5
        food: false
        wolves: false
    We tried not to type /duel set dtake 5, becouse it has to be that way be default, but no succsess.

    In heighscores we have:

    Code:
    nickname11:
        duels: 1
        rating: 15.0
        wins: 1
    nickname2:
        duels: 1
        losses: 1
        rating: 5.0
    
    How come nickname 1 has 15 rating, while the other 5, and how come 1 duel recorded while we made 27375813571 thousands of bilions of trilions, you got the idea?
     
  11. Offline

    zonedabone

    First of all, did you get any errors? Those would definitely help diagnose the problem.

    Second, what version of iConomy are you using? Duels currently only supports iCo 5, though I hope to add support for more soon.

    Finally, give me the full config, copied directly from the file. The odd ranking changes are most likely associated with you using a weighted duels. I didn't get to test that very well. If you want to just have win/loss related duels, change rankingweight to 0.
    Also, the plugin flushes all highscore data to the disk when it is disabled. Be sure you reload your pluginsand then check out the file.
     
  12. Offline

    zonedabone

    I was looking at my highscore algorithms and there appears to be a few bugs. Not crash bugs, but bugs that can sometimes not lead to the scores that would be expected from a standard ELO algorithm. Here we go! 0.7.0!
     
  13. This plugin seems to be preventing PVP in all worlds automatically now.

    Shouldn't "forcepvp: false" mean that it doesn't touch that or so? I want to be able to enable PVP in a world, and have duels in other worlds.

    I tried removing the duels permission nodes, it still blocks all PVP interactions Oo
     
  14. Offline

    zonedabone

    No, not exactly. ForcePVP means that it will override other plugins' descisions to block pvp during duels. (Like if you want to have duels in towns)

    If you want to have no pvp enforcement in a world, add it to disabledworlds, as explained in the first post. Disabled worlds will not permit any commands, and will not mess with pvp at all.
     
  15. Sigh, sorry I forgot you had that feature...too many plugins >< thank you
     
  16. Offline

    zonedabone

    Where do you have this many plugins?

    P.S. What happened to buxville? The server was down for a while there.
     
  17. WOW :D You are really obsessed with Buxville.
     
  18. /duel set stake <-- wont seem to work ? nothing says when i type stake money amount.
    also i dont have permission to do keepitems on or off even if im admin?! :D
     
  19. Offline

    triarry

    Does this work with permissions 3.1.6?
     
  20. Offline

    zonedabone

    Sorry about not keeping up to date with bugs. My internet has been horrible for the past month, and the people in India thin it's my fault even though everyone in the neighborhood has the problem. =(

    About that error, it looks like just a little multiworld NPE. I really need to make some wrapper for getDistance.
     
  21. Offline

    Latros

    Howdy, I'm the owner of BattleCraft and we're looking for a duelling plugin that includes staking so that we have some "high risk" factors to the PvP... because in Minecrafts current state, the most you can risk is a set of diamond, and realistically even that isn't too much.

    Anyway, I'm quoting your above post because I would like to request the global-pvp-disable-if-not-duelling be OPTIONAL, I couldn't disagree more that "there'd be no point" otherwise. What many of my players feel is lacking is the "high risk" of a hardcore PvP server... which could be remedied if Notch implemented some ultra-rare items, but currently its way too easy to get the "rarest" stuff in the game.

    To balance that and make people crave the "high risk" gameplay (essentially gambling), we REALLY want to use this plugin but it MUST have global-pvp-disable to be optional. I would 110% be willing to pay you to develop that as a part of the plugin, and would (as I do with most major plugins we use) continually donate for updating it to the latest RB's.

    Let me know ASAP, we really want to start duelling for our cash, thanks!
     
    zonedabone likes this.
  22. Offline

    fatmarley

    Is it possible to have regular PVP and just use the duel when someone wants revenge or to defend his honor?
     
  23. Offline

    zonedabone

    Sounds like we have a response! I'll try to get that added with the next update. (I think my internet may be fixed now, but Verizon is known to give you false hope.)

    Also, I might implement register for economies, since some people want iConomy4 support.

    OMG Bow to the huge server admin! :D

    Enjoy the support for the other economies! If nobody has any other feature requests, I'll start fixing a couple of tiny bugs, clean up the code, and then we'll be ready to leave beta and jump up to 1.0.0!

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 16, 2016
  24. Offline

    Latros

    THANK YOU! Please get a PayPal donate button ASAP, I'll toss some money your way for helping us out!

    Also keep in mind Battlecraft is currently the largest PvP server in the world so it'll be a great testing environment - if there are any bugs to report, get ready for the floodgates to open with over 500 users per day using it o.o
     
  25. Offline

    zonedabone

    Please by all means open the floodgates. I should make a donate button. =) If there are any features you need, I'll be glad to add them. Also, please test the economy in 0.7.0, as I totally reworked it to support more economies, and I didn't get much bug fixing in.
     
  26. Offline

    fatmarley

    Thanks for the changes. My users are loving it, and have started to build duel arenas..

    I was thinking, how about a sign command like [duel3] and it would list the top 3 duelists!? something to motivate.


    EDIT: The stake command is not working on my server.
     
  27. Offline

    zonedabone

    Can you check for any console errors?

    Also check your startup logs and make sure it says it found a payment method.
     
  28. Offline

    LeGenDaryX

  29. Offline

    Matt

    Ok so

    I would love to have a description of the individual .yml settings and specific settings.

    Currently having difficulty getting this set up with multiverse. Not sure why.

    As far as i can tell from the forum posts you need to have pvp off.


    does that need to be with the server.properties file?

    Then forcepvp:true
    and not sure about noduelpvp but if you do not want pvp outside of duels make noduelpvp:true ?

    Yeah ive tested this up and down if its the settings.properties file its not compatible with multiverse world flags i believe

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 16, 2016
  30. Offline

    zonedabone

    Turning off pvp with the bukkit or vanilla settings will not work. You need a 3rd party plugin. I've tested with multiverse and it works.
     

Share This Page