FM - Log 0
Old Unreal Engine 5 dev log
March 31st, 2024
This is week 0 of working on Forgotten Memories. I'm going to try to make this into a habit, with a deadline of Sunday for every week.
The idea behind Log 0 is to document everything that has already created for FM up to this point. I worked on the game about two years ago, but had to put it on a hiatus due to real life struggles. Because my current real-life situation isn't as dire at it used to be, I'm resuming development.
Initial Idea
All great things start with a simple idea. During my senior year at WPI, I remember playing a ton of The Binding of Isaac: Rebirth in my free time. I was in the middle of a vigorous achievement hunting campaign. At some point, I had to unlock a hidden character named The Forgotten.
What was special about this character is, it's the only one in the game that has a melee attack. Normally, characters shoot tears in the direction of the arrow keys (or the right stick if you play with a controller). The Forgotten, however, swings a bone in a wide arc in front of him like a sword. The attack key can also be held to charge up a bone throw.
(note to self: get better gameplay footage. preferably where I don't get hit because this makes me look like a scrub)
I found this mechanic to be incredibly satisfying. The attack felt impactful because it did a lot of damage and could hit multiple enemies at once. Fundamentally, The Forgotten was the main inspiration for Project Forgotten. It was even named after him.
Project Forgotten
Project Forgotten started with a brainstorm, as most projects do. I dug this note up from Google Keep. My collection of Keep notes is a wasteland of bad memories and psychotic ramblings. Let's just say... I'm glad it has a search function. The screenshot to your left is just a snippet of the note. Here's the full thing if you wish to read it. You don't have to read it to understand where the idea stemmed from. In fact, I'm about to sum it up in the next paragraph.
At first, the idea was to make a game about a samurai who wields a katana. The control scheme would mimic TBoI, specifically how The Forgotten character works. WASD for 8-directional movement (omnidirectional with a controller), and arrow keys for attacking (also omnidirectional for a controller). Then I expanded on that concept by adding four stances that you can switch between: Butterfly, Bull, Spider, and Hawk, each with their own benefits and drawbacks. This concept didn't last very long because I thought it was bland and short-sighted. Instead, I decided to create 4 original characters with their own strengths, weaknesses, and unique abilities.
Above is a doodle of these 4 characters that I made on a whim. It's a man, a woman, a monkey, and a robot. That's all you need to know about them for now.
Unity Prototype
I started making a prototype pretty early to figure out the movement and attack mechanics. Unfortunately, some early development gifs and videos are lost to time, but I still have some snippets showing off the prototype in its latest and most feature-complete forms.
Movement & Attacking
The first thing I figured out is movement and attacking. The video above shows those in action. It's a little choppy and the materials are broken, but hopefully it gets the point across. When the characters attacks in a certain direction, they start facing in that said direction, and their view lingers there for a few seconds. After that, the characters starts facing the direction of movement. This took a while to figure out because I had to use a lot of 3D math to make this work. I remember it being a big challenge, but one I felt very accomplished about overcoming.
Blood System
Even in the very early prototyping stage, I wanted this game to be very bloody. I grew up watching Tarantino films; I can't help it. So I got working on the blood system. In the video, you can see the blood spurting out of the enemy as it's struck by the slash attack. The blood particles land on the ground and gradually disappear. I followed a tutorial 1:1 for the blood particles shooting out, so I knew I was going to remake that eventually. The main character also gets covered in blood, which drips off them quickly. I made this effect with a combination of a shader material (the color red covering the character model) and a particle effect (blood droplets falling from the character).
I was pretty satisfied with the result, but I had another idea. What if the amount of blood coverage on the player influenced gameplay in some way? You may have noticed the red bar on the left with a yellow line a third way from the top. This is the blood coverage meter. It goes from 0% to 150%, and the yellow line indicates the 100% point. I thought it'd be interesting to make the blood coverage be equal to the chance that the player will be able to ignore an attack made at them. An important piece of context is that the character dies in one hit, like in Hotline Miami, another prevalent inspiration for this game. So for example, if the player is 20% covered in blood, they will have a 20% chance to mitigate an attack that lands on them. If the player is above the yellow line (100%), that means that they are basically impervious to all attacks until blood goes down. The idea behind this mechanic was to make a gameplay structure that incentivizes aggressive play. The more you kill, the less likely you are to die.
That's it.
This is where the history of the Unity prototype ends. I was also working on writing a dialogue system from scratch, but I abandoned that endeavor because it proved to be too difficult. And also because there's a Unity addon that does this better than I ever could.
At this point, I had a clearer vision of the game that I wanted to make, but I have been using Unity for years and have developed several grievances towards it. I wanted to move to another engine to continue development.
Unreal Prototype
This marks the beginning of the Unreal Engine 5 prototype. I've tinkered with UE 4 back in high school, and I always liked the Blueprints visual scripting system. I also liked that Unreal makes prototypes look good without any sort of settings or tinkering. There are more reasons now why I prefer Unreal Engine to Unity, but starting this prototype from scratch in this new engine gave me the motivation to finally learn Unreal in greater depth.
Recreation
After hours of coding and troubleshooting, I was able to make a 90% faithful recreation of my Unity prototype inside of Unreal Engine. You may notice a few differences in the video above, but they are all graphical; the gameplay mechanics remained the same. I will explain the visual development of the Unreal prototype in the following sections.
New Blood System
One of the first things I wanted to rework was the blood system. Mechanically, it works the same; 0% - 150% scale, invulnerability, blah blah blah. I decided to make it cyan to make it a little bit more tame and presentable for my portfolio page when I was applying for game dev jobs. I will make it red again at some point. You may also notice the new character model. This is supposed to be the woman from the earlier doodle. I will have more to say about her later.
I wanted to make the blood mechanic feel messier and gnarlier. One big change is that the bloodstains on the ground are now permanent. They are created when the blood drops collide with the floor and instantiate a plane that hovers slightly above the ground with a randomized splatter texture. This is surprisingly performant, but at some point I'll have to figure out a way to cull them when the player moves to a different area on the level. Another big change that I was very proud of is that not only does the blood drip from the player passively, it shoots off blood particles in the direction of the swing. Also, this character has a robotic arm that doesn't get covered in blood even when the meter is full. This was intentional.
Enemies
You may have noticed a few zombie-like enemies shambling around in these videos. Well, "may have noticed" is a bit of an understatement. They're pretty hard to miss. The zombie is an enemy that I've planned back in my original brainstorm for the game. It's a slow humanoid thing that stumbles at the player slowly and attacks when it gets close enough. I never programmed the attack mechanic though, so right now they just sort of... beeline towards the player endlessly.
The video above shows another type of enemy that I plan to have. They have a ranged attack that never miss the player. The particle balls firing off from the enemy are there to signify a shot being fired. For the sake of the demo, it only hits the player if they're close enough. Here, you can also see the blood mechanic nullifying some hits that would have otherwise killed the player.
The death visual effect is another thing I carried from the Unity prototype that wasn't shown. I think it looks cool, but it's very hacky. There's no easy way to change the landscape material in Unreal at runtime, so I spawned a gigantic flat plane slightly above the surface (the same way I did the blood splatters) and gave it a black unlit material. Every other element like the characters and visual effects are switching to a white unlit material. Overall, I like the way it looks, but there has to be a much better way to do it. I think a custom post process material is the way to go.
That's it... for now.
I don't have anything to show off in regards to either of the Unreal and Unity prototypes. My next step will be to begin implementing story-telling frameworks, like I tried with Unity at some point. I won't be writing my own dialogue system from scratch, though. I'll buy something pre-made from the Unreal marketplace and try to push it to its limits.
Character Designs
Shoddy prototypes aren't the only things I've been putting together! Over the summer of 2022, I teamed up with a concept artist Abigail Rauch who helped me flesh out some character designs. She sketched the designs for every character, but we ended up making the most progress on the woman and the robot.
The Robot
The robot's design was fleshed out the first. Turns out, robots are pretty easy to design. You don't have to adhere to the strict rules of human anatomy. I have a lot of experience with 3D modeling & sculpting, but I'm pretty bad at making humanoid characters. If you get one little detail off, the whole character looks wrong. There's a phenomenon called the uncanny valley that might have something to do with it (which has terrifying evolutionary implications, if you really think about it).
Therefore, the robot was a no-brainer to design and model first because it's not a human. Getting easy tasks out of the way first helps maintain momentum to tackle more complicated tasks later. I think Sun Tzu said that. Game development is a war, and I am God's strongest warrior.
3D Model
This is the robot character that I modeled doing the default Fortnite dance. The shoulders are out of place, but that's because I messed up the animation retargeting process. In reality, the rig deformed just fine. You can see the controls on the right. I take my rig organization very seriously! I was responsible for modeling, texturing, rigging, and animating it based on the concept art that Abigail provided, though with a few adjustments. I had my own vision of this character that didn't exactly line up with her rendition, but I think that's on me for not communicating that vision sufficiently enough. At this point, these characters barely had any personalities or backstories; they were merely shells that I thought would be cool to tell a story through. Not the story, mind you, a story. I still had no idea what I was doing beyond my initial brainstorm.
Here's some early footage of trying to implement the robot's model and movement animation into the Unreal prototype. If you look closely, you can see the UV seam on the top of his head. This was a texturing goof that I eventually ironed out. Power of the iterative process, baby!
And here you can see him going ham and swatting away zombies, with his signature cape that was drawn in the concept art. Yes, they're pink. Yes, they're also slowly sliding at the player menacingly with malicious intent. The robot's animations were implemented before zombie animations, and even the blood mechanic.
The Woman
The woman was a little trickier to figure out. One of my pre-requisites is that she's missing an arm. Clearly I failed to communicate that too, judging from the concepts, but I've been actively working on my communication skills. My current landlord is a horrible communicator and a perfect example of what not to do. I've been taking notes!
Anyways, back to the character. At this stage, it didn't really matter to me whether it was the left arm or the right arm. All I knew is that I needed a character who didn't have an arm, and it needed to be a human woman. It also needed to be a blondie with some sort of a vaguely technological-looking staff.
When summer was over, Abigail had to step away from the project to focus on college, so I sought out help from another concept artist and a fellow WPI graduate - Janelle Knight. Above is a concept that Janelle refined. The model you may have been glancing at below is based on this concept. Sadly, the collaboration with Janelle didn't last very long because I had to halt development at some point. She was only able to refine the concept for the woman character, and some other miscellaneous concepts that you'll see later. Alligator.
This is the furthest I got with sculpting the woman. It honestly wasn't a bad model at all! Except for the face... stuff of nightmares. Remember what I said about humans looking off when you get one small detail wrong? Here's a prime example.
Eventually, I retopologized this, textu- the same process I ran for the robot, basically. The textures were a lot more "makeshift," for the lack of a better term, but they sufficed for the prototype. By the way, if you were wondering who the character in the early Unreal prototype videos was (the one with the mechanical arm that doesn't get covered by blood), this is her. One of the videos showed this model with broken UVs. Can you figure out which one it is?
Here's a video of me stress-testing the rig. I was very proud of the mechanical arm. The model wasn't very good, and neither was the rig, but making them gave me an insight into how to blend organic elements like human bodies with inorganic ones like machinery.
If you look closely, you'll see that the robotic forearm has two metal rods. I challenged myself to replicate the way the radius twists around the ulna in a human arm, and after bashing my head against a wall for hours, I succeeded. This rig and model will be scrapped, but this knowledge will be very helpful when I begin modeling the second, and hopefully final, iteration of the woman character.
The Monkey
The monkey was one of Abigail's favorites to doodle. It's a meat cleaver-wielding menace. My only pre-requisites for this character were that she (it's a female monkey; very important detail) is wearing a mask that allows her to conceal her identity. I wanted this to be a rogue-ish character.
She also must wield an unwieldy weapon that's like twice as long as her, like a meat cleaver taped to a long stick. This is what you're seeing in the concept art.
This is a WIP screenshot of the model for the monkey character. Coincidentally, it was around this time that I needed to halt development to prioritize real-life issues. It will forever remain unfinished. Rest in peace, shitty unfinished model of a meat cleaver-wielding monkey :(
The Man
This is all I have to show for the man. Remember the original brainstorm idea of a stance-switching samurai? This is him. He is that guy. Unfortunately, at this stage of development, he was the least fleshed out. The concept art above (and my doodle from a while ago) are everything that exist of him from that time period. However, I want to emphasize that this was not Abigail's fault; I had no idea what I wanted to do with this character anyway, so we decided focus on the other characters first hoping that some inspiration for the man would come. The inspiration never came before I had to halt development.
Though I will say this, as a little teaser. Narrative-wise, he's currently the most fleshed out character of the four, by far (the woman is closely behind though). I'll share more when the time is right.
Zombies
Janelle also made some concept art for the zombie enemies. The animated models you saw in the demo videos earlier were based on this concept. I didn't spend too much time or effort on the sculpts and models; I simply used a human basemesh and sculpted in some malnourished details. The arms are criss-crossed because of an animation retargeting error; not the first time that's happened.
Instead, I focused more on the material. I came up with an idea of making their material procedural and slightly randomized with each instance of the zombie. Do you see the cuts on the concept above that emanate a cyan glow? I wanted those cuts to be randomized, with several layers of human parts visible below the skin that's transparent. So the surface level would be skin, and below that would be flesh, and below that would be the bones.
To this day, I still think it's a good idea and that I can pull it off if I put in time and effort. It's just that back then, it was very low on the priority list, and it will probably remain that way for a while because it's such a tertiary feature.
Environment
We had some environment concept art too! Above is Janelle's work. My direction for the building was "a steampunk dilapidated factory-looking building emanating cyan smoke." On the right you can see a refined and rendered concept.
I began modeling it, but unfortunately never got around to finishing it. I still have the .blend file, so I'll be able to pick it up without any hiccups if I ever decide to do so.
Here's a badass concept drawn by Janelle portraying one area from the game, the City of Nightmares. This piece was not as detailed as the concept of the building above, but it allowed me to get a general idea of how the area would look like with finished building models.
And here's another concept, equally as badass, portraying another area, the Forgotten Cliffside, in similar vein to the city concept above.
Design Wiki
My latest effort toward making Project Forgotten a reality is designing a wiki website inside of Obsidian (the same app I'm using to host this website) that details every entity of the game and the fictional world within it. It's a colossal work in progress as I'm very quickly finding out which things work well, and which things work not-so-well. The wiki is hosted online, but it's not indexed by search engines and is password-protected. It's only meant to be used internally.
The idea behind the wiki is to serve as the definitive design bible that people collaborating with me on this project can use as the true point of reference. I anticipate for this to be very useful in the long run as I won't have to explain something multiple times to different people; they'll easily be able to find all the details they need on the wiki. It's my job as a game designer to make sure that the pages are concise, but detailed enough to sufficiently get the idea across.
The progress on the wiki has stalled recently. I think I can remedy that by working on the prototype instead, which will be my focus for the next week.
And that's actually it... for now :)
Writing this dev log was very cathartic. It was a nice trip down the memory lane, even though the trip was confined to the development of a single obscure game prototype. Future dev logs probably won't be as long and detailed as this one because I won't have as many memories to recall.
I'm currently reading a book called A Playful Production Process by Richard Lemarchand. It's been giving me some great insights into the game production process, from ideation up until post-production. My history with game dev is pretty technical, and unfortunately I didn't manage to get any production experience. The book has been a pleasant read so far, and I'm hoping I can extract and apply more insights out of it as I continue getting through it.
Plan for next week:
Begin working on the dialogue & cutscene framework for the Unreal prototype
Keep reading the playful production book
Work on the wiki:
Re-write Hero's backstory
Write Sujin's backstory
Write the campfire conversation between Maria and Kiwi
























