Progress Update 2

Still laying down the groundwork, little to show in terms of visuals at this point.

Saving and loading system

It’s now possible to start a game, tweak the parameters, then go through the complete world generation and then save the world to disk for loading in later.

Scripting / Config File

I decided on Lua as the scripting language. I’ve embedded LuaJit in the application, being a tracing Jit, it’s incredibly fast. I’m still unsure to what extent I want the game logic to be driven by scripting, but for the moment I’m just using it as a config language. I want the player to be able to tweak the basic world generation parameters in game, but for those that want full control they can edit values in the external Lua file.

World Time / Day Night Cycle

Made progress on the concept of time within the world. The sun now has a position according to the time of day. In the world editor the tide can be seen going in and out in relation to the hour.

Other Additions

  • World generation now samples noise values in 512 byte blocks. This should greatly speed up the world generation as it reduces the amount of function calls drastically.
  • Added Linear, Quadratic, Quintic falloff options for world generation gradients.
  • Added a multitude of biomes
  • Biomes can be looked up from a matrix derived from a image containing a Whittaker biomes classification diagram.
Progress Update 3
Progress Update 1