Over the course of about 10-weeks, Ghostwriter was completed as a student project for an Intermediate Game Development class. I worked with a fellow computer science student at USC to design and develop the game using the Unity game engine. My partner and I also directed a few students from the Berklee College of Music to produce music and sound effects to fit our style and theme. 
Ghostwriter is a unique typing game where the player must type phrases correctly to earn money. However, there are various types of ghosts that haunt your keyboard and get in the way of your typing. In order to complete phrases, the ghosts on the keyboard must be cleared within a timely manner. Each level progresses in difficulty, with new ghost types and challenging phrases gradually introduced. As the player earns money, they can buy upgrades and powerups to help deal with the ghosts and more easily type phrases.
My Work as a Designer and Developer
Implemented a spawn system for the ghosts
    - Created spawn points for each key on the keyboard.
    - Kept track of which keys were unoccupied by ghosts and labeled them as possible spawn points for newly spawned ghosts.
    - Developed a way to easily control spawn frequency of four different ghost types in the Unity inspector.
    - Created custom particle effects for ghost spawning.

Developed functionality for four types of ghosts
    - Basic ghosts: Simply spawn onto an open key and stay there as they take damage.
    - Jumping ghosts: Spawn onto an open key and jump to a new open key every time they take damage.
    - Mini ghosts: Multiple tiny ghosts spawn on open keys, each requiring one hit of damage to kill them.
    - Cat ghost: Jumps on the keyboard, preventing other ghosts from spawning but must be moved off the keyboard for the player to continue typing phrases on the        in-game screen. Jumps off the keyboard once the player types enough phrases unique to the cat ghost.
        - Created custom animations for the cat ghost to jump on and off the keyboard.

A jumping ghost (green) spawning onto the 'L' key

Cat ghost sitting on the keyboard

Created a ghost damage and health system
    - Kept track of current ghost health and visually displayed this health with a world-space health bar UI for each ghost.
    - Listened for player input to see if the player was pressing a ghost-occupied key and dealt damage to the ghost accordingly while updating the health bar UI.
    - Created custom particle effects for ghost damage and ghost deaths.

Developed various upgrades and powerups for the player
    - Implemented upgrades affecting damage dealt and necessary damage to kill a ghost, which update the damage and health system.
    - Created powerups that affect when ghosts can spawn, which is promptly communicated to the spawn system.

Ghost Barrier powerup activated, preventing ghosts from spawning

Created and implemented functionality for menu UI elements
    - Laid out the main menu buttons and various buttons throughout other menu screens.
    - Wired up button navigation to easily transition to different screens.
    - Implemented master volume and colorblind settings.

Main menu screen

An instruction screen, including next and previous buttons for menu navigation

Play Ghostwriter for yourself. Download the game from Itch.io.

You may also like

Back to Top