While the AI learns to play, I want to do a small side project. The idea is quite simple: I aim to prototype an ‚unusable‘ controller – and let other people play with it. This is relevant to this topic because it showcases the trial-and-error theme quite well. Like the AI, players need to figure out the controls first to advance in the game.
In this blog, I will create a prototype of an ‚Anti-Controller‘.
First of all I want to make clear that the goal of this controller is not to torture players in any way.
The controller represents a mental challenge. A solveable problem. A game to play a game.
After brainstorming about this concept, I came up with three effective rules*:
- All buttons look the same
- Buttons may or may not move during playing
- Buttons may do nothing
Since Super Metroid requires ten buttons, that will be the minimum amount of functional buttons on the controller.
The sparkle ball plate
Figure 1 shows the basis for the controller I aim to create. This plate will be layed out and the sparkle balls will be wrapped with aluminium foil. Also, some initial wiring is necessary, as shown in later Figures.
Every wrapped ball needs to be connected to a central processing unit – in this case, an Arduino Leonardo is used, because of its ability to simulate a keyboard (which will be used to gie commands to the emulator). A lot of wires meet up here, as shown in Figure 3.
Figure 3 – Arduino Leonardo, fully wired.
The main idea behind this plate is: when a ball is picked up, press a correspondent button on the keyboard. Thus, every ball represents a button on the keyboard, which renders this plate into a controller. As shown in Figure 4, this controller looks exactly like it is supposed to look: confusing.
This is my approach to the Anti-Controller (as I call it). There are multiple solutions to this concept, which may be even better than my primitive (yet aesthetic) plate of sparkle balls.
*At this point, these points are entirely subjective; further research on this topic may be added later