[INACTIVE][MECH] CombatTag v2.1 - [818]

Discussion in 'Inactive/Unsupported Plugins' started by marinating, May 8, 2011.

  1. Offline

    marinating

    NEW VERSION BY TRC202
    CombatTag The essential PvP plugin that prevents hit-n-quit players. No longer will the fun of killing other players be ruined!
    Version: 2.1 (Updated by Trc202)

    This plugin was created at the request of Magesblood. To prevent players from logging off once they get hit on a PvP server, this plugin tracks players who have taken damage from another player. If they log off within a certain time limit, they will either be punished by death when they log in or a temporary ban from the server.
    The plugin is run with a config file (instructions provided, it creates itself from the .jar) and allows you to make some decisions based on how harsh you want the punishment to be. You can also change the ban time and the amount of a time a player is considered "tagged".
    A command is provided: /combattag that tells you if you're tagged and who you've tagged.




    Show Spoiler




    [Features]
    * Combat tagging and tracking
    * Select between banning or killing a player as punishment
    * Allow a player to steal the inventory of a person who has quit after being attacked
    * Configurable timers
    * Uses System.currentTimeMillis as opposed to server time for greater accuracy
    * Detects player to player interaction only, including arrows
    * Will not punish players if they are kicked or they disconnect for a reason other than voluntary logging off
    * Grace period gives players time to fix invisibility glitch (can be set to 0 for the ruthless)
    * Compatible up to version 766
    * <font color="rgb(255, 0, 0)"><font color="rgb(0, 0, 0)">Compatible with WorldGuard and Factions plugins for anti-PvP zones. Tagging only occurs in PvP enabled areas (as far as testing shows). </font></font>
    * <font color="rgb(255, 0, 0)"><font color="rgb(0, 0, 0)">Saves inventories of punished players that are redeemable through commands.</font></font>
    * Drop_items_on_pvp_log is a new configurable option that removes the /redeemitems functionality. (Makes players drop items on logging out) (by Trc202)
    * Supports Godmode! (by Trc202)
    * Persistence! (by Trc202)

    Latest Download: <Edit by Moderator: Redacted mediafire url>
    Download includes source code.

    FAQ



    Show Spoiler
    Commands:
    /combattag or /ct : Shows information about players (grace period or tag time if tagged, who you've tagged, how much longer they have)
    /redeemitems or /ri : Shows how many inventories are available for redeeming. Available only if DEATH is the selected punishment and Inventory_Steal=true in the config.
    /redeemitems # redeem or /ri # redeem : Replacing # with the index of the inventory you wish to redeem, ex. 1, 2, 4, 5 so on and so forth. Will transfer items into your own inventory. Be careful that overflowing items will disappear from existence, so don't try to redeem an inventory when your own is full.
    <font color="rgb(255, 0, 0)">Warning: Saved inventories are not persistent. If the server shuts down while you have redeemable inventories available, they will be lost. Redeemable inventories are made for the benefit of players who have tagged multiple people, not for stockpiling.</font>

    Explanation of Terms:
    Tag: A player who has been hit by another player is said to be tagged in combat.
    Grace period: A time specified in the config file in which a player may relog to fix the invisibility glitch. If a tagged player hasn't returned by the end of the grace period, they receive a punishment.
    Tag duration: An amount of time specified in the config file during which a player may not log off. If they do, they receive a punishment.
    Punishment: Specified in the config file, the options are currently DEATH and BAN. DEATH will kill the offending player when they log in again and may transfer their items to the tagging player. BAN will kick the offending player off if they try to log in again within a set amount of time. An iConomy based punishment is coming soon. More suggestions are welcome.
    If you have any questions, please post in the comments!



    Changelog



    Show Spoiler
    Version 1.0
    * Release

    Version 1.1
    * Less spam
    * Added grace period
    * Added configurable lightning
    * Compatible with no-PvP zones



    Version 2.0
    * Major bugfixes
    * Fixed grace period error
    * Added redeemable inventories
    * Allows players to see items in redeemable inventories
    * Updated /ct output to be more helpful

    Version 2.1 (courtesy of Trc202)
    * Added new config option
    * Fixes reloading errors
    * No more duplicate items
    * Added new features

    Coming soon: iConomy support!
     
    Last edited by a moderator: Dec 14, 2016
  2. Offline

    Magesblood

    Thank you I will try it out tonight. :) props to you!

    Ok, I noticed one thing so far. If you log off when your tagged then log back on, any players around you get struck by the lightning also causing them to take damage.

    And for a addition to the awesome plugin: Let players have a window of time to log back in after logging out, just in case the other player was invisible and you had to relog.

    Edit: Another thing I found, players can be tagged in safe zones. Making safe zones not safe :p
    Other than those 2 things I would say this is working pretty well right now.
    Thanks again

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

    Brvtvs

    Awesome plugin
     
  4. Offline

    marinating

    I can fix the lightning later today and make it so that if the tagger uses a command (/allow or something) then the tagged player will be untagged.
    I'm not sure how to make this work with safe zones though, if safe zones is a separate plugin.
     
  5. Offline

    EwMeep

    very nice plugin, been lookin for something like this for months.
    make it so the person instead of dying when they relog, they drop all their items when they do log.
    So if they log out for 5 hours, the killer doesn't have the patience to wait 5 hours and they can just run back to
    where they died.
     
  6. Offline

    Magesblood

    Mabey only tag the player if damage is done? Also the spam is a little much :p
    Also i just want the lightning to not do damage to other players if that is possible.
     
  7. Offline

    marinating

    Right now the tag is hooked onto EntityDamageEntity, so it should be doing that already.
    I can't do anything about the spam. The hook is triggered twice and I have no idea why.
    I'm going to fix the lightning tonight.
     
  8. Offline

    Magesblood

    Like with a worldguard region with PvP=disabled it is still tagging people for some reason.
     
  9. Offline

    marinating

    What's your server IP? Maybe I could play and take a look at the issue.
     
  10. Offline

    Magesblood

    Will you be on in about 3 hours? I have class in 20 min and I have the plugin disabled because of the problem. The IP will be 50.22.36.185:25576.
     
  11. Offline

    marinating

    I'll come back in 3 hours, I'm leaving as well. I've fixed the lightning issue but I have no idea how to work with other plugins (aside from Permissions and iConomy) to figure out if a player is protected.
     
  12. Offline

    Magesblood

    Alright I'll pm you when i get back.
     
  13. Offline

    marinating

    Uploaded a version that doesn't have a lightning strike at all (the method that generates the animation without damaging nearby players is missing).
     
  14. Offline

    Magesblood

    Alright cool I'll test it when I get back.
     
  15. Offline

    marinating

    Minor fix, but I really can't deal with the PvP off issue. I've tested it with worldwide PvP and the damage still registers. This is totally out of my control. :[
     
  16. Offline

    Magesblood

    @marinating
    PlayerA hits PlayerB.
    PlayerB logs out because he cannot see PlayerA due to a invisibility glitch.
    PlayerB has a set amount of time to log back in, before he gets penalized. Time set in the config.
    (Scenario 1)
    PlayerB logs back in within the set amount of time. (Hes fine unless...)
    If PlayerB logs off again he will be penalized. (No need to log off twice)
    (Scenario 2)
    PlayerB does not log in within the set amount of time.
    PlayerB's inventory is given to PlayerA. (If PlayerA's inventory is full drop the items on him and alert him with a message)
    PlayerB's Inventory is then cleared.

    Hopes this helps.
     
  17. Offline

    marinating

    Major update includes grace period, and no-PvP zone compatibility.

    When a player logs off under penalty their inventory is immediately given to the person that tagged them.
    When they log back in their inventory is wiped. So it does what you asked for already.

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

    Magesblood

    Plugin fully works now, in and out of pvp zones thanks!
     
  19. Offline

    m5k

    Will this work with GroupPvP set to disabled for certain permissions groups?
     
  20. Offline

    marinating

    Test it, find out, and please report your findings. :D
    The only thing I can guarantee that this works with is WorldGuard and Factions, although there is no reason (that I can figure out) why it would break for GroupPvP.
     
  21. Offline

    Magesblood

    Yes this works with MCmmo groups and factions groups :). No reason why it wouldn't work for everything else.
     
  22. Offline

    compgurusteve

    What is the spawn_at_last config for? Can you add more config options, such as editing the text displayed to all players as well as toggleable options to display them at all?
     
  23. Offline

    jamoowns

    Thanks for the great plugin, exactly what I was looking for! :D
    Good luck in getting the cross-plugin thing going, and it'll be nice when we see the iConomy compatibly come into it :p
     
  24. Offline

    naisto

    Yeah me and jamoowns, mainly jamoowns has been tyring to make this :p lol nice plugin, love to see iconomy support and even cooler if you could get faction support

    e.g :

    player logs out and looses extra power when he looses in combat ?

    or another player could gain power from killing another
     
  25. Offline

    marinating

    @compgurusteve: Spawn_at_last will make players spawn where they logged off you set true. Otherwise they die and reappear at spawn. I could make the text options, but I'm not sure if it's worth the trouble making a bunch of extra config options. I'll consider it.
    @jamoowns: I was planning to add two new penalties: one based on iConomy and one that prevents you from logging off at all.
    @naisto: I'm not sure how to get faction support because I haven't seen its api around anywhere. I don't know how to hook into it like I can for permissions or iConomy. If you could find me a link that would make it a lot easier :D
     
  26. Offline

    Chiss

    Hey marinating.

    I'm the developer of CMod, which i beleive is the cause of this request to you?
    http://forums.bukkit.org/threads/combat-logging.16469/

    I don't plan on releasing CMod as i like to think it keeps our server unique, with the best PvP experiences available on MineCraft.

    However, I'm happy to help you out a bit. Feel free to ask any questions you may have.

    In regards to your last post, with Factions support.
    You will need to do two things;
    - Connect your plugin to Factions via a PluginListener (similar to iConomy).
    - Edit Factions, creating public functions that allow external plugins to modify internal data.
    (Currently Factions has zero support for external modification).



    Hey Naisto, SUP!?

    The issue with that suggestion, although quite easily do-able, is that it encourages pointless murder. For example - people will go around attacking unarmed people who they normally would just leave be, just to gain power. It's generally more desirable to not reward players for doing such things.
     
  27. Offline

    Magesblood

    lol agree
     
  28. Offline

    marinating

    @Chiss: As an alternative, could I do an isCancelled() check at a High or Highest priority on a listener, so that I know if a lower level plugin has cancelled the damage event? I suppose this would only work if the PvP plugin operates at a Low or Lowest event priority though.
     
  29. Offline

    Chiss

    @marinating;

    To ensure i don't tag people on cancelled events, i delay the tag ever so slightly, to check if the event was cancelled first.
     
  30. Offline

    marinating

    Do you use the built in scheduler to add a delay?
     

Share This Page