top of page

Isometric Shooter

Introduction

This project was a one month creative challenge. We had the freedom to select the genre of game during this month so I went with an Isometric Shooter. I got a lot of my reference for the level I made for this project from Bungie’s Halo: Combat Evolved. I wanted to challenge myself and try to replicate a portion of a big company’s pride and joy. I wanted to try and “get in the mind” of their level designers. However, I also wanted to give the level my own feel and not try to directly copy the work that they had done. Most things in this project were instructed to be made personally as well. This was a short challenge to be able to design a presentation for the level, video presentations, and blockout a level and add gameplay all in one month.

Gameplay Video

What Went Right

[ Overall Blockmesh ] - My blockmesh went well throughout the entire project. I used the level Halo from Halo: Combat Evolved as reference and twisted it a little bit into my own fashion. It turned out really well by the end of the project. I am very happy about the way it all turned out.

[ AI Systems ] - I got my AI working close to the way I wanted them to at the beginning of the project. Each area the AI is in has its own NavMesh to handle the AI roaming better. I did this because I didn’t want the AI to wander off into areas the player would never go to. I was able to use a structure to handle the AI tasks, such as the roam and focus functions I made. The focus function just has the AI rotate towards the player.

[ Updating Gameplay Objectives in Real Time ] - I wanted the HUD Objectives to update in real time for the player to be able to know when they have gotten closer to completing or have completed an objective without having to guess or pause the game. This went by smoother than I thought it would go. The only thing I would need to fix about it would be the layout as it is still a rather simple HUD.

[ Fixing the HUD ] - At the start of the month, the HUD I had did not update or change whatsoever during the playthrough. The text was also yellow, which ended up blending with some of the areas in the level which needed to be changed. Like I said earlier, I wanted the HUD to update in real time with the player’s actions. Getting that done was fun and simple. I also added in the health bar closer towards the end of the month and getting that to function the way I wanted to was definitely easier than I thought it would be.

[ Setting the Environment ] - Setting the environment in the level went super well and was super fun. I wanted to keep the trees relatively the same since the environment is supposed to be an alien planet. I did vary them in size that way it wasn’t the same tree over and over again. I liked being able to use the level map that I had made earlier on during the first week of the project as a way to have a base for my level. I liked the way the buildings turned out and even the background environment outside of the gameplay area.

What Went Wrong

[ The Comms Jammer ] - As seen in the gameplay video, the Comms Jammer needs to be destroyed in order to complete the level as it is an objective that is required to complete. Originally I wanted the player to be able to pick up a bundle of dynamite that the player would plant onto the Comms Jammer that would then detonate a few seconds after it was initially placed. However, I had issues getting the dynamite to work efficiently so I ended up taking the easy way out and making it a simple check on overlap.

[ Making the Dynamite ] - As mentioned before, the dynamite works in-line with the Comms Jammer. I started off by trying to make a simple inventory, that way the player would be able to see the dynamite in their inventory so that they knew they had it and could use it at some point later on in the level. I wanted the interaction to be based off of a short line trace in front of the player, however due to my lack of experience with line traces, I was not able to get it to function the way I wanted to and scrapped the dynamite as a whole.

[ Chargeable Dash ] - I tried to make this mechanic again and I was super excited to see it in action. However, with the code I had I thought it should have worked. I even looked up a tutorial to see if somebody did something similar and was able to get it to actually work. I tried to redo my code several times and I even tried new ways of coding it in. I was not able to get it done in time and had to go back to the simplified version of the dash yet again.

[ Recharging Energy Shield ] - So going into the project, I wanted to have a rechargeable energy shield similar to the one seen in every Halo title. However, when I was trying to figure out the proper logic to get it to work I struggled. I had a system in place to damage the player’s shield first and if the shield was broken to then damage the player’s health value. The way I had it in was not efficient and either didn’t work at all or would start subtracting health value when the shield had only been hit a couple of times. I decided to scrap it to save me time for making my other mechanics work.

[ The Dodge Roll ] - I wanted to make a dodge roll similar to the one seen in Elden RIng and the Dark Souls titles. I had the code implemented pretty early on for this mechanic so I had pushed it to the side after. Once the code was actually completed I tried to make a proper animation to make it all fit together. However, I could not get the animation to look the way I wanted to so out of frustration I ended up scrapping this mechanic.

Conclusion

Overall, this project was very fun. Even though I was very stressed due to my own shortcomings, I did enjoy the process of being able to start from a concept and bring that concept to reality. This was a very good learning experience for me in terms of my own knowledge and skill in Unreal Engine. Going into the future I will be working on bettering my skills within the engine so I don’t fall short in the future.

Mechanic Presentation

Reference Images

bottom of page