Post

Skatescape

Side-scrolling rythm game with a neon-futuristic pixel artstyle.

Skatescape

Release year: 2024

Platform: Web

Engine: Unity


My responsibilities

Lead Game Programmer
Tools Programmer
Debugging


Project

Skatescape is a rythm game inspired by Vib-Ribbon where you need to dodge obstacles by performing actions and combos.

Most of my time for this project went into programming tools for my team to create beatmaps and play frame based animations. I was responsible for creating all the core game mechanics for the player and obstacles.

Gameplay

Key features

  • Stage based gameplay with highscores and combo counters
  • Obstacles synchronized to music
  • Player combo actions

Beat Editor

The project required some way to create accurate mappings of obstacles to audio so I created a tool that extends Unity’s timeline tool to create a beatmap editor.

Since the timeline package offered accurate editing of nodes on a timeline with time steps it made it very easy to create an extension where nodes on the timeline are obstacles. Timeline also offered a track for audio which displays the audio in a spectrum that helps with aligning the beat nodes.

The timeline assets are then parsed to binary which can be played back in the game.

Beat Editor

Frame Animator

Frame based 2D animation tool for animating sprites the traditional way which solves plethora of issues with Unity’s Animator for 2D animation.

Features

  • FrameAnimation assets that can be used to create sprite animations
  • FrameAnimator component that handles playing animations with it’s internal clock
  • No reliance on state machines or transitions
  • Ease of swapping animations instantly by swapping FrameAnimation assets on the FrameAnimator component
  • Removes frame timing jitter by optionally waiting for a frame to finish playing before swapping it to a new one
  • Starting animation from a specified frame instead of start of the animation

Frame Animator Inspector FrameAnimation asset inspector.

Frame Animator Create Shortcut Shortcut for creating a frame animation from spritesheet.

Try it out

This post is licensed under CC BY 4.0 by the author.