Digital Creatives: Creative Control
Design and build your own working classic video game controller supporting resource
Japan is known for its rich history in arcade culture and video games. This program uses Space Invaders (1978), developed by Tomohiro Nishikado, as inspiration and enables students to discover the creativity in early games culture prior to today’s world of virtual and augmented reality, touch screens, smartphones and control pads. Combining simple coding and traditional materials, students design their own, fully functional video game controllers to move a character around on the screen, or even play a game of Space Invaders. This workshop, facilitated by an NGV educator, introduces students to block coding in Scratch and Makey Makey inventor kits.
This resource goes into more detail about the history of Space Invaders and the workshop run at NGV.
Supported by Telstra
Space Invaders (Japanese: スペースインベーダー Hepburn: Supēsu Inbēdā) is an arcade video game created by Tomohiro Nishikado and manufactured and sold by Taito in Japan in 1978. It was the fifth game Nishikado created and went on to be one of the most popular arcade games in the world. An arcade was a standalone machine that usually only played one game. They required coins to play and were mostly found in an ‘Arcade’, a dedicated building that had many different types of machines.
Space Invaders was very much ahead of its time when it was released. Nishikado had to design his own hardware to run the game. As coloured graphics were not possible in arcade games when Space Invaders was released in America by Midway, strips of orange and green cellophane were applied to the screen to simulate the colours of the sprites displayed.
Compared to video games of today, the game has a very basic premise: move your laser cannon on the bottom of the screen left and right to shoot the aliens as they move towards the bottom of the screen to earn points. As you shoot aliens, the remaining aliens on screen begin moving faster, as does the music. Given that Space Invaders is a video game, a player can only ‘win’ by achieving the highest score. Remember, arcade machines were big business in the 1970s and 80s, trying to get as many coins out of players as possible.
Compared to today, the controls were very simple with three main buttons: one to move left, one right and one to fire. As the game was re-released over the years its controls changed. From buttons to joysticks, and now with mobile devices, touch screens.
Designing and creating video game controllers can be as creative as the games themselves. Designers have to think about how people will interact with the game, and how to control the items on the screen as naturally as possible. Other designers are also focusing on how to make video game controllers for differently abled people who may not be able to use a traditional, hand based control scheme.
In our workshop, we are asking students to create their very own video game controller using some basic materials; paper, cardboard, tape, graphite pencils and foil.
When creating your controllers there are many things to take into consideration with your design.
- How many buttons will it have?
- Will there be enough buttons to control the many aspects of games?
- Will it be easy to use and understand?
- How will it feel?
- Who will be using this controller (children, adults, differently-abled people, etc) and how does this affect the design?
See some examples of student controllers created below.
We want students to really be able to use their controllers and to do that, we are using a special interface called a Makey Makey. This little device connects to a computer and then, using some wire and alligator clips, you can connect to a range of materials. If the material is conductive (electricity can pass through it) you can create a circuit. This circuit can then be used to tell the program to do an action such as move your ship or fire your laser – anything you have coded in your program (more on that step next).
Space Invaders used what would be classed as today as some very basic programming and graphics. However, as we now know, it was so ahead of its time in 1978 that Nishikado had to design his own hardware to run the game. Displaying the (then) cutting-edge graphics of the aliens would slow the game down as the game progressed and more appeared on the screen. Nishikado, being a very creative designer, ended up using this issue as part of his game design. You will notice when you play Space Invaders the movement of the aliens begins slowly. As you shoot down more aliens, they speed up, which makes the game more challenging. This element of the game’s design is actually a result of fewer aliens being on screen, which is less taxing on the meagre hardware.
We will be using the free program Scratch (https://scratch.mit.edu) to do our basic coding. Scratch is a block-based coding program. It takes some of the very complex language of coding and organises it in easy to understand, visual blocks.
Choose a sprite (a sprite is an object or character in Scratch). In the example below, we have chosen a spaceship sprite. You can choose a sprite from the library by clicking one of these icons, as circled below.
Next, we want our spaceship to move. To do this, you need to make a script (this tells your character what to do). In this example, we have made our spaceship move left, right, up and down. To make the spaceship move right, follow the steps below:
- Click and drag the event block, titled ‘when the space key is pressed‘, to the script area. Select ‘right arrow’ from the dropdown menu to change the event block title to ‘when the right arrow is pressed‘.
- Click and drag the motion block, titled ‘move 10 steps‘. The block is currently set to 10 steps but the number of steps can be changed.
- Now press the right arrow. Your spaceship should move 10 steps to the right!
- Repeat these steps to make the spaceship move in other directions, as shown in the example. Remember to change the commands in the drop down menu for each block.
Now, with the Makey Makey kit and your controller, connect an alligator clip to the right input on the circuit board and the right command of the controller.
When we touch this, as the materials we have used are conductive (a current can pass through foil or graphite) we create a circuit. This sends the signal to our code that we have pressed the right key, which makes the spaceship move right.
Can you create the other actions needed for your spaceship such as moving in other directions or firing a laser?
You can view and edit our Scratch program here: https://scratch.mit.edu/projects/229223697/
Want to see how your controller works in a game of Space Invaders? – You can try a Scratch coded version by user ifugu here: https://scratch.mit.edu/projects/1979494/ and play the original Taito / Sega version from 1985 on the Internet Archive here: https://archive.org/details/Space_Invaders_1985_Sega_Taito