Game Design, Coding, Team Management
Unreal Engine 4
Team Game Project
In Yomi: Unbroken you play as a warrior who finds herself trapped in the Japanese underworld of Yomi. Having made a vow, you must escort your friend back to the surface. Battle strong enemies and solve puzzles as a duo and escape together!
This game was made as a part of a university project during the 2nd year of a BA Games Art and Design course. It was made by a team consisting of 7 members over the span of 7 weeks.
Game Design Document
During the project, I have written a Game Design Document. It served to describe in detail all planned features of the game and was used as a reference point for all members of the team during the development process. It covers all aspects of the game, ranging from general gameplay outlines and loops, through character descriptions and mechanics, to visual rules, narrative, sound design, and more.
Its content was based on the ideas generated by all team members early on in the project which were then organised and iterated on to form well-designed and interconnected systems that were incorporated into the final version of the game. All of the writing and formatting in this document was done by myself. The document has 32 pages in total.
Yomi: Unbroken is a game produced during a 7-week university team project. I worked with students from different specialisms of the course to produce a playable prototype to the theme of Altruism.
In the game, you play as a spirit of a dead warrior in the Japanese underworld of Yomi. Having sworn to escort a newfound friend back to the surface, you must face enemies and solve puzzles to escape the underworld. The game is a mix of roguelike and puzzle genres. By combining enemy and puzzle systems, we hoped to create a game that is mentally stimulating on both a logical and strategical level.
As one of the lead designers of this game, I had to make various design decisions based on prototyping, iterations, and internal and external feedback. I was in charge of programming various systems in Blueprint. Those include player movement and combat abilities, puzzle mechanics, animation code, dialogue systems, and saving. All of these were based on design decisions described in our Game Design Document. I co-developed the narrative and level design of the game with other team members, ensuring they fit well with the gameplay design. I implemented the 2D and 3D assets produced by my teammates into the engine, putting special attention to the polish of the final version of the project. Additionally, I conducted playtesting of our game, personally organising weekly sessions with my course peers outside our curriculum, gathering feedback and bug reports that were later responded to and used to improve our game.
Our team used the Scrum management framework. As I was elected the Product Owner and team leader, I had many responsibilities in team and project management. I created and managed our backlog on Trello, making decisions on the priority of each task by observing and controlling the scope of the game, both to fit the deadline and deliver a product of the highest possible quality. I ensured that production was smoothly and continuously moving towards the planned vision as agreed by the team at the start of development. By working closely with our Scrum Master, I helped organise scrum meetings, setting weekly and daily goals, ensuring the tasks were divided evenly and that every member had equal say and input into the decision process.
By the end of the project, we had produced 1 full level with procedural room generation, an enemy class, and 3 puzzle types.
I have developed and improved many skills as a result of this project. My teamwork, leadership, and communication skills have improved. I have gained experience working on a longer and more polished game project compared to the ones before it. Through the writing of a Game Design Document, I have applied and improved my writing and communication skills as a game designer. By using the Scrum production model, I have gained experience in a pipeline closely based on the one used in professional game studios. As we have used GitHub for this project, I have become familiar with using version control software.
Mechanic Insights & Highlights
One of the more technically impressive features I have developed for this project was the room management system. It oversees the procedural generation of the level, randomising the order of premade rooms the player goes through in a controlled manner. It splits the level into sections, which allow for controlling the difficulty curve throughout the level. Some rooms can be given priority and specific weights, causing them to always appear at the start of the section. It can be used, for example, to guarantee the tutorial rooms to spawn first.
The design of the game focuses on interactions between enemies, puzzles, and environmental features. We wanted to make the player use their surroundings tactically and cleverly, so we designed level features with interactability in mind. The player could deflect projectiles shot by enemies and environmental hazards back at them, bait enemies to target other enemies, or hit huge blocks on slippery surfaces to send them hurling at their foes. While we were not able to implement all of these features due to scope, we still designed them with those intentions in mind for a speculatory full version of the game, had we been given enough time for a full game development cycle. The details of these planned features can be read in our Game Design Document.