Analysis of Computer Science in Wreck-It-Ralph
ST. GEORGE, Utah, Nov. 28, 2018 -- If you haven’t seen the new Wreck-It-Ralph movie yet, you should. Of course, it is not the most accurate depiction of the virtual world (We have know idea if video game characters hang out in surge protectors), but it does demonstrate some fundamentals of programming and the internet. In fact, both the “Wreck-It-Ralph Breaks the Internet” and the original “Wreck-It-Ralph” movie can be fun ways to be introduced to coding and computer science. As both movies have different points that can be uncovered, we will be just focusing on the original Wreck-It-Ralph movie for this article. We chose to analyze the topics of coding, viruses and glitches (which are all brought up in the movie), to see how the subjects would compare to the real world of programming.
Okay and just so you know… spoilers ahead!
Any video game developer could tell you that code is important in a video game. If you don’t have code--well, you don’t have a game. Simple as that. Many of the characters in the movie, “Wreck-It-Ralph,” mention about an item, their code, or a game being programmed. Here are some things we found in the movie that will maybe make you think about the plot more deeply.
Vanellope and her intuition to race
The small protagonist is considered an outcast in her own go-kart racing game called, “Sugar Rush.” Led to believe she is only mistake, Vanellope searches for ways to be included in races and not being singled out as a “glitch.” However, throughout the movie, she just seems to be and even mentions that she was coded for racing. So when Vanellope finds out that she was a playable character all along (and a princess to boot), she realizes that her soul purpose of her code was to race.
The writers didn’t just make Vanellope have the natural talent to drive for plot convenience. In the real world of video game creation, characters are literally designed to accomplish certain tasks even before they hit the virtual screen. Abilities, items and personality are designed from the get-go when creating a video game. So Vanellope would have been literally made for driving even before she was playable.
The Code Room and King Candy
In the movie, King Candy goes into the programming of Sugar Rush to grab items and alter some code. Notice how the code inside is all linked together. Video games, apps, and computer programs alike can be complicated and very intertwined. How should a character react when addressed by a user (a person who plays the video game)? How does a program address a virtual car that runs into a wall or off a cliff? These kind of details must be considered thoroughly and carefully when a program is designed and coded. Different scenarios, user choices, button combinations, convenience of menus must all be carefully thought out to provide a positive user experience.
Sounds overwhelming? You’d be right. If these things are not thought out, you could get frustrated users and/or what are called “bugs.” So it is no surprise to see personified code as a tangled web that seems to be connected to everywhere and everything. Well, it’s because technically the code does.
At the end of the movie (again, spoilers ahead), as in many video games of old, Wreck-It-Ralph and a now bug-mutated King Candy face off in a final, to-the-death battle. King Candy declared that he was now a “virus” in the arcade. What is a virus? Well, at least for computers, a virus is a program that is designed to steal, destroy, exploit data and more (Symantec employee, n.d.). Although there are different types of viruses, they all have similar properties. According the article “What is a Computer Virus?,” “a computer virus is a type of malicious code or program written to alter the way a computer operates and is designed to spread from one computer to another. A virus operates by inserting or attaching itself to a legitimate program or document that supports macros* in order to execute its code” (Symantec employee, n.d.). So let’s see how King Candy would fit this description after acquiring his bug form. Hold onto your shorts--this might get a little complicated.
Earlier in the movie, we learn that in the video game “Hero’s Duty,” opponents called, “Cy-Bugs” are programmed to destroy anything in sight and multiply. Due to a blunder performed by Wreck-It-Ralph, a Cy-Bug escapes and begins to chew away in the aforementioned, racing game, “Sugar Rush.” Now, please note that in real life, video game professionals do not code virtual opponents to be programs that have malicious intent towards software. In other words, video game opponents are not viruses. The coded creatures would be non-existent outside of their game. However, let’s play with the movie’s idea that maybe Hero’s Duty’s bugs had the ability to get outside of their arcade machine to infect and chew up any program they get in contact with.
Let’s analyze the purpose of the Cy-bugs. According to the article above, computer viruses can be compared with biological viruses that cause the common cold or flu.The little bugger will attach itself to a host cell, do the damage it can, multiply and repeat (Symantec employee, n.d.). Seems like a fitting description for the Cy-Bugs. They invade a host, eat, multiply and repeat.
So let’s bring this back full circle. When King Candy is eaten by one of the Cy-Bugs, he picks up the physical traits of the bug itself. It would also be safe to say he picks up the abilities of the opponents of Hero’s Duty. Now combine King Candy, with his malicious intent, success of past conquests, acquired skills to cause digital damage and the presumed ability to multiply himself. Although he would not be considered to be a true form of malevolent software, these three ingredients, malicious intent, ability to cause damage and capability to multiply, function like a virus. Therefore, as King Candy takes over Sugar Rush, he can then spread and infect more games throughout the arcade. That’s just about as terrifying as his new bug form.
Poor Vanellope could not get a break. She was literally dethroned, had her program altered, uncontrollably glitched, was denied to race and was severely bullied. She went through a lot. Vanellope was nicknamed, “The Glitch,” and her phasing in and out was seen as nothing more than an accident waiting to happen. But what is a glitch really? Was Vanellope even a glitch? Let’s find out.
If you enjoy Youtube video game reviews, you likely have heard of the term, “glitch.” Although it appears so, a glitch is not necessarily a mistake in the code. A glitch happens when the code is functioning correctly, but is producing unexpected results (Mosquera, 2018; Kluft, 2018; Glitch, n.d.). They “are one time issues that are not the norm... unpredictable and unexpected.” (J. Sneddon, personal communication, November 30, 2018). So what would be the alternative to a glitch?
That would be a bug. A bug is an error that is made in the program (Software bug, n.d.). These are typically unintentional. They “are predictable weaknesses or problems. Bugs can typically be replicated in a test environment” (J. Sneddon, personal communication, November 30, 2018). This is where the term “debugging” comes from. Debugging is a normal and frequent process in which a programer must find and repair an error. Now is Vanellope a true glitch? Let’s analyze her.
Vanellope knows how to race and is driven to be a part of the game (pardon the pun). This tells us that her program is functioning properly. However, the problem comes in when she “glitches,”--a circumstance in which her display and location change. This phasing in and out is unexpected and unpredictable as she moves around. So this looks more and more like she has acquired a glitch.
But hold on. There may be more to the story than we realize. At the onset of the movie, she appears to have a glitch. However, the problem with saying Vanellope has acquired a glitch lies within the revealed plot twist:
King Candy tampered with her code.
We find out that King Candy was a racing video game character called, “Turbo.” In short, his determination to always be part of a racing game led him to take over Sugar Rush. He seized the program by locking up all of the characters’ memories and tore apart Princess Vanellope’s code. This resulted in Turbo outcasting the now ex-ruler Vanellope, renaming himself as “King Candy” and acquiring the throne as the new monarch of the cavity-inducing kingdom.
This plot twist reveals that Vanellope’s phasing in and out is actually a bug instead of a glitch because King Candy altered her code purposefully (D. Sneddon, personal communication, November 30, 2018). Remember, a glitch occurs unexpectedly even when the code is correct. So if the fictional company that produced Sugar Rush were to corrupt Vanellope’s code the same way King Candy did, her symptoms of phasing in and out could be replicated in testing environments. A glitch wouldn’t be able to be duplicated so easily. Therefore, saying Vanellope had a glitch wouldn’t be considered to be quite true. Her symptoms of damage-induced code would be considered a bug instead.
But how does she keep her powers, when the game is restored? This may be the result of the bug being unable to be resolved after the game is reset. Vanellope would have to alter the code herself to stop the phasing in and out. So technically, what would the symptoms of the bug be considered now? Let’s presume that Vanellope kept the damaged code by choice. With Vanellope choosing to keep and control the phasing in and out and the users accepting the new abilities as a superpower, the bug would now be considered to be a “feature” (D. Sneddon, personal communication, November 30, 2019). Wow… that got real deep, didn’t it?
Wreck-It-Ralph and Wreck-It-Ralph Breaks the Internet are fantastic movies and are great ways to get to acquainted with Computer Science and programming vocabulary. With the analysis of these terms, you can get a new appreciation for the movie, coding, the movie’s plot and its characters. Although the movies may not be the most accurate personifications of programming, it does a great job introducing us to the virtual world.
Macros are defined as “...a programmable pattern which translates a certain sequence of input into a preset sequence of output.” Basically, Macros makes the computer simpler to program and be operated by a user (Computer Hope, n.d.).
Computer Hope. (n.d.). Macro. In Computer Hope. Retrieved November 28, 2018, from https://www.computerhope.com/jargon/m/macro.htm
Glitch. (n.d.). In Wikipedia. Retrieved November 28, 2018, from https://en.wikipedia.org/wiki/Glitch
Kluft, M (2018). Why do video games glitch? What is the science behind a video game glitch? [Online forum comment]. Message posted to: www.quora.com/Why-do-video-games-glitch-What-is-the-science-behind-a-video-game-glitch
Mosquera, M (2018). Why do video games glitch? What is the science behind a video game glitch? [Online forum comment]. Message posted to https://www.quora.com/Why-do-video-games-glitch-What-is-the-science-behind-a-video-game-glitch
Software bug. (n.d.). In Wikipedia. Retrieved November 28, 2018, from https://en.wikipedia.org/wiki/Software_bug#Types
Symantec employee. (n.d.). What is a computer virus?. In Norton:By Symantec. Retrieved November 28, 2018, from https://us.norton.com/internetsecurity-malware-what-is-a-computer-virus.html