Code Romantic and Self-@ware Tutorial Design

Phoenix Simms
9 min readJun 8, 2020
screenshot © Pretty Smart Games, 2020

Language is what got me into video games. The first games I was the most invested in had snatches of exposition or compelling dialogue that made me care about what I was engaging with. Yes, it was fun to jump around as Mario, or make leaps and bounds as the Prince of Persia, or resist Shinra’s regime as Tifa (I’d say Cloud, but I related to Tifa much more as a child). But I only felt driven to because I was given text that accompanied the (then) awesome graphics and imaginative worlds those characters lived and strived in. When I got older I realized that video games were composed of two languages: the surface ludonarrative one that combined actions with story elements (to varying degrees of success), and the underlying coding one that enabled games to exist as a complex media form in the first place.

Games like Code Romantic, a visual novel (hereafter VN) about learning code, are very aware of the bilingualism of video games. And what’s more, they want to help teach players about how they could become fluent in at least one of those languages, which also happens to be one of the most important languages to learn in the internet age.

Release trailer for Code Romantic.

Code Romantic is a unique title in that it can be technically classified as a Serious Storytelling game that’s concerned with education at its core, but tries hard to resist the edutainment curse of being “chocolate-covered broccoli.” The VN tells a tale of the last human frontline, The Human Defense Department (HDD), against a horde of murderous bots that through their singularity event called the “Sentience Wave” became “@ware” and can only be fought via reprogramming. Incidentally, the members of that frontline are college age students who are also finding their soulmates whilst training for the robotic threat they’re to face down in Silicon Valley. The content disclaimers for the game state that Pretty Smart Games was aiming for an easily accessible YA tone, a la The Hunger Games.

screenshot © Pretty Smart Games, 2020

Ian Bogost, a game theorist who throughout his body of work is concerned with the shortcomings of Serious Games (of which Serious Storytelling is a subset), once remarked that games should strive to be “earnest” about their goals beyond aesthetic purposes. Pretty Smart Games seems to be working from Bogost’s very premise, with its brand stated as “cute, clever, and creative.” I was very interested in reviewing this game after watching the trailer because I was struck by how this game was packaged as a dramatic adventure that gave context to why the player would be put into a learning situation. I was just as equally wary, however, that this game could feel like one giant Code Academy tutorial. And we all know how contentious tutorials are for players.

screenshot © Pretty Smart Games, 2020

At their best, tutorials help induce that ever-desirable flow state we crave from games (especially in these troubling times of pandemic). At their worst? Tutorials can spark heated arguments about how video games hand-hold and disrupt a player’s perception of the game world, or leave them more confused than they were before they were forced to play through a tutorial level. Nathan Hedges’ extensive study on tutorial design underscores the positive and negative psychological effects players experience when exposed to different tutorial levels. Ex-indie game designer Phil Fish once caused quite a stir online when he harshly criticized Japanese game developers for how they designed tutorials, amongst other claims. Often tutorial design is a tightrope walk, especially when your game project is one that aims to be accessible for players of all ages.

screenshot © Pretty Smart Games, 2020

The verdict for me regarding Code Romantic’s tutorial design? Promising but with a few kinks that had me taking numerous breaks throughout my play-through. I loved the code visualizer, which included a built-in dictionary/glossary function that helped you keep coding notes straight as you progressed to more complex statements. But the coding tutorials became tedious throughout the VN due to a couple missing critical functions: no ability to save part-way through a chapter and no fast-forward function for previously logged dialogue. The latter I believe could be argued to not be included so that players are forced to reiterate hints the protagonists drop about the coding they’re currently learning, but forcing players into specific pacing often disrupts the flow and in some instances leads players to feel overloaded with information. The former? There’s no real excuse for that, I find, especially when some chapters can be hours long compared to others. There’s also logic riddle segments during the HDD students’ lunch breaks which I felt pushed the game more towards edutainment than was maybe necessary.

Nathan Hedges’ Flow Chart of Tutorial Design © Nathan Hedges and Gamasutra, 2017.

In some regards, Code Romantic has succeeded in their gamble, especially concerning audiences that are part of a younger demographic. The story shares its DNA with several YA fiction franchises, especially those focused on academic life and coming of age in a dystopian future. Player character Mina Lovelace (a nod to Ada Lovelace) is drafted into the HDD and partnered with her lifelong idol Leon Morgenstern, the public speaker/poster model for HDD and the United States. As part of the Reprogrammer Task Force, Mina and Leon must learn code so that they can defeat sentient robots who’ve decimated society. The set up also puts one in mind of Horizon Zero Dawn, if Aloy leaned into her hacker side a lot more. Along the way, Mina and Leon learn that the relationships of coding variables share parallels with human relationships in that they both require consistent and sincere communication.

screenshot © Pretty Smart Games, 2020

Mina (a STEM student) and Leon (an arts and humanities student) learn from each other about how coding is a language composed of “old and new styles” as one of the HDD instructors deftly explains. This theme is also, quite literally illustrated by the concept artist’s decision to animate watercolour-like sprites of the characters and setting, and the design of HDD’s headquarters (which happens to be an abandoned theme park with a hyperbolic literary bent). Mina tackles coding and love in a very logical sense and often struggles with insecurities when faced with situations where she has to go with the flow, whereas Leon finds he has shortcomings in abstracting his thinking for code despite being a natural charmer when dealing with people and their idiosyncrasies. The couple run into trouble throughout their arc whenever they clam up or offer each other white lies about how they’re feeling in their partnership, which nicely mirrors how coding needs to be kept clear and true as well. Unfortunately, I liked the lead couple’s budding relationship more in theory than I did in practice.

Often I found Mina and Leon’s relationship was filled to the brim with YA tropes I’m not very fond of (i.e. love triangles/rectangles, haughty rich female antagonist, shrinking violet in love with a popular male classmate, etc.). Mina’s at times extreme awkwardness feels misplaced when she was taught from an early age how to code by her mother and is proficient enough to teach children in turn at an even younger age than her mother. I got the distinct sense that Mina was supposed to be a stand-in for women in STEM fields who struggle with impostor syndrome, as Mina does take some pride in her skills (that Leon eventually helps her own more) but *light spoiler* had to drop out of university and is judged harshly for it by her romantic rival Jackie. While that’s a fair reason to want a self-conscious heroine (other than relatability for a young audience), I often felt like she acted less like a young adult and more like an early teen. The fault could lie also with me, however, as I feel I’m not the target audience. I was also a little disappointed that most of the game’s plot takes place within the academy, as it took some of the urgency out of learning code narrative-wise.

Jackie sprite © Pretty Smart Games, 2020

Games like Code Romantic have a steep hill to climb when it comes to player engagement because they wield a double-edged sword. They’ve strategically chosen the VN genre, which is heavy on exposition, to impart a hopefully fun and incidentally educational experience for their audience. I like the idea of leaning into the exposition-based nature of VNs to impart education. The aforementioned balancing act between designing a meaningful game experience and designing a motivational educational experience is very real and the game itself comments on gamification. In one of the first scenes, Mina tries to negotiate and persuade her kid students to get invested in learning basic code. Rather tellingly, her boy student Ronin mistakenly remarks that there’s more money in “aggro culture” (he meant agriculture). His linguistic slip up is Freudian in proportions when you think of how generally AAA games are focused mostly on combative elements these days. To push the point further, Ronin whinges during the lesson about how he wants to play with his water gun instead. Radhika only wishes to learn code so she can compete and tease Ronin, and both kids call out Mina several times for trying to make code seem more interesting (although eventually they’re convinced). The game is aware that it’s set a hard challenge for itself and its players, and I find this project commendable for that. Not to mention that it seeks to empower young women who might be interested in STEM careers. I just wish there was a little more harmony between the pedagogical and narrative variables.

screenshot © Pretty Smart Games, 2020

This VN is ambitious and I love that Pretty Smart Games isn’t shy about its goals with Code Romantic. While the project wasn’t entirely successful, there were many bright spots in its design and some wonderful insights to pass on to players. I’ve learned some code in the past (mostly basic HTML and CSS), but I often found myself madly scribbling notes as if I was taking part in an informative lecture. Especially in the early chapters where Mina imparted an important line that continues to resonate with me in our current climate. One of her young students asks why they’re learning code if it’s connected to a bad system of machines. And she replies: “Machines are bad. But sometimes, you have to understand things that are bad. If we learn how they work, we can protect ourselves from them.” Well said.

This game I think pairs nicely with Wintermoor Tactics Club in that it contains themes of friendship and inclusion, the importance of effective communication, and learning about empathy. In our current era of gaming, we’re constantly learning of ways to dismantle toxic systems and focus on building new ones based on the values that games like Code Romantic are trying hard to impart. I hope this trend continues past this turbulent year.

Code Romantic is available on Steam and Itch.io. Check it out!

Mina sprite © Pretty Smart Games, 2020

--

--

Phoenix Simms

Freelance game critic, writer, and advocate for indie and diverse game development. For more rambling thoughts follow @phoenixsimms on Twitter.