Nick Cellini's Logo

Swarm

A puzzle, exploration game with a flock mechanic

This prototype is an experiment exploring the movement and dynamics of flock behaviour created in collaboration with Byron Hallett. The core idea we wanted to explore, was how it would feel to control a flock of 'drones' who all wanted to stick together. The movement commands provided by the player would go to all drones individually. By introducing some simple rules on each drone (stay close to your peers, but don't get TOO close), the emergent flock behaviour could be seen and controlled.

The inspiration for this prototype came after watching a short documentary about the emergent behaviour from a flock of starlings. This mesmerising behaviour can also be seen in schools of fish, insects and bacteria.

We discussed the idea of the whole swarm being an entity of it's own, and how it would feel to be able to control that entity in a simple way.

Swarm Bug

Some mockups for the drone characters by Zozan Onay

Development

One of the most challenging and interesting aspects of this project was developing and tweaking the algorithms to produce the emergent swarm behaviour.

Getting the control of a swarm to feel good to control involved a lot of experimentation. Variables to consider that would affect the dynamics of the swarm:

  • The distance from other drones that a drone would be 'happy'
  • The rate of acceleration towards or away from other drones depending on distance
  • Are there any deadzones or limits to these values, so speeds don't get too high or low
Swarm experiment
Swarm movement

We experimented with using only 2D Circle Colliders to keep the physics costs as low as possible. Designing a level purely out of circles could actually work out to our advantage, creating a more organic looking and feeling world.

We discussed the idea that the drones might like to spread out on their own in a more natural way as the player explores the world. If a player is in a collider of size N would could increase the distance they want to be away from each other by a factor of N. While we did experiment with this, ultimately we found that it was much harder to keep track of all the drones. Preferring a relatively compact group of drones, so the player feels more in control.

Swarm Bug

Some tweaks to the flock algorithm led to some explosive results. Just one of the examples of why this projet was so enjoyable, interesting and challenging.

Swarm 1
Swarm 2
Swarm 3
Swarm 4