Learning new skills should be fun and challenging.
Stranded: A Survival Game (of sorts)
The games industry has always been endlessly interesting to me. In college, I studied game development, and I made a handful of cool games in the process! I wanted to showcase one in particular that I had a lot of fun with. Survival games offer an opportunity to experiment with different unique mechanics, and I did that with 'Stranded'. This is by no means a professional project, but a passion project that I wanted to share for those who are interested. Building this game from scratch taught me so much about the entire process of game development; from scripting, animating and lighting to planning, optimizing and exporting.
Enjoy the following gameplay demo, and scroll down to see some small details on how I made it.
The game consisted of a few core mechanics that I will break down below: Simple combat, navigation, health and oxygen management. Each of these mechanics offered a unique challenge to me as the developer, as they were all core mechanics I had not explored before. I built Stranded in Unity and wrote all of my scripts in Visual Studio.
Combat & Enemy AI
As this was a survival game, I knew I wanted to have combat. I wanted small enemy variety, damage taken, damage dealt, and physics-based projectiles. Damage and health were easy to implement, as I just created colliders with triggers that, when interacted with the player, dealt damage and vice versa. These colliders applied to the enemy weapons and fists, and to the player characters laser blast.
Player character gun script.
Player character deal damage script.
Enemy AI detection and movement script.
Player damage and death script.
Navigation, Compass and Questing
Integrating a working compass and quest system into my game was the most challenging part, but I wanted a way to guide the user through the world I had created. The quest(s) were simple: Locate each individual component to your ship, find & repair your ship, escape. I wanted the component quests to be tackled in any order to encourage player choice.
The main quest script for tracking where the player is on their quest.
The individual quest event script.
Compass script for locating each quest object.
The quest management Script that add their individual locations, data and path to each.
Quest completion & update event.
Oxygen Management
Since this was a survival game set on Mars, I needed some sense of urgency for the player apart from simply locating the different parts to their ship.