12 years ago

The Cow Flew Over the Moon - Post Mortem


Since the start of my education, I have always been influence by more niche independent titles such as Dear Ester and The Stanley Parable. As such, when I was tasked with creating my own game for University I knew I wanted to create a similar kind of experience, following in the footsteps of games like Gone Home in terms of their gameplay and delivery of narrative. I’ve worked as a designer in groups before and contributed to art and 3D on multiple occasions, but this project would be my first endeavour into programming and coding an entire game by myself. I chose a narratively driven game in the hope it would mitigate the amount of gameplay mechanics I would need to create.

Making a pretentious game however, turns out to be really hard.

What went right?

Rapid Prototyping
From beginning of the project I was aware time would be a factor. Production would only last 6 months after the initial pre-production phase (where the idea for the project was initially concepted) and involve heavy engine work and level building. I chose to use the Unity3D Engine and ensured the majority of design work happened in engine, rather than on paper. By creating small level examples (even before mechanics existed) to infer style and tone of the game, allowed me to set goals for the pacing, artstyle and overall feel of the project early on and move quickly and efficiently through development. I kept a running log of production and created dev vlogs during progress. This allowed me to garner feedback early on in the project, even before a playable game existed. Creating everything in a series of prototypes and adding mechanics slowly; layering the production process ensured the game developed naturally and nothing became too overwhelming.

5d0c708685570.png

Iterative Mechanic Design
Perhaps due to my omission of traditional design work (such as design docs) iteratively testing and evolving the game mechanics became a crucial and vital step in developing the tone of the game. My assumption was that a story driven game would be easy to create thanks to its smaller and more subtle gameplay mechanics, but this was the opposite of the truth. Finding a core gameplay loop for the player and teaching basic mechanics which were unique to the project, became difficult. I was aware I wanted a basic inspection and interaction mechanic (defined by the Eye and Hand symbols which became visual clues throughout the project) and this system went through various forms before reaching its final incarnation. By building these mechanics slowly and testing them thoroughly in the environment prototypes the evolution of the games design and my ability to code the outcomes progressed naturally and only became stronger because of this approach to development.

Playtesting
Similar to iterative design, by building my mechanics in stages and having frequent playtest sessions I gained great insight into not just the mechanics of the game but the level design, task design, audio, visual style, tone and feeling of the concept. Having this crucial information early in the project allowed me to adjust and change my approach to development accordingly, making a much stronger concept. Whilst I was the sole developer on the project, the pathways through production were choose by group opinion and heavy discussion with the players of the game. I was able to craft sections of the game more closely by watching people’s reactions and thoughts during gameplay and view the overall success of the project through multiple lenses.

5d0c708919587.png

Art Style
Rapid prototyping became a main priority and I was consistently modelling assets to be implemented into the game. These 3D models were initially only tests to allow for mechanic and level design prototypes, however through the process of iteration the games art style evolved naturally. By using coloured lighting and un-textured assets I was able to convey tone and atmosphere to the player, without the need to texture models; something which would have been time consuming during production. As the levels became more detailed I also included subtle elements of colour to hint at the player’s task in game. This minimalistic approach to visuals but emphasis on atmosphere and tone created an abstract world which compliments the narrative well and looks better because of it.

Music
Music is something I never consider during game creation and is usually just implemented as an afterthought. Since the kind of game I wanted to create relied heavily on tone and atmosphere, I knew the music had to be engaging and compliment the gameplay. I created a few tests using the kind of music I wanted and invited a musical friend of mine to play the current prototype of the game. At this stage in development, mechanics were thin but the pacing and atmosphere of the game were clear. I was able to acquire some custom music for the game which improves gameplay tenfold by adding to the atmosphere and feel. Thanks to this approach of iteration the music could be implemented easily as development progressed naturally and the latter half of the game was changed slightly based on the new musical score implemented.

5d0c708b66d5e.png

What went wrong?

Defining a Core Gameplay Loop
Even though skipping the creation of games design documents in favour of rapid prototyping ensure development progressed steadily, lack of a clear goal for gameplay muddied the waters early in production. My initial concept document for the project was very vague and misleading, suiting the concepts of a pretentious and vague narrative well but a nightmare when it came to building these misunderstood mechanics and levels. I still feel to decision to omit large amounts of paper work was justified, but having a better understanding of my main and core mechanics going into the project would have sped up production and allowed for the creation of a more consistent and coherent plot and level structure.

Coding Inexperience
Going into the project I was aware my lack of programming background would be a factor in production. I chose Unity3D because of my familiarity with the engine and opted to use C# as my coding language. In hindsight, I should perhaps have used Java to code the scripts for the game, something which I would have taken to learning much quicker. That being said, it was a conscious decision to use C# as the language bares more similarity to the industry standard C++ and in terms of my development as a designer learning more complex coding languages will help me in the future. Choosing this language probably hurt production and slowed down development but in terms of personal growth, what I have learnt is invaluable to me.

5d0c708c2189c.png

Lack of Plot Goals
It didn’t become apparent to be until production was underway that, in order to create a narratively driven game, you have to actually create a narrative. I was very bogged down in the creation of the tools which would allow me to portray this story to the player, I didn’t have time to actually write the narrative the player would experience. This lack of understanding of the story I wanted to tell, effected every aspect of the project. I was unsure as to the levels aesthetics and progression of the game became difficult to predict since I wasn’t sure what tied all the assets and levels together. This was down to lack of research into gameplay narrative, whilst I understood how to tell a story through gameplay, in hindsight I should have understood what that story was in the first place.

Lack of Narrative Focus
Whilst not having a defining plot goal affected the level structure and flow of the game, this also bled into the subtitled narration of the main character. During conception I was sure this feature would be imperative to the story progression and infer level designs. In the end, the majority of the narrator’s speech was created on the fly during development, without consideration of the story arch and character development I wanted to portrait in the initial conception of the game. The tone of the game makes up for the lack of input by the narrator, but I feel this was a missed opportunity to add an extra layer of depth to the concept and create a more interesting and engaging experience.

5d0c708cd702e.png

Misleading Title
Perhaps this isn’t something that went wrong, however the title is an indication of the troubled conception of the project early in development. Based on my paper concept document the game was initially set in a prison cell and the title, “The Cow Flew Over the Moon”, was an inside joke about the players main tool for escape, a spoon. As development progressed and more and more of the game was cut and reworked to suit, the title lost more of its meaning and the joke disappeared into obscurity. I was pleased with the final product, but the title serves as a reminder that pre-production is important to define core concepts of the game relating to gameplay and flow.

What I learned.

Being the sole developer on the project, the main thing I learnt was the obvious; how to make a game. In the past I have worked in teams mainly as the designer, so I’ve only ever understood issues from one perspective. Once I was placed in every role possible from art direction, design, production and programming I began to see how game creation is really achieved and how the merging of these disciplines creates better gameplay.

Well defined and designed mechanics are imperative to programming, without understanding fully the goal of the gameplay, a programmer cannot create the experience a designer desires. Likewise, if the art style is pulling the tone of the game in a different direction or conflicting with the mechanics created by the programmer and planned by the desinger, the balance and immersion of the game will be broken.

The key to fixing these issues and ensuring all sides of production are taken into consideration is to rapidly prototype ideas, iterate mechanics, playtest the result and repeat the process. This concept was something I have always agreed with, but only recently have I understood what it means and what it takes to bring a project from conception to completion when I was the one responsible for its creation.

Conclusion
In the end the game exists as a short concept for a much larger game idea taking roughly 15-20 minutes to complete from start to finish. There are a few secrets and hidden areas as well as two separate endings for the game. I am pleased with the outcome and feel a much stronger developer for the games completion.

If you would like to play the game you can check it out on GameJolt here:

http://gamejolt.com/games/other/the-cow-flew-over-the-moon/28926/

A link to my development logs is here:

https://www.youtube.com/playlist?list=PL5rRj5TKT_PpkEp7Ysvz_YhJ6rIrXrqu3

I’ve concluded development on the project but any and all feedback is more than welcomed!

Thanks for reading.

Jonny Pickton
@JonnyWallaceP



0 comments

Loading...

Next up

Short intro of us 💕✌️

We're an eletro duo based in Seoul 🇰🇷 Heavily influenced by the 90s.

Our new album #Xennials is all about the nostalgia of that era 💽 CD listenin 📟 beeper beepin 💾 floppy disks floppin days 😎

Stream now! 🎧

https://open.spotify.com/album/3YwWhnHWVy5cA8XOpbaGRA?si=8E9awqU…

We made a lot of improvements on the Freezing Plains visual. Things like pine trees, tiny bushes, some rocks, and others game props!

#IndieGame | #IndieDev | #GameDev | #PixelArt | #WaifuQuest | #WifeQuest | #screenshotsaturday

I have added rewards for quests so that villagers can give you something in return for your hard work helping them. 🥳

I want to know - what's your favourite quest reward?

What you all think

Microsoft Windows XP Unprofessional (windows logo prototype)

Horror WIP A track that will be featured in a future horror game soundtrack! Stay tuned!

Likes appreciated ✌️

#gamedev #composer #horrorgame #indiegame #IndieGameDev #soundtrack

Hi everyone! I started to create some environment props for my new video game, here is a cozy house in the forest. I'm planning to switch from Unity to Unreal... Let's see what new challenges I have to face. Made in Blender and Substance Painter.

Shuiro Haname. #Commission

Commission for @ShuHaname

Levels' maps.