Game Update: Finally Finished (for now)!

It seems that I have not posted a game update in a long time, despite continuing to work on the game. In fact, I haven’t posted many game updates at all since the project started. But, I have now finished the project! Well, by that, I mean I have finished the IDS project. But the game will continue development as I add more updates in the long run.

To play the new and improved game, you can click on this link.

But for now, let me sum up everything  I did for the project since the game’s first release.

I added sound effects into my game. I learned a new library called p5.sound, which adds sound effects to p5.js Now, every time you get a new notification, a ‘ding’ sound is played. When a virus attacks, a dramatic ‘dun dun dun’ sound effect is played. There are more sounds that I added and more sounds that I will be adding in the future.

I created a system which lets users create accounts and save their best scores on my game. To clarify, users are scored on how much time they can stay alive in my game. Since my game is on a Rails website, I can create an account service, in which users save their scores. On the game over screen, it shows your time alive and your best scores.

I created a new task and a new protein for my game.The new task is about a wave of radiation which hit the cell’s nucleus, damaging its DNA. To survive it, you have to create a gene regulator protein, which costs more resources than a DICER enzyme. But if you don’t, it’s only a matter of time before your cell dies.

I added a new clause into my game: your ATP decreases over time. In real life, a cell is constantly using ATP to keep itself alive. Now in the game, your ATP decreases by 1 every second, and if you have 0 ATP, you die.

I added tutorials to teach players my game. They are in the form of popups which appear when the player needs to do something he/she hasn’t done before. So far I have made tutorials to explain:

  • the purpose of the game
  • how to collect ATP
  • how to fight viruses
  • how to fight radiation
  • how to recycle resources

I will continue making more tutorials as the game continues to be updated.  

Even though my project is finished, I will continue making updates, and I promise I will post game updates to my blog more frequently in the future.

Game Update: First Version Released!

It’s been a really long time since I posted a game update, and in that time, I managed to make a fully functioning game for all to learn and enjoy. In fact, you can play it right now with this link.

I figured I should give you some brief instructions on how to play, so here they are.

The premise of the game: You are a single-celled organism trying to thrive and live as long as possible. Unfortunately, nature will throw many obstacles at your course. As players overcome these obstacles, they will learn how cells function in the real world.

First and foremost, you should watch the notification area on the left of the screen. It will tell you when important things happen in the game, and is key to surviving long.

Getting Energy:

The first thing a cell needs is energy. This comes in the form of Adenosine Triphosphate, or ATP for short. It makes it in the mitochondrion(seen above) by burning glucose in a chemical reaction. To get ATP in the game, click the mitochondrion, which opens up its menu. On the menu, click the green button which says Burn Glucose. This will give you 40 ATP and subtract 20 Glucose. ATP is needed to create proteins, which are what get stuff done in the cell, like fighting viruses.

Fighting Viruses:

When your cell does get attacked by a virus, a box will appear in the top-right corner showing you how many viruses there are. The number of viruses will multiply every 5 seconds, and when they hit 1000 or over, your cell bursts open. To stop the viruses, you have to kill them with proteins called DICER enzymes. You make proteins inside the menu of a nucleus. When you click on the nucleus and open its menu, you will see a green button which says ‘Create Dicer Enzymes’. When you click this button it will create 5 DICER enzymes. Each DICER enzyme kills one virus. To make a protein, a cell first needs to encode the instructions for making it through RNA, which needs nucleotides to make. The actual protein is made from amino acids. In the game, making a protein like DICER enzymes subtracts from your nucleotides and amino acids. But if you defend yourself from a virus attack, you get some resources in return.

Earning Resources:

There are many ways to earn resources in the game, such as defeating viruses. One way is to enter the menu of the Golgi Body(shown above).  This will show you 3 buttons, each with the names of a resource. In real life, the Golgi Body recycles all the free-floating resources in a cell to perform other tasks. In the game, clicking on any of the Golgi Body’s buttons will give you some of that resource, but you have to wait sometime before you can get more.

I hope you enjoy the game in its current state. I will add more features into the game, such as more challenges for players to face. My hope is that players will learn more about microbiology while playing the game. Remember to follow my game updates for more information.

How cells produce energy

A lot has happened since I last posted an update on my game. I figured out how to create draggable objects in d3.js, and I’m learning about collision detection to create the nucleus-ribosome transfer. But programming isn’t the only thing I’ve done for this project. I’ve also been reading a textbook called “Essential Cell Biology”, and I got the idea to share some of the information on my blog.

Cells are more complex than any man-made machine, yet they are smaller than anyone could imagine.  They support all life, yet each one is tiny compared to the size of the organism it supports. The cell is such a remarkable thing, able to do things way beyond its petite size. But, how do cells power all of their functions?

As you already know, the human body gets its energy through eating. But what happens to all those molecules inside the food? Well, they go into the cell’s mitochondria. Before we go on, I actually want to mention that mitochondria were once independent single-celled organisms! These early prokaryotes which mitochondria descend from were the first organisms to find an efficient way to produce energy. At some point, these organisms were swallowed up by eukaryotic cells through a process called endosymbiosis, and they evolved cooperatively over time, with the prokaryote becoming a new organelle and the eukaryote evolving to use the energy the mitochondria provides.

Now, what happens in the mitochondria? Well, a ton of complex molecules like carbohydrates and sugars all go into the mitochondria which constantly rips them apart and mashes them together until they generate enough of a special molecule called Adenine Triphosphate, or ATP for short. ATP has a special structure which allows it to power organelles such as the ribosomes, which generate proteins which perform functions all around the cell and the rest of the body.

Game Update: Using d3.js library!

I’m sorry I didn’t post any updates on the game(or anything at all). I’ve been really busy lately, with school restarting and all, so I haven’t been able to find time for this blog.

Well, for the first post in about 23 days, I bring to you a big update for the game, in 5 characters:


Wait, what? d3.js? What is that? Well, it’s a function library for javascript to help create data-driven documents. Sounds boring right? Well, you’ll change your mind when you see what d3 can do! Imagine rainbow worms, interactive graphs, digital world maps, even web games can be made with this library!

I’ve already gone to the point in my game where I need interactive graphics, and that’s exactly what d3 provides.

Right now I’m still learning the way it works, and I made a few sample programs with it on my website. I’ll be constantly adding links to my new programs onto this post, so stay tuned!

For a colorful spin on a sine curve, click this link.