Doppelspeak Retrospective


VM Retrospective - February 2025

After a week of Doppelspeak, I wanted to take some time to reflect and write out how this development cycle went just like I did for my previous VM game In Time, On Distance. These retrospectives are a helpful practice for me as I work to create consistently high-quality narrative games this year, and I want to point to the aspects of development that I think I should celebrate while recognizing what made the experience more grueling than it needed to be. With that said, here are 3 rights and 3 wrongs I’ve learned from making the second VM game of the year.

3 Rights

Creating Commands for the VM Dialogue Manager

Creating my own dialogue system was something I felt really proud to have accomplished for the last game, and I knew that I wanted to build on it in order to create more flexible and dynamic narrative experiences. For Doppelspeak, this dynamic narrative experience came in the form of different art panels appearing at different points in the dialogue, mimicking the constantly changing camera angles in films. I wanted the VM Dialogue manager to read a command in the JSON file I used for the dialogue that told the engine to change the visuals from one art panel to another. To accomplish this, I had to create keywords in the JSON file that would essentially signal to the engine to hide all background art in the game except the specific panel I wanted displayed. These keywords had to be treated differently than dialogue so that a text box wouldn’t be shown on screen, so I had to tinker with my code to find a way for the dialogue manager to skip over these keywords entirely and go onto the next line of dialogue while executing the specific command written. This wasn’t a difficult feature to implement all things considered, but it was the first time I created commands like these that I now can use for future VM Games. Overall, this feels like a huge accomplish because it shows the gradual growth and flexibility of my own narrative system.

"Full", "ODawn", and "OSimon" are commands written in the JSON file



Full, Over Dawn, and Over Simon Art Panels


Mirror Mechanic Magic

The unique feature goal for Doppelspeak - codenamed Project COPIES - was to find a way to display a copy of each character’s speech bubble and display different sets of text to indicate the words each character was hiding from the other. Initially, I wasn’t sure how to implement this type of feature because my dialogue manager wasn’t equipped to display multiple speech bubbles at once. While I could figure out a way to do something like that, I didn’t want to spend too much of my development time on this, so I decided to just duplicate my dialogue manager in the game! Basically, I created two sets of dialogue manager scripts, labeling one as “DialogueMirrorManager” and granting it the same access to my game like the original VM Dialogue Manager. The mirrored dialogue manager would be called after a big decision in the game, and then would run parallel to the original dialogue manager so that both speech bubbles would be displayed at the same exact time. While this is a really clunky approach to this design problem, I am happy with how it turned out in the final game, and I am proud of the way I handled this type of challenge given the limited timeframe for these VM Games. I hope players enjoy this unique feature in Doppelspeak and appreciate the narrative innovation that can be found by experimenting in indie game development.

What Simon Says vs. What Simon Means


Different Plan, Different Result

While I am happy to have released two games in the span of two months, I’m more proud of the fact that In Time, On Distance and Doppelspeak feel different in their approach as interactive narratives. Both games look and play differently from one another, and they manage to share different parts of our human complexities in mechanically strange and intriguing ways. Ultimately, this is what I want Vine Moss Games to be - a studio that creates experimental narrative work out of the most mundane yet resonant parts of our existence. Doppelspeak is also simply a different VM game, and the production journey looked very different because of that. I don’t want to fall in the trap of making games that blend together because I conveniently picked a similar art style or gameplay mechanic to a previous VM Game. It’s incredibly important for me to treat these VM Games as separate development experiences while utilizing the tools and lessons learned every month to make a better narrative experience each and every time.


3 Wrongs

Pushing Writing Back (Again)

Like January’s VM Game, I found myself writing up until the last minute for Doppelspeak’s development despite actively planning to complete writing tasks much sooner. While I did effectively scope down the narrative complexity for Doppelspeak compared to In Time, On Distance, I still felt frustration with how writing tasks have gone. As a writer in and outside of games, I know how much energy I spend on actively crafting my story and characters as I write, oftentimes revising and rewording dialogue lines on the first writing pass. While I’m used to this style of writing and revisions, I’ve placed a lot of pressure on myself to craft the story I want on the first pass, which has created writer’s block that slows down my narrative process and the entire game’s development timeline. I think this is a personal hurdle of mine that needs to have stricter timeframes and expectations. For example, I would benefit from setting hours every workday to devote exclusively to writing rough drafts of my game’s story with the big goal of limiting any active revisions until I have enough narrative to work with. For this upcoming VM Game, completing the narrative early will be my biggest priority, and I will actively try and remind myself of the reality of these types of games: they’re short and experimental narratives on an accelerated timeline, so I don’t need to put so much pressure on myself to create perfect games on my own from the very start.

Twine Writing Was Much More Disorganized


Art Panel Headache

I want all VM Games to feel unique in style and presentation, so immediately I knew I wanted Doppelspeak to look distinctly colorful and crafted. As such, I spent a considerable amount of time digitally painting and animating the panels in this game. This process was a lot of fun because it allowed me to flex different creative muscles and solve a different set of challenges, but it also took a lot longer than I anticipated. It simply took too long to meticulously go over each art panel for this game, and while I was right in cutting down the total amount of art panels ( initially I was thinking of six different camera perspectives instead of four ), I think the art style I ended up working with meant I would spend too much time on each panel to make it look the way I wanted. While I’m glad to have made the art that I did, I’m taking this process as a clear lesson for future VM Games in the pre-production stage: choose art styles that I not only feel capable of capturing on my own but also are conducive to the quick nature of these game development cycles.

Love How It Looks, Hate How Long It Took


Rushing with Audio

One of the biggest “disappointments” I have with Doppelspeak is how rushed the audio implementation process felt for me. I felt good collecting a lot of the sound for the game early on, but I didn’t actively go back to any audio tasks until the end of the development cycle, where I frantically added the audio pieces I collected into the game without enough time to properly review and adjust them. I say, “disappointment” because it’s difficult to determine what I would’ve done differently. I think it was difficult to implement audio quickly for a VM game like Doppelspeak, especially compared to In Time, On Distance. January’s VM Game had a repetitive structure to it that made constant background music feel natural, and so it was easier to implement the same background track for every conversation that happened in the game. However for Doppelspeak, its linear nature meant that looping background music would feel inappropriate or off-putting to include, so I should’ve allotted more time to implementing music cues early on to avoid the loose scrambling I did at the end of development.

What’s Packed For The Horizon

With the second VM Game of the year released, I’m starting to feel the weight of this ambitious goal I’ve set for myself. Making a game a month is a challenge I haven’t really faced before, especially when they are games I’m trying to sell as part of a premium narrative experience. For both VM Games, I’ve already had game bugs that can easily detract from the overall experience (the Doppelspeak bug I had to fix was both funny and frustrating). It’s hard to make the right decisions and find time to address all aspects of game development within a month - this medium is vast and fruitful but a daunting beast when it comes to the different challenges and pathways a developer can come across. It’s tough doing this thing on my own, but I’ve been really happy with how these games have turned out and how the work and thought behind each game manages to shine through.

FUNNY AND FRUSTRATING


I have a sense that each VM game will provide its own set of unexpected challenges that lead to mistakes and ineffective uses of time, but by reflecting and writing my lessons learned, I believe I’ll continue growing into this role as a solo developer and feel more comfortable prioritizing tasks and creating interesting narrative experiences. I am really proud of the work I’ve done so far with Vine Moss Games, and I know the hard work will pay off if I just keep at it while staying open for growth opportunities as a company and as an individual. I’m so excited to continue onto the next VM Game - a VM Game that feels distinct in its design but cohesive enough to complement Doppelspeak and In Time, On Distance!

Thank you for taking the time to read this retrospective on Doppelspeak and my development hurdles, and I can’t wait to share more on what’s upcoming ~

~ Dev


Files

Doppelspeak (Linux) 281 MB
Version 3 30 days ago
Doppelspeak (Windows) 299 MB
Version 3 30 days ago
Doppelspeak (macOS) 267 MB
Version 3 30 days ago

Get Doppelspeak

Buy Now$4.00 USD or more

Leave a comment

Log in with itch.io to leave a comment.