This month, a big update ! The world procedural generation has been updated to increase emergent storytelling coherence and global replayability ! Now houses are created with a specificity, like a kitchen or a workshop, with a Crafter inside ready to craft you a shield for 4 pieces of wood ! While we speak about NPCs... They went from stupid to amazingly smart, thanks to last Unity Navmesh update. I also tweaked the camera settings and added HD, bloom, color correction and more effects making the game look visually better : we'll check that with new screenshots! Let's go!
World procedural generation update
I updated strongly the world generation. Before this update, it was really basic : the terrain was created first, and a bunch of objects were randomly spawned according to their height on the map. Results were quite good, but if all maps were different, the gameplay was way too much similar, and no consistent story emerged from these procedural lands.
The most important change is that now each element is generated with its own specifities, but in relation to each other element around on the map. This allows more richness, variety on each new game and a simple emerging storytelling while playing.
I detailed above all the steps of the new generation process. It took me lots of work to reduce generation calculation time to the maximum but it was worth the price : a medium map takes now less than 10 seconds to be generated on an average computer ( iMac 2010 i5 3,2Hz - 8G RAM - osX )
The best features of these new worlds is that now every building is specialized : it can be a kitchen with an old woman cooking and food suppplies on a table, a empty ruin, a droid base...etc. This makes each new map more coherent and surprising. I also included some kind of "Dungeons" which contains random stronger enemies and lots of loot ! But don't hope to visit one during you first day : you'll get killed in less than a minut.
5 new buildings have been created too ! With new rocks structures and also caverns ! New 3571 worlds are more convincing now, ready for your adventures:
Enemy AI Update
I wrote code during months without finding a satisfying navigation system for my NPCs. There are ready-made solutions where you can "bake" the obstacles of your map, but my game deals with completely random architecture placement, and the player is able to build shelters, walls... I needed a realtime system.
I wrote first a messy wall detection script, but the behavior when chasing the player in random-generated towns was still not really satisfying:
I started then to code a complex node system to help my NPCs to find doors... when last month I read news about the brand new Unity's realtime navmesh: I immediately tried to implement it. After painful nights ( I had to rethink NPC's AI structures a lot ) this finally was really worth it. The navigation system works very well, and enemy's way of chasing you is intuitive and fast. It still allows the player to build walls, buildings, which will impact in realtime on the NPC's path decision.
Camera effects update
I spent a lot of time too trying to find the visual settings I desired for the Camera View. I finally found the perfect combo : HD settings + SSAO + Bloom + Photo Light and Field of view filter + My-own-secret-color-correction ! Let's see the impact on the game :
A lot of work done so far, and a lot of work still to be done. Sometimes we need a break after nights of programming and 3D models texturing. Let's just watch new screenshots of the game before leaving! See you in the future, dear time-travellers!