2018.03.18 – A SHMUP Postmortem
|
Over the course of the last 10 weeks, we -my team and I- have developed a game concept entitled “You May Kiss The Bride”, abbreviated as YMKTB, in the context of our second semester “Game Design 2: Game Development” module (course code:5SD064). The concept was created by a group of fellow students during our first semester’s “Game Design 1: Introduction” module (course code: 5SD065). In this postmortem blog post, I will be going over the highlights, both good and bad, of this production and how we evolved as game developer thanks to those. ![]() Concept summaryThe Elevator pitch for the concept was: The final game – a.k.a. the Result of 8 weeks worth of developmentGame DescriptionThe final game ended up being exactly what is described in the the above mentioned concept; namely, a 2.5D top-down shoot ’em up wrapped in a narrative revolving around the societal interpretation of a “normal” marriage. Game NarrativeYMKTB is a 1 level long shoot ’em up in which the male protagonist is fleeing from a demonic bride and her female wedding guests in order to escape from a church with the goal of being reunited with his true love (another man). The narrative being portrayed is that of a homosexual male who tries to escape the normative concept of marriage which society still considers to be one between a man and a woman. Visual StyleTo support the narrative and aesthetic goal, we opted for a darker color palette (mainly brown, black, grey, red, green). The character designs were inspired by classical demonic drawings for the same reason. Level DesignThe single level of YMKTB is split in two parts, the tutorial screen and the main game. In the tutorial screen the player gets taught the game’s mechanics (movement, shooting, reloading, pick-up and use of the power-up) via visual cues within a safe space, i.e. where there is no possibility of dying. Game mechanicsThe player is constantly pushed forward without a chance of back tracking thanks to the boss monster cutting off any escape route lying behind the character and the follow camera which only moves upwards. There is no scoring option in the game, rather the player is presented with a percentage showing how much of the level has been completed in the current run. Limited ammunition, slower walking speed during reloading and sparse health & ammunition packs, make it impossible to run-and-gun your way through the game. The player is thus forced to consider each action with care regardless of the external pressure. Enemy typesFurther pressure is applied by the 3 enemy types in the game:
Premise and mentality for this courseThis part is not necessarily applicable to the rest of Team Hastur (my group); however these preconceptions and assumptions heavily influenced how I approached this production and will help explain some of the actions further down.
Given that we only had 5 minutes to chose a 3rd party concept, I went into this course assuming this was focusing on the production, rather than the development of the concept we chose. In other words, the goal was the execution of a 3rd party I.P. (concept) and not the creation of one or expansion of it. That being said, we were informed that we could of course make changes to the game concept IF:
Based of my premise, the mentality with which I went into the development was oriented towards getting a finished product out of the door that was a close as possible to the original concept – that also means being very off-hands in terms of (re-)designing aspects of the game unless absolutely necessary. Game DesignAs a game designer 2 design aspect sprung to my attention:
The former simply took much more time than I had originally anticipated, mainly because the step between white-boxing a level and implementing all of the assets necessary to make it playable and polished was bigger than I had thought. ![]() Now onto narrative design… this one was a toughie – here is why. In essence, an unintended narrative perspective emerged because we had decided to cut non-essential features from the game. Since our remaining time budget did not allow us to produce more content to re-adjust the narrative, we looked at what was still in production and could be changed/adapted in time for our deadline. The answer was the “win screen end-card”. ![]() Lesson 1: Plan enough time for environmental asset production. ProgrammingAs a programmer, I became more aware of following:
We were keen on implementing a 3rd party pathfinding algorithm and would have had the time (3~4 days) to implement it at the end of our project. However, since the design up until this point did not take that into consideration during development, the work required to remodel everything (level design + code base) to fit the feature carried to high a risk. We therefore decided to leave it by the way-side since the risk of breaking the project out-weighed the potential added user value. If we had spent some more time on pathfinding in pre-production, we could have planned it in and prepared the code structure for a potential implementation.
Having reusable code requires a surplus of check to adapt to the various instances that can use it (e.g. identical health script on both enemies & player). However, this enabled us to fine-tune features in one place and have them be automatically propagate to all relevant instances regardless of game balancing. In the long run we save time and were able to indirectly add nice-to-have features to enemies without any additional work.
Modular code & an OOP approach are fantastic. When under time pressure dependencies tend to be created because they are easier to setup but this makes the code-base harder to maintain in the future. In our case we could take that liberty since the game’s internal structure will not be changing once handed in – if we had continued developing the game, some refactoring would have been required to break up these dependencies. Lesson 3: Test nice-to-have features early in pre-production to discard or plan ahead for them in case they can be implemented. Production PipelineIn this course we were introduced to agile game development with SCRUM. It was bumpy ride, but the lessons we learned from using SCRUM were invaluable. Rather than listing all of them again (original article), I will focus on the benefits the daily stand-ups brought:
The main advantage for me came in the form of insights gained into the process for art asset development. I have worked in creative productions before (video + photography), however the process for 2D game art is quite a bit different. Having the daily stand-ups with the whole team allowed me to understand the overall steps required to go from a sketch, to a tied-down version, over to coloring, and finally to a polished version of any given asset. Thanks to the knowledge gained in the point above, reformulating the scope and iterating on aspects of the game became easier as I had a better understanding of how much time & effort it would require on the artists’ side to make/create/re-do an asset. Lesson 5: Being aware of what is/can be done in other departments helps adjust the scope of the project on the fly to make sure the final deadline can be hit – even if that means killing your metaphorical darlings (i.e. favorite game concepts). Group dynamicsGame development requires the combination and collaboration of many different disciplines, people and mentalities. Therefore the importance of internal dynamics of a project group cannot be understated. Team Hastur grew and evolved over the course of these last 6 months and I will try to summarize said evolution in a few points.
Lesson 7: Working on a project requires all team-members to move towards a certain goal together as one entity. This means trusting in each others ability and good working relationships but does not necessitate friendship – even though it would be preferable. TL;DR:Lesson 1: Plan enough time for environmental asset production. The development of this game has enabled me to grow both professionally and personally, thus giving me the confidence to tackle greater and bigger challenges in the field. Next step: the “Arcade Game” course!
|


