UnlimitedLava
UnlimitedLava - Ability to enjoy unlimited lava!
Version v2.1.1
Description
Now you can make pools of infinite Lava! It's a rebirth of InfiniteLava from @Edward Hand
The code is nearly rewritten, but all credits of the idea and the original 3x3 pool go to Edward Hand!
Just set the config values as you like, give yourself some permissions (or even other players ;)) use commands and of course enjoy the unlimited source(s) of lava!
Demonstration
Features
- Allows you to take unlimited lava from various source, see the list below
- Easy to understand and modifiable on the fly config
- Permissions & Commands for an easy administration
- Define which item the furnace should give back, when you place a lava bucket into it!
- Localization to customize the messages!
- Lava (and water) falls!
- Multiworld
Third party features, all of them can be disabled
Please take a look at the detailed information about bStats below!
- bStats for usage statistics
- Auto Updater (connecting to https://dev.bukkit.org for updating checking)
- can be disabled if you switch autoUpdater to false in the config.yml
Config
# For help please refer the bukkit dev page: http://dev.bukkit.org/bukkit-plugins/unlimited-lava/ configuration: # Should permissions be enabled or not? permissions: true # Should a message displayed, if a player without the permission picks up lava? messages: true # Enabled the custom furnace, configure the output of a lava bucket below furnace: true # At which height (block - not line of sight!) is the lava unlimited height: 60
# Should an auto updater for this plugin be enabled?
autoUpdater: true sources: # Different sources -> See the schematics below three: true two: true other: false big: false lava_fall: true water_fall: false plus: true T: true ring: true furnace: # What item should appear in the furnace if you place a lava bucket as the fuel? item: BUCKET # Define in which worlds the sources should be unlimited. UUID's and world names are supported enabled_worlds: - world - world_nether - myAwesomeWorld
- 33a5b547-b272-45ca-b1d7-7b6648a5e44f debug: false
Commands & Permissions
If the config value permission is set to false, all people can use the commands!
If no permission system is found, all commands are for OPs only! (as long as permissions is set to true)
Of course the console can use the commands, too!
You can type the long version /unlimitedlava or use the short version /ulava, and even /ul
Node: unlimitedlava.use
Description: Ability to use the unlimited blocks
/unlimitedlava reload
/ulava reload
Node: unlimitedlava.reload
Description: Reloads the config
/unlimitedlava help
/ulava help
Node: unlimitedlava.help
Description: Displays the help
/unlimitedlava status
/ulava status
Node: unlimitedlava.status
Description: Displays the shows the status
/unlimitedlava enable all
/ulava enable all
Node: unlimitedlava.enable.all
Description: Enables all sources
/unlimitedlava enable three
/ulava enable three
Node: unlimitedlava.enable.three
Description: Enables the 3x3 source
/unlimitedlava enable two
/ulava enable two
Node: unlimitedlava.enable.two
Description: Enables the 2x2 source
/unlimitedlava enable other
/ulava enable other
Node: unlimitedlava.enable.other
Description: Enables the other source
/unlimitedlava enable big
/ulava enable other
Node: unlimitedlava.enable.big
Description: Enables the big source
/unlimitedlava enable plus
/ulava enable plus
Node: unlimitedlava.enable.plus
Description: enables the plus sources
/unlimitedlava enable T
/ulava enable T
Node: unlimitedlava.enable.T
Description: enables the T sources
/unlimitedlava enable ring
/ulava enable ring
Node: unlimitedlava.enable.ring
Description: enables the ring sources
/unlimitedlava enable permissions
/ulava enable permissions
Node: unlimitedlava.enable.permissions
Description: Enables the permissions! (Only OPs or player with the permission can use a specific command)
/unlimitedlava enable messages
/ulava enable messages
Node: unlimitedlava.enable.messages
Description: Enables the messages!
/unlimitedlava enable furnace
/ulava enable furnace
Node: unlimitedlava.enable.furnace
Description: Enables the (custom) furnace!
/unlimitedlava enable lava_fall
/ulava enable lava_fall
Node: unlimitedlava.enable.lava_fall
Description: Enables the lava_fall
/unlimitedlava enable water_fall
/ulava enable water_fall
Node: unlimitedlava.enable.water_fall
Description: Enables the water_fall
/unlimitedlava disable all
/ulava disable all
Node: unlimitedlava.disable.all
Description: Disables all sources
/unlimitedlava disable three
/ulava disable three
Node: unlimitedlava.disable.three
Description: Disables the 3x3 source
/unlimitedlava disable two
/ulava disable two
Node: unlimitedlava.disable.two
Description: Disables the 2x2 source
/unlimitedlava disable other
/ulava disable other
Node: unlimitedlava.disable.other
Description: Disables the other source
/unlimitedlava disable big
/ulava disable big
Node: unlimitedlava.disable.big
Description: Disables the big sources
/unlimitedlava disable plus
/ulava disable plus
Node: unlimitedlava.disable.plus
Description: Disables the plus sources
/unlimitedlava disable T
/ulava disable T
Node: unlimitedlava.disable.T
Description: Disables the T sources
/unlimitedlava disable ring
/ulava disable ring
Node: unlimitedlava.disable.ring
Description: Disables the ring sources
/unlimitedlava disable permissions
/ulava disable permissions
Node: unlimitedlava.disable.permissions
Description: Disables the permissions! ALL players can use the commands!
/unlimitedlava disable messages
/ulava disable messages
Node: unlimitedlava.disable.messages
Description: Disables the messages!
/unlimitedlava disable furnace
/ulava disable furnace
Node: unlimitedlava.disable.furnace
Description: Disables the (custom) furnace!
/unlimitedlava disable lava_fall
/ulava disable lava_fall
Node: unlimitedlava.disable.lava_fall
Description: Disables the lava_fall
/unlimitedlava disable water_fall
/ulava disable water_fall
Node: unlimitedlava.disable.water_fall
Description: Disables the water_fall
Of course you can use nodes like, unlimitedlava.enable.* unlimitedlava.* etc.
Unlimited sources
Just set any value to true or false
X means, this block is unlimited! L means lava and A any solid block
Two means, you can take unlimited lava from any block of a 2x2 pool
X X X X
Three means, you can take unlimited lava from the middle block of a 3x3 pool
L L L L X L L L L
Plus means, you can take unlimited lava from the middle block of a plus shape
L L X L L
Ring means, you can take unlimited lava from the ring blocks of a ring shape
X X X X A X X X X
T means, you can take unlimited lava from the middle block of a T shape
L X L L
or
L L X L
or
L L X L
or
L X L L
Other means, you can take unlimited lava from the classic 3 block unlimited water fields!
L X L
or
L X L
or
L X L
or
L L X
or
X L L
or
L X L
Big means, you can get infinite lava from pools bigger than 3x3 (4x4, 5x5, etc.) from any block inside!
Border blocks won't work!
Falls mean, you can get infinite lava or water from a fall. Just let it flow into a hole and pick it up!
Downloads/Source Code/Dev Builds
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.
(Latest dev builds/bleeding edge builds) - - Dev builds from Jenkins
(Source code hosted on GitHub) - - Source Code
Future Plans (a.k.a. ToDo):
- Nothing planned currently
Known Bugs
- None
Changelog
Version 2.1.1
- updates bStats
- small code improvements
Version 2.1.0
- Re-adds name support to enabled_worlds (UUIDs and names are now possible)
- Small code refactorings and performance improvements
Credits
@Edward Hand for the original plugin
@loganwm for the help with the chunk bug and high CPU usage! BIG THANKS!
@ferrybig for the help with the falls! :)
@Xastabus for the re-write of the checks! A big thanks, too, for the testers, @cuco @rockyct @cyberdude @IronWill1991
To some other guys, for helping me in the forums or on the IRC channel.
Banner
Feel free to use this banner!! :)
Statistics (from bStats)
Donations
I worked really hard on this plugin and I'm very happy about any donation.
Support me & buy me some beer, this makes me happy and keeps me interested in this plugin.
Donation chain: -> I receive some money -> Buy coffee -> Work longer -> Faster Updates -> Your benefit!
I'm accepting bitcoins, too! :)
1NnrRgdy7CfiYN63vKHiypSi3MSctCP55C
License
This plugin is released under the MIT license!
Information about the data usage collection bStats
Disabling bStats
The file ./plugins/bStats/config.yml
contains an option to opt-out.
The following data is read and sent to https://bstats.org and can be seen under https://bstats.org/plugin/bukkit/UnlimitedLava
- Your server's randomly generated UUID
- The amount of players on your server
- The online mode of your server
- The bukkit version of your server
- The java version of your system (e.g. Java 8)
- The name of your OS (e.g. Windows)
- The version of your OS
- The architecture of your OS (e.g. amd64)
- The system cores of your OS (e.g. 8)
- bStats-supported plugins
- Plugin version of bStats-supported plugins
Anyone ever figure out how to get this working on MCPC+.
I suspect its a settings issue because I can't get it to work. Unless its really that slow to update the block.
dose it work for 1.5.2
Should work fine! :)
Thank you for updates and keep it up to date !!!
@xGh0sTkiLLeRx
This is one of the most useful plugins on my server, so I'm so happy that it's keeping updated. :D Have a happy vacation!
@ZombieOnYourLawn
I should add the explanation in the config, that the height is the BLOCK and not the EYE height. So you have to keep in mind that the block is 2-3 blocks below (Y value at F3)
I'm trying to update UL a bit, after my holidays (two weeks in vacations)
I know it's been a while since anyone posted comments, but if anyone is having trouble getting this to work, try setting the height to 0! It worked for me. :D
And a big thank you to the creator!
@Hironimo
Thanks for all the detailed information (and of course the patch!).
I'll merge all this / fix issue in the next version.
It seemes to have been the height configuration for me too. I misunderstood how it works. After changing it to 1 (or 50 actually) it works. The main pool I tested with is at 57.
Sorry If I caused you work. I think it would help if you more clearly describe what the height configuration does and to lower it (I first tried to increase it because I thought it was too low) if regeneration does not work.
I did find T configurations that do not work however:
Update:
When I tried UnlimitedLava on my full server with other plugins, regeneration did not work anymore. So I tracked down the issue. These are the steps I did:
Conclusion: Your mod only works if the wold's name is "world". Update: Thats probably because I would have to rename the "enabled_worlds" in the config file, right?
Can you please reproduce the T regeneration issues and fix them?
Furthermore the info debug log whenever a block is regenerated is annoying. It happens quite often in my world and it's just smap to me and keeps me from a clear overview what really happens on my server. Can you support configuring the log-level if your plugin (if it has log-levels like log4j, else just support disabling logging on the server)?
Update 2:
I took the liberty to make the modifications to enable/disable logging myself. Unfortunately its not easily possible to changing the log level in bukkit (a ticket was created asking for that feature:https://bukkit.atlassian.net/browse/BUKKIT-1715 but it is not implemented yet). So I just allowed to disabling the logging line that annoys me.
I'm still interested in learning about permissions. Do you have pointers for me?
Thanx
@Enalt
Glad you could solve it :D
@Hironimo
I'll try to re-produce your bug with custom craftbukkit builds - the funny thing is that it works e.g. on Spigot.
Hi.
I'm trying to get Unlimited Lava working on CraftBukkit 1.2.5 R5.0 MCPC (see https://github.com/MinecraftPortCentral/CraftBukkit/downloads: snapshot 183).
I am using this because many plugins don't support 1.3.2 yet.
However as others reportet previously the lava does not get restored. I tried a full 3x3 and a + configuration, it did not work.
I just used the server jar file, put the plugin in the plugins directory (without any other plugins), started a fresh world, changed the configuration line to "permissions: false" so i do not have to bother about permissions (I don't get them, can you point and intro on those?).
Then I found some lava end experimented with some buckets and can't get the lava to regenarate in multiple configurations.
Can you help fix this? Feel free to log in to my server or copy the exact files I used for testing.
If you can't get this plugin to work easily, are there others for Bukkit that do?
Btw: I used others on the stock server and it worked flawlessly.
Thanx in advance!
So I just installed this mod and it works great in the overworld "world" but never works in the nether "world_nether". The config file has all shapes enabled and all three default world in it.
Any insight on fixing this would be much appreciated.
Edit: After staring at it for many more hours I finally realized there is a height limit. Changed that and wala things work. Awesome mod. Hats off to you.
@exscizo
I had a look into it - the way I currently designed the plugin aren't working, since the oil isn't recognized by Bukkit.
Anyway, I'll try to find out how I could check for a custom block!
@u2mad
I'm paying attention to both :)
See my other reply :P
Sorry for the post here and on the forum Ghost. Wasn't sure if you were paying attention to both.
@u2mad
Okay, I'll try to see why Tekkit isn't working!
From what I can tell, it's not working with Tekkit. I've played with the options, it makes the config file, it supports the console commands and shows it as enabled. But the lava just doesn't regenerate in the different configurations that I've tried. Even tried setting the height value to 1.
@exscizo
I guess not - I'm not familiar with tekkit.
I can look into it, but would require some time!
im using tekkit and was wondering if it worked for oil.
(Update: Changes have been submitted for approval.)
@mcprotect
I have recognized the error. Long story short the current code thinks a 3x3 ring around a solid block is a "Big" source until you remove any one block of source lava from it and try another "other" unlimited source spot. This is why it isn't refilling the corners or sides of the 8 block ring properly. This will happen even with "Big" disabled in UnlimitedLava 1.7.
I have a fix for this but I am also working on way to consolidate some redundant code. My mistake for not fully understanding the source the first time. I've also learned a couple things about Java and Bukkit API that should make the next code I submit much more efficient.
If the ideas I have work we will be able to test for test for more complex shapes like the ring of lava with a minimal amount of redundant block scanning.
I also have a surprise idea that may or may not make it into the next code submission. We'll see what happens.