WorldGen
ATTENTION
As of spigot 1.8.3, WorldGen is broken. Mojang did a major rewrite of the worldgen files. It is possible to fix but its gonna take me some time.
Pls see this post for more details: http://dev.bukkit.org/bukkit-plugins/worldgen/?comment=102
ATTENTION
This Bukkit plugin is used to manually create or generate various world structures throughout your world. Supports permissions and the following structures:
- Ocean Monument
- Desert Temple
- Jungle Temple
- Mineshaft Complex
- Stronghold Complex
- Stronghold Portal Room
- NPC Village Complex
- Witch's Hut
- Nether Fortress Complex
Structures are generated at the current player's location and in some cases can be bounded to a maximum radius. Structure generation uses the internal Minecraft routines directly.
Credits
TheHUTMan, the real author of the project. He has since taken a break from the project but he is the brains behind it. Paxination, another plugin dev who helped correct some major compatibility issues we encountered between new releases of CB. Nisovin and JRArocks for the initial ideas for making villages. This version attempts to be agnostic to the current Bukkit version, and should work for newer releases so long as the basic API doesn't change (which it usually doesn't).
Sample Pictures
Here is a sample of generating a Desert Temple in grasslands :)
![]()
This may freak some people out ... a coven of witches! I generated 4 huts in close proximity. Might make a nice arena :)
![]()
More pictures can be found on the Images page.
Installation
Simply copy the WorldGen.jar into your Bukkit plugins folder. There currently are no configuration files for this plugin.
Commands
/worldgen [type] [radius=50]
[type] must be one of: village, witch, jungletemple, deserttemple, well, stronghold, mineshaft, shportal
[radius] defaults to 50, and for some items isn't used.
For more details, please see Commands
Note that the actual position of the generated structure may vary slightly from the users position due to chunk alignment requirements and how the underlying Minecraft generation methods actually operate. There is a bit of randomness involved as well.
Also, when generating some structures on flat worlds (or in worlds where there isn't sufficient land under your position) you may end up with structures floating above ground. This is a side-effect of how the minecraft objects generate the structures and mostly impacts things like mineshafts, strongholds, and nether fortresses. Desert temples also require a minimum amount of space under them to form the "trap" area.
Permissions
WorldGen supports the SuperPerms permission settings. The following permissions are available:
- worldgen.command: Allow user to run the worldgen command
- worldgen.command.deserttemple: Allow user to generate a desert temple
- worldgen.command.jungletemple: Allow user to generate a jungle temple
- worldgen.command.mineshaft: Allow user to generate a mineshaft complex
- worldgen.command.nether: Allow user to generate nether type complexes
- worldgen.command.stronghold: Allow user to generate a stronghold complex and rooms
- worldgen.command.village: Allow user to generate a village complex
- worldgen.command.witch: Allow user to generate a witch's hut
By default, ops are given worldgen.* permissions.
-
View User Profile
-
Send Message
Posted Dec 16, 2014@AlbertMarty I got monuments working. Looks like they fit under GenType3. I am looking to add dungeons on my fork. Which should be easy.
Just wish I could get the individual village buildings working again. I would rather have the plugin generate them into the landscape than paste one in and have to clean up around world edit.
-
View User Profile
-
Send Message
Posted Dec 16, 2014Hey man thanks for the credit. But since 1.8 its broke again. And I think i can fix it again this time. Also I am not sure how to add water temples, at least not without some nms code to look at again.
-
View User Profile
-
Send Message
Posted Dec 5, 2014[20:58:48 INFO]: [PLAYERCOMMAND} Wahrheit: [4777 65 200] => "/worldgen witchhut" [20:58:48 INFO]: [WorldGen] Generating witch's hut... [20:58:48 WARN]: java.lang.ClassCastException: net.minecraft.server.v1_8_R1.NoiseGeneratorOctaves cannot be cast to java.util.Random [20:58:48 WARN]: at local.thehutman.worldgen.WorldInterface.<init>(WorldInterface.java:73) [20:58:48 WARN]: at local.thehutman.worldgen.GenType1.generate(GenType1.java:59) [20:58:48 WARN]: at local.thehutman.worldgen.WorldGen.onCommand(WorldGen.java:82) [20:58:48 WARN]: at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) [20:58:48 WARN]: at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:181) [20:58:48 WARN]: at org.bukkit.craftbukkit.v1_8_R1.CraftServer.dispatchCommand(CraftServer.java:643) [20:58:48 WARN]: at net.minecraft.server.v1_8_R1.PlayerConnection.handleCommand(PlayerConnection.java:1083) [20:58:48 WARN]: at net.minecraft.server.v1_8_R1.PlayerConnection.a(PlayerConnection.java:918) [20:58:48 WARN]: at net.minecraft.server.v1_8_R1.PacketPlayInChat.a(PacketPlayInChat.java:26) [20:58:48 WARN]: at net.minecraft.server.v1_8_R1.PacketPlayInChat.a(PacketPlayInChat.java:53) [20:58:48 WARN]: at net.minecraft.server.v1_8_R1.PacketHandleTask.run(SourceFile:13) [20:58:48 WARN]: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [20:58:48 WARN]: at java.util.concurrent.FutureTask.run(FutureTask.java:262) [20:58:48 WARN]: at net.minecraft.server.v1_8_R1.MinecraftServer.z(MinecraftServer.java:686) [20:58:48 WARN]: at net.minecraft.server.v1_8_R1.DedicatedServer.z(DedicatedServer.java:316) [20:58:48 WARN]: at net.minecraft.server.v1_8_R1.MinecraftServer.y(MinecraftServer.java:627) [20:58:48 WARN]: at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:530) [20:58:48 WARN]: at java.lang.Thread.run(Thread.java:745)
-
View User Profile
-
Send Message
Posted Dec 3, 2014An update for Ocean Monuments would be wonderful.
-
View User Profile
-
Send Message
Posted Sep 22, 2014I'm using bukkit 1.6.2 (build 2881), and create a village on a desirt. And here comes a problem. The error log is like:
2022 2014-09-22 23:03:37 [SEVERE] java.lang.reflect.InvocationTargetException 2023 2014-09-22 23:03:37 [SEVERE] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 2024 2014-09-22 23:03:37 [SEVERE] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 2025 2014-09-22 23:03:37 [SEVERE] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 2026 2014-09-22 23:03:37 [SEVERE] at java.lang.reflect.Constructor.newInstance(Constructor.java:408) 2027 2014-09-22 23:03:37 [SEVERE] at local.thehutman.worldgen.GenType2.generate(GenType2.java:75) 2028 2014-09-22 23:03:37 [SEVERE] at local.thehutman.worldgen.WorldGen.onCommand(WorldGen.java:80) 2029 2014-09-22 23:03:37 [SEVERE] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) 2030 2014-09-22 23:03:37 [SEVERE] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:192) 2031 2014-09-22 23:03:37 [SEVERE] at org.bukkit.craftbukkit.v1_6_R2.CraftServer.dispatchCommand(CraftServer.java:523) 2032 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.PlayerConnection.handleCommand(PlayerConnection.java:954) 2033 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.PlayerConnection.chat(PlayerConnection.java:872) 2034 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.PlayerConnection.a(PlayerConnection.java:829) 2035 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.Packet3Chat.handle(SourceFile:49) 2036 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.NetworkManager.b(NetworkManager.java:296) 2037 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.PlayerConnection.e(PlayerConnection.java:116) 2038 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.ServerConnection.b(SourceFile:37) 2039 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.DedicatedServerConnection.b(SourceFile:30) 2040 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.MinecraftServer.t(MinecraftServer.java:590) 2041 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.DedicatedServer.t(DedicatedServer.java:226) 2042 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.MinecraftServer.s(MinecraftServer.java:486) 2043 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.MinecraftServer.run(MinecraftServer.java:419) 2044 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.ThreadServerApplication.run(SourceFile:582) 2045 2014-09-22 23:03:37 [SEVERE] Caused by: java.lang.NullPointerException 2046 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.MathHelper.nextInt(SourceFile:136) 2047 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.WorldGenVillagePieces.a(SourceFile:48) 2048 2014-09-22 23:03:37 [SEVERE] at net.minecraft.server.v1_6_R2.WorldGenVillageStart.<init>(SourceFile:75) 2049 2014-09-22 23:03:37 [SEVERE] ... 22 more
Why does this happens ? Am I using a wrong version ?
-
View User Profile
-
Send Message
Posted Aug 18, 2014@DOKDOR
Just find another chunk to try in. You must meet the mysterious requirements of Minecraft's built in village generation code. Remember, Worldgen does not generate the village, it basically sends a request to the server to generate a village where you are. Sometimes Notch hates your idea for a well placed village.
-
View User Profile
-
Send Message
Posted Aug 17, 2014i am unable to create a village in on my server, all that is created when i type "/worldgen village" is a well. i am in a plains biome, and it doesn't work. using spigot build 1607 (MC: 1.7.10)
-
View User Profile
-
Send Message
Posted Aug 15, 2014Works great on 1.7.9 RO.2. Also if you have any plugin that protect area from building on this won't work and it will give you error. So if you have world guard and it's protecting areas you need to remove it when ur making this. Idk about factions.
-
View User Profile
-
Send Message
Posted Aug 2, 2014@TheLordAndrew I see. Unfortunately after reviewing that section of code nothing stands out as an obvious fix. I'm afraid FLAT worlds will have to go unsupported right now. Sorry. :(
-
View User Profile
-
Send Message
Posted Aug 2, 2014Seems that I only cant generate a village in superflat worlds. Is there a way to change this?
-
View User Profile
-
Send Message
Posted Aug 2, 2014Bukkit 1.7.2 R0 (3020) According to bukkit GUI
Log: [19:35:26] [Server thread/INFO]: TheLordAndrew issued server command: /worldgen village [19:35:26] [Server thread/INFO]: [WorldGen] Generating village... [19:35:26] [Server thread/WARN]: java.lang.reflect.InvocationTargetException [19:35:26] [Server thread/WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [19:35:26] [Server thread/WARN]: at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) [19:35:26] [Server thread/WARN]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) [19:35:26] [Server thread/WARN]: at java.lang.reflect.Constructor.newInstance(Unknown Source) [19:35:26] [Server thread/WARN]: at local.thehutman.worldgen.GenType2.generate(GenType2.java:75) [19:35:26] [Server thread/WARN]: at local.thehutman.worldgen.WorldGen.onCommand(WorldGen.java:80) [19:35:26] [Server thread/WARN]: at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) [19:35:26] [Server thread/WARN]: at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:175) [19:35:26] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_7_R1.CraftServer.dispatchCommand(CraftServer.java:683) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.PlayerConnection.handleCommand(PlayerConnection.java:952) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.PlayerConnection.a(PlayerConnection.java:814) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.PacketPlayInChat.a(PacketPlayInChat.java:28) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.PacketPlayInChat.handle(PacketPlayInChat.java:47) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.NetworkManager.a(NetworkManager.java:146) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.ServerConnection.c(SourceFile:134) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:655) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:250) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:545) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:457) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [19:35:26] [Server thread/WARN]: Caused by: java.lang.NullPointerException [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.MathHelper.nextInt(SourceFile:142) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.WorldGenVillagePieces.a(SourceFile:66) [19:35:26] [Server thread/WARN]: at net.minecraft.server.v1_7_R1.WorldGenVillageStart.<init>(SourceFile:86) [19:35:26] [Server thread/WARN]: ... 20 more
-
View User Profile
-
Send Message
Posted Jul 30, 2014@TheLordAndrew
I'm sorry but at this point I have to assume you are either using the wrong version of Bukkit or not even using Bukkit at all. This has been the case in 100% of every person I have helped troubleshoot with.
Please include the version of Bukkit you are using and at least a partial section of server log if you want help, but I can tell you already, the plugin works, its functioning on my live server right now, and you are doing something wrong.
-
View User Profile
-
Send Message
Posted Jul 27, 2014If I try to generate something, I get "failed to generate *structure* please check server log.
-
View User Profile
-
Send Message
Posted Jun 27, 2014veryvery good!
-
View User Profile
-
Send Message
Posted Jun 18, 2014@P197
Well it looks like you might have done something wrong. That error log was not generated by CraftBukkit. A CraftBukkit 1.7.9 log is formatted like this:
[17:03:08] [Server thread/WARN]: at sun.reflect....
Try using CraftBukkit 1.7.9, build 3092! :D
I am currently running this plugin on my own 24/7 live server using build 3092 and I'm perfectly happy to demonstrate it's functionality in person.
-
View User Profile
-
Send Message
Posted Jun 18, 201418.06 07:09:51 [Server] WARN ... 20 more
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.WorldGenVillageStart.(SourceFile:86)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.WorldGenVillagePieces.a(WorldGenVillagePieces.java:29)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.MathHelper.nextInt(SourceFile:140)
18.06 07:09:51 [Server] WARN Caused by: java.lang.NullPointerException
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:469)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.MinecraftServer.u(MinecraftServer.java:558)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.DedicatedServer.v(DedicatedServer.java:260)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.MinecraftServer.v(MinecraftServer.java:667)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.ServerConnection.c(SourceFile:134)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.NetworkManager.a(NetworkManager.java:157)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.PacketPlayInChat.handle(PacketPlayInChat.java:47)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.PacketPlayInChat.a(PacketPlayInChat.java:28)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.PlayerConnection.a(PlayerConnection.java:817)
18.06 07:09:51 [Server] WARN at net.minecraft.server.v1_7_R3.PlayerConnection.handleCommand(PlayerConnection.java:956)
18.06 07:09:51 [Server] WARN at org.bukkit.craftbukkit.v1_7_R3.CraftServer.dispatchCommand(CraftServer.java:701)
18.06 07:09:51 [Server] WARN at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:180)
18.06 07:09:51 [Server] WARN at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
18.06 07:09:51 [Server] WARN at local.thehutman.worldgen.WorldGen.onCommand(WorldGen.java:80)
18.06 07:09:51 [Server] WARN at local.thehutman.worldgen.GenType2.generate(GenType2.java:75)
18.06 07:09:51 [Server] WARN at java.lang.reflect.Constructor.newInstance(Unknown Source)
18.06 07:09:51 [Server] WARN at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
18.06 07:09:51 [Server] WARN at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
18.06 07:09:51 [Server] WARN at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
18.06 07:09:51 [Server] WARN java.lang.reflect.InvocationTargetException
18.06 07:09:50 [Server] INFO Generating village...
I don't think it works.
-
View User Profile
-
Send Message
Posted Jun 3, 2014@mattdog0601
When only a well is generated that means the selected location is not suitable for Minecraft's inherent village generation procedure. You just have to find a suitably flat or treeless area for generation to function. Remember, Worldgen does not create the village, Worldgen only tells Minecraft that a village should be generated. We just give you access to the command, Notch's code still makes the buildings appear.
Additionally, the commands and support for individual buildings was removed months ago. Those features were, in my opinion, redundant and inferior to other plugins I use for pasting single buildings; specifically WorldEdit.
@Layania
Thank you for your testing and support! :D
-
View User Profile
-
Send Message
Posted Jun 3, 2014when i spawn a village it spawns a well and when i do /vhut it f ails to generate the structure
-
View User Profile
-
Send Message
Posted May 27, 2014@AlbertMarty
I do some test with spigot 1.7.2R03 and spigot 1.7.9R02
All is working very good... If we don't use superflat or flat world like bukkit.
Only bad or special plugin don't work with spigot.
Worldgen is good, usefull and a well-made plugin :)
Thanks AlbertMarty !
-
View User Profile
-
Send Message
Posted Apr 25, 2014Hello everyone, I have just finished testing the current version Worldgen with Craftbukkit 1.7.9 R0.1 and I'm happy to say it worked fine for me. I tested multiple "/worldgen village 100", "/worldgen dtemple" and "/worldgen jtemple" generations. All of the villages I generated were on plains and from memory I recall it is a little trickier getting them to spawn in savannah, but they will appear if generation is triggered in a suitable area. Desert villages are sometimes a block higher than they should probably be. These are just the inherent flaws of the games basic generation algorithms and all we're doing is triggering them more dynamically.
Now with that in mind, I don't test anything with spigot, I don't use spigot, and sadly I have to say I have no plans to directly support spigot. I am strictly interested in supporting Craftbukkit.
Thank you guys all for your support! :D