I'm Not As Good As Supermario
Course code: ART3041 Intermedia
Teacher: Chantal Gervais
Journal
-
The first project in this class is meant to be a performance, that deals with the issues 'body', 'identity', 'body and identity' or 'body and machine' and that involves digital media in one or the other way. It was suggested to use a device or any thing in way, that it is not meant to be used.
I initially had the idea of replacing the protagonist of the famous video game Super Mario Brothers by myself. This game was pubished in the year 1985 and played on the NES (Nintendo Entertainment System). Probably every person, that was a kid at this time, knows this game, if not having played it extensively him/herself. I would like to explore the connotations, that people make, when thinking of 'Super Mario'.
Before i wanted to start with the actual project, i'd like to try the game myself again, which i didn't since years. Fortunately, many the old consoles like the NES can be emulated on a normal, not too old PC. On linux i found the software nestra. It turned out, that there are many emulators around, though most of them have one or more issues. Some don't work at all, others eat the complete cpu and are very slow. others have no sound. However, nestra doesn't do any sound emulation, but works at least quite troublefree.
I realized, that playing the game on a usual computer keyboard is almost impossible. Even after a long period not having played the game, the right hand wants still to be the 'jump and run' hand, since the buttons for jumping and running are on the right side of the original NES controler. Trying to play it with inverted button position makes. In order to get the original 'feeling' , it was necessary to use some kind of a gamepad with buttons at the correct position. Since i have a wiimote, which uses a very similar key layout, i made a pd-patch, that assigns the buttons from the wiimote to the appropriate keyboard keys. Finally playing the game with wiimote is pure fun! I assume, it's easiness, speediness and precision to control the character are the main reasons, why it makes so much fun to play it. I also think, that it could be interesting for the project to play with these positive properties by modifying their parameters, so that it actually loses them.
the wiimote to nestra keyboard layout patch can be downloaded here: wiimote2nestra.pd
here is a video of me playing the first level (1-1): smb_1-1.mpeg
Without knowing exactly, to which this project would lead me, i want to create a test environment, in which i can put an image of myself , captured in realtime, in front of the original background of the game. I think, that it would be probably the most flexible solution to have only one huge image of the complete first world of the original game.
First i needed to find a way to capture the window of nestra in order to get a movie or a series of images. After some research i discovered a software Xvidcap, that is able to capture into both, single images and movie files. I configured xvidcap so, that it would make one image per second, while i am playing the game. After capturing, i had to combine all those images in gimp in order to create one image of the complete level 1-1.
here a selection of the snapshots while playing:
here the complete level as one image:
the same as above, but with all characters and displays removed:
The next important step was to find a way, to insert a picture of a live capture, but in a manner, that only the figure (in this case me) would be inserted, but not the complete captured image. In pd/Gem this can be done quite easily. The used method is actually quite simple:
- an image of the plain background is cached
- while capturing the live image, it is compared with the cached image
- difference above a certain threshold are displayed
- difference below a certain threshold are turned to transparent
This made it actually possible for me to explore marios world myself. Now i could get a feeling about how it looks, when the artificial and low-tech background is populated by a real human-being. It is a strange mix of the 8-bit aesthetic and with a real and live humanbeing. The artificiality of the background is so strong, that even the human figure is considered to be generated. It's the effect, that one could call the 'cheap copy'n'paste effect'.
Just to get an idea of what kind of created image, we are dealing with, i made a little movie:
im_supermario.avi
While playing around with that setup, i realized, that it is impossible for a human-being to move in the same manner, as Mario does. He can jump very high, run very fast, crush stonewalls and he never gets short of breath. As i mentioned above, it is the feeling of having control over Mario in a very direct and accurate way, that probably made this game so popular, and that everyone is used to, when playing the game. I wanted to break this feeling by contrasting the easiness with sluggishness of a real human being. While the viewer/participant is playing me, he/she should feel not having that much and direct control over me as with mario. Also the participant is asked to reflect the relationship between me as the 'controlled' and her/himself, since at every push of a button, i am forced to perform the appropriate action, which, contrary to Mario, costs me energy and i am probably going to be exhausted, when hunted too much around.
According to the thoughts described above, i tried to implement these ideas into an emulation of the game, that is my own interpretation. There were different questions to solve first:
- How should the participant control me?
- How do i synchronize the world around me with my movements?
- What does it need to create the feel of sluggishness and inaccuracy?
One scenario would just let the participants send me signals by using a controller, whereas i actually control the gameplay, while moving and behaving accordingly. This would add the natural human latency, which is introduced by my reaction time, but would also require two control devices, one for the participant and one for me. also, i would have to focus on two things simultaneously, contoling the game play, while acting.
I decided to let the participant control the scrolling of the world directly, while i just try to keep in sync with my movements. In order to give myself some time to react on what is going on, i added an artificial latency to the controling mechanism. I added in the upper right corner 3 arrows, that flash up, indicating when a button is pressed. While performing, this arrows are my score to follow and the jump-sound, that is played, when the jump-button is pressed.
Operational Sequence
The game starts with a startscreen. The participant needs to press a button in order to start the game. He/she can move me for- and backwards, let me duck and jump. The first few seconds, i can be controlled quickly. After some time, i start to react more and more sluggish and my energy level falls, so that i am even not able to jump high anymore to negotiate even low humps. In the worst case, i can be trapped in a whole. After a predefined time (~2min) the screen turns black, showing a message "out of breath!". After some seconds the start screen appears again.
Sound
As soon as the game starts, the a recording of a flute playing the original Super Mario Theme is played. On every jump a sampled 'boing' is played. Throughout the game, the music is getting slower and more clumsy. As soon as the black screen appears, the end sequence is played. The game is over.
Setup
- Projector
- Loudspeaker
- Computer
- puredata/Gem-patch
- USB-videocamera
- wiimote
Presentation Video
im_not_as_good_as_supermario.avi
xvid avi, 640x480, 17MB, 2"16'
Project related files
http://romanhaefeli.net/projekte/im_not_as_good_as_supermario/files/
