2D Sprite Adventure


Objective

My goal with this project was to create an original 2D Game, I was in charge of developing the functionality in the back end and had an involvement with the pixel art assets. The majority of the game art was done by Aisjam especially in the environment and characters.

Programs Used

These are the following programs I used to make the sprite adventure game.

  • Unity – Creating real time functionality
  • Aseprite – Creating the sprite art

Features

Retro Sprite Style

Taking inspiration from the mid 90’s era style of games we tried to encapsulate that in our sprite art. Our goal was to create a flat shaded pixel art style.

The sprites were designed in a way they could be used to create larger areas and also allow them to be used to create multiple objects within the game.

Interactive World

The player could push blocks, read signs, talk to characters and destroy objects. The idea behind all these interactions was to give the player a more engaging world.

Atmosphere

While in dungeons to make the player feel at unease and claustrophobic we used a series of masks on the camera to give the feeling the player was a light source.

Dungeon Generation

The idea behind the dungeon generation was to make it easier to create the smaller dungeons within the game world. The dungeon generation script had multiple settings that could be set to give the generated dungeon a unique feel.

The Dungeon Generator settings

Using the dungeon generation settings there was a lot of control over what sort of dungeon would be generated.

The dungeon generation script used arrays to store what tiles assets needed to be placed to allow quick generation with worrying about assets until the final stage of the dungeon generation process. When generating a dungeon the generator would use the following process.

  1. Create Start room and entrance
  2. Pick a wall and create a hallway in that direction
  3. Create a room at the end of the hallway
  4. Randomly select a one of the previously generated rooms
  5. Repeat steps 2-4 until the final room
  6. Generate the final room and add the exit/boss

Outcome

This project was really useful in teaching me the fundamentals of level design and character control. I got a great understanding about optimising code when creating the dungeon generator and gave myself a real test with matrix algorithms. I had also got some experience doing game art even and also found an enjoyment in doing it as well. Unfortunately this project never became a full release, if I was to do another project like this I would definitely scale back the project to something more easily achievable.

A playable demo example of the game can be found on github.