University of Idaho
Polymorphic Games

Defend the galaxy against an encroaching horde of evolving enemies in this arcade style space shooter. As you kill each generation, the fittest creatures become the parents of the next generation, adapting to your playstyle.

How long will you be able to survive against the Protean Swarm?

Buy on Steam

Darwin’s Demons models biological evolution using enemies with digital genomes. Enemies acquire fitness by being the most aggressive, accurate, and longest lived, and only the most fit enemies reproduce to pass their genomes on to the next generation. The result? The creatures you found hardest to kill have all the babies, making each generation more challenging than the last!

In ARCADE MODE, take command of 22 different ships, 18 defensive systems, and 11 secondary weapons to battle the Protean Swarm.

In LOCAL MULTIPLAYER MODE, up to four players can fight the swarm side by side.

In EXPERIMENT MODE, get your nerd on and take control of the evolutionary model. Change parameters such as mutation rate, population size, and the fitness function, to test your own evolutionary hypotheses.

Be warned: No matter your play style, your enemies WILL adapt to your selection of ship, weapons, and defenses.

Climb the leaderboards as high as you can, but in the end....


In Darwin’s Demons, there are no preprogrammed enemies. Instead, our enemies are a population of creatures with a digital genome that determines how they look and act. As you battle against one of these populations, each creature gains fitness based on two different aspects of their performance.

Accuracy: Every bullet shot affects this fitness component. The closer a creature’s bullet gets to the player, the more fitness the creature gets.

Aggression: Creatures constantly earn fitness based on their screen position. The lower down on the screen they are, the more fitness they get.

These fitness functions are designed to select for the creatures who do the best job of trying to defeat you. After you defeat a generation of creatures, the next generation is created using sexual reproduction. Tournament selection is performed on the just-defeated population of Proteans so that those with higher fitness are more likely to be chosen as parents. Since the Proteans are diploid, two parents must be chosen to create every offspring. An offspring’s genome is created by performing free crossover on the parent’s chromosomes and then performing point mutations on the resulting chromosomes.

Development Team


Nicholas R. Wood - Project Lead
Barrie Robison - Biology Professor
Terence Soule - Computer Science Professor

Code Team

Samantha Heck - Software Developer
Zachary Yama - Software Developer
Terence Soule - Computer Science Professor

2D Graphics

Nicholas R. Wood - Illustrator
Landon R. Wright - Unity Developer
Emily Ward - Illustrator

3D Graphics

Landon R. Wright - Unity Developer
Peter Wangler - 3D Artist

Music & Sound Effects

Sam Carlson - Musician
Tyler Gonelli - Musician
Weston Durland - SFX

Biology & Data Analytics

Nick Wren - Biologist
Spencer Gomez - Biologist
Barrie Robison - Biology Professor

Media Presence

Danielle Barney
Michael Huffstutler
Weston Durland

Business & Marketing

Kirsten Way
Joshua Yamamoto
Alex Walton
Erick Lee
Brianna Zak
Karl Hirning

Voice Actors

Nancy Means
Thomas Everett Haynes
Abraham Foster