Your typical alien's business on earth? Get to the president and conquer the planet. But the earth's defenses have to be overcome first.
Luring, devouring and mind-controlling are some of the tools at your disposal.
Starting as just a blob of goo, gaining shape is your first task..
In Night of the man eating mucus/mushroom, the player controls an alien lifeform that seeks to control the earth by mind-controlling the president. By devouring citizens it gains energy
that can be used to grow further. It is also able to learn new abilties at certain special places in the city to increase its power.
Oposing police forces that patrol the city are dedicated to stop it and will attack or call for help when they can.
Focus for this game was to have a big number of agents roaming a city and acting out varying behaviours in reaction to the player controlled entity, all on a mobile device. So plenty of time went into designing effective algorithms for handling the goo structure in its specific requirement for reversibility (a node being attacked must be able to retract). After many tests and considerations the most promising path (the one that was used) was to bind the pathfinding system to a rendersystem that fed a screenspace shader to overlay the ground in a set depth.
The agents behaviour were modelled through a custom visual editor i wrote to ease the revision process. At the core they consisted of state machines with parameterizable triggers and a memory section. The memory part later turned out to be useful when i extended the system with options to visually debug the state machines at runtime.
To roam the city, the agents used designer placed paths with annotations to control the flow. Given the time the other tasks were assigned, i couldn't iron out certain oddities, like agents joining the same path at certain times, but to give the impression of a living neighborhood, it turned out to be good enough.
To sum it up, during this project i gained experience in designing
- AI systems
- Debugging tools
- Mobile optimizations