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.
- 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.