Styx

Link to Build
Skip To Section 
Overview
 
 
 
 
 
High Concept

Styx is a single-player (SP), two-dimensional (2D), puzzle-platformer developed for personal computers (PC). Unlike traditional platformers, in this game the player controls a flying character (a Dark Ferryman of the underworld) that guides one secondary, floor-bound unit (a recently dead human Soul) over and through obstacles (in the river Styx).

 

The game explores the themes of godly mythology, light vs dark, and the transition into the afterlife. It puts these themes in the present day, juxtaposing ancient myth with contemporary concepts.

Role: Programmer

Genre: 2D Puzzle Platformer

Engine: Unity

Team Size: 4 people (1 programmer)

Development Time: 2 months

Responsibilities
Gameplay Mechanics
Move Platforms
 

The player controls a grim reaper like character named "Kharr".  Kharr has the ability to move platforms he is close to.

 

The platforms have a modular design.  Platforms are made of platform tiles with each tile containing a particle system.  The platform can only move where a "rail" is connected to a "hook".  When the platform moves, each tile in the platform moves.

The platform gets reference of every object that collides with it.  Upon colliding the platform stores a reference and displaces those objects the same amount the platform is displaced by the player.  This was done for consistant up and down movement that ignores Unity physics.  When the player holds down the "move platform" button, they can no longer free move the character and can only move the character in the directions that the platform can move.  The platform then moves the player during this time as well. 

 

 

 

When the player gets in range of a platform, each of the particle spawners connected to the platform activate.  Only the currently "active" platform will have the particles spawn to indicate which platform the player can move.

 

 

MovePlatform.cs

 

DisplaceObjectOnPlatform.cs

 

The player has the ability to drop jump pads on the ground that causes the soul that the player is leading through the level to jump whne the jump pad and soul collide.  

 

The player can have 3 jump pads active at once and jump pads in reserve are represented by floating orbs around the player.

 

The soul jumps one unit tile upon jumping.

 

When a jump pad is spawned, it will spawn to the center of the tile that is below  the player.  

Jump Pads
 
 

jumpScript_AI.cs

 

Shout
 

Shout allows the player to change the direction of the soul the player is leading through the level to help micromanage the soul and to help avoid hazards.

 

FiendShout.cs

 

Checkpoint
 

Checkpoints are torches.  When the soul runs across a torch, the torch lights and becomes the next checkpoint.  When the soul dies, not the player, the soul and the player respawn back to the last lit torch.  Platforms are moved to their base positition. 

CheckPoint.cs

 

Menus
 

The menus work with mouse, keyboard, and gamepads.

MenuScript.cs