FrostPunk Inspired: A First Person Story Narrative

I have tested the game at 1440p with a Ryzen 7 5800x cpu and a rx 5700xt GPU at about 60-100fps if there is stuttering try lowering the game quality. 
If the game does not launch see the bug at the bottom of the dev log.

Indroduction

This WordPress page is dedicated for my level design development log for my game level called Frostpunk Inspired: A First-Person Story Narrative. The development log will go through my process of what I have done to achieve the outcome of a playable game as finalized as I could get it within the time frame I had. All references will be found at the bottom of the page with inline connotations as well. It is very much inspired by the top down colony survival called Frost Punk (11 Bit Studios, 2018) I will use this devlog to talk about all my key choices I have made and explored different ways to make my game level.

Inspirations

The game engine being used is Unreal Engine 4 to make this experience of making the game level as easy and streamlined as possible. To develop my game level, I had planned out a level design for the player to travel through a snowy canyon to find some pages. I connected this to a game I enjoy called Frostpunk (11 Bit Studios, 2018). This would set the theme of the game for the player to look for a lost village in a cave and find out what happened to it as they had lost communication with the people living there. Along with this there was an inspiration for one of my wienies being the wall from game of thrones (Wiki Contributors, n.d.) where the player would start their adventure.

Aim of the Game

The aim of the game is for the player to search through the frozen wasteland valley looking for any sign of survivors or anything to let the player know what has happened to the inhabitants of the nearby area. The player would be greeted with snow and heavy fog to set the environment of the game and to make sure the player doesn’t have a pure line of sight of the entire level. This would allow me to introduce other game level design methods such as bread crumbing and framing. Once the player has achieved finding all 6 of the pages it will trigger the end game sequence and pull up a menu saying they have completed the game and fill out a little more of the story as to what happens to the player character after they find all of the pages.

Examples of the game pages and how the player interacts with them

The start of my level i ended up mapping out in maya a 2d plane of what i wanted my level to roughly look like from a top down view to help me place the mountains and other features. This also allows me to easily see that the entire level will be breaking from the grid making sure that there are no obvious or major patterns in 90 degree angles and things aligned perfectly.

Early Development

During the early development of the block out and the game itself I had forgotten to take some early screenshots however, the early development of the game was focused on trying to design a scenario based on what the environment should be like and how I would go about achieving that in unreal engine 4. To make the main level environment I would use the landscape tool in unreal using the levelling tools to increase height to make hills and mountains as well as using them to make imperfections and dents and variation within the terrain allowing it to feel more natural and fluid rather than being a flat plain or with steep angles. To make sure I had a proper path for the player to follow I used splines to carve out the main route. This method of making the route had made it very easy for me to carve out the path from the mountains, which I could then touch up the sides so they weren’t        so steep and had a bit more of an organic curve to them as they join with the floor again.

Once the main map has been laid out I could go in to the block out with some more place holder parts making blocked out houses with cubes and rectangles which would later be replaced with things from the Advanced Village Asset Pack (Advanced Asset Packs, 2015) and other decorative pieces from the various Infinity blade asset packs too (Epic Games, 2015, 2019a, 2019b) Looking at the environment I had a very good opportunity to place a key landmark which would be the lighthouse. This along with using torches would help guide the player to the main objective. The block out of this design would end up leading to the main level final as well with the main things changing being all of the materials used and the introduction of asset packs for the main buildings in the cave and extra decorative pieces scattered throughout the level. I made  the block out landscape to be used in the main level design as well as this would give a better feel for the game in its alpha block out stage for a basic playable experience.

The earlier designed blockout would lead to the core development of the level with minor tweaks to the main landscape itself however the scale of things and placement would be ajusted as things turned out to be to large or not easily reachable.

Blockout video for progression vs final polish of the playable game.

Wienies

The level had 3 main landmarks and wienies which could be seen at different points in the game. The player starts inside of the first of them which is the wall inspired from game of thrones (Wiki Contributors, n.d.) however just on a much smaller scale and with a lot less detail on it to try and help the performance of my game. This wall would serve as one of the main landmarks to show where the player started the game and help a sense of direction. Once the player comes out of the walls tunnel there is a silhouette of the next wienie which is the lighthouse. This has some fire effect and smoke applied to it to try and draw the player towards it as a point of interest without having any form of HUD guiding the player where to go which can be immersion breaking. The finale wienie isn’t much of a key structure I have made but one designed directly in to the level design itself and is a large valley which has been blocked off from the player with a fence this doubles up as a kind of affordance preventing the player from accessing the area.

Lighthouse visable behind the mountain highlighted in yellow in the editor.

Framing

Along with the lighthouse being a wienie it is also framed in such a way there is a outline of where it is the second the player walks out of the tunnel from the wall. Having such a good indicator to where this is will be important for the player to get a immersive and enjoyable experience but without it being too in their face. This method of letting the player know their directional bearing is very good for allowing the player to figure out where they are and how much further they need to go as this can be seen across a majority of the game level with exception of the optional route for the hidden page.

Bread Crumbing

Bread crumbing is another technique I have used to help guide the player to the main objective and I have done this in two different ways. One being torches lighting up the level through the fog with an orange glow and it leads right on to the next one. This provides a subtle light for the environment but also helps draw the player down certain paths and routes. The other way I have done this is with little pebbled stones along the sides of the path leading to the main objective. This does not lead down the optional route and only following along for the main level objective.  This not only adds a way for the player to follow along with but adds some decoration and depth to the main level itself.

Height Variation

The entire level has some varied hight which adds to the organic design making it not seem like it is on one flat level. My height variation doesn’t alter much as it is a valley for the most part however, I have tried to include some differences in the cave as the main part as well as the start of the game being lower down than the first set of pages making it feel that the player is walking up to the first clearing area.

Zig Zagging and Building Off the grid

The entire level is built on a off grid so it doesn’t abide by and standard of aligning things up and has no key influencer for how I have placed things. This helps with the player going in different directions rather than just forward, back left and right but also keeps the design feeling more unique rather than a generic straight line of a level. The zig zagging comes in to play with the wienies as well as the landmarks can give the player a good direction of where they should be heading for but the zig zagging gives them the option to go in a couple of directions to achieve the same goal.

Back tracking intentions

I have intended to use back tracking in two ways however only one was in the finalized game itself. If the player chose to go down the optional route, they would have to backtrack a bit to get to the first and second page, they could go back the way they came or follow the route around which would bring them out near where the player would find pages 1 and 2 however, they would have still had to go back before going forward. The player could collect all the pages in the cave and then go back for pages 1 and 2 instead if they so choose. The other example of back tracking I had was only present in the block out, once the player had collected all 6 pages there was a trigger box to start the end game sequence but it only triggered in the cave entrance/exit so I had chosen to remove this for a more polished game ending it once the player has all of the pages instead of needing to trigger a specific box.

Contrasting Sizes

The level design has some small contrasting sizes throughout it however not many. The start of the game level started off quite wide and open where as in the cave it Is more cramped. This was to simulate being inside and outside as well as being in areas where there might be more built-up areas. Such as going down the routes for the optional page I had put walls along it to make it feel more enclosed and a tighter area for the player to walk down. This makes it both appealing to the player to want to know what is down there but also adds some size difference to it. Originally my intention for this level design method was to have a building that the player could enter and look for the first two pages in there however I could not find a good model that would fit my game level and nor did I have the time to model one out myself for the scope of the game.

Affordances

Affordances used in my level have been mostly highlighted with fences that the player can’t get passed such as the canyon area has a fence blocking it off and the houses in the cave has several fences stopping the player from going behind them as well as blocking off any easy routes they could jump down and potentially get stuck. The other main affordance is to the lighthouse. I have placed a boulder there stopping the player trying to get in to an area of the map they shouldn’t be, I placed this near the cave entrance to help guide the player into the cave rather than leading up to the lighthouse

Level Decor and Atmosphere

The level design itself is based on frost punks (11 Bit Studios, 2018) snowy and barren landscape environment with stuff hidden in the snow as blizzards and snow storms cover the area in a thick white blanket.  This helps set the idea of the level being a heavily cold and frozen landscape with little chance of survival. The story of the game that is told on each of the pages also helps enforce this concept as the inhabitants of the barren area unfortunately don’t end up surviving. Making the snowy environment wasn’t an easy task as I had some issues with texturing the landscape not knowing how to layer different materials together properly to make a good snow and rocky landscape for the mountains. I settled on just using a thick white texture for the environment with scattering some objects through out the level for more detail to substitute the issues I was having.

The atmosphere of the level I wanted it to feel and look cold but as I struggled implementing audio I had to rely on using a visual way to achieve this and the best I could do was using a heavy white fog with a snowy particle effect I made by making a white circle with half of it being transparent to simulate the feeling of snow falling from the sky. This added a bit of ambience to it without being invasive to the experience. I opted to not add a skylight to the level as I wanted the fog to seem thicker than it is by blocking out any sunlight and give the implication of the snow picking up as you can’t see much in the level besides what is lit up. 

Blueprints and menus

To make the main features of the game such as the picking up pages I had to use the blueprint feature as a apart of unreal rather than coding in C++ at first I never got on with it and the blueprint system I had in place for my game was very basic however using it more and following a YouTube tutorial to make my main menu I could then learn how to make the options menu and add a level of complexity to the game blueprint in the widgets for my pages and add better counter to trigger the end game event. The menus were made on separate levels to give them a black background while I used a widget blueprint to add buttons to them. These buttons would give the player the interactivity to change settings themselves for the game. As I tested my own game on my pc I thought I would be best to add the settings for lower qualities when I sent it out to people to test making it as playable for everyone as I could as I didn’t know how well it would perform on their computers. The pages would also be made with a widget allowing it to pop up and allow the player to read it properly before they put it in their inventory. The inventory system was the hardest one I had to make using several widget blueprints to get it to hide the pages properly when the player isn’t looking in their inventory but also make it a toggle for them to open their inventory and read the pages when ever they wanted. This was a key feature for the game if they wanted to read the story start to finish. Once I had made this I realised it was possible to make a pause menu to take the player back to the main menu or just to exit the game. Using a youtube tutorial (Ryan Laley, 2020) i also managed to get a toggleable page menu however i had to add quite a bit more than the tutorial i followed to get it working in the way i wanted.

Page Bugs

One of the key bugs in the game I couldn’t fix was the pages vanishing if the player walked through the collision box for them without interacting with them. This would prevent the player from finishing the game as they couldn’t collect the pages after they had vanished and it wouldn’t add on the counter for it to trigger the end game event.  The other bug I had was with the inventory system. If the player had the inventory open while interacting with a page it could get the page stuck on the screen permanently or make it so they cant see the page in their inventory at all. I attempted to fix this by preventing the player from moving when their inventory is open and this did help with this bug a lot.

The bug about the pages dissapearing has since been fixed with v0.8 and the solution was to remove the “sequence then 2” from the blueprint. I had misconnected something that I could not quite see the first few times around. 

Cave texture Issues

With the cave I had issues texturing it, I had made the cave in zbrush before working on the rest of the level and I had only just learnt how to use zbrush so I could of done things differently later on after learning it more. I couldn’t apply a texture on the inside of the cave to give it a rocky feel and it just appears white on the interior while it remains a white snowy stone on the exterior. I didn’t use substance painter to individually paint it as I had some issues with painting the interior of the cave so I had to apply a material that suited the exterior of the cave in unreal itself

Player Testing Feedback

I had sent the game to several people for playtesting and looking for some feedback about the game and ways I could improve it.

Jak Foster – “overall enjoyable game the only things I could spot that were misplaced was the wooden barricade pieces in the camp to the right of the spawn and the cave had a hole you could get stuck in. As well as the pages getting stuck on the screen”

 To amend this I had lowered the barricade pieces so they were touching the floor as before they were floating above the floor abit, and to fix the cave I added a rock in the hole the player could get stuck in so they could no longer fall down it.

Jamie/Kash Sloan  – “A few things to note from my end (constructive criticism always sounds negative, so apologies for that,) 1. Scaling feels a bit odd, every house and barrel etc feels huge compared to the character. 2. There is no way to tell how many pages you’ve collected; an on-screen counter would be nice… I had the feeling that some notes were just vanishing before I was able to pick them up. (I’m on my laptop, so using a touchpad that lags and sometimes doesn’t work at all… so I could be stood next to a page for 7+ seconds before I’m able to Press E on them) 3. The fog feels a little too thick to me, if that is intended artistically, that’s all good, but for me it makes it difficult to see anything or understand where I’m supposed to go. 4. Controls aren’t explained anywhere”

Kash’s feedback was very important for me as this helped me realise where I could improve the games experience. To fix the scaling I could of reduced everything in size however I sized everything to the environment so I had just scaled the player model up a bit to make it fit better in the surroundings and the objects placed. Kash also helped me diagnose the bug about vanishing pages which I hadn’t realised myself.  The fog in the early versions of my game was twice as thick as it is in the final build I have submitted for the assignment. This made it hard to see any of the other lights and the silhouette of the lighthouse. The controls are explained on the main main menu however Kash had skipped over it while he was looking at the other video settings under the options tab. The most important bit Kash gave me was there was no on screen counter for the pages at the time. I experimented with making a counter using the debug print on screen methods however in the final version of the game I ended up making a whole inventory system bound to tab. The inventory had enough room for all of the pages and it was more of a toggle to see which pages you had collected.

 

Karl/Kaes Duke –“on the options and objectives screen the Main Menu button is on the opposite so someone could end up hitting Exit due to muscle memory.

Love the fact that the skeleton wasn’t that visible till you get to Note 1 as well

I would say it’d be good to have a lil’ bit of texture on the snow as it feels I am surfing on a Grey Goo event but that’s just nit picking.

The ending is a little abrupt really, turning around to everything being on fire then boom, would be cool to have another self-inflection note like you had at the start (yes I turned around first thing which was a good little touch) but other than that? Well written and honestly it chilled me when it was said they were using the houses as tombs.

Secondary too, I did love the way you used torches to lead the player.”

Karl’s input was good for other indications for the game. Especially feedback on the menu I hadn’t realise I have mixed up the buttons the wrong way around, The snow texture was an issue I had with the game and couldn’t fix myself for the assignment. The game end triggers as soon as the player has picked up the last page and the fog reels in, I did want it to trigger when the player was heading back from the cave however, I chose to end it as soon as the player picked up the last page as I couldn’t get the trigger to happen at the right time in the blueprints.

Game Launch Issues

Unfortunately my game does have a huge major bug. The game has some inconsistent launching issues and I believe this is to do with the widgets of the pages. The game does not give any error indicating to what it could be. After the first time of running the game, It can have a high chance of running with a “Fatal Error” with no lead to what the issue is unless there are crash log tools baked with the game. The main error that comes up is linked with a landscape render error. Currently i dont have a fix available and i have tested every build of the game back to v0.1 and it persists on all of them. Sometimes if the player moves  before closing the it could allow it to start again however this is not consistant.

References:

Anything not listed here is designed or made by myself without inspiration or assistance via tutorial.

11 Bit Studios (2018) Frostpunk. Frostpunk. Available online: https://www.frostpunkgame.com/.

Advanced Asset Packs (2015) Advanced Village Pack in Environments – UE Marketplace. www.unrealengine.com. Available online: https://www.unrealengine.com/marketplace/en-US/product/advanced-village-pack [Accessed 12 Mar. 2022].

CodeViper (2016) How To Create A Main Menu – Unreal Engine 4 Tutorial. www.youtube.com. Available online: https://www.youtube.com/watch?v=ulUO4EN8BG8. [Accessed 12 Mar. 2022].

Epic Games (2015) Infinity Blade: Effects by Epic Games in Epic Content – UE4 Marketplace. www.unrealengine.com. Available online: https://www.unrealengine.com/marketplace/en-US/product/infinity-blade-effects.

Epic Games (2019a) Infinity Blade: Ice Lands by Epic Games in Epic Content – UE4 Marketplace. Unrealengine.com. Available online: https://www.unrealengine.com/marketplace/en-US/product/infinity-blade-ice-lands.

Epic Games (2019b) Infinity Blade: Props by Epic Games in Props – UE4 Marketplace. www.unrealengine.com. Available online: https://www.unrealengine.com/marketplace/en-US/product/infinity-blade-props.

Frey (2021) Weather System in Code Plugins – UE Marketplace. Unreal Engine. Available online: https://www.unrealengine.com/marketplace/en-US/product/weather-system-01 [Accessed 12 Mar. 2022].

Quixel Megascans (2019) Megascans – Snow in Megascans – UE Marketplace. Unreal Engine. Available online: https://www.unrealengine.com/marketplace/en-US/product/d9602225ffff4449ada78a1ec61d2759.

Ryan Laley (2020) Unreal Engine 4 Tutorial – Toggle Widgets. www.youtube.com. Available online: https://www.youtube.com/watch?v=9qYD2F4fqrI&t=809s [Accessed 15 Mar. 2022].

Vigilante (2021) IFV BMP3 (East) in Props – UE Marketplace. Unreal Engine. Available online: https://www.unrealengine.com/marketplace/en-US/product/ifv-bmp3-east [Accessed 12 Mar. 2022].

Wiki Contributors (n.d.) Wall. Game of Thrones Wiki. Available online: https://gameofthrones.fandom.com/wiki/Wall.