While co-oping at Georgia-Pacific last summer I found myself quite bored after work. During my first two semesters at Georgia Tech I think I became accustomed to the grueling pace of classes and having it stop so suddenly with the arrival of summer left me feeling bored. My brain was itching to do interesting and new things but it was my first semester as a co-op so they didn’t give me very challenging work. So I did what every good programmer does when bored; I picked up an O’Reilly book to learn a new programming language. I chose PHP because I had heard a lot of buzz about it and I had seen some really cool online applications built on PHP. Since I had the whole summer to learn PHP I decided I might as well come up with a reasonably large project to cut my teeth on and really help me grasp this new language. I brainstormed some ideas with a friend of mine and we agreed that a web-based version of the Risk board game would be awesome. We always enjoyed playing it but had problems finding other people to play with us and finding the large blocks of time necessary to finish a game in one sitting. So why not use the internet to enable anyone to play Risk anytime they wanted?


A few months ago I actually completed a working version of this project which I have dubbed NetRisk. And just recently I setup a project page on SourceForge and released the project under the GPL. I would be remiss to call the current version completely stable as I still feel new to PHP so my code is nothing to brag about and it hasn’t seen much testing beyond a few games. My hope is that other people will find the project interesting and contribute to its development. It was definitely a great experience for me as I learned much more than I expected to. I started with PHP but had to branch out and learn or improve my JavaScript, SQL, CSS, and graphic design skills to realize my goal.

Enough story, here are the details of the current beta version of NetRisk. NetRisk is a multiplayer web-based version of the classic Risk board game coded with PHP and SQL. NetRisk allows anyone to play a full game of Risk with up to 8 players from any JavaScript enabled browser. NetRisk has a built-in game lobby to support multiple concurrent games with the ability to join or kibitz on any game. Each game can be made private or public and has in-game chat and a world map showing the current game state. NetRisk plays like the standard Risk board game but with a few modifications to support better online play. The biggest change is at the beginning of the game, the states are randomly divided between the players who then place all their initial armies at the same time. Players cannot see where their opponents are placing until all players are done placing. This change was made to speed up the game since there is no guarantee online players can synchronize their play times to handle the large number of rounds the real Risk game requires for initial placement. There are a lot of ideas I have about improving the game which I hope to implement in the future in collaboration with others interested in NetRisk.

NetRisk @ SourceForge

NetRisk Game Browser     NetRisk Playing Game