top of page

Production Time: January 2021 - December 2022

Software: Unity, Maya, Photoshop, 3DCoat

Team: Solo

Focus: System Design

Fight against time and the frigid cold to ensure the survival of the last humans from Earth in this 3D city survival game where you control a robot caretaker trying to feed and keep the population sane! Crashed on an alien planet, you're helping a group of humans to survive the harsh cold by managing scarce resources and balance the needs of the humans against your own. 

This project is my thesis project where I focus on the interaction between resources systems. My key goal is to create a set of systems that are robust and easily editable, making use of key principles like decoupled components and highly flexible data types and thorough error handling. 

Game_AdrianIhle_PermaFrost_Screenshot02.PNG
Work: Video Player

Click here to download the project

Resources

PermaFrost uses two types of resources items and rechargeable

 'Staminas'. The latter primarily functions as the player's action limiting resources, and the former works as action enablers and provide progress in the game. 

The rechargables are Heat and Energy. Energy is the hard limit of the game. It can only be recharged at the home base, and is consistently consumed by the player. Heat on the other hand is a soft limit. It can be recharged at several points in the world, and primarily works to soft-lock parts by discouraging the player going places before they are ready.

Items on the other hand is used by the player to progress. The humans in the player's care requires items to survive, and items will be used to produce buildings to provide that. Similarly some of these buildings will provide new abilities. Together, items will allow players more action room, eventually allowing the player to complete their quests.

This blog post has more.

Thumbnail Gif.gif

Camera System

A key functionality a lot of early play testers expressed a desire for was a way to control the camera, which previously had only been a static top down view. Instead of simply implementing a basic side to side movement of the top down camera (like many strategy games), I decided to take a que from games like City: Skylines and Divinity Original Sin 2 which both allow a very zoomed in perspective and a large overview style perspective. 

I ended up implementing a system using animation curves to interpolate between the RTS-style top-down view, and an 3rd-person RPG-style view.

 

You can read more here. The controller code can be found here.

Camera Position Update

CameraMovement.gif

Event System

With three systems (Quest, Resource/Inventory, UI) that all need to be interconnected, it was obvious that hard coding all those interactions would be a lot of work, and a more decoupled approach would be preferable. Initially the hope was to use either Unity Events or C# Events. However, both those solutions did not easily provide filtering or throttling. Instead the game uses a custom event system using category lists and threading.

 

You can read more here.  And you can find the code here.

Design Documents

1st Map Draft

1st Map Draft

2nd Level Draft

2nd Level Draft

Initial Level

Initial Level

Level Rework

Level Rework

PermaFrost Resource Interaction

PermaFrost Resource Interaction

Planned GameLoop

Planned GameLoop

PermaFrost UI Screens Wireframe

PermaFrost UI Screens Wireframe

PermaFrost Production Outline Asset List

PermaFrost Production Outline Asset List

PermaFrost Fall 2022 Task List

PermaFrost Fall 2022 Task List

PermaFrost Production GANTT diagram

PermaFrost Production GANTT diagram

bottom of page