Project Outline
Working Title: Pusher

Abstract
For this project I will be working on the game Pusher, a rhythm survival game about attracting a crowd of ravers to protect yourself against enemies. I will be making this game in Godot as it is an engine I have wanted to become skilled at and I am confident I can make a small 2D game during Semester 2 using it.
Genres
- Rhythm
- Survival
- Arcade
These genres are chosen because the game is based off of rave culture and music, so while the game does use rhythm, it is more of a survival game more than a test of the player’s rhythmic ability. As an arcade game Pusher will be endlessly replayable and players can compete to survive the longest.
Goals
Project Goals
The main goal of the project is to create an addictive game that people will want to replay after one go, largely in thanks to satisfying base mechanics as well as a “survival”-style game loop with a timer which will encourage competition between players. Some specific goals I wish to achieve for the game include:
- 2D vector-style graphics
- Snappy grid-based movement tied to rhythm
- Enough content for at least a 20 minute run through the game
- Simple Enemy AI that chases the player
- Rhythm-based dynamic music that plays sounds and loops on-beat
- Main menu
- Help menu with default input controls
- Settings menu with audio controls
Personal Goals
As this is the first major project I am doing alone rather than in a team, I will need to rely on and develop the following skills:
- Project Management (Using a tool like Trello or Jira)
- Creating music stems for dynamic soundtracks
Roles
- Parker English: Art, Programming, Design, Music
Presentation
Hook
Pusher is a musical survival game about attracting a crowd of ravers while running from the police.
Anchor
The game has a top down bullet hell presentation and premise, with steady rhythmic movement, like Crypt of the Necrodancer’s but simpler.
Appeal
Main appeal of the game for players first seeing it will be the following, ordered in terms of estimated importance:
- Music and rhythm-based mechanics
- Snappy movement and satisfying burst ability
- Unique vector-based retro style with modern elements
Fun Factor
After play testing an early prototype featuring basic movement as well as ”burst mode” movement, several players have enjoyed moving around in-game and found the contrast between rhythmic movement and the burst mode very unique and fun to do. As such, I am confident in advertising this aspect of the game in promotional material.
User Experience
Mechanics
In Pusher, the player by default takes steps on every beat when holding a direction key.
However, when holding the Burst button (by default Space) they can move off-beat by tapping the direction keys and thus move quicker.
Approaching ravers makes them surround the player in a circle, becoming a barrier around them that blocks enemies trying to reach the player. Moving in Burst mode makes ravers disperse from the crowd and disappear, leaving the player exposed if they try to move too quickly.
As the player accumulates more ravers, enemies will spawn and move towards the player, trying to reach them. When an enemy collides with the player the Enemy disappears and the player loses a life.
Win/Fail States
As this is an arcade survival game, there is no exact win state as the player must spend as much time as possible alive while accruing the largest crowd they can.
The fail state, aka a ‘Game Over’, occurs when the player is collided with by an Enemy three times, thus losing all their lives.
Controls
- Keyboard
- WASD/Arrow Keys (Hold) – Move
- WASD/Arrow Keys (Tap) – Dash (when in Burst Mode)
- Space (Tap) – Activate Burst Mode
- Gamepad
- Left Analog Stick (Hold) – Move
- Left Analog Stick (Tap) – Dash (when in Burst Mode)
- A Button (Tap) – Activate Burst Mode
Market Research
Audience
The main audience of Pusher will be older teens to young adults in the 18-35 age range. This is due to its abstract retro-style graphics appealing to older players, familiar with games that have inspired the aesthetic such as Tempest 2000 or Rez, as well as the hardcore rave and electronic music that will feature heavily in the game. However, teenage gamers have also enjoyed games with similar aesthetics both visually and musically such as Picayune Dreams. The arcade gameplay also lends itself to older audiences who may want a title to easily pick up and play without a lot of dedication required.
Competitive Analysis
Right now on the market there is an influx of popular rhythm games such as Bits and Bops, Rhythm Doctor, Unbeatable and more, showing that there is a high demand for the genre right now. However as Pusher has a minimalist art style which is also popular in the genre with games like Just Shapes and Beats and Soundodger being very similar looks-wise, I will need to do a lot to make the game stand out visually, most likely by leaning in to the vector-style graphics, or if there is time perhaps drawing some additional art for the game.
Critical Analysis
Thematically and musically this game borrows heavily from the rave and electronic music scene of the 90’s, particularly the culture of underground raves and festival and the “free party” scene. This is a topic I have researched heavily on my blog, and sources talking about how the police would raid these raves and cause DJ’s and attendees alike to scatter was a large influence on the main game loop. The mix between steady, repetitive beats and more varied rhythms was also inspired by the description of electronic music as such in the 1994 Criminal Justice Act that was used to suppress rave and youth culture at the time.
Content
Components
Player
- Player sprite
- Grid-based movement (tied to rhythm)
- Animations for movement
- Crowd distribution mechanic
Ravers/Crowds
- Raver sprite
- Follow/Attract to player AI
- Spawn mechanic
- Scatter mechanic
Enemies
- Enemy sprite
- Chase player AI
- Spawn mechanic
- Damage raver/player mechanic
Game Systems
- Game timer
- Dynamic Music/Rhythm System
- Beat system (consistent sub-ms timing)
- Variable BPM
- Sequencing sounds and loops
- Adding/removing loops/stems dynamically
- Cueing and quantising sounds
Sound and Music
Music
The music for the game will be very much inspired by jungle and rave music, heavily featuring sounds such as
- Acid basslines
- Drum machine samples
- Breakbeat samples
Music will vary greatly in intensity from something more laid-back and atmospheric to more hardcore uptempo styles. This will be achieved using a dynamic music system that will automatically cue loops in and out.
Here are some examples of songs that best describe the musical style of the game, ranging from more upbeat or intense track to more downtempo ones:
Sound Design
As well as loops and stems, the dynamic music system will also allow for one-shot sounds to be played while synced to the beat. These will include sounds such as:
- Dub sirens/wheel up signals:
Visual Aesthetic
The game will have a look inspired by games using vector graphics, meaning it will make use of sprites made up of multicolored lines and shapes, with a bloom effect simulating the glow original vector displays had on their screens.

However, additional effects or more modern graphical elements such as color-changing visuals a la Tempest 2000, or maybe even 3D wireframe visuals, may be added on top to enhance the visual experience of the game.
Platform
The game will be available for PC only, as this is the most important for the final showcase and the best way to keep the project in scope.
Project Structure
Schedule
A vague breakdown of how time will be used for working on the project is as follows:
- Around 12 weeks of development time
- 4 weeks of core mechanic design (player, enemy)
- 3 weeks of in-game asset and art design
- 2 weeks of additional asset and feature design (UI, menus)
- 3 weeks of final design/polish pass, testing and bug fixing
Methodology
Kanban Board
I will be using an Agile methodology for this project, consisting of splitting up work into achievable tasks that can be put into a week-long “sprint” and checked off when done. Below is a initial draft of what a kanban board for the project would look like:

As you can see, this contains examples of tasks that would need to be completed for each phase. Every week (or however long the decided sprint time would be), tasks from the current phase would be pulled into the backlog or to-do list for the current sprint, and in-progress and finished tasks can be tracked and checked off. The amount of tasks completed in one sprint would be used to estimate the workload for future sprints and can therefore be used to help make adjustments to scope to ensure proper time is allotted for key features and usability/accessibility additions, for instance
This kanban board was made using Obsidian, however during development I will most likely use a more dedicated tool such as Jira or Trello as they were recommended by several professionals to use during the guest talks.
Gantt Chart
Below is a Gantt chart that I made as an estimate of how I will plan out time working on the game. The vital, most fun aspects such as the player movement and the music are planned first, with features more centered around gameplay technicalities coming later.

Unfortunately, one drawback of this chart is that it does not take weekends into account, as I most likely will not be working on the game on those days.

Leave a Reply