Base Race

baserace-logo-small.png

Base Race is a blocky real-time strategy game. The goal of the game is to destroy your opponents base before they destroy yours.

One Game a Month

31 days ago I set out on a journey of discovery and learning. I accepted the One Game a Month challenge. The goal was to great one game each month for the entirety of the year. At the end of the year, if all goes as planned I will have made 12 games, and learned a mass amount about game development.

So here we are, it's the end of January and I've spent the last 31 days respectively, working on my entry for this month. 

The Idea

Whiteboard Concept

My initial thought was to recreate a custom map that was from a game called Warcraft 2: Battle.net Edition. The map was called Grunt Warz, you had a barracks and units that spawned around it, you could use your units to attack others and defend your barracks. The map was multiplayer which added a great deal of strategy when it was more than two people.

Technology Behind the Game

Base Race was meant to be my real introduction into game development. I have done very little game programming in the past, so I decided to make my first game completely from scratch. I decided to make my game using HTML5, Canvas and native Javascript. I am not using any frameworks or libraries such as jQuery or CraftyJS to accomplish any feature that I've implemented in the game. I decided to go with an object-oriented approach for making my game. Which lead to making my own mini game-framework, which I've affectionately named GuppyJS. Guppy being a fish that is well-known as the millionfish because of sheer amount of guppys in existence. That's how I view my game framework, just another guppy in the ocean.

Conclusion

The game in action

Now that it's all said and done I can safely say I made my first game from scratch. Is it perfect? Absolutely not. There are many features missing that I had originally envisioned, the primary being unit collisions and pathfinding. However, I am happy with the progress that I made and I have learned a great amount from just the very first month of the 12 month challenge. I am very excited to see where I am at in a few months. If you've ever been interested in game development but have never made the plunge, then I have one thing to say. Just go for it, start from scratch, and just put in the effort, it will certainly pay off.

Open Source

If you're interested in learning more about the game feel free to check out the Source Code on GitHub. Even though I've done everything from scratch I decided to make it open source as there is not many HTML5 Canvas RTS games out there that are open source. So please feel free to learn and use my code as you like, just be aware that it's by no means perfect or done. Also, I plan to continue developing GuppyJS as I continue to make games throughout the year, so look forward to seeing more!

Emma Faye

E Palo Alto, CA, United States

Developer ▪ Artist ▪ Knowledge Junkie