[INACTIVE][MECH/FUN] Ignite v1.3.1 - The indiscriminate sunlight plugin [232]

Discussion in 'Inactive/Unsupported Plugins' started by 8e8, Jan 23, 2011.

  1. Offline

    8e8

    Ignite - The indiscriminate sunlight plugin
    v1.3.1 [232]
    Updated: 2/6/2011 11:34am EST

    Download - Donate
    Previous: v1.3 [232], v1.2.4 [186], v1.2.3 [186], v1.2.2 [168], v1.2.1 [126], v1.2 [126], v1.1 [126], v1.0 [126]

    Have you ever wanted to prevent the sun from burning Zombies/Skeletons? How about making the sun burn all mobs? Maybe you wanted to be a vampire? Or maybe you just want flaming arrows? All these and more are possible with Ignite. Basically, Ignite allows you to enable/disable combustion on entities (listed below) and players on the fly. Sound like fun? It sure is.

    Planned Features/Changes (suggestions are welcome):
    • Re-write Ignite when a better method is available
    • Add a command to list entities on the blacklist, and another for players on the white/blacklist
    • Re-write extinguish to be an addon/standalone, instead of an internal command
    • Add ability to ignite entity (in crosshairs|hit with tool)?
    Supported Entity Names:

    Code:
    #Ignite/entity.blacklist
    Zombie,Skeleton,Creeper,Spider,Squid,Cow,Pig,Sheep,Chicken,Arrow,Boat,Egg,Fish,Ghast,Item,PigZombie,Player,Slime,Snowball
    Command Usage (open)

    Supported tags
    Code:
    ignite|ig, extinguish|ex, toggle|t, reconfig|r, entity|e, player|p
    Reload configuration and white/blacklists
    Code:
    /ignite reconfig
    Toggle (open)

    Toggle Ignite function off/on
    Code:
    /ignite toggle
    Toggle Ignite on entityName
    Code:
    /ignite toggle entity entityName
    Toggle Ignite on playerName
    Code:
    /ignite toggle player playerName

    Ignite (open)

    Ignite all entites
    Code:
    /ignite
    Ignite blacklisted entities
    Code:
    /ignite list
    Ignite entity type entityName
    Code:
    /ignite entity entityName
    Ignite player playerName
    Code:
    /ignite player playerName

    Extinguish (open)

    Extinguish all entities
    Code:
    /extinguish
    Extinguish blacklisted entities
    Code:
    /extinguish list
    Extinguish entity type entityName
    Code:
    /extinguish entity entityName
    Extinguish player playerName
    Code:
    /extinguish player playerName


    Configuration (open)

    Player protection method:
    Code:
    #Ignite/plugin.config
    #True to protect whitelisted players when Ignite is on
    #False to burn blacklisted players when Ignite is on
    use-whitelist=true
    To use white/blacklist:
    Code:
    #Ignite/player.white/blacklist
    Insert,Player,Names,Like,So,caseinsensitive
    User Authentication Method (supports Nijikokun's Permissions):
    Code:
    #Ignite/plugin.confg
    use-permissions=false
    Log Commands:
    Code:
    #Ignite/plugin.config
    log-commands=true
    To add permissions (Default):
    Code:
    #Ignite/authorized.users
    Insert,Player,Names,Like,So,caseinsensitive
    To add permissions (Nijikokun's Permissions):
    Code:
    #Permissions/config.yml
    permissions:
        - 'ignite.reconfig'
        - 'ignite.toggle.plugin'
        - 'ignite.toggle.entity'
        - 'ignite.toggle.player'
        - 'ignite.ignite.all'
        - 'ignite.ignite.list'
        - 'ignite.ignite.entity'
        - 'ignite.ignite.player'
        - 'ignite.extinguish.all'
        - 'ignite.extinguish.list'
        - 'ignite.extinguish.entity'
        - 'ignite.extinguish.player'
    

    Changelog (open)

    Changelog:
    v1.3.1
    v1.3
    v1.2.4
    v1.2.3
    v1.2.2
    v1.2.1
    v1.2
    v1.1
     
    Fugensnot and Chumber like this.
  2. Offline

    Lime Studios

    Man you are the best I have wanted this for a while!
     
  3. Offline

    Seth.D

    I was the person who suggested this. Glad to see you accepted my request. Thanks a lot, 8e8! I really appreciate it. Will test it and post bug report soon. (If any)
     
  4. Offline

    8e8

    Enjoy! If you have any suggestions to make please let me know.

    I realized that some commands will still log even with log-commands=false, and it's something I will fix when I add the player safelist. I'm just waiting for some stress testing to see how well the plugin does. I need people with modest size servers (lot's of players, or players spread out, or both) to test this for lag issues.
     
  5. Offline

    zehkaiser

    I love the idea of flaming arrows! Maybe you can set it so individual players can have access to them?

    The reason I ask is I was thinking of making it so if a player pays an outrageous amount of money (in iConomy, or some similar currency) I can allow them to use fire arrows.
     
  6. Offline

    8e8

    If I find it necessary to rewrite how an arrow is set on fire I might consider that, but tbh that's beyond the scope of this plugin. Besides, I don't believe there is any added benefit to flaming arrows beyond the looks (though I may be wrong).
     
  7. Offline

    Bronski

    Well I got vampire-mode working. My friend is gonna crack up when he logs on and sees "Fear the sun, vampire!" as the MOTD, then promptly catches on fire [​IMG]

    I didn't see this, but what is the difference between Player and PlayerMP in your example? Also, will you add the ability to name specific players to the list (a blacklist, I guess, if the white list saves you hehe)? I tried my name, both capitalized and not, and it didn't seem to work. I may have done something else wrong though.

    Thanks and good luck with it.
     
  8. Offline

    8e8

    The difference is that Player is in SP, while PlayerMP is in SMP. Typing in either of them will have the same result in the plugin. I just left it on the list because I may seperate them later.

    On the matter of the safelist: It's not something I've added yet, but will probably do so tomorrow.
     
  9. Offline

    Ray

    Getting a traceback with CraftBukkit 135:

    Exception in thread "Timer-0" java.util.ConcurrentModificationException
    at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
    at java.util.AbstractList$Itr.next(AbstractList.java:343)
    at com.eighty8.bukkit.ignite.IgniteIgnition.callIgnite(IgniteIgnition.java:46)
    at com.eighty8.bukkit.ignite.IgniteIgnition$1.run(IgniteIgnition.java:33)
    at java.util.TimerThread.mainLoop(Timer.java:512)
    at java.util.TimerThread.run(Timer.java:462)

    After that, ignation is off. I had to toggle it again ;P
    Is there a way that ignation always happens to selected entities?
     
  10. Offline

    8e8

    Thanks for reporting that. When you say toggle, you mean /ignite toggle and it worked?

    Not sure what you mean by having it always happen to the selected entities. Day and night?
     
  11. Offline

    Ray

    Thanks for the reply :)
    First, i checked if your plugin was enabled (it was) and no error show up in server log.
    Then i tried to spawn a spider and nothing happend at day (altough in entities.txt listed). So i tried toggle, then this error appears.
    What i mean with "it always happen" is, that after this error and toggling your plugin on, no entity listed in your entities.txt getting damage (except zombie and skeleton). Even if i tried to re-toggle, nothing happens. I think
    its because of this error shown in my last post.
    After restart the server everything worked - till now i was unable to reproduce the problem.

    Got another traceback: Disabled and Re-enabled your plugin:

    Exception in thread "Thread-17118" java.lang.IllegalStateException: Timer already cancelled.
    at java.util.Timer.sched(Timer.java:354)
    at java.util.Timer.scheduleAtFixedRate(Timer.java:296)
    at com.eighty8.bukkit.ignite.IgniteIgnition.startTimer(IgniteIgnition.java:31)
    at com.eighty8.bukkit.ignite.Ignite.onEnable(Ignite.java:63)
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:135)
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:285)
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:175)
    at org.bukkit.earth2me.hotswap.PluginCommand$1.run(PluginCommand.java:131)
    at java.lang.Thread.run(Thread.java:662)

    this one is reproducable.

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

    8e8

    Ahahhh. The last error you posted looks like it's because of plugin enable/disable. I think I have to setup a new timer each time that happens, else that error happens. Thanks for reporting that. I'll look for a fix for the first one, and then rewrite the disable to fix the second.
     
  13. Offline

    Ray

    Ah okay, thanks for your reply! I think this could also be one of the reasons that leads to my first traceback.
    I just keep testing the next version :)
    Thanks!
     
  14. Offline

    RenStrike

    Got this error after backing up my server. May be the same as the previous reported errors but thought I should let you know anyway. Also got a report from a player that, although it looks like the mobs are burning, they don't seem to be dying. You think this error caused that?

    Thanks!

    Code:
    save-all
    2011-01-24 01:10:53 [INFO] CONSOLE: Forcing save..
    2011-01-24 01:10:53 [INFO] CONSOLE: Save complete.
    save-off
    2011-01-24 01:10:58 [INFO] CONSOLE: Disabling level saving..
    save-on
    2011-01-24 01:11:27 [INFO] CONSOLE: Enabling level saving..
    Exception in thread "Timer-0" java.util.ConcurrentModificationException
            at java.util.AbstractList$Itr.checkForComodification(Unknown Source)
            at java.util.AbstractList$Itr.next(Unknown Source)
            at com.eighty8.bukkit.ignite.IgniteIgnition.callIgnite(IgniteIgnition.ja
    va:46)
            at com.eighty8.bukkit.ignite.IgniteIgnition$1.run(IgniteIgnition.java:33
    )
            at java.util.TimerThread.mainLoop(Unknown Source)
            at java.util.TimerThread.run(Unknown Source)
     
  15. Offline

    Ray

    Looks like my first traceback - could be the same issue. I had the same behavior as you, ignation doesnt seem to be automatically burn the selected entities after this traceback, only with /ignite command, right?
     
  16. Offline

    Bronski

    I also had mobs that were burning but not dying last night. I became a little unclear about what the /ignite command actually does (Set everything on fire that could be on fire at this moment? What if it's night when I use it?). I was also unsure of the toggle status without actually toggling it.

    Now we just need someone to write a mod that adds vampire bats (or changes zombies into them maybe) that turn you into a vampire if they bite you. Then you can bite other players to turn them. Mwah. hah. hah.

    :p
     
  17. Offline

    Seth.D

    Whenever I type a /ignite command, it just returns a list of /ignite commands. As if I were using a help command.

    Yes my name is in users.txt.

    Fortunately though, the mobs that I specify in entities.txt burn exactly like they should. Unfortunately, players don't burn even though I put their names in that list.
     
  18. Offline

    8e8

    The mobs that are default to burn in the sun, but aren't on your entity blacklist, will have a visual glitch on them. This is because the burn event is being canceled server side, and then being sent to the client. It causes the flames to flicker on the client's screen. If there is little to no latency/lag between the server and client then it won't be seen. If you're, however, speaking of something else then please provide me more info (ie. time of day, mob type, were they initially set to ignite in the config?, was the toggle command used on them?, was the plugin toggled?).

    I have been rewriting a lot of the plugin to make it more organized, and the burn events function better. I may have solved the timer problem from both of the errors posted, but I will have to test that. I'll also be adding/changing the following commands, although some might not come 'till the version after the next:

    /ignite (Will stay the same, meaning it will ignite those on the blacklist)
    /ignite-all
    /ignite entity ([The one you're looking at | The one you hit with the defined item] Haven't decided on which yet, maybe both)
    /ignite player playerName
    /ignite entities entityName
    /ignite reconfig (Reload the configuration and entities/players list)
    /ignite toggle
    or /ig

    /extinguish (Will extinguish all entities, but if they're in the sun it will ignite them again)
    /extinguish entity ([The one you're looking at | The one you hit with the defined item] Haven't decided on which yet, maybe both)
    /extinguish player playerName
    /extinguish entities entityName
    or /ex

    I think that's all for now.
    --- merged: Jan 25, 2011 2:31 AM ---
    The reason it returns that list is because you're using the command wrong. As I said in my initial post, I will be adding the ability to toggle it on specific players. For now you'll have to turn them all into vampires by adding Player/PlayerMP to the list.

    @Bronski: forgot to mention this in my last post http://forums.bukkit.org/threads/rpg-vampires-v0-1-the-thirst-135.1732/#post-21909
    He's the one who showed me how to use Minecraft's combustion method.
     
  19. Offline

    RenStrike

    Any idea when this will be updated to address the problems above? I've got a lot of clients that are looking forward to it, :)
     
  20. Offline

    8e8

    Sorry, things aren't going quite as planned. I fear that the method I'm using is what's going to break this plugin. I've decided to look for the combustion event to see how it's called on zombies and skeletons and then try to recreate it for all the entities.

    I have the majority of the update for all the commands done, and did some house work on the code. I just don't feel that it would be a good idea to release the update in it's current state. Until I've written the new method, the command update and enable/disable bug fix won't be released.

    Hang in there with me people! The new method should be very solid, and more responsive than the current.
     
  21. Offline

    Ray

    Yeah! :D
    Great to hear, i´ll be waiting!

    Thanks for your work!
     
  22. Offline

    chibirubara

    Question: Do you know of a method that might stop creepers from dropping gunpowder upon dying in sunlight? I notice its not an absolute (some gunpowder may be burnt up i guess). Otherwise, thanks for the awesome plugin, man!
     
  23. Offline

    8e8

    Good news everyone! It appears that you won't have to wait as long as expected. Instead of being at the mercy of the developers to find a fix for my problem I've decided to use a hackish method until a better one can be made. At first I didn't think it would work, but it appears to be doing quite the opposite! No more ConcurrentModificationException errors my friends. Onward and upward from here.

    I'm in the process of testing the new features I've added, and also contemplating writing a method to turn off the timer function during night hours (for performance reasons). I should also mention that I've setup the plugin to use a player white/blacklist so you can have control over how it reacts to players. Basically, you can burn players on the blacklist without having the player entity in the entity blacklist, or you can burn everyone except those on the whitelist.

    I should have this done and ready for release within 2 hours. So hold onto your hats while I get things moving!

    @chibirubara I'll take that into consideration. If others support the idea then I'll most likely add it.
    --- merged: Jan 26, 2011 10:57 AM ---
    Plugin updated! If you're already using the plugin be sure to re-read the post. I'll be saving the day/night checker for tomorrow as I'm quite tired of looking at code for tonight. Enjoy!

    Changelog:
    v1.1
    • Fixed ConcurrentModificationException error
    • Fixed error on plugin disable/enable
    • Added player white/blacklist
    • Added support for short tags
    • Added new commands: reconfig, extinguish
    • Changed syntax for commands: ignite, toggle
    • Renamed files used by plugin
    • Rewrote majority of plugin for readability and performance
     
  24. Offline

    Ray

    Nice! Thanks, downloaded and testing now! :)
    --- merged: Jan 26, 2011 11:09 AM ---
    Ehm - /ignite list (amd /ig l) does not work?
    Just seems to trigger ignition.
    Can someone confirm this?
     
  25. Offline

    8e8

    It should work. If you're out in the open it would appear to do nothing. Anything on the blacklist that isn't in the sunlight (because if it is, then it should already be burning) would be lit on fire with that command. If not, I'll have to check.
     
  26. Offline

    Ray

    Ah okay - i assume that this command lists all entities which should ignite.
    Thanks again for this plugin! :)
     
  27. Offline

    Chumber

    Yay I finally got burning spiders and creepers, great plugin :D
     
  28. Offline

    RenStrike

    Why would the default setting of this plugin burn all players in the sunlight? I simply downloaded the plugin, added creepers to the blacklist, and updated my server. Now all my players are getting burned by the sun, and i'm stuck at work and can't fix it until i get home!
     
    jimmydorry likes this.
  29. Offline

    8e8

    Sorry, it's not meant to do that. I must have overlooked it since I always had my name on the whitelist when testing until I toggled it. I'll fix that along with adding the day/night check. Thanks for reporting that.
     
  30. Offline

    Cowspoo

    Amazing plugin 8e8!
     

Share This Page