This article provides ideas for a group Makey Makey education/hacking session based around the Whack-A-Potato game.
Target age range
Toddlers to adults!
- To have fun!
- To gain experience and confidence wiring up Makey Makey to computers and various vegetables
- To download, install and run a game from the internet
- To create a personalised, customised game using photos of or provided by participants
- To gain experience of basic image editing (to remove background and resize)
- To experiment with different objects as game controllers
- [Advanced] To gain programming experience by inspecting and modifying the game source code
1 hour. Longer with the advanced activities (modifying source code).
Equipment & Materials
- 1 computer (Windows or Mac)
- 1 Makey Makey board with 4 crocodile clip cables
- 3 potatoes (or other vegetables)
- 1 banana, lemon, carrot or other easy to hold conductive object to make the ground connection
- Selection of other robust fruit/vegetables for further experimentation
- Digital camera for taking photos of participants to customise game. Mobile phone cameras are fine. One camera could be shared between all groups.
Encourage participants to bring along a USB stick so they can take their custom game home with them!
Easy if you stick to just downloading, running and customising the game.
Moderate to advanced if you get into installing the Loom Game Engine and modifying the game source code.
The main guide for downloading, installing and running Whack-A-Potato is here. Give your participants a link to this page.
- To get started, show the group the Whack-A-Potato demo video. This should get them stoked, and keen to both play the game and make their own version.
- Install the game: Download, install and run the basic Whack-A-Potato game. This will have the default moles, and can be played with the keyboard.
- Set up the Makey Makey: Wire up the Makey Makey to the vegetables, and plug the Makey Makey into the computer. Open a text editor and test the potato connections and wiring. Hold the connection to ground in one hand, and whack the potatoes with the other hand. They should type the letters A, S, D when whacked from left to right.
- Play the game with potatoes!
- Customise the game: Get some images that you want to use for moles. These could be of participants, family members, friends, celebrities. The pictures can be taken with a digital camera, existing photos from a phone, or downloaded from the web. Remove the background from the images and resize them by following the instructions in the main Whack-A-Potato guide. Copy the new images into the specified folder within the game.
- Play the customised game! See who can get the highest score.
- Ensure that participants take home their customised game! Either copy it onto a USB stick or zip it up and email it.
Basic extension activities
For people who complete the basic activities quickly, they can try one or more of the following.
- Experiment with different objects as game controllers. Try other types of vegetables. Can you use other vegetables to whack the potatoes? What about other non-vegetable controllers? Kitchen pots and pans, perhaps?
- Try multi-player co-op mode! Two (or more) people can all hold the ground connection. Or each other. Then they can all play the game together by whacking the potatoes with their free hands.
Advanced extension activities
These activities will take at least 30 mins.
Install the Loom Game development tools. Download the Whack-A-Potato source code. Hack the code the change the game!
- Download the Loom Game Engine. You just need to sign up for the free “Starter” license.
- Download the Whack-A-Potato source code. Click on the “Download ZIP” button on the right-hand side, then unzip the downloaded file.
- All the source code is in the single file src/WhackAMole.ls. The source code is in LoomScript, which is very similar to ActionScript (as used by Adobe Flash). It is relatively easy to understand for anyone with previous programming experience.
To build and run the game from the source code, from within the top-level WhackAPotato directory simply type:
> loom run
Try playing with some of the constants defined at the start of the file:
// Duration of a single game. protected const GAME_TIME_SECS = 30; // Number of points for a hit. protected const HIT_POINTS = 100; // Number of points subtracted for a miss. protected const MISS_POINTS = 5; // Amount of time that a mole initially remains up for (seconds). // This reduces as moles are whacked during the game. // Reduce this value to make the game harder! protected const INITIAL_MOLE_UP_TIME = 2.5; // Amount of time between timer ticks (seconds). // This reduces as moles are whacked during the game. // On each timer tick a decision is made whether to // pop up each of the moles. protected const INITIAL_TIMER_PERIOD = 1.0;
If you have any feedback or further suggestions then please do post them below!