Inactive [INACTIVE][INFO] HeroicDeath v1.11.2: Customizable server broadcasts on player death [1185]

Discussion in 'Inactive/Unsupported Plugins' started by SquallSeeD31, Feb 3, 2011.

     
  1. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    HeroicDeath - Player Death Notification Plugin (v1.11.2)
    Download HeroicDeath v1.11.2 [CraftBukkit 1174+]
    Download HeroicDeath v1.9.1 [CraftBukkit 1035~1173]
    Download HeroicDeath v1.8.2 [CraftBukkit 561~1034]
    Download HeroicDeath v1.6.1 [CraftBukkit 349~560]
    Download HeroicDeath v1.3.1 [CraftBukkit 348-]
    Latest Jar Only | In Development Jar

    COMPATIBILITY WARNING
    Due to API changes, if you are not using the latest Recommended Build of CraftBukkit, DO NOT download the latest build of HeroicDeath. I have provided links to all legacy versions of HeroicDeath based on which CraftBukkit versions they support.

    CraftIRC Integration
    Do you use CraftIRC? Do you want HeroicDeath to send its death messages to your IRC channel? Xon has developed a helper plugin to do just that! I do not maintain or test this plugin, but I am happy to endorse it and link it for any CraftIRC/HeroicDeath users who want to use both together.

    https://github.com/Xon/HeroicDeathToCraftIRC/downloads

    JSONAPI Integration
    Xon has ALSO developed a helper plugin that pushes HeroicDeath messages to JSONAPI, allowing server admins to easily procure deaths via anything capable of reading a JSON string. Thanks, Xon!

    https://github.com/downloads/Xon/HeroicDeathToJSONAPI/HeroicDeathToJSONAPI.jar

    Features
    • Broadcast cause of death when a player dies
    • Shows who killed whom in PvP and with what item
    • Shows which kind of monster was responsible for eating a player
    • Optionally shows which world they were killed in!
    • Define an unlimited (within reason) number of custom messages based on cause of death, and a random message will be chosen
    • Log deaths to a configurable file, including timestamp and location of death!
    • Send messages on a per-world basis or to the whole server, configure which worlds should get messages and which shouldn't!
    • Define the text color to be used for the message, the player(s) involved, and the "murder weapon" (for PvP deaths)
    • Customize item names to be displayed for PvP deaths (Ex. "Excalibur" instead of "Gold Sword")
    • Supports items with durability! (wood, coal, dye, wool)
    • Item list doesn't need to be updated for future Minecraft patches! (If an item is not defined in the items file, the name of its Material will be prettified and used by default)
    • Supports following causes of death (all lines below the :Tag will be treated as messages for that type of death):
      Code:
      :Drown
                          :Cactus
                          :Fire
                          :Explosion
                          :Creeper
                          :Ghast
                          :Slime
                          :Zombie
                          :PigZombie
                          :Spider
                          :Skeleton
                          :Giant
                          :Wolf
                          :Enderman
                          :CaveSpider
                          :Silverfish
                          :Chicken
                          :Cow
                          :Pig
                          :Sheep
                          :Squid
                          :Fall
                          :PVP
                          :Void
                          :Lava
                          :Other
                          :Suffocation
                          :Dispenser
                          :Lightning
                          :Suicide
                          :Starvation
    Screenshot






    [IMG]

    Installation
    1. FAST INSTALL: Drop the JAR in your plugins directory and reload plugins; HeroicDeath will automatically create default files. If you want to edit them before your first run:
    2. Download latest .ZIP archive from the link at the top
    3. Extract the archive into your main server directory (archive contains directory mapping)
    4. Open /plugins/HeroicDeath/config.yml and configure to taste
    5. Open /plugins/HeroicDeath/heroicdeath.messages and add/remove/edit death messages
    6. Open /plugins/HeroicDeath/heroicdeath.items and add/remove/edit item names
    7. Save all configuration files and reload your server
    Configuration


    config.yml
    The config file contains default text colors and logging preferences. You can specify the chat colors that will be used for broadcasting a death message, displaying the name of the dead (and their killer if applicable), and displaying the name of the item used to kill the player (for PvP deaths). You can now also choose whether or not to log death data, death messages, and a few formatting choices for your logs.

    This file is saved in the YAML format, so please be sure to maintain the formatting and change only the element values.
    Default configuration:

    Code:
    # HeroicDeath Configuration
    # Messages are defined in heroicdeath.messages
    # Items (for PvP kills) are defined in heroicdeath.items
    # This file is for configuration of colors, log preferences and localized mob names
    ## Color options
    ## message: Text color of death notifications, wrapped around names/item.
    ## name: Color for the name of victim and killer.
    ## item: Color for the name of the item used in a PvP death.
    #Color is defined according to the Bukkit enum ChatColor
    #Acceptable entries:
    ##BLACK
    ##DARK_BLUE
    ##DARK_GREEN
    ##DARK_AQUA
    ##DARK_RED
    ##DARK_PURPLE
    ##GOLD
    ##GRAY
    ##DARK_GRAY
    ##BLUE
    ##GREEN
    ##AQUA
    ##RED
    ##LIGHT_PURPLE
    ##YELLOW
    ##WHITE
    #
    #If color entered is inappropriate, HeroicDeath will default to the following values:
    ##message: RED
    ##name: DARK_AQUA
    ##item: GOLD
    colors:
        message: RED
        name: DARK_AQUA
        item: GOLD
    
    #Logging Preferences:
    ##data: true to log a serialized object representing all the relevant information associated with a death
    ##messages: true to log death messages (as output to the server) to a separate file
    ##time: Whether or not to timestamp messages (if logging messages), and what timestamp format to use for data/messages
    ###stamp: true to timestamp messages
    ###format: Uses format strings from Java SimpleDateFormat.  Read all here: http://download.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html
    ##files: Filenames to store data/messages in.  A server admin could ostensibly change this value daily/weekly/monthly for collection of timed logs
    ###data: Data storage filename
    ###messages: Messages storage filename
    log:
        data: true
        messages: true
        time:
            stamp: true
            format: MM/dd/yyyy HH:mm:ss z
        files:
            data: death_data.log
            messages: death_messages.log
    
    #Event Support:
    ##If you only want HeroicDeath to send its custom event for other plugins to pick up, and NOT send the death message, set this to true.
    events:
        only: false
    
    #Localized monster names:
    ##If you would like to specify custom localization for the mob names, edit the defaults below
    monsters:
        ghast: Ghast
        slime: Slime
        monster: Monster
        zombie: Zombie
        pigzombie: PigZombie
        spider: Spider
        creeper: Creeper
        skeleton: Skeleton
        wolf: Wolf
        unknown: Unknown
        giant: Giant
    #Options
    ##useDisplayName: Set to true if you want HeroicDeath to display the player's display name instead of their fixed character name.
    ##serverBroadcast: Set to FALSE if you want HeroicDeath to only broadcast its messages in the world they belong to.
    ##worlds: Lists of quiet/loud worlds for broadcast targeting. NOTE: World names are case-sensitive.
    ###quiet: Worlds listed here will NEVER receive ANY HeroicDeath broadcasts.
    ###loud: Worlds listed here will ALWAYS receive ALL HeroicDeath broadcasts.
    options:
        useDisplayName: false
        serverBroadcast: true
        worlds:
            quiet: [peacefulworld, noobworld]
            loud: [pvpworld, nether]
    



    heroicdeath.messages
    Contains all the possible messages that can be displayed, sorted by type of death. Every line under a death type label is treated as a message for that death type, until the next label is reached. Labels are prefixed with the colon ":" and are self-explanatory.
    Variables accepted in messages:

    Code:
    %d holds the name of the dead player.
    %a holds the name of the attacking entity (player or monster) for PVP and Monster deaths.
    %i holds the name of the attacking player's current item for PVP deaths.
    %w holds the world the death occurred in
    heroicdeath.items
    This file contains custom names for the item a PvP killer is holding. The names here will be replaced in the %i marker for PvP deaths. If a mapping is not provided for an item in this file, a default name will be used automatically.
    Item Format: NAME:ID:<Optional>DATA
    Item IDs and Data Values may be found on the Minecraft Wiki
    Optional DATA parameter uses hex notation, so purple wool would be "purple wool:35:0xa"

    Localization
    If you have translated heroicdeath.messages into another language and would like to share your translation with the community, let me know! I'd be happy to share it here in the OP for those looking.

    German - By Keav - http://dl.dropbox.com/u/40701071/heroicdeath.messages

    Changelog (Download Full Changelog)
    Version 1.11.2
    • Added 1.8 mobs Enderman, Cave Spider, Silverfish
    • Added passive mobs Chicken, Cow, Pig, Sheep, Squid
    Version 1.11.1
    • Fixed an exception that would occur if the player dies without being damaged first (such as by a rogue plugin)
    Version 1.11.0
    • Added support for MC 1.8.1 death messages (by removing them)
    • Added new MC 1.8.1 items
    • Added support for STARVATION DamageCause
    Version 1.10.0
    • Added support for SUICIDE DamageCause, mainly for the /suicide and /kill default commands.

    This post has been edited 17 times. It was last edited by SquallSeeD31 Sep 23, 2011.
    kahlilnc, Chike, SmartyGeek and 20 others like this.
  2.  
  3. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I don't know if it's CraftIRC specifically, but someone else wrote a plugin that uses HeroicDeath's custom event to pass messages to an IRC bot: http://forums.bukkit.org/threads/in...necraft-server-bot-for-irc-channels-471.6151/

    I've received requests in the past to add direct CraftIRC support to HeroicDeath, and my understanding is that it should be easier now that CraftIRC 2.0 is out, so perhaps I'll look into that for a future revision. =)
  4. Offline

    Liquidmantis

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    See Xon's post here.
  5. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Right! I forgot about poor Xon =( Sorry Xon!
  6. Offline

    curtanee

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    im new to been a server owner and iv just installed this but it doesnt show up in game chat log that someone died.
    it shows up in the web administration console's chat log, can anyone tell me what is happening here
  7. Offline

    Ragepyro

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Hi, i'm loving the mod as it gives us a great way to mock peoples failure.

    I was wondering if in the next revision you could add different messages for every mob, like the creeper has? It would make this awesome mod even more awesome.
  8. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Can you pastebin your config.yml? If events.only is true, HeroicDeath will only send out its custom event, instead of also notifying the world.

    @Ragepyro: A couple people have asked for it, I'd consider it a "to-do"
  9. Offline

    Ragepyro

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Awesome. Someone suggested while I was adding more messages that I put 'Got boned' as a skeleton one, but I had to say I couldn't D:
  10. Offline

    Kartus

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    i suggest in config separate death messages for each monster. so i can make specific messages for example killed by spider: "was enwrapped in silk by a spider"
  11. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Okay, alright already, I'll add per-mob death messages. :p
  12. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Okay, support for per-mob death messages is added in 1.6.0. Read the changelog/OP for details and feel free to ask questions.
  13. Offline

    gyoza

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    yo, i may be retarded and couldnt see this in your post but how do i add colors to the death.messages file?
  14. Offline

    HanzoSanada

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    How is this supposed to work? Do the messages come automatically after death, just by putting the plugin in?

    When I die nothing happens =/
  15. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    You can specify the color of names (attacker, victim), of items (used to kill when it's a PvP death), and of messages (in general) in the config.yml, but I do not have an easy way for the time being to add any other color at custom points in the messages. In theory, a \u00A7 character (section symbol, '§') followed by the appropriate color number should parse appropriately, but I haven't explicitly tested that.
  16. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Yes, if you have not set the node events.only to "true" in the config.yml, HeroicDeath will broadcast a message to the server whenever a player dies. You can see if it's working, even if you *do* have events.only set to true, by checking the server console; the death message should go to the server console regardless.

    If that's not working, please post your CraftBukkit version, HeroicDeath version, and any errors you may see in the console when HeroicDeath is enabled.
  17. Offline

    curtanee

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    thanks, ive got it working now :) awesome plugin
  18. Offline

    HanzoSanada

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Thank You. Turns out I thought an outside command /kill would work with this plugin. Its fixed. ;)
  19. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Ah, sorry. I only listen for ENTITY_DEATH, which doesn't typically get called with the way some plugins effect their kill commands. Glad to hear it works fine otherwise. =)
  20. Offline

    Achilles

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Using CraftBukkit v.531


  21. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    So the error you posted is an error in the config.yml, most likely caused by a manual edit that malformed the structure of the YAML (or used a tab character). If you pastie/pastebin your config.yml I can take a look at it and see if I can figure out what the issue is.

    It's definitely unrelated to your CraftBukkit version though.
  22. Offline

    Achilles

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)

    Here it is...

  23. Offline

    Trinsec

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I wonder if it's possible to add a prefix to the messages for console only so that the log is a bit clearer and seperates the death messages from regular chat.
  24. Offline

    KoryuObihiro

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Awesome plugin. Just added about 20 of my own death messages to the defaults, I have my friends LOLing every time we get snuffed for whatever reason. :)
  25. Offline

    MadJawa

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I noticed something in this file: you use a HashMap<String, MaterialData> but I think you should use HashMap<MaterialData, String> instead because right now two items can't have the same custom name.

    I was the item names and I noticed that some of them didn't work at all in game because I was using the same name for some similar items, and so they couldn't be added to the hashmap[IMG]
  26. Offline

    Nykhola

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Hy !
    I found a bug
    Heroic Death made conflict with War (and the problem where Died player don't have new stuff)
    Only whith the lastest version of Heroic Death
    With previously version, no problem, but with lastest version, WAR don't give new stuff after death.

    Sorry for my english, i'm french
  27. Offline

    ryunp

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Awesome plugin!
    I've noticed a few errors. They do not interupt the functionality but just giving you a heads up.
    These occur both on server start and when a player dies.

    CraftBukkit: 544
    HeroicDeath: 1.6.0
    Plugins: WorldEdit, JumpBlock, CraftBookCircuits, MyWarp, ChatBukkit, Permissions, MyHome, CraftBookMechanisms, ScrapBukkit, GroupManager, CraftBookCommon, HeroicDeath, LoginMessage, CraftBookVehicles, WorldGuard, HeroChat

    Code:
    15:37:17 [SEVERE] [HeroicDeath] Error writing message log:
    15:37:17 [SEVERE] java.io.FileNotFoundException: plugins/HeroicDeath/death_messages.log (Permission denied)
    15:37:17 [SEVERE]      at java.io.FileOutputStream.openAppend(Native Method)
    15:37:17 [SEVERE]      at java.io.FileOutputStream.<init>(FileOutputStream.java:207)
    15:37:17 [SEVERE]      at java.io.FileWriter.<init>(FileWriter.java:107)
    15:37:17 [SEVERE]      at com.herocraftonline.squallseed31.heroicdeath.HeroicDeath.recordDeath(HeroicDeath.java:184)
    15:37:17 [SEVERE]      at com.herocraftonline.squallseed31.heroicdeath.HeroicDeathListener.onEntityDeath(HeroicDeathListener.java:131)
    15:37:17 [SEVERE]      at org.bukkit.plugin.java.JavaPluginLoader$39.execute(JavaPluginLoader.java:361)
    15:37:17 [SEVERE]      at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:59)
    15:37:17 [SEVERE]      at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:255)
    15:37:17 [SEVERE]      at net.minecraft.server.EntityPlayer.a(EntityPlayer.java:119)
    15:37:17 [SEVERE]      at net.minecraft.server.EntityLiving.a(EntityLiving.java:393)
    15:37:17 [SEVERE]      at net.minecraft.server.EntityHuman.a(EntityHuman.java:378)
    15:37:17 [SEVERE]      at net.minecraft.server.EntityPlayer.a(EntityPlayer.java:145)
    15:37:17 [SEVERE]      at net.minecraft.server.EntityLiving.a(EntityLiving.java:491)
    15:37:17 [SEVERE]      at net.minecraft.server.Entity.a(Entity.java:581)
    15:37:17 [SEVERE]      at net.minecraft.server.EntityPlayer.b(EntityPlayer.java:261)
    15:37:17 [SEVERE]      at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:261)
    15:37:17 [SEVERE]      at net.minecraft.server.Packet10Flying.a(SourceFile:126)
    15:37:17 [SEVERE]      at net.minecraft.server.NetworkManager.a(SourceFile:230)
    15:37:17 [SEVERE]      at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:76)
    15:37:17 [SEVERE]      at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    15:37:17 [SEVERE]      at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:357)
    15:37:17 [SEVERE]      at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:272)
    15:37:17 [SEVERE]      at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    
    I noticed the "Permissions Denied" so re-chmod'd the plugin folder with 775. Created the 'death_messages.log' & 'death_data.log' with 775 permissions as well. When the server starts the error message is gone, but upon player death the above error still reoccurs. Humph. It's all default settings from install.
  28. Offline

    gyoza

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    This worked! thanks!

    Essentially i just cut and paste the § symbol then a color number into the messages file. Thanks!
  29. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    That's a good catch! I kept the Items and Messages classes as similar as I possibly could to the original DeathNotify hey0 plugin to maintain backwards-compatibility with its files, but that comes with the added baggage of not being inside the original author's mind. If I had to guess, I'd say it was originally written that way so that--at least in the future--support could be added for pulling a random custom name for the item as well as a random death message.

    Anyway, I'm not using it for that purpose, so having it *work* intuitively is the better goal, and as such I've made that change in all the relevant places in code and tested it, along with CraftBukkit 556 to ensure nothing else broke.

    Download version 1.6.1 to fix your woes =)
    KoryuObihiro likes this.
  30. Offline

    SquallSeeD31

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I'm not sure I understand what exactly the problem is. Certainly WAR has a lot to do with players dying, so I understand the potential for a conflict to exist, but I don't know what exactly the conflict is. I mean, are there any error messages? What's "new stuff after death"?
  31. Offline

    tommytony

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    @SquallSeeD31
    Don't worry too much about it. I'm looking into it. The "new stuff after death" is the player's respawn inventory.

    I verified that you're using the MONITOR event priority, so a conflict shouldn't happen, technically - i.e. it's probably my fault (I always got lucky in that players cheat death and tp automatically to their team's spawn even though there's no event.setCancelled(true) for ENTITY_DEATH). I'll install HeroicDeath and tease the problem out. I'll let you know when I've closed the issue. Thanks!
  32. Offline

    tommytony

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Done. War v1.3.1 fixes the conflict between our plugins.

    Edit: By the way, thanks for the awesome plugin. This is the perfect match for War (provided you don't have too many games going on at once). I can't believe I didn't install it before.
    KoryuObihiro likes this.

Share This Page