Nicolas Allemand

Music, game dev and emulation.

Hi guys!

Today I programmed a little contamination simulator. The idea came from a programming exercise a friend was trying to solve.

We have a set of particles (500 at the beginning), which have a state (healthy, infected or dead). Additionally, each particle has a lifetime, and can be "stressed" (I'll explain this shortly).

Each 0.2 seconds, a new generation is computed following these rules:

  • infected particles lose some life over time and eventually die (after 14 generations);
  • if there's healthy particles next to infected ones, they have a small chance of being contaminated AND they become "stressed";
  • if a particle is "stressed", it teleports itself to another position in the screen (simulates plane trips, public transports, cars...);
  • if a particle isn't "stressed", we apply a brownian movement to the particle.

You can pause the simulation by pressing the space key.

screenshot It's kinda like The Walking Dead with particles.