VeinMiner 1.8.0

Details

  • Filename
    VeinMiner.jar
  • Uploaded by
  • Uploaded
    May 8, 2016
  • Size
    24.57 KB
  • Downloads
    2,094
  • MD5
    6ed1556e86fc50fb2740feca426f7430

Supported Bukkit Versions

  • 1.9

Changelog

Version 1.8.0

  • Changed the VeinMiner algorithm one last time to make it more accurate
  • The algorithm will now act as a "burst" sequence rather than a "linear" sequence (Fixes ticket 4 - http://dev.bukkit.org/bukkit-plugins/vein-miner/tickets/4-stone-1-not-quite-working-correctly/)
  • The algorithm is now much more accurate with max vein size calculations
  • Changed the default maximum vein size to 32
  • Added a safeguard for the algorithm. It will now attempt a maximum of 10 cycles if max vein size has not been reached (No infinite loops)
  • Added a new sub-command, "/veinminer blocklist list", to display all veinable blocks (and their data) - Permission node: "veinminer.blocklist.list"

Version 1.7.1.2

  • Removed the calls for BlockBreakEvent as it was causing way too many issues (Fixes another fatal crash)

Version 1.7.1.1

  • Please update to this version as soon as you possibly can!!!
  • Fixed an urgent issue that can cause your server to occasionally crash (I apologize if you have experienced this)

Version 1.7.1

  • Not specifying a data value in the blocklist now assumes all data values
  • Removed an accidental data check in one of the API methods
  • Added a "hasSpecificData()" boolean-return method in the VeinBlock class
  • Modified the "/veinminer blocklist" command to function with the new data value support

Version 1.7.0

  • VeinMining now activates a BlockBreakEvent for every block broken within the veinmine action
  • |-> This excludes the initial block, which is fired regardless by the breaking of the block
  • Changed the registration format of VeinMinable blocks. They are now contained under a separate block object
  • |-> These custom block objects allow for the specification of data values
  • Data values can now be specified in the block list by adding a semicolon (;) and a value after the name of the material. More info in the configuration file
  • With the changes to registration formats, there are more methods in the main class for API usage
  • Some permission nodes have been reorganized:
  • |-> "veinminer.blocklist.*" is now a parent permission and allows both of the following:
  • |-> "veinminer.addBlocklist" is now veinminer.blocklist.add
  • |-> "veinminer.removeBlocklist" is now veinminer.blocklist.remove

Version 1.6.0

  • Fixed Lapis/Redstone ores not dropping the proper amount of items
  • Fixed experience not dropping upon breaking experience-dropping ores
  • Changed the plugin to run on less decisions
  • Cleaned up a lot of the back-end side of the code
  • Added new "ActivationMode" configuration mode to determine how VeinMiner should activate

Version 1.5.2

  • Fixed potential issue with breaking veinminable blocks in any grief protection plugins
  • Fixed Fortune duplication of blocks that drop themselves (Iron ore, gold ore, logs, etc.)

Version 1.5.1

  • Fixed Metrics not enabling (Typo in the configuration)
  • Added new "ForceDropSpawn" option to toggle whether items drop in the initial break location or not (default true)
  • Cleaned up the drop handler method
  • Veinminer commands may now be run from the console

Version 1.5.0

  • Compiled for Minecraft 1.9.x support (1.8.x no longer supported. Sorry)
  • BIGGEST CHANGE: Rewrote the VeinMine algorithm to be more efficient, and more accurate and precise when breaking veins
  • |-> The algorithm no longer checks unnecessary blocks
  • |-> Cubic areas are no longer calculated. Instead, only blocks relative to the vein are considered
  • |-> Compacted algorithm size to roughly 20 lines, rather than the previous 200
  • Adding/Removing blocks from the list via command no longer requires case sensitivity
  • Changed the "MaxRadius" config option to "MaxVeinSize", and changed the default value to 20
  • Used proper .name() vs .toString() enum conventions
  • Modified the Fortune pickaxe handling to be more efficient / clean
  • Fixed ArrayIndexOutOfBoundsException from using Fortune on a vein (Surprised no one reported this)
  • Made integer randomization more efficient and finalized
  • Changed configuration loading onEnable to be more efficient
  • Cut a couple of methods down to be simpler
  • Fixed NullPointerException when VeinMining with an empty hand
  • Fixed accidentally registering the block break listener twice? (Don't know what I was thinking)
  • Moved the listener into a separate class to unclutter the main class
  • Added a PlayerVeinMineEvent for the VeinMiner API (Developers are free to listen for this event as per usual)
  • Added support for other plugins that may contain auto-smelt or other custom enchantments

Version 1.4.0

  • Rewrote the algorithm for VeinMining. Should work 100% of the time now
  • Fixed a bug with durability that allowed the tool durability to go into the negatives
  • Added a new boolean configuration option to determine whether you need a tool in hand or not. RequiresTool. Default true
  • Fixed support for the Fortune enchantment while VeinMining
  • Added a new configuration section related to Enchantments
  • |-> Added a new boolean configuration option to determine whether the SilkTouch enchantment is applied or not. Enchantments.SilkTouch. Default: true
  • |-> Added a new boolean configuration option to determine whether the Fortune enchantment is applied or not. Enchantments.Fortune. Default: true

Version 1.3.0

  • Changed all methods to private (not visible to other plugins). They are not necessary for public use
  • Removed the ability to use veinminer when you don't have an item in your hand
  • Added a method to check if the player is holding a tool (Axes, Pickaxes, and Spades)
  • Added a main /veinminer command containing veinminer related commands
  • |-> /veinminer version - Get version information about veinminer
  • |-> /veinminer reload - Reload the configuration file for veinminer (permission: veinminer.reload)
  • |-> /veinminer blocklist add <id> - Add block id's to the block list in the config (permission: veinminer.addBlocklist)
  • |-> /veinminer blocklist remove <id> - Remove block id's from the list in the config (permission: veinminer.removeBlocklist)

Version 1.2.0

  • Added support to VeinMine with Silk Touch
  • Added a check for REDSTONE_ORE and GLOWING_REDSTONE_ORE. If one is on the list, and the other is not, it will automatically add the other
  • Removed the need for an ArrayList to break blocks (Fixes overlap of blocks)
  • Added a toolManager method to handle the breaking of blocks and damaging of tools
  • Completely recoded all algorythmic logic for the VeinMining process
  • Fixed uneven destruction of blocks. Should destroy a proper cubic area
  • Fixed the maxRadius variable being one more than set (i.e. 7 was actually 8 )
  • Changed the default maxRadius to 4 instead of 7 (that's still intensive. 4 should suffice)
  • Removed the onDisable method due to inutility after this update

Version 1.1.0

  • Added Adventure Mode support for VeinMiner
  • Added a permission node to allow the usage of VeinMiner ("veinminer.veinminer". Default: All players)
  • Added an onDisable method to clear some ArrayLists just incase some memory is accidentally left over. It's a safeguard, really.
  • Added a new "VeinMinerUsesDurability" boolean configuration option to determine whether durability on the tool is used or not (default: true)
  • Changed the blocksToBreak array list to public so it is viewable to other plugins, and between classes

Version 1.0.0

  • Initial release. View main page