Space Shift
ROLE
Independent Designer, Programmer and Animator
DESCRIPTION
This project was a Media Design School assignment, which focused on implementing a 2D game using exclusively C++ and SFML. I designed stealth platformer gameplay alongside menu UI elements from scratch. In order to guarantee my A+ grade, I implemented the following additional features:
-
More levels
-
Data-driven levels.
-
Advanced systems (Noise/Sight based detection)
Additionally, I developed a level editor, which would write a .ini file that the game could read. I decided to develop the editor in Java, even though It wouldn't be marked towards my grade, because of the available UI elements. The editor enabled me to create nine levels when only three levels were required.
I used preexisting art assets I found on the internet and followed a Youtube tutorial to animate them in order to create a SpriteSheet.
DEVELOPMENT YEARS
2020
PLATFORM
Windows PC




Level One


Level Three


AI Systems
Pathfinding
Each guard is registered to a platform when they land upon it, and switches between two predetermined points when Patroling. Once a guard enters the Alert state they generate a new point in between the predetermined points (weighting the points by distance).
Sight
Sight is determined by a rectangle vs rectangle overlap between the player and an invisible vision cone. This cone can be seen via the debug menu and is located in front of the guard. Once a guard enters the Alert state, the cone has an adjusted scale where it can overlap further.
Hearing
All sounds are registered into a Noise Manager singleton class, which can cross-reference with all registered guards. A sound generated by the player, a guard, and toggling platforms, has a volume which decays each frame. Sounds and hearing ranges can be enabled via the debug menu.

Animation
I didn't create the base sprites for the player and guard however I used a youtube tutorial to animate them.

