Seers Legacy

Seers Legacy is a 2D Metroidvania style game made in unity. Explore stunning environments, battle foes in range defensive combat, unlock new abilities, and so much more. The game was a solo project. Total development cycle took 3 terms to complete. Focus was solely on level design. The game is free to play on Itch.io.

My pitch for the gam

Starting out

My pitch for the game started out as a normal platformer with exploration mechanics. As I explained it in more detail, my peers informed me that I was designing a metroidvania. I wasn't aware of this until I saw the pieces lined up. Before starting, I did my research on the genre to get a better grasp on the core pillars. Even during this time, I tried out other metroidvania's like Hollow Knight, Ori & the blind forest, and the classic Metroid 3 to learn how this genre developed over the years. With my knowledge on the subject, I got to work with building a GDD (Game Design Document) to layer out my experience, inspiration, and requirements to achieve a game pitch. Click the link down below to read the GDD in more detail. Some ideas had to be cut before development for the sake of scope and time needed to build the game. Furthermore, my first prototype of the game consisted of a player, a shooting mechanic, a wandering enemy AI, and some standard platforming. I would further push these mechanic later on. But from then it was time to add more mechanics, and more maps.

These 2 terms share

Features and Mechanics

These 2 terms share similar attributes, but they have their differences. Game mechanics specifically describe the player's actions and their impact in the game, while game features is more of a bullet-pointed list used to explain to player's their general overall experience in playing a game. Mechanics like health systems, powerup benefits, travelling between levels, Boss fights, and general player controls were focused throughout the first few months of development. There was a lot of experimenting going on as I looked closer into what work, and what gave more enjoyment for the player. Features like art, music & SFX, animations, and setting were prioritized later so that I can focus more on the core game loop. Since my knowledge of C# programming was still a beginner level, I relied a lot on reaching out to those who knew more about C# for extra help on certain problems that came up during development. I even relied on tutorials to discover more possibilities.

The structure of a m

Map building and exploration

The structure of a metroidvania involves exploring a grid base map. Each box on the grid generates a unique shape and challenge for the player. I attempted this formula to measure down how much time the player would spend in each portion of the map. It usually depends on the size of the box, and how challenging it can be to find the exit. The design started out on paper, I built the initial size of the box, and then I added detail inside to structure the navigation and platforming. I connected each piece box with entrances and exits. Once I was satisfied with the design, I attempted to build it in Unity. I relied on tilemaps to speed up development. The first big map design was rough, there were enemies and power ups in weird places, the terrain looked similar to the rest of the map, the camera scale didn't show much. the flow moving between levels wasn't smooth, and there were noticeable bugs showing up. I wasn't happy with the design, so I went back to the drawing board and remade the map on paper before putting it into the game. I acquired better assets to help with distinguishing key landmarks in the game. A key aspect of exploration involves environmental storytelling to help the player paint a mental image of what happened before they arrived. I addressed the big notable problems that I mentioned before, the map was looking more clean and polished the more I worked on it. I even applied A universal render pipeline to play around with lighting in a 2D game. the lighting allowed me to create regions of darkness, encouraging the player to watch were their going, while using a flashlight. But I wasn't done there. After finishing the forest region, I decided to build an additional region to give the player a sense of discovery. This new region contained new areas to explore, a new powerup to use, and an ending. The building aspect took a tremendous amount of time to build both worlds, but it was worth it in the end.

During the last quar

Optimization & Polish

During the last quarter, I had to pay a lot of attention to polishing. The game as a whole needed more pizazz. I experimented with different pixel sprites to help paint a bigger picture for the world. I later added more lighting and different particle effects and SFX to create more flare in the immersion. There were a number of multiple bugs that caused unexpected errors throughout development. I received assistance from students and teachers to help address bugs that dmg the player's experience. The game was targeted for PC, so I research many ways to help optimize the game's performance to avoid running into and FPS drops from other lower end devices. It came down to reducing sprite quality, adjusting UI, occlusion culling in the world, and script cleaning.

I shared some of my

Player feedback

I shared some of my development process with those that are interested in game design. Most of them wanted to try out my game from what they saw from screenshots. I took feedback very seriously when others play-tested my game. I made sure to ask appropriate questions like what worked, what did you like the most, do you have any suggestions, etc. All of the feedback was critical depending on who I asked and how far they got in the game. It helped my learn more about what my target audience wants to see. Thanks to the feedback I found blind spots and bugs that needed to be addressed before I can add anything game changing. Communication is a very useful tool to have in this industry. You won't know what your audience will think if you don't open up and let them try out your work.

To name a few: 1 of

Biggest accomplishments

To name a few: 1 of the big accomplishments I acquired was scope. Most small projects I've seen tend to be roughly 10-15 minutes long. As I reached closer to the end, I realize my game's length lasted roughly an hour for each play-tester. Each play-tester acknowledge this and think it works well since the player wants to see more of what the game has to offer. The 2nd achievement was determination. Building large maps like this with a time limit was brutal. I'd spend hours building the maps and forgetting to take breaks cause I was in the zone. There may have been times were I thought I was pushing myself to far, but that didn't stop me. I'm proud that after 3 terms of development I was able to display a metroidvania. My 3rd and final accomplishment was communication. I wouldn't have gotten this far without the help from my fellow programmers. It would have taken me far to long to code everything by myself. I'm very glad there were people to lend a hand when I needed it the most.

AI has never been a

Toughest challenges

AI has never been a simple thing to get right. The game features different enemies with their own natural behaviors towards giving the player a challenge. The hard part was how do I give them new traits. I'd like to thank my friend the internet for helpful tutorials on enemy behavior. It allowed me to build basic enemy AI, and customize each trait to give a unique encounter for the player. But it wasn't just enemies that were hard to code, the player itself was a challenge to get right. The player had all the basic mechanics you would see in a normal platformer, but I wanted more. A lot of games take inspiration from other platformers, except a lot of mechanics that people implement tend to be the same. ex: press the button to perform a dash like celeste. I didn't want to fall down that path of "lack of creativity". So when I designed player movement and power ups, I tried to think roughly out of the box to see if it could work. Some ideas felt to complicated to import, but I found some interesting ideas which gave the experience more creativity. The last challenge I'll mention is art. This last challenge is not as big as the other ones, but I still feel like it should be addressed. I did not have enough experience to draw some of my own art. Most of my art assets were borrowed from Itch.io and other outside sources. However, there is some art I was able to put together pretty easily like the UI, the power ups, and some other key pieces. I'd say if I put my attention towards drawing all the art by hand, it would have led to a smaller scoped game. I wanted to focus more on level design so I saved art for later on in development.

I'm going to keep th

Final takeaway

I'm going to keep this pretty simple. I learned a lot from working on a game by myself. It helped paint a better picture on why it's important to have a team of artists, animators, musicians, designers, programmers, and many more when working on a game. There are limits to what 1 person can do. Aside from teamwork, I gained a basic understanding on building levels for 2D style games, and why metroidvania's are popular amongst gamers. Metroidvania's are designed to show off how a game's mechanics can be utilized throughout the level. I've spent 3 terms building this, and now I'm proud to publish it for others to enjoy.

Game Design Document

Check out the GDD for a more in depth analysis on how Seers Legacy was structured.

Read the document

Project link

Open the link to check out the game on Itch.io

Read the document
My pitch for the gam
These 2 terms share
The structure of a m
During the last quar
I shared some of my
To name a few: 1 of
AI has never been a
I'm going to keep th

Other Credits

Ultimacaligula: provided background music in game
Craig: Programming teacher at LaSalle
Marcel: GAD teacher at LaSalle
Ryan: GAD teacher at LaSalle