Bukkit EntityExplodeEvent, Causes client crash?

Discussion in 'Plugin Development' started by bjsnow, Aug 31, 2013.

Thread Status:
Not open for further replies.
  1. Offline

    bjsnow

    This code sometimes causes client crashes.... I don't know why...
    Code:
      @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
            public void onEntityExplode(EntityExplodeEvent e) {
                    e.setCancelled(true);
     
                    for (Block b : e.blockList()) {
                            bounceBlock(b);
                    }
            }
     
            public void bounceBlock(Block b) {
                    if (b == null)
                            return;
     
                    FallingBlock fb = b.getWorld().spawnFallingBlock(b.getLocation(),
                                    b.getType(), b.getData());
     
                    fb.setDropItem(false);
     
                    b.setType(Material.AIR);
     
                    float x = (float) -1 + (float) (Math.random() * ((1 - -1) + 1));
                    double y = 0.5;// (float) -5 + (float)(Math.random() * ((5 - -5) + 1));
                    float z = (float) -1 + (float) (Math.random() * ((1 - -1) + 1));
     
                    fb.setVelocity(new Vector(x, y, z));
            }
    
    Client Crash report:
    Show Spoiler

    ---- Minecraft Crash Report ----
    // Everything's going to plan. No, really, that was supposed to happen.

    Time: 9/1/13 1:05 PM
    Description: Rendering entity in world

    java.lang.NullPointerException
    at bgl.a(SourceFile:44)
    at bgl.a(SourceFile:16)
    at bgi.a(SourceFile:204)
    at bgi.a(SourceFile:184)
    at bfi.a(RenderGlobal.java:509)
    at bfb.a(EntityRenderer.java:1573)
    at bfb.b(EntityRenderer.java:1117)
    at ats.S(SourceFile:686)
    at ats.d(SourceFile:619)
    at net.minecraft.client.main.Main.main(SourceFile:101)


    A detailed walkthrough of the error, its code path and all known details is as follows:
    ---------------------------------------------------------------------------------------

    -- Head --
    Stacktrace:
    at bgl.a(SourceFile:44)
    at bgl.a(SourceFile:16)

    -- Entity being rendered --
    Details:
    Entity Type: FallingSand (sq)
    Entity ID: 13098
    Entity Name: Falling Block
    Entity's Exact location: -236.50, 72.50, 591.50
    Entity's Block location: World: (-237,72,591), Chunk: (at 3,4,15 in -15,36; contains blocks -240,0,576 to -225,255,591), Region: (-1,1; contains chunks -32,32 to -1,63, blocks -512,0,512 to -1,255,1023)
    Entity's Momentum: 0.00, 0.00, 0.00
    Immitating block ID: 0
    Immitating block data: 0

    -- Renderer details --
    Details:
    Assigned renderer: bgl@58bead4f
    Location: -0.11,-2.30,13.07 - World: (-1,-3,13), Chunk: (at 15,-1,13 in -1,0; contains blocks -16,0,0 to -1,255,15), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
    Rotation: 0.0
    Delta: 0.001811266
    Stacktrace:
    at bgi.a(SourceFile:204)
    at bgi.a(SourceFile:184)
    at bfi.a(RenderGlobal.java:509)
    at bfb.a(EntityRenderer.java:1573)

    -- Affected level --
    Details:
    Level name: MpServer
    All players: 3 total; [bdf['bjsnow'/9614, l='MpServer', x=-236.39, y=74.80, z=578.46], bev['FennixFox'/12712, l='MpServer', x=-226.97, y=73.94, z=609.69], bev['DuBooo'/11503, l='MpServer', x=-211.53, y=72.63, z=600.44]]
    Chunk stats: MultiplayerChunkCache: 441
    Level seed: 0
    Level generator: ID 00 - default, ver 1. Features enabled: false
    Level generator options:
    Level spawn location: World: (251,77,404), Chunk: (at 11,4,4 in 15,25; contains blocks 240,0,400 to 255,255,415), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511)
    Level time: 4872183 game time, 4824125 day time
    Level dimension: 0
    Level storage version: 0x00000 - Unknown?
    Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)
    Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false
    Forced entities: 159 total; [bdf['bjsnow'/9614, l='MpServer', x=-236.39, y=74.80, z=578.46], bev['FennixFox'/97, l='MpServer', x=29.03, y=77.84, z=435.19], sr['item.tile.grass'/12670, l='MpServer', x=-218.44, y=71.13, z=603.72], sr['item.tile.grass'/12671, l='MpServer', x=-235.50, y=73.13, z=605.22], sr['item.tile.dirt'/12668, l='MpServer', x=-222.13, y=74.13, z=606.19], sr['item.tile.dirt'/12669, l='MpServer', x=-225.66, y=72.13, z=611.31], bev['DuBooo'/9612, l='MpServer', x=-133.75, y=71.03, z=466.72], sq['Falling Block'/13120, l='MpServer', x=-235.50, y=72.50, z=587.50], sq['Falling Block'/13076, l='MpServer', x=-230.50, y=71.50, z=585.50], sq['Falling Block'/13077, l='MpServer', x=-231.50, y=71.50, z=591.50], sq['Falling Block'/13078, l='MpServer', x=-232.50, y=70.50, z=586.50], sq['Falling Block'/13079, l='MpServer', x=-232.50, y=70.50, z=585.50], sq['Falling Block'/13072, l='MpServer', x=-234.50, y=71.50, z=590.50], sq['Falling Block'/13073, l='MpServer', x=-234.50, y=71.50, z=589.50], sq['Falling Block'/13074, l='MpServer', x=-234.50, y=71.50, z=592.50], sq['Falling Block'/13075, l='MpServer', x=-234.50, y=71.50, z=591.50], sq['Falling Block'/13084, l='MpServer', x=-232.50, y=70.50, z=588.50], sq['Falling Block'/13085, l='MpServer', x=-231.50, y=71.50, z=590.50], sq['Falling Block'/13086, l='MpServer', x=-231.50, y=71.50, z=585.50], sq['Falling Block'/13087, l='MpServer', x=-233.50, y=72.50, z=592.50], sq['Falling Block'/13080, l='MpServer', x=-231.50, y=72.50, z=585.50], sq['Falling Block'/13081, l='MpServer', x=-232.50, y=70.50, z=590.50], sq['Falling Block'/13082, l='MpServer', x=-232.50, y=70.50, z=589.50], sq['Falling Block'/13083, l='MpServer', x=-231.50, y=71.50, z=589.50], sq['Falling Block'/13061, l='MpServer', x=-229.50, y=71.50, z=585.50], sq['Falling Block'/13060, l='MpServer', x=-234.50, y=72.50, z=592.50], sq['Falling Block'/13063, l='MpServer', x=-235.50, y=70.50, z=585.50], sq['Falling Block'/13062, l='MpServer', x=-229.50, y=71.50, z=586.50], sq['Falling Block'/13057, l='MpServer', x=-235.50, y=71.49, z=585.50], sq['Falling Block'/13056, l='MpServer', x=-235.50, y=71.49, z=589.50], sq['Falling Block'/13059, l='MpServer', x=-234.50, y=72.50, z=593.50], sq['Falling Block'/13058, l='MpServer', x=-234.50, y=72.49, z=589.50], sq['Falling Block'/13069, l='MpServer', x=-235.50, y=70.50, z=591.50], sq['Falling Block'/13068, l='MpServer', x=-235.50, y=70.50, z=590.50], sq['Falling Block'/13071, l='MpServer', x=-234.50, y=71.50, z=588.50], sq['Falling Block'/13070, l='MpServer', x=-234.50, y=71.50, z=585.50], sq['Falling Block'/13065, l='MpServer', x=-235.50, y=70.50, z=589.50], sq['Falling Block'/13064, l='MpServer', x=-235.50, y=70.50, z=588.50], sq['Falling Block'/13067, l='MpServer', x=-235.50, y=70.50, z=587.50], sq['Falling Block'/13066, l='MpServer', x=-235.50, y=70.50, z=586.50], sq['Falling Block'/13110, l='MpServer', x=-233.50, y=71.50, z=585.50], sq['Falling Block'/13111, l='MpServer', x=-233.50, y=70.50, z=585.50], sq['Falling Block'/13108, l='MpServer', x=-233.50, y=71.50, z=589.50], sq['Falling Block'/13109, l='MpServer', x=-233.50, y=71.50, z=590.50], sq['Falling Block'/13106, l='MpServer', x=-233.50, y=71.50, z=592.50], sq['Falling Block'/13107, l='MpServer', x=-233.50, y=71.50, z=588.50], sq['Falling Block'/13104, l='MpServer', x=-232.50, y=71.50, z=592.50], sq['Falling Block'/13105, l='MpServer', x=-233.50, y=71.50, z=591.50], sq['Falling Block'/13118, l='MpServer', x=-235.50, y=72.50, z=593.50], sq['Falling Block'/13119, l='MpServer', x=-235.50, y=72.50, z=592.50], sq['Falling Block'/13116, l='MpServer', x=-233.50, y=70.50, z=590.50], sq['Falling Block'/13117, l='MpServer', x=-233.50, y=70.50, z=591.50], sq['Falling Block'/13114, l='MpServer', x=-233.50, y=70.50, z=588.50], sq['Falling Block'/13115, l='MpServer', x=-233.50, y=70.50, z=589.50], bev['FennixFox'/97, l='MpServer', x=-132.56, y=72.47, z=522.69], sq['Falling Block'/13112, l='MpServer', x=-233.50, y=70.50, z=586.50], sq['Falling Block'/13113, l='MpServer', x=-233.50, y=70.50, z=587.50], sq['Falling Block'/13095, l='MpServer', x=-231.50, y=70.50, z=589.50], sq['Falling Block'/13094, l='MpServer', x=-231.50, y=70.50, z=588.50], sq['Falling Block'/13093, l='MpServer', x=-235.50, y=69.50, z=589.50], sq['Falling Block'/13092, l='MpServer', x=-235.50, y=69.50, z=588.50], sq['Falling Block'/13091, l='MpServer', x=-232.50, y=72.50, z=592.50], sq['Falling Block'/13090, l='MpServer', x=-231.50, y=70.50, z=590.50], sq['Falling Block'/13089, l='MpServer', x=-231.50, y=70.50, z=591.50], sq['Falling Block'/13088, l='MpServer', x=-233.50, y=72.50, z=591.50], sq['Falling Block'/13103, l='MpServer', x=-232.50, y=71.50, z=591.50], sq['Falling Block'/13102, l='MpServer', x=-232.50, y=71.50, z=590.50], sq['Falling Block'/13101, l='MpServer', x=-232.50, y=71.50, z=589.50], bev['DuBooo'/11503, l='MpServer', x=-211.53, y=72.63, z=600.44], sq['Falling Block'/13100, l='MpServer', x=-232.50, y=71.50, z=588.50], sq['Falling Block'/13099, l='MpServer', x=-232.50, y=71.50, z=585.50], sq['Falling Block'/13098, l='MpServer', x=-236.50, y=72.50, z=591.50], sq['Falling Block'/13097, l='MpServer', x=-232.50, y=69.50, z=587.50], sq['Falling Block'/13096, l='MpServer', x=-231.50, y=70.50, z=586.50], bev['FennixFox'/11539, l='MpServer', x=-255.13, y=66.59, z=622.47], bev['FennixFox'/11539, l='MpServer', x=-381.47, y=116.94, z=563.00], bev['DuBooo'/11503, l='MpServer', x=-229.91, y=82.22, z=451.69], rx['Pig'/10818, l='MpServer', x=-269.30, y=62.62, z=637.96], rx['Pig'/10819, l='MpServer', x=-272.25, y=63.00, z=647.38], rx['Pig'/10817, l='MpServer', x=-274.84, y=63.00, z=652.41], st['entity.MinecartChest.name'/10805, l='MpServer', x=-227.50, y=21.50, z=648.50], rx['Pig'/10258, l='MpServer', x=-230.50, y=72.00, z=510.16], rx['Pig'/10807, l='MpServer', x=-311.22, y=64.00, z=619.09], rx['Pig'/10801, l='MpServer', x=-247.31, y=65.00, z=605.47], rx['Pig'/10803, l='MpServer', x=-268.94, y=65.00, z=611.13], st['entity.MinecartChest.name'/10812, l='MpServer', x=-194.50, y=21.50, z=657.50], rx['Pig'/10808, l='MpServer', x=-282.69, y=63.00, z=641.66], rx['Pig'/10810, l='MpServer', x=-300.75, y=62.00, z=649.19], bev['FennixFox'/12712, l='MpServer', x=-226.97, y=73.94, z=609.69], sr['item.tile.tallgrass.shrub'/12706, l='MpServer', x=-236.84, y=60.13, z=629.00], rx['Pig'/10796, l='MpServer', x=-246.56, y=64.00, z=613.69], sr['item.tile.grass'/12707, l='MpServer', x=-242.03, y=58.13, z=628.38], sr['item.tile.tallgrass.shrub'/12704, l='MpServer', x=-259.69, y=61.13, z=640.00], sr['item.tile.tallgrass.shrub'/12705, l='MpServer', x=-249.63, y=61.13, z=624.13], sr['item.tile.tallgrass.shrub'/12710, l='MpServer', x=-267.44, y=56.13, z=638.44], sr['item.tile.grass'/12708, l='MpServer', x=-262.91, y=58.13, z=638.34], rx['Pig'/10795, l='MpServer', x=-215.75, y=63.00, z=641.59], sr['item.tile.dirt'/12697, l='MpServer', x=-245.63, y=59.13, z=627.56], sr['item.tile.grass'/12698, l='MpServer', x=-195.91, y=62.13, z=640.03], sr['item.tile.dirt'/12701, l='MpServer', x=-243.28, y=58.13, z=627.41], sr['item.tile.grass'/12702, l='MpServer', x=-175.16, y=61.13, z=644.53], rp['Chicken'/10297, l='MpServer', x=-289.38, y=70.00, z=515.38], sr['item.tile.dirt'/12689, l='MpServer', x=-234.22, y=63.13, z=624.97], sr['item.tile.grass'/12688, l='MpServer', x=-219.13, y=67.13, z=617.75], rx['Pig'/10296, l='MpServer', x=-253.50, y=66.00, z=605.69], sr['item.tile.grass'/12691, l='MpServer', x=-185.25, y=61.13, z=642.88], sr['item.tile.grass'/12690, l='MpServer', x=-283.97, y=63.13, z=619.75], sr['item.tile.dirt'/12693, l='MpServer', x=-247.81, y=62.13, z=641.19], sr['item.tile.grass'/12692, l='MpServer', x=-274.25, y=64.13, z=614.28], sr['item.tile.grass'/12694, l='MpServer', x=-281.34, y=63.14, z=636.41], sr['item.tile.grass'/12680, l='MpServer', x=-215.91, y=63.13, z=642.00], sr['item.tile.tallgrass.shrub'/12681, l='MpServer', x=-223.78, y=70.13, z=615.13], sr['item.tile.tallgrass.shrub'/12683, l='MpServer', x=-265.91, y=69.13, z=619.41], sr['item.tile.tallgrass.shrub'/12684, l='MpServer', x=-241.66, y=68.13, z=603.41], sr['item.tile.dirt'/12686, l='MpServer', x=-210.22, y=65.13, z=613.06], sr['item.tile.grass'/12673, l='MpServer', x=-234.72, y=73.13, z=607.81], sr['item.tile.grass'/12675, l='MpServer', x=-240.34, y=70.13, z=606.09], sr['item.tile.grass'/12676, l='MpServer', x=-234.84, y=71.13, z=602.81], sr['item.tile.grass'/12677, l='MpServer', x=-238.75, y=72.13, z=604.34], sr['item.tile.tallgrass.shrub'/12679, l='MpServer', x=-242.59, y=66.13, z=605.19], bev['FennixFox'/12712, l='MpServer', x=-226.97, y=73.94, z=609.69], bev['DuBooo'/11503, l='MpServer', x=-211.53, y=72.63, z=600.44], sr['item.item.seeds'/12516, l='MpServer', x=-245.91, y=64.13, z=613.41], sr['item.item.seeds'/12532, l='MpServer', x=-248.25, y=62.13, z=609.13], tb['Block of TNT'/13033, l='MpServer', x=-233.63, y=72.49, z=588.66], sq['Falling Block'/13035, l='MpServer', x=-236.50, y=70.49, z=589.50], sq['Falling Block'/13036, l='MpServer', x=-236.50, y=70.49, z=588.50], sq['Falling Block'/13037, l='MpServer', x=-230.50, y=70.49, z=586.50], sq['Falling Block'/13038, l='MpServer', x=-230.50, y=70.46, z=585.50], sq['Falling Block'/13039, l='MpServer', x=-236.50, y=71.49, z=585.50], sq['Falling Block'/13049, l='MpServer', x=-234.50, y=70.49, z=587.50], sq['Falling Block'/13048, l='MpServer', x=-234.50, y=70.46, z=585.50], sq['Falling Block'/13051, l='MpServer', x=-235.50, y=71.49, z=592.50], sq['Falling Block'/13050, l='MpServer', x=-234.50, y=70.49, z=586.50], sq['Falling Block'/13053, l='MpServer', x=-235.50, y=71.49, z=588.50], sq['Falling Block'/13052, l='MpServer', x=-235.50, y=71.49, z=591.50], sq['Falling Block'/13055, l='MpServer', x=-235.50, y=71.49, z=590.50], sq['Falling Block'/13054, l='MpServer', x=-235.50, y=71.49, z=587.50], sq['Falling Block'/13041, l='MpServer', x=-236.50, y=71.49, z=590.50], sq['Falling Block'/13040, l='MpServer', x=-236.50, y=71.49, z=588.50], sq['Falling Block'/13043, l='MpServer', x=-231.50, y=69.49, z=587.50], sq['Falling Block'/13042, l='MpServer', x=-236.50, y=71.49, z=591.50], sq['Falling Block'/13045, l='MpServer', x=-234.50, y=70.46, z=589.50], sq['Falling Block'/13044, l='MpServer', x=-234.50, y=70.46, z=588.50], sq['Falling Block'/13047, l='MpServer', x=-234.50, y=70.46, z=591.50], sq['Falling Block'/13046, l='MpServer', x=-234.50, y=70.46, z=590.50], bev['DuBooo'/11051, l='MpServer', x=-224.72, y=84.97, z=600.22], bev['FennixFox'/11215, l='MpServer', x=-246.47, y=81.63, z=611.66], rx['Pig'/10235, l='MpServer', x=-201.53, y=65.00, z=596.31], sr['item.tile.blockIron'/12958, l='MpServer', x=-220.28, y=66.13, z=596.97], sr['item.item.skull.skeleton'/12988, l='MpServer', x=-241.59, y=62.13, z=643.88], sr['item.tile.stairsWood'/12985, l='MpServer', x=-236.47, y=62.13, z=631.00], sr['item.tile.stairsWood'/12984, l='MpServer', x=-226.25, y=64.13, z=638.94], sr['item.tile.stairsWood'/12987, l='MpServer', x=-240.19, y=59.13, z=629.28], sr['item.tile.stairsWood'/12986, l='MpServer', x=-238.66, y=60.13, z=626.09], sr['item.tile.stairsWood'/12980, l='MpServer', x=-222.66, y=78.13, z=600.66], sr['item.tile.stairsWood'/12983, l='MpServer', x=-236.13, y=70.13, z=598.22], sr['item.tile.wood.oak'/12982, l='MpServer', x=-226.19, y=74.13, z=601.59], sr['item.tile.wood.oak'/12979, l='MpServer', x=-227.66, y=73.13, z=596.34]]
    Retry entities: 0 total; []
    Server brand: craftbukkit
    Server type: Non-integrated multiplayer server
    Stacktrace:
    at bda.a(SourceFile:284)
    at ats.b(SourceFile:1761)
    at ats.d(SourceFile:628)
    at net.minecraft.client.main.Main.main(SourceFile:101)

    -- System Details --
    Details:
    Minecraft Version: 1.6.2
    Operating System: Mac OS X (x86_64) version 10.6.8
    Java Version: 1.6.0_43, Apple Inc.
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Apple Inc.
    Memory: 60534544 bytes (57 MB) / 134430720 bytes (128 MB) up to 6433734656 bytes (6135 MB)
    JVM Flags: 1 total; -Xmx6G
    AABB Pool Size: 805 (45080 bytes; 0 MB) allocated, 805 (45080 bytes; 0 MB) used
    Suspicious classes: IWrUpdater, Config, WrUpdates, ...]
    IntCache: cache: 0, tcache: 0, allocated: 3, tallocated: 63
    Launched Version: Optifine 1.6.2
    LWJGL: 2.9.0
    OpenGL: ATI Radeon HD 6770M OpenGL Engine GL version 2.1 ATI-1.6.36, ATI Technologies Inc.
    Is Modded: Very likely; Jar signature invalidated
    Type: Client (map_client.txt)
    Resource Pack: faithful32pack.zip
    Current Language: English (US)
    Profiler Position: N/A (disabled)
    Vec3 Pool Size: 1029 (57624 bytes; 0 MB) allocated, 313 (17528 bytes; 0 MB) used

    Happens to everyone on the server. Whether they're using Mac or Windows.
     
  2. Offline

    metalhedd

    Trying to make a FallingBlock out of Material.AIR is a known cause of client crashes. any possiblity of that happening?
     
    foodyling likes this.
Thread Status:
Not open for further replies.

Share This Page