top of page

Petri

Type
Position
Date
Game Jam
Main Programmer & gameplay designer
January 2018
Links
 Genetic algorithm 
 Unreal Engine 4 
 Blueprint 
 Game Design 
 Strategy Game 

Petri is a that I developed along a friend for the Global Game Jam 2018 during one weekend at the Goldmishts, University of London event. The team consisted on a programmer (me) and an artist. Even though we were only two people to make the game in two days, we managed to finish it in time and people that played the game liked it.

 

The key word for this game jam was the word Transmission, and after a quick session of brainstorming we decided to make a game based on the transmission of genes and also diseases. The game concept is that you are a scientist that is desperately trying to find a cure for a deadly virus that has almost destroyed humanity. The problem with this virus is that it is always reproducing and mutating, so you have to constantly create different kinds of bacterias that are capable of killing the deadly virus.

When the game starts, you find yourself controlling a syringe in a petri dish where 3 virus with different genetic codes are starting to move and reproduce. The game is mainly based on the genes mechanic and the behaviours of the virus and the beacterias that you can create.

First of all, both virus and bacterias have a "genetic code" that is based on 3 values: R, G and B. The sum of these values always sum 100, and the colour of each virus or bacteria changes depending on these. When a virus and a bacteria collide, the RGB values of both of them are compared, and the one that has 2 out of the R, G and B values greater than the other will win and kill the other. For example:

Bacteria         Virus

R        33         <        80         

G        40         >        13         

B        27         >          7         

 

In this case the bacteria has grater G and B values so it kills the virus     

On other hand, the virus moves randomly by applying to it random inpulses, and ach 3 seconds it "lays" an egg with its genetic code. If a virus touches one of this eggs, it generates another virus which genes are a mix of the two parents. The original idea was to implement a real genetic algorithm that measured how well the alive viruses were and then created new viruses from the genes of the best ones. However, as I was the only prorammer I didn't have time to develope it like that and I just made a combination of genes between the parents.

Finally, the bacterias move randomly but if they perceive a virus close they follow it until they catch it. If a bacteria kills a virus, it duplicates itself.

Taking these mechanics into account, the player has to create bacterias by sucking with the syringe different proportions of red, green and blue genetic material and then release them in the petri dish in the hope that they will be effective and kill the virus. The idea is that, by looking at the colours of the viruses you can have an idea of which combination of RGB will be effective against them.

As we were a team of 2 people and I was the only programmer, I was in charge of developing every feature, from the virus and bacteria AI to the genetic and reproductive system. For the design of the game and its gameplay we were both in charge, and after we came up with the concept we developed the idea while we were making the game.

It was a challenge to develope Petri in two days but we managed to do it and we were happy with the results. However, I didn't have time to balance the game propperly and, as the virus reproduced quite a lot and due to the "survival of the fittest" they addapted quite well to the bacterias, it is quite hard to beat the game. Nonetheless, people liked to see how the virus spreaded itself and its different colours, so they enjoyed it.

This was my first Game Jam and it was a great experience that alllowed me to challenge myself, improve my game design and programming skills and also to meet new people and make new friends in a friendly and inspiring environment.

Image gallery

bottom of page