One Of Zombies

One Of Zombies is a mini 2D game for play and enjoy.

I would like it to be an strategy game but it is more like a kill kill game. But it still has a minimal strategy elements. It supposes you have to find the innocents survivors that still remain inside the zombie town and try to save them. But if you don't want to you don't need to do it, actually there is not a real purpose on the game and you can still playing whether there are still any innocent to be saved or not..

Just be yourself.


This is not a quality project, this is not a professional stuff.

I am just enjoying my self and having fun, and by the way I hope you will have fun too!.

The game is very stupid, and the code is very ugly and dirty, I just wanted to test the Gosy library, and I have not experience on game development.

It is the first time I put my self on a pure Ruby project with more of one class. I have had such an experience with Rails and still learning! and I realize that I have got no idea about Ruby.


Put the innocents out of danger at the helicopter.

If you don't arrive at time, when an innocent it is rounded by zombies he will become a zombie too.

The panel will show you info about what is happening.

Kill, kill, kill, kill them!!.

Video Demo

Nothing will be the same.

The History

You are a thirteen years old girl; your name does not matter anymore. You are angry, you've lost everything.

While other children dream with monsters, you saw them on your own room and you had to kill them..

Now, not any other person has what it supposes to have to go there and finish the job.

Of course you can use the firearm you took from the dead fingers of your father.


It is just a game, not a videogame, I mean this is a game for me. The development of this game is a game itself.

I was an assistant on the brutal talk about Gosu that Javier Ramirez offer us on the EuRuKo 2009.

I wanted to test every this stuff Javier showed to us.


Me, Fernando Guillen, a 33 years old web developer, passionate programmer and a lover of Ruby and Ruby on Rails.

Too old for games.. don't you?. No way, there is not an age limit enjoy to playing. I love games, my profession is a game for me. When it ceases to be a game for me, then, I'll quite..


It's not complicate :). You were selected, o better said: you wanted to be selected, you wanted to come back to the zombie city, that’s why they put you on that helicopter.

The helicopter will make a round over the town so you can observe the situation. When you are ready press 'G' key and the helicopter will look for a good place to leave you on the battleground.

Don't worry if after you press 'G' key the helicopter doesn't stop immediately, the pilot will look for a good place. Maybe the place the pilot choose is not as good as you was expecting but, who can trust a helicopter pilot?

At this moment you will be alone, run run, use the 'cursors' keys find the innocent survivors and bring them to the helicopter. You will can distinguish the zombies from the innocents, just put attention on their look. Kill them using the 'space' key.

You can pause the game pressing 'S' key.

With the 'ESC' key you will be able to close the game.

There are a few number of special keys just for debuggin:

  • 'I' key will show you info about the vibrations of the floor.
  • 'P' key will show you a panel with info.
  • 'L' key will show you the remain life any creature has.

Grateful to

I have to say thanks to the language Ruby, the amazing dynamic programming language designed by Matzz.

To the library game Gosu , very simple library for 2D game development.

To Javier, for his talk.

To Tonypa for his amazing tile based games pragramming tuto.

To Alexander Repenning for his hard theory about collaborative diffusion and antiobjects.

To Internet's content creators for all forums and blogs I have had to read.

To Free CSS Templates for the template of this web.

To Dahrkael for his comments and for the Windows binary version.

To Fran Diéguez Souto for the Linux deb package version.


There is an small algorithm implemented on the tummy of this project:the intelligence of the non-players creatures: zombies and innocents.

They don't look very smart, do they? :) but I have tried to offer them a bit of conscience.

The zombies feel attracted for the hero and for the innocents that run over there. They don't follow you like a compass, instead, they try to find a valid road to take you.

The innocents feel attracted for you and the feel fear of the zombies, this is because they use to follow you, but if there is a zombie near they try to run away from him.

The intelligence doesn’t belong to the zombies nor to the innocents... actually the intelligence relays on the gound.

You, the zombies and the innocents produces a kind of vibration on the floor that is propagate after a small distance, it disappears.

This vibration can turn the corners but can not go throw the houses, and that´s way the innocents and the zombies can feel you on the other side of a corner of a house, but they can’t feel you, if is not any corner nearby.

If you press the 'I' key during the game you will be able to see the vibrations emitted by the creatures.



Available on Mac OSX Leopard app version and Windows binary version and Linux deb package version.

See the download place.

For other platforms you always can download the latest source release, unzip it and run:

$ ruby game.rb

For a fluid experience please use ruby 1.9:

$ ruby1.9 game.rb


Best way is this web it self.

The ReadMe of the One of Zombies.

I offered a lighting talk to the New York Ruby User Group using this presentation: One of Zombies presentation.

Lightning Talk

Krakow, May of 2010, on the EuRuKo2010.

Source Code

The whole code is completely Open Source. You can take it, run it, modify it, use it for other projects.

But be carefully, read the disclaimer, the code is not good, and I don't have time to clean it.

You can see the code or download or whatever from the OneOfZombies github project.

Comments and Insults

Any kind of comments, suggestions, or disagreements about what you see I'll be very happy to know about.

You can contact me by email: fguillen.mail[REMOVE-THIS]