Incompatibility with Infected #14


  • Defect
  • Accepted
Open
Assigned to _ForgeUser8749090
  • _ForgeUser10299688 created this issue Dec 30, 2012

    I'm having a compatibility issue with the plugin Infected (http://dev.bukkit.org/server-mods/infected/) and this one. Whenever I have both running, the potion effects from Infected get applied weirdly (the timers are inaccurate), and it usually ends up in a strange disconnect. I have it configured so that whenever I get hit by a zombie, there's a 1/20 chance of going blind, slow, poisoned, and getting the hunger effect. But when this happens, I get disconnected from my server with the message "Internal Error". When I log back in, the server goes completely unresponsive (no chunks load, and I can't do anything on the Pail console interface).

    Also, when a zombie hits me, and applies ONLY dizziness, the time is incorrect. I experience only one second of dizziness when I have it set to five seconds. I'm sure this is not a plugin or configuration error: I get five seconds of dizziness with Infected installed alone.

    I'm not sure if it's any single potion effect from the zombie causing this, or all of them. (I haven't tested it yet because I'm kinda busy on configuring other plugins.) I'm sure it's not the zombie itself causing the crash because it happens when a slime applies similar effects to me. I'm also sure neither plugin causes the 'crash' on its own: I've tested both plugins by themselves and they turned out perfectly fine.

    What steps will reproduce the problem?
    1. Install both plugins.
    2. Configure infected so that getting hit by "x" mob deals some potion effect (or a combination of potion effects).
    3. Go get hit by the configured mob enough times to have the potion effect(s) applied to you.

    What is the expected output? What do you see instead?
    I expected no disconnect, and accurate timers. Instead, when a zombie hit me and I got dizzy (and only dizzy), the dizziness would last about one second instead of five. When a zombie hit me and applied the other four potion effects, I got disconnected.

    What version of the product are you using?
    I'm using the latest version of both plugins. Oddly, when I use the version just before you added Crazy Combat (2.0.2), both plugins work together just fine. I suspect you might have changed the handling of potion effects or something, but I don't really know. It is also because of this that I suspect the problem may be on your end. (Not that it's your fault.)

    Do you have an error log of what happened?

    2012-12-30 11:49:44 [WARNING] Failed to handle packet for General_Kosygin/127.0.0.1: java.util.ConcurrentModificationException
    java.util.ConcurrentModificationException
        at java.util.HashMap$HashIterator.nextEntry(Unknown Source)
        at java.util.HashMap$KeyIterator.next(Unknown Source)
        at net.minecraft.server.v1_4_6.EntityLiving.bx(EntityLiving.java:1631)
        at net.minecraft.server.v1_4_6.EntityLiving.y(EntityLiving.java:402)
        at net.minecraft.server.v1_4_6.Entity.j_(Entity.java:237)
        at net.minecraft.server.v1_4_6.EntityLiving.j_(EntityLiving.java:497)
        at net.minecraft.server.v1_4_6.EntityHuman.j_(EntityHuman.java:154)
        at net.minecraft.server.v1_4_6.EntityPlayer.g(EntityPlayer.java:193)
        at net.minecraft.server.v1_4_6.PlayerConnection.a(PlayerConnection.java:352)
        at net.minecraft.server.v1_4_6.Packet10Flying.handle(SourceFile:136)
        at net.minecraft.server.v1_4_6.Packet11PlayerPosition$$EnhancerByCGLIB$$bfdee273.CGLIB$handle$3(<generated>)
        at net.minecraft.server.v1_4_6.Packet11PlayerPosition$$EnhancerByCGLIB$$bfdee273$$FastClassByCGLIB$$4100c7b4.invoke(<generated>)
        at com.comphenix.net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
        at com.comphenix.protocol.injector.ReadPacketModifier.intercept(ReadPacketModifier.java:109)
        at net.minecraft.server.v1_4_6.Packet11PlayerPosition$$EnhancerByCGLIB$$bfdee273.handle(<generated>)
        at net.minecraft.server.v1_4_6.NetworkManager.b(NetworkManager.java:290)
        at net.minecraft.server.v1_4_6.PlayerConnection.d(PlayerConnection.java:112)
        at net.minecraft.server.v1_4_6.ServerConnection.b(SourceFile:39)
        at net.minecraft.server.v1_4_6.DedicatedServerConnection.b(SourceFile:30)
        at net.minecraft.server.v1_4_6.MinecraftServer.r(MinecraftServer.java:598)
        at net.minecraft.server.v1_4_6.DedicatedServer.r(DedicatedServer.java:224)
        at net.minecraft.server.v1_4_6.MinecraftServer.q(MinecraftServer.java:494)
        at net.minecraft.server.v1_4_6.MinecraftServer.run(MinecraftServer.java:427)
        at net.minecraft.server.v1_4_6.ThreadServerApplication.run(SourceFile:849)

    Please provide any additional information below.
    I'm wondering if you could incorporate the ideas from Infected into yours. They would actually sound like a great addition to this plugin, if it's doable without too much hassle.

    Oh right, I should probably include this: I'm using the latest Beta Build of Bukkit (1.4.6 v0.2). But it doesn't seem relevant to the issue at hand.

  • _ForgeUser10299688 added the tags New Defect Dec 30, 2012
  • _ForgeUser8749090 posted a comment Dec 30, 2012

    Hey CommodoreAlpha,

    First of all, let me thank you for spending good time on describing what happens.

    I have an idea that it's the new addition "Near Death" that is teasing you, try disabling it and see if that helps.

    I will do a setup of the two plugins together and run some tests. The idea with configuring extra abilities to mobs is a cool idea, and it would match the plugin nicely.

    I'll get on this right after new year, and thanks again for taking your time.

  • _ForgeUser10299688 posted a comment Dec 30, 2012

    Thanks for replying so quickly.

    Turning off the "Near Death" feature works like a charm. No errors whatsoever, runs completely smooth.

    If you decide to incorporate features of Infected into this plugin, may I ask that it be as configurable as the original plugin had it? (I don't need the multiworld support though, but others might.)

    That is, I liked being able to configure the exact chance, strength, and time of each potion effect under each mob. The issue with Infected is that it doesn't have every single potion effect like Wither or Instant Damage. (Although, the lifesteal and critical are both pretty unique non-potion effects.) The issue with applying it to this plugin is that the configuration (you'll know when you configure the plugin itself) might be very large, compared to all the other features, especially when you have a dozen worlds on the same server.

    It is because of this that making Near Death compatible with Infected may be a better choice than, say, "absorbing an entire plugin". I don't really know, though, it's up to you to decide. I personally like to have two plugins side-by-side, one focusing specifically on mob strengths/abilities/etc. and one focusing on more generic events, that way the two don't get mixed up so easily. If it's one thing I prefer, it's a plugin that does what it does, and does it well. Yours adds realism and interesting random events really well. manniL does his plugin well too (but it does need to be updated to involve more potion effects).

    Anyhow, once again, thanks for the help.

  • _ForgeUser8749090 posted a comment Dec 31, 2012

    Great to hear.

    First thing should be to make the two be compatible. Second, there is alot fun to be made with mobs other than just giving them the ability to give out potion effects. What if the could suddenly split into two, become immune to attacks for a few seconds etc.

    All this should give great fun to the Crazy Combat feature.

  • _ForgeUser8749090 removed a tag New Dec 31, 2012
  • _ForgeUser8749090 added a tag Accepted Dec 31, 2012

To post a comment, please login or register a new account.