Astral Shift

Index

Astral Shift is a 2.5D platformer game made in 9 weeks where you play as a small bird like figure trying to reach the end. You have multible mechanics that helps the player to reach the destination.

  • Wall climbing - Used to climp step vertical slopes.     
  • Jump - An jumping mechanic.
  • Super jump/Double Jump - Can be performed after you jump, it sets the player to ghost form to be able to go through all collision.
  • Wall snap - An more helpfull mechanic that makes that so if the player is inside a wall but not entirely, it snaps to the wall and starts wall climbing. 
  • Ghost form - An form where the player will ignore all collision until the player falls or leaves the collision.

It is made with an in school game engine called TenGine on the platform PS4

Key features that I made

I made support for an Sprite animation that uses and spritesheet to define different sprites, it is a very simple feature. It have an own written shader that uses the UV space of the texture to map different parts of the texture while an current sprite id would be handled by the cpu and used to determine what part of the texture to "extract" from. Some pictures:

An example spritesheet texture used in the game

I work alot with an 3rd party Physics engine called Box2D to handle all collision handling and movement of player. I worked with to build the library for the PS4 and a pipeline to define the collision between maya and our game. 

I made the Wall Snapping funtionallity. it gets the middle point of the last collison and use it and the player position to calculate with side of the collision the player is on, then it will get an position from the player to the wall and use the magnitude of that line to check if the player would snap or not.

An image to demonstrate this:

I also made the Wall Climbing functionality. It would wait for an collision to happend (event) and check if the player collided with a wall and then freeze the player at that position if it was a wall it collided with. A timer would start of some defined seconds and if the timer ran out the player would "fall off" the wall. If the player would hit the jump button it would peform a wall jump out from the wall with a pre defind force. 

I made an Sound Interface handling for the 3rd party library FMOD that mapps all the events as name, event to be able to get/play/stop an event with a name that is the name of the event in the fmod bank file. You can also play and stop the sound in an gradient to be more smooth when stopping or starting to play the event. 

An in game Debug Menu that handled real-time update of game variables and editor for those variables and was used alot in the project to define all kind of variables for the game in the polish stages. You could easily add an new variable and would save it to a json file on exiting the game. It would also keep backups just in case. It have support for sub menus that we used to define different categories in the menu to more easily find right variable. An image on the debug menu in-game:

Adrian Rondahl, Lerängsvägen 2, 79570 Vikarbyn, adrian.rondahl@live.se, +46 700727717
Skapad med Webnode
Skapa din hemsida gratis! Denna hemsidan är skapad via Webnode. Skapa din egna gratis hemsida idag! Kom igång