As you may have heard, I will be heading to Santiago in about a month to be part of Startup Chile, where I’ll be expanding our line of bilingual games for the Latin American market. First on the agenda is to do a Latin American version of Making Camp. The original Making Camp and now Making Camp Bilingual were based on stories from North American history, specifically the Ojibwe people who lived in what is now the U.S. and Canada.
I want to add some games specifically for Chile but I don’t want to go TOO far before I consult with people from the country, which is what I will be doing in Santiago. However, there a couple of things I do know and that is that Chile is noted for its mountains and that some form of a game called Snakes and Ladders has been around for centuries.
Before he left us to pursue big bucks in the corporate sector, Luis had started a version of this game that never got finished, so I took it over, added a BUNCH more code and created a game I’m calling caves and ladders. (I did look it up and Chile has some really cool caves.)
There is a LOT more to creating even a small part of an educational game than most people realize. Let’s just start with the design part. For a board game like this, modified to play on a screen, you need to design the game board to start.
So, here we go. Our game piece, the character I picked, is in the bottom right. The goal is to get to the top left and go sledding down the mountain. My program is going to need to fulfill several functions:
- Have an opening screen.
- Show instructions for how to play the game.
- Allow the player to pick a game piece (character).
- Draw the game board, including placing the selected character in the first square and keeping a record of the location of all the ladders, trees, caves and fires.
- Randomly show a die with a value of 1-6 when the ROLL DICE button is clicked.
- Move the character the correct number of spaces forward.
- Execute a series of steps based on the object in the game square where the player lands.
- Decide if the player has won and then do something.
- Because this is an educational game, we threw some math problems in there. If you land on a tree, you need to answer a math problem to go on. Right now, if you get it wrong, you can still keep going, you just don’t earn any points. (Points are the currency you use to buy items for your wigwam in Making Camp.) I may change that later.
- Include answering a harder question and moving ahead twice as many spaces.
- Just a general design philosophy of mine that code should be as clever as necessary but not more clever than necessary. In various places, I tried to make the game as easy to modify as possible for, e.g., teaching decimals or division, and for running in devices of different sizes.
I’m almost done with this game. I think it can be done in under 1,000 lines of code or thereabouts. While it had not been my original intention to create a single page web application – this is going in as part of a much larger game – I realized that this could be really easily packaged that way, so I’ll probably do that next week.
If you want to follow along on the design portion, read the next post. After that, we get into the coding.