NeXTQuarry
NeXTQuarry adds quarries to your server, without having your players required to have any mod installed. They can have several sizes & upgrades.
Note: I love to hear it when people run my plugin, so if you run this on your server, feel free to drop the ip in the comments, or send it to me by PM, and I might come take a look :)
What are they?
They are machines that dig out a big area for resources. These allow the player to go do other things while the machine mines for them. As convenient as it is, it also comes with some drawbacks of course. They are quite expensive to build, and require coal as fuel to be able to run. They won't do anything without it. Without any speed upgrades, they are also quite slow. The plugin tries to keep gameplay as balanced as possible.
Awesome review by TwixPVP (Thanks guys!):
Find more videos & reviews by clicking here! (More languages too!)
Usage Data:
Warnings & Notices
As with any plugin that performs blockchanges: BACK UP YOUR WORLD! The world changes made by this plugin are not reversible yet by the plugin itself. Please manage the permissions of this plugin with care, and watch out to who you give them.
Data usage notice: This plugin DOES collect anonymous usage data. This is toggleable, so if you do not approve of this, you're able to turn this off. The data collected is used to present the following information: http://mcstats.org/plugin/NeXTQuarry.
Update notice: The plugin DOES automatically update by default. This can be turned off in the configuration file.
Dev join message: This plugin CHANGES my join message. If you do not approve of this, you are able to turn this off in the configuration.
Commands
/nextquarry - Gives information about the plugin, and about your permissions as a player.
/nextquarry items - Opens an inventory with all NeXTQuarry items
/nextquarry craft - Shows the recipe book for all NeXTQuarry items
Supported Plugins
Block Protection
NeXTQuarry will take block protection into account from the following plugins:
- WorldGuard
- Factions
- Residence
Block Logging
NeXTQuarry will manually log block changes made for the following plugins: (for rollbacks)
- CoreProtect
Get the sauce!
Source code: Github Repository
Configuration
You can find the Configuration file in the NeXTQuarry folder inside your plugins folder, which should appear after the first start of your server with the plugin installed. The file is called config.yml.
All configurable options are documented right in the configuration file. If you have any questions, feel free to ask!
Permissions
- nextquarry.user.* - Gives the player all user permissions. -Enabled for everyone by default-
- nextquarry.user.tier1 - Allows the player to place tier 1 quarries. -Enabled for everyone by default-
- nextquarry.user.tier2 - Allows the player to place tier 2 quarries. -Enabled for everyone by default-
- nextquarry.user.tier3 - Allows the player to place tier 3 quarries. -Enabled for everyone by default-
- nextquarry.user.remove - Allows the player to remove quarries. -Enabled for everyone by default-
- nextquarry.user.edit - Allows the player to edit quarries. -Enabled for everyone by default-
- nextquarry.user.craft - Gives access to /nextquarry craft. -Enabled for everyone by default-
- nextquarry.admin - Gives the player admin permissions. -Enabled for ops by default-
Admins can break or edit quarries, no matter if it belongs to them or not. Users with the remove/edit permission, may only remove/edit quarries that belong to them if private quarries are enabled in the config.yml file. Admins can place quarries in worlds where it's not allowed, and can place unlimited quarries. The nextquarry.admin node also gives access to /nextquarry give.
Recipe time!
Quarry: Tier 1
This is a tier 1 quarry. It is 18 by 18 blocks, and digs a hole of 16 by 16 blocks.
Quarry: Tier 2
This is a tier 2 quarry. It is 34 by 34 blocks, and digs a hole of 32 by 32 blocks.
Quarry: Tier 3
This is a tier 3 quarry. It is 50 by 50 blocks, and digs a hole of 48 by 48 blocks.
Fuel Injector
Right click any quarry with this item, to open its fuel bay, and insert coal!
Quarry Wrench
Right click any quarry with this item, to open up the upgrade slots, and insert your upgrades!
Speed Upgrade
With this upgrade, your quarry will become faster! (but run out of fuel faster as well). Max. 3 per quarry.
Chest miner upgrade
With this upgrade, your quarry will mine the contents, of any chest it finds! Nice for looting dungeons! Max. 1 per quarry.
Fuel Finder Upgrade
With this upgrade, your quarry will automatically put the coal it finds in its fuel bay, if there is room. This way it will hopefully run for longer without refueling! You will mine less to no coal though. Max. 1 per quarry.
Fuel Efficiency Upgrade
With this upgrade, your quarry will last longer on the fuel it has. It will consume less, and do more work instead. Max 3 per quarry.
Smelter Upgrade
With this upgrade, your quarry will automatically smelt ores it finds. It uses the same amount of fuel a normal furnace does. This efficiency can be increased using the fuel efficiency upgrades. Max 1 per quarry.
Liquid Miner
This upgrade allows the quarry to fill any empty buckets in its chest with liquids it finds. If there aren't any, or if there is no room, the liquid will just be lost instead. Max 1 per quarry.
Cup of coffee
If you like this plugin, please consider buying me a cup of coffee! Donate via PayPal! (You can do so by clicking the "Donate" button in the header on the top right of this page. Thanks a bunch!)
Awesome people who supported the plugin:
- Kreezxil
- TheAlmightyLlama
- Matecraft
@sandtcraft
Sure I'll look into that :)
maybe also add logblock support because most server use logblock
@bear2759
Whoah, thanks for putting so much work in the tests man! I really appreciate the help. the .nxtb files are not really ment to be edited, but 1.5 is way too big (The block locations you find in there, are from the frame & the arm, not the blocks it mined). I decided to take a look at the saving & loading process, and something wasn't right indeed. I just fixed that, so I'm now going to do the same thing you did, to see what is bulking up, because I believe that is what's causing the issue.
@DefiantWorld
I already integrated factions. You can only build them where you have permission to build with factions, so that's wilderness & your own faction :)
Could you add factions support, so you can only build it on your faction's territory?
ok, so doing what I can to help you work out the lag issue, after spending a bit of time looking at the code etc, my Ticks/sec on the server slowed to 2.4. I opened the .nxtb quarry file and cleared out all but the last few lines of the locations where it had already mined. started the server again and lag free (for now). before I cleared out the nxtb file it was 1.5MB, I dont know the code well enough to be sure, but I'm guessing if it's parsing this increasing volume of data each tick then that's where the problem lies. IMO, each tick you only want to replace a single variable with the value of the last position, not appending to an already massive array. that said, I'm making some assumptions there about how you're code works, please correct me if I'm wrong :).
ok, so I think it's definately better than 1.2.0, but still lag issues. the lag gets worse as the quarry processes more and more blocks, the first level was good for maybe 4-5 rows then there was noticeable lag. when it was first noticable the lag was sitting at about 14 ticks/sec. by the end of the first level it was down to 8 ticks/sec.I'm now half way through the 2nd level and it's down to 6.5 ticks/sec. is your code updating something that it needs to parse every tick? to me it seems like its perfect to begin with, but as the quarry goes on it updates data that it needs to parse every tick and gets to a point where it can no longer handle it.
testing now. I couldn't just update to 1.3, had to disable the plugin first and delete the test quarry as when I tried to login after update it crashed. quarry up and running now, gantry moving and CPU usage is good. nice work will continue to test and let you know.
@ryanblm
My bad, I ment bypass, not take away.
@ryanblm
Oh you're not at all :P I love suggestions, and bug reports only help me improve the plugin, so there's no problem at all. I'll make some commands tomorrow to spawn quarries and items with to take away the crafting.
hey BeMacized i know im really being really cheecky and annoying but is there any way fo say adding a command to spawn in a quarry as we are doing a lot of testing and bug finding and for some strange reason now and then the quarry wont work unless we remake it?
thankyou for this awesome plugin! -Ryan
P.S i am getting this spammed on my console and quarries arent working at this moment :(
20.04 17:58:08 [Server] WARNING Task #1706 for NeXTQuarry v1.3.0 generated an exception 20.04 17:58:08 [Server] INFO at net.minecraft.server.v1_5_R2.ThreadServerApplication.run(SourceFile:573) 20.04 17:58:08 [Server] INFO at net.minecraft.server.v1_5_R2.MinecraftServer.run(MinecraftServer.java:407) 20.04 17:58:08 [Server] INFO at net.minecraft.server.v1_5_R2.MinecraftServer.q(MinecraftServer.java:474) 20.04 17:58:08 [Server] INFO at net.minecraft.server.v1_5_R2.DedicatedServer.r(DedicatedServer.java:225) 20.04 17:58:08 [Server] INFO at net.minecraft.server.v1_5_R2.MinecraftServer.r(MinecraftServer.java:510) 20.04 17:58:08 [Server] INFO at org.bukkit.craftbukkit.v1_5_R2.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) 20.04 17:58:08 [Server] INFO at org.bukkit.craftbukkit.v1_5_R2.scheduler.CraftTask.run(CraftTask.java:53) 20.04 17:58:08 [Server] INFO at net.nextbattle.quarry.main.MainClass$1.run(MainClass.java:108) 20.04 17:58:08 [Server] INFO at net.nextbattle.quarry.entities.Quarry.doTick(Quarry.java:390) 20.04 17:58:08 [Server] INFO at net.nextbattle.quarry.entities.Quarry.mineStep(Quarry.java:463) 20.04 17:58:08 [Server] INFO at net.nextbattle.quarry.support.PluginSupport.logRemoval(PluginSupport.java:37) 20.04 17:58:08 [Server] INFO at net.nextbattle.quarry.support.CoreProtect.logRemoval(CoreProtect.java:26) 20.04 17:58:08 [Server] INFO java.lang.NullPointerException
I believe I have fixed the lag issue. If you can't wait until the release is approved here on BukkitDev, you can download the newest version with the lag fix from our build service:
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk. http://vps.nextbattle.net:35790/job/NeXTQuarry/
@ryanblm
Hmm, maybe try deleting the config.yml file from the nextquarry directory in your plugins directory? Then start your server again and see if they work.
sooo.... i dnt knw what is going wrong :(
however i have download the 1.2.1 build from your site thingy and quarriers dont work anymore... :(
-Ryan
@bear2759
Fixing the lag the plugin generates is my top priority at the moment.
v1.2.0 will be approved soon, this will not contain the lag fix yet, but it will most definitely be in v1.3.0.
ok, so as far as lag is concerned, as soon as the frame is built and the gantry is added my CPU gets hammered, jumps from about 5-10% average to over 50-60% average... if something could be done to improve this that'd be great.
also, for some reason I can only craft the speed upgrade, not the other 2 upgrades :(
Hi, great plugin. I added it to my vanilla server & works well, but it does lag the server a fair bit though. this is with a teir 1 quarry. also, if the quarry block is destroyed it returns a iron block. not sure if this is by design or error.
@Conorserver
I'm not sure, but if it's at that point, I'm quite sure it's not caused by my plugin. My plugin IS still quite resource intensive, so I doubt you are going to be able to run it on just 1 gb, however, I'm still trying to improve its performance.
@Conorserver
Would it be because i've run out of ram... but it couldn't be because I dont have ram on anything else bar this