Inactive [ADMN/SEC] FoundDiamonds 3.6 - Broadcasts broken blocks & Cheat detection [1.3.2]

Discussion in 'Inactive/Unsupported Plugins' started by SeeD419, Nov 1, 2011.

  1. Offline

    SeeD419

    [​IMG]
    Diamond rewards/Anti-Cheat
    Original concept by itsatacoshop247
    FoundDiamonds aims to improve the fun of mining by broadcasting when players find certain blocks (configurable) and give out rewards when players find diamonds! It comes bundled with anti-cheat features such as light-level monitoring to deter fullbright hackers and x-ray users from running amok. FoundDiamonds supports admin message functions, logging to file, and even trap blocks that can kick or ban a user if broken. Check out the video below if this sounds like something you'd be interested in.

    Download at:
    Bukkitdev
    Source

    Demonstration Video
    (An older version, but the concept is the same)


    Old Outdated Changelog:
    Show Spoiler

    Version 3.3.1-Beta

    * Fixed an old total block counting bug that I accidentally re-introduced.
    * Fixed a bug with admin messages firing on blocks players placed.
    * Fixed admin messages sending message to the person who broke the block.

    Version 3.3-Beta

    * Implemented versatile lists that can be edited to whatever blocks and colors you want!
    * Made fd log all player commands to the console, including failed command attempts (for this plugin only)
    * Fixed a terrible admin message bug that I never saw before. Revamped the way these works to prevent bugs.
    * Moved prefix to broadcast message as prefix@ instead of having a separate option for it in the config.
    * Fixed color bug when using nicknames in broadcast (now looks way better)
    * Fixed a bug with random items not even working
    * Added 3 new spells! :O
    * Made potion messages more descriptive, and even configurable.
    * Fixed bugs with menus and made other improvements to them.
    * Traps can now be set without using '_' characters, and just spaces (/fd trap gold ore)
    * Refactored tons of code. The source code is actually not so much of a mess anymore. Performance improvements as well.
    * Improved block counting! Diagonal blocks no longer fool the plugin!
    * Merged a pull request by snoepje0 who implemented a depth option for trap blocks. (Thanks again)
    Version 3.2.7

    * Removed an old pointless option from config.
    * Cancelled block break event on trap breaks.
    * Fixed exploit using traps to get diamonds by stopping trap blocks from dropping anything.
    * Fixed a few minor bugs with light level admin messages
    * Added light level logging to file.
    * Added permission 'fd.ignorelightlevel' to completely ignore a player's light level when mining. Not included in fd.*!
    * Improved logging a lot.
    * Renamed logs.txt to log.txt. Why was it plural?
    * Added a few more debug messages
    * Made CleanLog.txt lowercase for lazy linux users like myself :p

    Version 3.2.6

    * Added some debugging info for admin messages.
    * Added lightlevel as a configurable percentage
    * Removed coal ore from light level monitoring (Reason: It denies noobs trying to mine coal with no torches yet. Irony fail. Also the chance of someone cheating for only coal ore is unlikely.)
    * Added lightlevel admin messages and debug
    * Fixed potential bug with trap blocks being set in the void or above max world height.
    * Improved trap block logging quite a bit. Added world, improved readability.
    * Did some testing for weird trap block situations to ensure they would function.

    Version 3.2.5

    * Fixed multi-world spell issue.

    Version 3.2.4
    • Added debug mode. To enable do /fd toggle debug. Outputs information to the console about why broadcasts are canceled.
    Version 3.2.3

    * Made **adding** worlds case sensitive! This will prevent confusion in the future and allow 'World' and 'world' to coexist in the config.
    * Fixed ANOTHER multi-world issue DX I tested it this time!
    * Added a new config option under Logging: Trap Breaks. Defaults to true. Not sure why I had diamonds and trap breaks under the same configuration option. Chances are that even if you don't log ALL diamond ore breaks - you definitely want to know if someone breaks a trap!

    Version 3.2.2

    * Fixed bug where we weren't respecting the world list for spells and announcements from other worlds.
    * Attempted fix for world issue for some.
    * Cleaned up certain areas of code that were sorta messy.

    Version 3.2.1

    * Removed a debug message

    Version 3.2
    • Added option to 'Use Classic Ore Colors' in broadcasts because custom color formatting overrides them. Defaults to true. If you don't like the ore names being colored to their type, set this to false.
    • Cleaned up some sketchy file handling methods
    • Impelemented 'ignore.broadcasts' permission for players who don't like broadcasts :(
    • Made admin messages conform to the custom color codes in the config.
    • Made admin messages send a message to the console!
    • Fixed a terrible bug that could have prevented broadcasts when using admin messages :/
    Version 3.1.9
    • mcMMO spam fixed!
    • Now supports custom color formatting!
    • Improved clean log.
    • Added redstone admin messages.
    • Set plugin to add ALL worlds on first run and enable most everything (should help new users with issues)
    • Improved world menu a bit
    • Added more functionality to the config, toggle, and set menus + fixed a few bugs.
    Version 3.1.8.2
    • Implemented a "Clean Log" option to log ALL announcements cleanly to a text log file.
    Version 3.1.8.1

    • Added an option to disable the [FD] prefix on broadcasts.
    Version 3.1.8
    • Fixed issue of jump potion basically killing players
    • Tried to add support for custom color formatting although it only works in spoutcraft...
    • Fixed bug with fd reload not reloading worlds
    • Implemented the rest of the /fd world menu to add/remove worlds from in game.
    • All console-relevant commands now work at the console.
    • Organized code
    Version 3.1.7
    • Added ability to fd reload from the console
    Version 3.1.6
    • Added an award where spells are casted on players for finding diamonds.
    • Drastically improved admin messages
    • Added admin messages for gold, iron, and lapis.
    • Fixed a rare block detection bug.
    • Re-arranged a lot of code.
    • Added /fd world which as of now only lists enabled worlds (permission is fd.world for future features)
    • Figured out that copydefaults only copies new items so no need to delete old config anymore
    Version 3.1.5
    • Fixed a bug with toggling coal
    • Improved /fd config menu's readability
    • Improved /fd toggle menu's readability
    • Added usenicks to the toggle menu
    • Added obsidian as a broadcast-able block
    • Fixed bug where placed blocks from players would be announced
    Version 3.1.4
    • Permissions overhaul! Be sure to update your permissions!!!
    • Tested plugin with PEX. Works great.
    • Fixed a rare NPE.
    • Fixed OPs in the config not completely working like it should have.
    Version 3.1.3
    • Removed a debug message :/
    Version 3.1.2
    • May have fixed issue with config not saving for some.
    • Improved /fd config menu
    • Fixed issue where on diamond break other blocks were counted in the total
    • Added a config option to change the percentage of time awards are given
    • Added coal ore as a broadcastable ore
    Version 3.1.1
    • Fixed a NPE
    Version 3.1
    • Implemented new YAML Configuration file. (Much easier to read IMO)
    • Added a main menu accessible with /fd or /founddiamonds that prints all commands.
    • Added submenus to toggle admin messages, update the config, reload the config, view the config, or set traps.
    • Re-implemented admin messages in a way that makes sense.
    • Admin messages toggle on/off with /fd admin
    • Further reduced I/O
    • Consolidated configurations into a single file.
    Version 3.0
    • Completely rewrote entire plugin.
    • Fixed numerous performance issues.
    • Tweaked plugin to get best possible performance.
    • Added disable on creative mode to config
    • Added disable total darkness mining to config
    • Added total ores found to broadcast message
    • Removed admin messages.
    • Further improved configuration readability
    Version 2.2
    • Updated to the new method for registering events.
    Version 2.1
    • Added support for multiple worlds! Simply remove any world in worlds.txt you don't want FoundDiamonds enabled in.
    Version 2.0
    • Fixed a terrible permissions issue.
    • Made admin messages a bit more pretty and intuitive.
    • Added Mossy Cobblestone as a broadcast-able block
    Version 1.8.1.6
    • Changed /settrap id# to /settrap itemname (IE, /settrap dirt, /settrap gold_ore)
    • Fixed client side NPE crash
    Version 1.8.1.5
    • Added /settrap # which creates a trap based on the item id a user enters.
    • Added configuration option for admin messages for trap blocks. IE, if another admin breaks a trap block - all admins will get a message.
    Version 1.8.1.4
    • Added a configurable option to the config, WaitTimeBetweenBroadcasts, to configure your own wait time between server broadcasts. As always, you can still disable this entirely, but now you can make them more or less frequent. Time is entered in SECONDS :)
    Version 1.8.1.3
    • Added a configurable option to the config, TreatOPSAsFD.Admin which treats any player in Ops.txt as a player with FD.Admin (if you don't have permissions). This is configurable, so you can choose to ignore Ops.txt and rely only on permissions. This defaults to TRUE.
    Version 1.8.1.2
    • Added *.* to recognized permissions.
    • Actually fixed redstone this time :)
    Version 1.8.1.1
    • Fixed redstone broadcast & admin messages
    • Fixed issues creating files (how on earth did that even happen?)
    Version 1.8.1
    • Made configuration file easier to understand
    • Improved /settrap diamond vein generation
    • Plugin now prints current version on start-up
    Version 1.8
    • Re-implemented /settrap
    • Fixed /settrap to log all diamond blocks it generates, not just one
    • If player has FD.admin permission, they are now immune to trap blocks
    • Added ability to ban on trap break
    Version 1.7.5
    • Switched colors for lapis and diamond (looks more accurate)
    • Added a 3rd random item for awards (defaults to slimeballs)
    • Changed random items to show item names, not ID numbers
    • Rewrote the code for getting random items + amounts
    • Improved error messages, and fixed more spelling errors
    • Changed 30 second wait to 20 seconds
    Version 1.7
    • Continuation of itsatacoshop247's plugin
    • Fixed a few spelling errors and recompiled for latest RB
    Original Changelog from itsatacoshop247
    Version 1.6
    • Traps!
    • Chance to get random items!
    Version 1.5
    • Logging added finally!
    • Option to turn logging on/off
    Version 1.3
    • Works better with Permissions, defaults to OP list if no Permissions
    • Configurable message
    • Beta 1.4 Compatible
    Version 1.2
    • Permissions!
    • 'FD.admin' to see all block breaks
    Version 1.1
    • Added more to config
    • Added ores, options for each to be on/off
    • Turn server message on/off
    • random item give on/off
    Version 1
    • Release
     
  2. Offline

    Bobbyfrank

    Can someone explain exactly how to set a trap? There was not a tutorial or an explanation that I could see. I am also too tired to mess with it myself. Please and Thank You!
     
  3. Offline

    strontkever

    broken on 1.2
     
  4. Offline

    SeeD419

    Updated. Seems to be working fine now.

    It's a bit messy, but it works! (Need to do an overhaul soon)

    Edit: And by that I mean it's always been messy...not that I just made it messy :)
     
  5. Offline

    Zombiemold

    link no workey
     
  6. Offline

    SeeD419

    Should work now.

    I put the version number in the jar name which broke the old link :/

    v3.0

    For the longest time I've been simply 'updating' this plugin and ignoring it's serious performance issues and horrible design implementation....until now.

    I've almost completely rewritten this plugin from scratch today and several new features have been added!

    Let me know what you think, and please report any bugs you may find.

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

    smok3n

    Thanks very much works great :)
     
  8. Offline

    strontkever

    yes it works, but

    where did the admin messages go? im only using this to log orefindings and alerting admin when players find diamonds

    it doesnt log findings aswell
     
  9. Offline

    SeeD419

    I wasn't aware anyone was really using it for that :p. If you really want, it wouldn't be hard for me to re-implement it. Like I said, I rewrote the whole thing because it was sloppy and buggy.

    So you'd like to see admin messages for diamonds, and also logging of all diamond blocks broken - correct?
     
    strontkever likes this.
  10. Offline

    strontkever

    yes, that would be great, with the fd.admin permission for my admins to show them

    it picks out (posible) xrayers quickly when finding more deposits within some minutes etc

    :) thnx

    can u reply to my post as soon u update?

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

    ColeBergmann

    Thanks. The command could be /fd toggle or something along those lines.
     
  12. Offline

    SeeD419

    Sorry, it wasn't well documented. I've clarified it more in the original post.

    You only get rewards for breaking diamond! Other ores cannot yield rewards. Is this what you'd want, and is this what you'd expect?
     
  13. Offline

    devilquak

    Ah, thank you for finally clarifying. It's just that I had been on another server that had this plugin, except people got rewards whenever people broke anything except coal. This made me think I was doing something wrong, when they had probably just modified your plugin. Thanks for your help.
     
  14. Offline

    skyfox711

    If i see all the comments, the plugin is ....................................... stupid?
     
  15. Offline

    strontkever

    please add the logging to file, its really a musthave on my server
     
  16. Offline

    greatphantom

    looks good ill try it
     
  17. Offline

    SeeD419

    I will I promise :)

    Working on the next version now. It's gonna be awesome.
     
  18. Offline

    strontkever

    hmm, i just added foundbox, and been working on getting it to mysql then tranferring it into a table... took me some time and it works. now...

    sry :)
     
  19. Offline

    xBladeM6x

    Can't wait for this to get done. It's the only thing left on my "need to get" plugins list. Also, I'm one of those people who only used it for the notifications so I could /vanish to them and then just stalk them and see their trail to the diamonds, and if it looks suspicious. :p
     
  20. Offline

    SeeD419

    There's actually a new version up right now :x

    I can't guarantee that everything is working 100% yet - but feel free to test it :)

    Documentation on the new version will probably be up in the next few hours or so.

    Edit: However I should note that the only thing that isn't working yet is admin messages, lol. Give me a sec to fix them...

    v3.1

    IMPORTANT ANNOUNCEMENT IN ALL CAPS AND BIG LETTERS

    Get your attention? :p A new configuration file has been implemented! This means you should completely delete your FoundDiamonds plugin folder and let the new version generate you a new one!

    With this new configuration, you can change almost anything while in game! No more server restarts and editing text files by hand! Check the OP for the commands to do this.

    Thanks! Let me know if you find any bugs, have any ideas, complaints, etc.

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

    Peterpr1nzip

    22:08:44 [SCHWERWIEGEND] Could not pass event BlockBreakEvent to FoundDiamonds
    org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:303)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:441)
    at net.minecraft.server.ItemInWorldManager.breakBlock(ItemInWorldManager.java:218)
    at net.minecraft.server.ItemInWorldManager.a(ItemInWorldManager.java:173)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:538)
    at net.minecraft.server.Packet14BlockDig.handle(SourceFile:43)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:229)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:112)
    at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78)
    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:554)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:452)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:490)
    Caused by: java.lang.NullPointerException
    at me.itsatacoshop247.FoundDiamonds.BlockListener.sendAdminMessage(BlockListener.java:87)
    at me.itsatacoshop247.FoundDiamonds.BlockListener.onBlockBreak(BlockListener.java:55)
    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:301)
    ... 12 more


    if somebody mines diamonds
     
  22. Offline

    tinypillow

    Getting similar error as above when Admin Alert = True, goes away when false.

    2012-03-05 19:55:16 [SEVERE] Could not pass event BlockBreakEvent to FoundDiamonds
    org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:303)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:441)
    at net.minecraft.server.ItemInWorldManager.breakBlock(ItemInWorldManager.java:218)
    at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:153)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:535)
    at net.minecraft.server.Packet14BlockDig.handle(SourceFile:43)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:229)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:112)
    at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78)
    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:554)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:452)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:490)
    Caused by: java.lang.NullPointerException
    at me.itsatacoshop247.FoundDiamonds.BlockListener.sendAdminMessage(BlockListener.java:87)
    at me.itsatacoshop247.FoundDiamonds.BlockListener.onBlockBreak(BlockListener.java:55)
    at sun.reflect.GeneratedMethodAccessor283.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:301)
    ... 12 more
     
  23. Offline

    SeeD419

    Whoops! :) Just a minor mistake! Shouldn't have affected anything besides printing the error.

    Try the newest download, should be fixed.
     
  24. Offline

    josip1

    Im kind of new to xray...what's the best way to set a trap for an xrayer...when I tried using an xray texturepack it never showed me where diamonds were apart from in caves....is there a way to see them through the ground like....just normally mining?
     
  25. Offline

    Austin

    The plugin is void with the brightness setting in MC.
     
  26. Offline

    SeeD419

    Yes, because clearly the only feature that this plugin has is to disable mining in the dark, right?

    You either:
    A) Didn't read the OP at all.
    or
    B) Have very poor reading comprehension.
     
  27. Offline

    Draconette

    plugin works great, but i have this small isue, in over all smal problem, but still, maybe someone else have the same.

    When diamond is found if it is with other mineral, in one wein, for example with iron or gold, it gives messege that other ores are like diaimonds, so if it happens so insted of 4 daimonds it shows 14, and other 10 minerals is showed as diamonds.
     
  28. Offline

    SeeD419

    I can confirm this bug. I'll work on getting this fixed, thanks.
     
  29. Offline

    Draconette


    your the best! :)
     
  30. Offline

    SeeD419

    v 3.1.2

    See OP for changes / bug fixes.

    If you want to take advantage of coal broadcasts and being able to change the percentage of the time awards are given - delete your config and generate a new one. If you don't, don't worry about it :)
     
  31. Offline

    ColeBergmann

    Please add PEX support.
    Thanks for listening to my suggestions :D
     

Share This Page