Hyperaustral is a 2D top-down management game where the player can see, control, and organize everything that happens inside their massive ark-like aircraft.
Over time, the player must keep their crew alive by addressing the game's challenges, giving passengers various tasks, and making choices through text-based interfaces.
If they can avoid losing everything for a sufficient amount of time and through various narrative stages, the survivors will be saved, and the player wins the game.
Core of the Game
The core of the game is to assign passengers to tasks in each of the airplane-ark's rooms.
This action is performed numerous times by the player, so it must be simple and intuitive to carry out.
Appropriate controls and UI will allow the player to quickly choose passengers to assign.
This is the main mechanic and it enables the player to react to the various events that will shape the game.
Gameplay Elements
Global Resource Management
The player will need to manage various resources to complete the game with the most passengers alive.
These resources are global to the airplane and deplete during the game but can be produced by passengers.
There are fuel, airplane health, raw food, and cooked food resources.
The player can define their own resource management strategy to better respond to events.
Passenger Needs Management
Each passenger has needs that must be satisfied to keep them alive and prevent outbursts.
These needs include morale, health, hunger, and fatigue.
The lower a passenger's need meters, the less productive and focused they will be on their tasks.
Events
Throughout the game, multiple events occur randomly.
They can have both positive and negative consequences.
For some elements, players will be given a choice to react as they see fit.
I was involved in the development and programming of this game. Here are the main tasks I worked on during the project:
Implementation of Passenger Assignment Mechanics
My primary role was to implement the mechanics for assigning passengers to different rooms and activities inside the Notos airplane-ark.
To do this, I began by designing the structure of the rooms and activities.
Rooms were represented by scripts defining the activities they contained, their maximum capacity, and other essential features. Activities, on the other hand, were implemented as scriptable objects describing the consumed and/or produced resources, fulfilled and/or depleted passenger needs, and their respective rates.
This mechanic played a central role in the game's management dynamics.
-
Room Scripts in the Editor
-
Scriptable Object for an Activity
-
Passenger Assignment Menu
Implementation of Menus and HUD
I implemented the navigation between the different menus and scenes in our game, as well as the HUD, following the ideas conceived by one of the artists on the team.
Implementation of Save Systems
The ability to save and resume a game later was a key feature we wanted to offer players.
To achieve this, I designed and implemented a save system based on a JSON file.
This save included essential data, such as passenger information, previously experienced events, and playtime.
Other game parameters could be derived from this data; for example, the current chapter could be determined based on playtime.
This feature enhanced the accessibility and immersion of the game.
-
Saved Data
-
PassengerData Class
-
PastEventData Class
Implementation of Time Management
Time management is a crucial component of management games, and I was responsible for implementing a system that allowed players to control the flow of time.
This included managing game modes such as pause, normal time, and fast-forward, providing a flexible gaming experience where players had full control over the progression of the Notos airplane-ark.
This mechanic added a strategic dimension to the gaming experience, giving players a sense of mastery and decision-making within the world of the Notos airplane-ark.