[SEC/ADMN] CoreProtect v2.0 - Fast Block Logging / Rollbacks / Now With Chest Rollbacks [BukkitDev]

Discussion in 'Archived: Plugin Releases' started by Intelli, Mar 9, 2012.

  1. Offline

    Simon6689

    I have an idea! The logging and rolling back of bonemeal used on grass.
     
  2. Offline

    Mrchasez

    Intelli Everytime i try to rollback i get this error: "Another rollback, restore or lookup is currently in progress."
     
  3. Offline

    Intelli

    CoreProtect v1.61 is now available

    • Fixed changes made via WorldEdit brushes not being logged.
    • Made it so rollbacks (etc) are no longer blocked if another one is in progress.
    • Made it so if a rollback or restore is hanging, it automatically stops itself.
    • Made it so non-numeric characters are automatically filtered out for the radius parameter.
    • Added support for Minecraft 1.4 block names.
    • Added support for Wither block change logging.
     
  4. Offline

    chopstick121

  5. Offline

    Intelli

    Please re-download the 1.61 file, an updated version was uploaded shortly after release which fixes that error.
     
  6. Offline

    Intelli

  7. Offline

    chopstick121

    http://pastebin.com/76bkvaLk
     
  8. Offline

    Intelli

  9. Offline

    Icee2199

    Intelli
    I get this error message and it crashes my server:
    Code:
    2012-10-27 20:09:06 [SEVERE] Could not pass event BlockFromToEvent to CoreProtect v1.63
    org.bukkit.event.EventException
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:341)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462)
        at net.minecraft.server.BlockFlowing.b(BlockFlowing.java:145)
        at net.minecraft.server.WorldServer.a(WorldServer.java:389)
        at net.minecraft.server.BlockFlowing.onPlace(BlockFlowing.java:309)
        at net.minecraft.server.Chunk.a(Chunk.java:423)
        at net.minecraft.server.World.setRawTypeIdAndData(World.java:248)
        at net.minecraft.server.World.setRawTypeIdAndData(World.java:237)
        at net.minecraft.server.BlockStationary.l(BlockStationary.java:35)
        at net.minecraft.server.BlockStationary.doPhysics(BlockStationary.java:27)
        at net.minecraft.server.World.m(World.java:440)
        at net.minecraft.server.World.applyPhysics(World.java:418)
        at net.minecraft.server.World.update(World.java:373)
        at net.minecraft.server.World.setTypeId(World.java:345)
        at net.minecraft.server.BlockFluids.l(SourceFile:324)
        at net.minecraft.server.BlockFluids.doPhysics(SourceFile:309)
        at net.minecraft.server.BlockStationary.doPhysics(BlockStationary.java:25)
        at net.minecraft.server.World.m(World.java:440)
        at net.minecraft.server.World.applyPhysics(World.java:420)
        at net.minecraft.server.World.update(World.java:373)
        at net.minecraft.server.World.setTypeId(World.java:345)
        at net.minecraft.server.BlockFluids.l(SourceFile:324)
        at net.minecraft.server.BlockFluids.doPhysics(SourceFile:309)
        at net.minecraft.server.BlockStationary.doPhysics(BlockStationary.java:25)
        at net.minecraft.server.World.m(World.java:440)
        at net.minecraft.server.World.applyPhysics(World.java:420)
        at net.minecraft.server.World.update(World.java:373)
        at net.minecraft.server.World.setTypeId(World.java:345)
        at net.minecraft.server.BlockFluids.l(SourceFile:324)
        at net.minecraft.server.BlockFluids.doPhysics(SourceFile:309)
        at net.minecraft.server.BlockStationary.doPhysics(BlockStationary.java:25)
        at net.minecraft.server.World.m(World.java:440)
        at net.minecraft.server.World.applyPhysics(World.java:417)
        at net.minecraft.server.World.update(World.java:373)
        at net.minecraft.server.World.setTypeIdAndData(World.java:355)
        at net.minecraft.server.BlockFlowing.flow(BlockFlowing.java:170)
        at net.minecraft.server.BlockFlowing.b(BlockFlowing.java:149)
        at net.minecraft.server.WorldGenLiquids.a(SourceFile:37)
        at net.minecraft.server.BiomeDecorator.a(SourceFile:206)
        at net.minecraft.server.BiomeDecorator.a(SourceFile:27)
        at net.minecraft.server.BiomeBase.a(SourceFile:213)
        at net.minecraft.server.ChunkProviderGenerate.getChunkAt(SourceFile:452)
        at org.bukkit.craftbukkit.generator.NormalChunkGenerator.getChunkAt(NormalChunkGenerator.java:49)
        at net.minecraft.server.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:191)
        at net.minecraft.server.Chunk.a(Chunk.java:800)
        at net.minecraft.server.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:117)
        at net.minecraft.server.PlayerInstance.<init>(PlayerInstance.java:23)
        at net.minecraft.server.PlayerManager.a(PlayerManager.java:66)
        at net.minecraft.server.PlayerManager.movePlayer(PlayerManager.java:195)
        at net.minecraft.server.ServerConfigurationManagerAbstract.d(ServerConfigurationManagerAbstract.java:198)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:423)
        at net.minecraft.server.Packet10Flying.handle(SourceFile:136)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:282)
        at net.minecraft.server.NetServerHandler.d(NetServerHandler.java:111)
        at net.minecraft.server.ServerConnection.b(SourceFile:35)
        at net.minecraft.server.DedicatedServerConnection.b(SourceFile:30)
        at net.minecraft.server.MinecraftServer.q(MinecraftServer.java:561)
        at net.minecraft.server.DedicatedServer.q(DedicatedServer.java:213)
        at net.minecraft.server.MinecraftServer.p(MinecraftServer.java:474)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:406)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:539)
    Caused by: java.lang.OutOfMemoryError: unable to create new native thread
        at java.lang.Thread.start0(Native Method)
        at java.lang.Thread.start(Unknown Source)
        at net.coreprotect.BlockListener.onBlockFromTo(BlockListener.java:412)
        at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:339)
        ... 62 more
     
  10. Offline

    runefist

    1. Is this coming for 1.4.2? And second what if 2 different people placed blocks man1 placed lava and man2 placed water and obsidian/stone comes, who did it? And what if one man did it so he placed lava and stone like that that he can make the whole region from stone with just one bukkit of water and one bukkit of lava, who did it?
     
  11. Offline

    Intelli

    CoreProtect v1.7 is now available!

    • Changed it so wither damage is now logged as "#wither" instead of "#explosion".
    • Added support for logging the correct location of falling anvils.
    • Made it so you can now lookup who placed or removed paintings and item frames with the inspector.
    • Made it so paintings and item frames can now be rolled back or restored.
    • Made it so when a painting or item frame falls off a block that was broken, it logs as the player who broke the block.
    • Fixed NullPointerException showing occasionally for chest logging.
    • Fixed ConcurrentModificationException occuring on Tekkit servers for container logging.
    • Fixed it so invalid timestamps are ignored, and no longer cause severe errors.
    • Implemented an alternating consumer for liquid flow logging. Should resolve out of memory errors.
    • Improved liquid tracking, liquid should always now log as the player who placed the original source.

    Note: This update requires CraftBukkit #2455 or higher.
     
  12. Offline

    cousinjoshy1

  13. Offline

    keto23

    Request: CoreProtect to log VoxelSniper edits. :)
     
  14. Offline

    erdrickk

    I'm confused. You have a Tekkit fix in there but Tekkit is still 1.2.5 but at the same time you say it requires 2455.

    1.7 doesn't work with Tekkit, all I get is this error:

    Code:
    2012-11-07 05:28:48 [SEVERE] Could not pass event EntityChangeBlockEvent to CoreProtect
    org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:304)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:482)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:467)
    at org.bukkit.craftbukkit.event.CraftEventFactory.callEntityChangeBlockEvent(CraftEventFactory.java:428)
    at net.minecraft.server.PathfinderGoalEatTile.e(PathfinderGoalEatTile.java:67)
    at net.minecraft.server.PathfinderGoalSelector.a(PathfinderGoalSelector.java:74)
    at net.minecraft.server.EntityLiving.z_(EntityLiving.java:1287)
    at net.minecraft.server.EntitySheep.z_(EntitySheep.java:44)
    at net.minecraft.server.EntityLiving.e(EntityLiving.java:1165)
    at net.minecraft.server.EntityAgeable.e(EntityAgeable.java:36)
    at net.minecraft.server.EntityAnimal.e(SourceFile:30)
    at net.minecraft.server.EntitySheep.e(EntitySheep.java:52)
    at net.minecraft.server.EntityLiving.F_(EntityLiving.java:456)
    at net.minecraft.server.World.entityJoinedWorld(World.java:1286)
    at net.minecraft.server.WorldServer.entityJoinedWorld(WorldServer.java:111)
    at net.minecraft.server.World.playerJoinedWorld(World.java:1268)
    at net.minecraft.server.World.tickEntities(World.java:1164)
    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:569)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:467)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
    Caused by: java.lang.NoClassDefFoundError: org/bukkit/entity/Wither
    at net.coreprotect.EntityListener.onEntityChangeBlock(EntityListener.java:45)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302)
    ... 20 more
     
  15. Offline

    GlossindCorp

    Hey, is there any way to log more than the last log for a block? I know with LogBlock it logs every single person whose ever touched the block, can you enable that feature in CoreProtect?
     
  16. Offline

    Intelli

    Type "/co l" after inspecting a block.
     
  17. Offline

    GlossindCorp

    Fantastic! Thank you sir! Is there any way to make it so it automatically shows all that info on every inspection?
     
  18. Offline

    Arkenaw

    So glad I found this. Been looking for a rollback addon that doesn't require mySQL for a while :)
     
  19. Offline

    Intelli

    CoreProtect v1.71 is now available

    • Added vine growth logging.
    • Fixed it so vines broken by liquid flow are logged.
    • Fixed severe errors when pasting WorldEdit data.
     
  20. Offline

    Natedanp

    REMOVE PURGE! It's how Servers get griefed while having this plugin. Greifers get OP then grief the place, then when they are done, they purge, BAM, the server's done. All I'm saying is the Plugin would be 9000x better without purge. I know plenty of servers that have been griefed and couldn't roleback due to Purging. Other then that, Great Plugin, I personally love it, just not Purge, Thanks.

    -Nate
     
  21. Offline

    Intelli

    1. Don't type in that font colour.
    2. The purge command can only delete data older than 30 days.
     
  22. Offline

    ratedterror

    CoreProtect is not logging any blocks for me. I try to check a block that was placed or broken since i added the plugin, and it just tells me no block has been placed/broken

    Here is the config http://pastebin.com/GUQA7sV4
     
  23. Offline

    xsmethsx

    hello, the rollback isnt working as intended on skulls, for example: if a creeper skull gets greifed(mobs drop there heads on my server) and you roll it back, a skeleton skull replaces it, is this fixable
     
  24. Offline

    CheesyM

    I'm also getting the same error and am confused about support for Tekkit (which is only CB 1.2.5, but CoreProtect 1.7.1 says it is for CB 1.4.5-R0.2)

     
  25. Offline

    Venator_Fox

    I'm relatively new to database, what are the advantages of using MySQL? I have set up a MySQL database on a Mac Pro I run the Minecraft server on, but I use it for a Wordpress site that requires MySQL. I was wondering if I should just use MySQL with CoreProtect since a MySQL database is already set up. Are the advantages primarily speed and space saving? My file based CoreProtect data grew to 10GB over 2 months, it is starting to lag a little during restores, and I really don't want to purge it "just in case". Will MySQL remedy this? Also, is it a bad idea to share the same database WordPress uses as long as table prefixes are different?
     
  26. Offline

    schmidtbochum

    Can you add a funtion to the API?
    i need something that restores blocks in a time frame:
    Code:
    performRestore(...,timeA,timeB)
    
     
  27. Offline

    ratedterror

    CoreProtect is not logging any blocks for me. I try to check a block that was placed or broken since i added the plugin, and it just tells me no block has been placed/broken

    Here is the config http://pastebin.com/GUQA7sV4
    Anyone? version 1.2.5​
     
  28. Offline

    chopstick121

  29. Offline

    Intelli

  30. Offline

    chopstick121

Share This Page