== **WellWorld** ==
===== //Version 0.5// =====

=== The story ===
Imagine waking up one day, in Minecraft, and finding yourself surrounded by walls. These walls are not the ones your friends griefed you with but ones that reach all the way to the sky. You are trapped, surrounded... all alone... or are you? 

{{http://dev.bukkit.org/media/images/37/78/Where_did_those_walls_come_from.jpg|Waking up on WellWorld}}

=== The backstory ===
During my recent break from [[http://dev.bukkit.org/server-mods/cityworld/|CityWorld]], I have been going over my collection of world generator attempts. Most of them are pretty darn unexciting.. or too weird to do anything with. In addition I have been surfing to see what my fellow world creators have been up to. There are a number of cool ideas out there but they all suffer ([[http://dev.bukkit.org/server-mods/cityworld/|CityWorld ]]included) from one little problem.. eventually the generator repeats itself and the world gets boring. It got me thinking of old notion: The WellWorld.

The mod concept is based on a science fiction series by Jack L. Chalker called [[http://en.wikipedia.org/wiki/Well_World|WellWorld]]? In it the "world" divided up into a series of hexagonal regions, each with their wildly different environments for different alien civilizations... It is part zoo and part UN. A good read if you are into grand science fiction. 

Anyway, in addition to the "boring" problem, one of the most difficult things about creating a world generator is making it capable of creating wildly different environments, alas all of those different environments cannot be next to each other or they look weird. Thus we have to create smoothing tech to allow deserts gradually turn into swamps and then into mountains and then into seas. It dawned on me that dividing the world into large square regions (this is Minecraft after all) with walls of obsidian (or bedrock if you want to be "hard core"). Then populate those regions with wildly different environments. Heck, the Nether (big box with a roof) could be next door to a region that is completely filled with water, next to a crystal world made of glass ground with thin-glass trees. :-)
 
Poof... both the smoothing and boring problems goes away. 

{{http://dev.bukkit.org/media/images/37/84/Four_Corners.jpg|From way above}}

----
=== Issues and possible future fixes ===
* Multiverse  In the long run it might be possible to have this work directly with real world generators but for now each generator must be compiled into the WellWorld plugin.

* Biomes  right now, WellWorld doesnt attempt to do anything with Biomes. Ideally each well could have its own.

* Physics  right now each Well shares lighting and time-of-day with each other. This makes fully enclosed wells like caverns brighter than they should be.

* No built in commands  like with CityWorld, I have kept this plugin simple.

* Needs more variety  Right now there are less than a half a dozen generators enabled. Like with world generators themselves, it is pretty easy to add new well generators to WellWorld. In fact during the creation of WellWorld I ported some generators from Khyperia (http://dev.bukkit.org/server-mods/trippy-terrain/), CodenameB (http://forums.bukkit.org/threads/intermediate-infinite-terrain-generation-using-simplexoctaves.28855/) and Dinnerbone (https://github.com/Dinnerbone/BukkitFullOfMoon) but since I dont have their permission, I have left them disabled. Ok, that's not entirely true, I am including one generator loosely based on BukkitFullOfMoon

=== Heads up! ===

Like CityWorld, this plugin really "tests" MineCraft/Bukkit when it comes to complex worlds. In fact when you spawn/teleport into the world for the firsttime (or some wildly new location) it takes a while for all of the blocks to generate. This is especially obvious if you are flying around. Once the blocks are generated though everything works just fine. What I recommend is take a tour of your world and just walk/fly up to each "uninitialized chunk" until everything shows up.

----
=== Installing ===

This is purely a world generator, it does not add permissions or options to configure. If you need permissions, teleportation or world management support there are plenty of plugins that will do that for you. The Bukkit plugin ecosystem does not need more of those puppies. This is JUST A WORLD GENERATOR. :-)

To install it you will need to do three things...
# **Download the plugin and place it in Bukkit's plugin folder.** If you don't know where or what the Bukkit's plugin folder is, read [[http://wiki.bukkit.org/Setting_up_a_server|this]].
# **Now start up Minecraft Server via Bukkit.** If you don't know how to do this, I recommend rereading [[http://wiki.bukkit.org/Setting_up_a_server|this]].

At this point, you may be asking yourself: **How do I get to the WellWorld?** 
There are two options...
# **Press "T", type in "/WellWorld" and press return
# **OR... you can use a multiverse plugin and use the WellWorld as the generator for one of your worlds. We use [[http://dev.bukkit.org/server-mods/multiverse-core/|Multiverse]].

If you are still confused then rereread [[http://wiki.bukkit.org/Setting_up_a_server|this]]. :-)

----
=== Included Well Generators ===
==== ones so far ====
* KnollsWells          // a simple world generator that looks like MineCraft... sorta
{{http://dev.bukkit.org/media/images/37/85/Almost_looks_like_home.jpg|Minecraft like}}
* AlienWorld           // a simple alien-esque world generator
{{http://dev.bukkit.org/media/images/37/79/Where_Creepers_come_from.jpg|Creeper's domain}}
* AlienCavern          // ... cavern-ish variation of the above generator
{{http://dev.bukkit.org/media/images/37/81/Makes_the_Neither_look_inviting.jpg|The underground next door}}
* RealisticMoon        // loosely based on Dinnerbone's BukkitFullOfMoon (see below) but modeled after real moon/planet surfaces
{{http://dev.bukkit.org/media/images/37/83/How_did_I_get_on_Tethys.jpg|Moons}}

==== proof of concept wells, not enabled (kinda boring to look at) ====
* SimplexNoise         // plain stone sculpted SimplexNoise
* SimplexOctave        // plain stone sculpted SimplexOctave
* VeryEmpty            // Big empty box
* VerySimpleFlat       // ... with some stone and a sprinkle of ores
* VerySimpleWater      // ... with some water on top of it
* VerySimpleHilly      // ... sculpted with SimplexOctave

==== conversions of other folks world generators, not enabled as I don't have their permission ====
* Pancake & Khyland              // based on khyperia's TrippyTerrain
* CodenameB            // based on codenameB's sample (he has lots of mini-world generators that would be great in WellWorld)
* DinnerboneMoon       // based on Dinnerbone's BukkitFullOfMoon
