DoN Status Update for January 2016

 

I wrote a comprehensive post in DoN’s WIP thread on the Unreal Engine forums so that I’d add rehash that content here too while I was at it. Having all your content in one place is ideal but sometimes it can pay to add that extra bit of effort in developer forums especially for a technically complex game like DoN where there’s features that are sure to interest other game developers as well.

 

I’m also preparing a video for DoN’s first comprehensive gameplay demo! Not some fancy cinematic eye-candy backed by another astute selection of Vivaldi’s fabulous music, but the actual game with detailed commentary for many features I’ve never shown to date! (and there’s many of those for sure).

 

As Above, So Below!

As Above, So Below!

For now though, here are some massive DoN updates from last month:

 

1) DoN’s Voxel/3D AI Navigation for Unreal (as free plugin soon!)

Nearly all my time has been consumed by work on DoN’s voxel-esque 3D AI navigation. The good news is that by redesigning the system from ground up I’ve managed to pull off tremendous performance gains all across the board – generating 3D voxels is now faster (meaning players need to wait less for the game to load), high collision accuracy that was once considered unfeasible is now blazingly fast – to the extent that DoN’s butterflies now exclusively rely on this 3D / Flying AI package to travel from flower to flower amid some pretty dense foliage! The level of voxel accuracy needed for this was beyond reach with some of the previous techniques that I discussed last year on DoN’s youtube channel (or indeed, even the recent approach the game was using in December 2015).

 

It gets even better -fully dynamic obstacles are now supported! Blooming flowers accurately tag the chunks of voxels around them as unnavigable and even a blade of grass growing on the ground now can dynamically update the navigation voxels so that DoN’s tiny creatures don’t bump into these grassy walls! I’m also working on creating a separate plugin for this system; this involves decoupling my own game’s classes from the system (a fair chunk of refactoring) and learning about how Unreal’s plugin system so I can bundle it up into a nice tidy package. Why, you ask? I plan to release this plugin for free soon!

 

Here are some screenshots of dynamic collision (red voxels amid green) “blooming” around flowers including a pic I didn’t post on the Unreal forums (some fresh content for those visiting DoN’s website eh :))

 

DoN Voxel NAV 1

DoN Voxel NAV 2

 

2) Species Deisgner!

Simultaneously, I also worked on developing a scalable architecture for DoN’s Species Designer; this design is capable of rapidly onboarding new species of plants/animals/etc… not just species designed by the developer (i.e. me), but also (and especially) species designed by players themselves!

 

I had to throw away and rewrite vast amounts of existing code as usual. It’s quite a leap going from “this creature is a butterfly, all butterflies have x, y, z traits” to “this is a winged creature designed by the player that has traits x, y, z and therefore may interact with a hypothetical Species “S” with traits a, b, c under specific constraints defined as k, l, m, etc). It was a difficult a process to be sure, throwing away code that I’d painstakingly built over several months and trying to fit things back in – like pieces of a jigsaw puzzle, into this new, generic, species designer friendly framework. Painful, but absolutely worth it. Having strong, robust architecture as the backbone of your game (or indeed, software) provides an immense sense of relief and confidence, knowing that when the time is right, this thing can grow unimpeded into a large scale ecological simulation. Obviously the technical demands for a complex ecological simulation are pretty unforgiving (AI navigation and behavior across a huge variety of terrains, myriad species with highly bespoke locomotion and behavior, huge performance concerns for eusocial insect colonies, etc, etc) so any amount of time spent in perfecting the core classes and frameworks early on in the game is time well spent in my opinion.

 

Back to the Species Designer – this thing allows an unprecedented degree of customization for DoN by enabling players to design new species for the game, eventually controlling morphology of any species (the most difficult part), behavioral traits (almost there) and complex lifecycle events with intuitive event dependency chains that players themselves can add (should they desire to do so). The game itself will be released with a decent selection of developer created species, not to fear. Initial versions will probably have only a limited selection of insects, plants and hopefully some reptiles and amphibians. Birds are probably do-able, mammals are admittedly a distant dream. I’d rather have a small selection of species whose lifecycles (and lives) are well portrayed than a motley collection of creatures. If I’m able to develop a rich Morphology Editor for DoN’s Species Designer maybe even players can help with the process but that is a stupendously difficult technical exercise – several orders of magnitude more challenging than even DoN’s Voxel Navigation when animation solutions for custom morphology are taken into account.
Morphology aside, a Species Designer UI for designing roles, traits, lifecycles, etc hasn’t been developed yet either. I do have a developer version of it backed by Unreal’s native editor widgets but the actual player interface (backed by Unreal’s UMG or even raw Slate UI technology) is a crazy amount of work to do. I’m optimistic though, as architecture level support is there and data structures for the persistence layer are more or less locked in. And that’s what’s important for now.

 

Here’s a simple ASCII diagram – a brain dump of my thought process around modeling a generic species defined by player driven roles and constraints. Read the following sections more a more detailed take on how this actually works.

 

Species Roles System

 

3) Writing AI for a creature you don’t know at compile-time

The creators of Spore wrote an interesting paper entitled How to animate a character you’ve never seen before. I haven’t decided if I want to tackle that problem yet, but I do face a similar quandary myself – How do you write AI for a character designed by the player after the game is released?

 

To solve this I came up with a “Species planner” system. Each species (plant or animal) has a “Roles Plan”, “Lifecycle Plan” and “Locomotion Plan”. “Actionable roles” operate in a dual subject v/s doer modality. Players will assign appropriate roles to each species and enjoy full control through exposed metadata. A role itself is implemented fully in code.

 

Here’s a screenshot straight from my forum post with some practical examples of how species roles would work:

 

Roles Table

 

There’s more to it obviously, but this post is already getting long so just let me know if there’s interest and I’ll do a video on it when the system is ready for show time.

 

4) Camouflage System

A basic camouflage system is now ready! Both players and AI are governed by “Visual Trails” which react to the kind of surface a creature is sitting on, the speed at which it moves, etc. Bonus points for creatures with naturally disruptive patterns or pre-camouflaged morphological features (eg: Lichen Huntsman Spiders, Spiny Leaf Insects/etc).

 

Camouflaged Butterflies

 

Can you spot the butterflies in this pic? Jumping Spiders have superb vision though, so they sure can!

 

5) IKinema IK for foot, biting, etc

I purchased an IKinema Indie license recently and have started using it for Foot IK, biting etc. I’m going to do a complete video on it when I get some spare time (lol ) but here’s a screenshot for now. Foot IK for our eight-legged Jumping Spider was setup very quickly using their Foot Placement node. This is what ensures that the feet are grounded to an adjoining surface (even the underside of a petal) as opposed to having feet hanging in mid-air or poking through the upper side of the petal breaking immersion completely (this is what was happening before I setup IK).

(more…)


Species Gameplay Preview – Jumping Spider “Phidippus Regius”!

It’s been a while since our little friend the Jumping Spider “Phidippus Regius” was introduced to the game so I thought this was a good time to gather some of the videos I’ve posted elsewhere on the web and write a short post on it.

The Jumping Spider is considered to be the wild cat of the spider world; it has excellent vision, the physical gifts of a gymnast and some serious stalking skills considered unusual for a creature with such a tiny brain. In other words – a perfect new entrant to DoN the Nature game! The species I’ve selected (Phidippus Regius) is a “regal” Jumping Spider that is amongst the largest Jumping Spiders and is a beautiful creature on all counts!

I’d love to do a deep dive video on this species and talk about some of the wonderful gameplay opportunities and prey/predator “setpieces” that come with this, but considering all my time is dedicated to DoN’s demo preparations (Yes! DoN’s free alpha/demo is coming soon!), I’ll leave that video for another day!


Meet DoN’s Developer

So far I’ve taken an impersonal approach for most videos of DoN, but for 2016 I’m going to try changing the format a bit. In coming videos I’m going to personally walk you through the game’s progress, features that I haven’t shown yet and topics that may be of interest to other game developers too. Before all of that, I want to introduce myself with this video and set the tone for all things to come! I hope 2016 is a new Dawn for DoN!


DoN has fully embraced nature!

Some good news, DoN is now a pure nature/ecology simulation focusing on the inter-relationship between flora (plants and trees) and fauna (insects, reptiles, birds and mammals). Ecological elements such as weather, changing seasons, plant and animal lifecycles will be fully simulated and true to nature.

DoN Autumn Scene 1 - Trimmed

New Gameplay Modes

Players can select from the following gameplay modes:

1. Solitary creature: Explore the world as solitary creatures (prey/predator/both depending on their position in the food chain)
2. Eusocial colony: colonize the habitat by controlling eusocial insect colonies (honey bee colonies, ant colonies, etc)
3. Creator mode: Design a biome with plants, insects, reptiles, birds and mammals of your choice and watch the simulation flourish or join the action directly by controlling a creature or colony.

No more RTS/strategy gimmicks – this is exclusively a nature game now!

DoN Rain 2 v5

Summer Sunrise Cmp

Steam Greenlight

All this is an enormous amount of dev work and also the reason why I haven’t released new videos for so long. The game is being rebuilt from ground up and this is a time-consuming process with many technical hurdles to cross.

I will be releasing DoN to Greenlight as soon as a working prototype with a small collection of plants, insects and reptiles is ready. Beyond that though, the dream of creating a rich nature paradise including birds, mammals and many other species depends solely on community interest.

If this idea resonates with enough people, the game will be developed further as a rich and diverse ecosystem with many different biomes and natural phenomena.

You can visit DoN’s Steam Greenlight Concept and provide feedback there as well.

Butterflies Polllinating

Spring 3 cmp

DoN needs your support!

Without your help in spreading the word and your feedback, DoN cannot realize its potential as the nature game we’ve all been waiting for. Show your support for DoN in any way you can!

Winter cmp

Thank you!


More Living Flora! Watch Fern grow from fiddleheads to a thick forest!

DoN’s Living Flora Simulation aims to approximate natural growth of various flora and it is against this backdrop that the Real-Time-Strategy gameplay of DoN thrives.

In its first leap towards covering non-flowering flora such as moss, fern, etc under its gambit, the Living Flora Simulation now supports spore based reproduction (as opposed to seed based reproduction that was the only mode of floral reproduction supported in previous builds of the game). This video shows Fern unfurling tiny fiddleheads into large roomy plants while reproducing via spores using pre-determined simulation parameters that influence the resultant growth patterns.

Another thing! The dream of running massive flora populations at an acceptable 60 FPS is also something I’ve been keenly working on and I’m thrilled to report that this is now reality! As demonstrated in this video, DoN can manage lifecycles of not just hundreds – but THOUSANDS of individual flora, all running at a smooth buttery 60 FPS!

In coming months the Living Flora Simulation shall further blossom, incorporating such key features as decay simulations, day-night cycles, weather and perhaps even seasons! The possibilities are endless and these are exciting times for DoN indeed!


Major Updates! RTS redesign, Future roadmap for DoN

It’s been a while since the last update and here is the reason why – DoN has undergone a major overhaul! This transformation includes a renewed focus on the RTS (Real-Time-Strategy) elements of the game and other much needed gameplay improvements.

The real challenge from here is to create a sense of that much loved 4X strategy gameplay without sacrificing the sense of adventure which Third-Person action unfailingly delivers. In the coming months DoN will attempt to walk a tightrope balancing not just RTS and Third-Person, but also the “Living Flora” simulation elements of the game; The Living Flora simulation aims to provide an immersive, realistic and (most importantly) a warm stirring experience of nature’s floral beauty, pollinator lifecycles and their intertwined relationships.

This update offers a glimpse of new features added in recent months and provides a briefy summary of DoN’s roadmap so CHECK IT OUT! DoN is heading towards a Steam Greenlight submission somewhere in Q4 of 2015!

Like, comment, and share this video! You can also visit DoN on the Steam Concepts page which offers a preview of Drunk On Nectar’s Greenlight submission.