After playing tons of roguelike shooter games, I began to wonder what makes these genre of games so addicting and so, I had this idea to analyze their fun aspect and make a small game to test my abilities in replicating it.
This is a solo project I began during my IDM Master's easter break 2025 and below I will analyze the fitting games I played and the design rationale of this journey.
The assets and audio are from free asset packs in order to save time and in creating a further improved immersion.
Roles: Game Developer
Timeline: March 3rd 2025 - March 8rd 2025
Genre: Roguelike, Shoot 'em up
Engine: Unity
Description: An endless roguelike space shooter game where the player can collect upgrades from defeating many different enemies and bosses.
Responsibilities Include:
Identify and breakdown elements from other games.
Designing enemies and bosses.
Designing the level.
Designing the mechanics.
Programming using C#.
Download the game: https://tearai.itch.io/untitled-space-game
Table of Contents
Risk of Rain 2
This, without a doubt is one of my favorite roguelike game of all time, but what about it makes it so fun and why is it adored by so many players?
To understand this, first I broke down this game to its simplest gameplay loop to identify and analyze all the elements.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Gameplay Loop:
Begin the run
Choose a survivor
Spawn at a random first stage map
Explore, fight and survive
Locate chests, drones, shrines, item printers, item scrappers and the teleporter
Fight enemies by utilizing the survivor's resources (HP, Abilities, Primary or secondary attack, items)
Earn gold from enemies or capsules
Collect items
Open chests or wish from shrines to get randomized loot
Customize your items by using item scrappers and printers
Activate the teleporter
Trigger a boss fight and a massive horde of enemies
Charge the teleporter zone
Move to the next stage
There are 5 main stages and on every fifth stage the player can go to the final stage or repeat the gameplay starting from step 2
The difficulty scales over time
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Well designed characters:
From my perspective, the wide variety of survivors is thoughtfully designed to accommodate for diverse playstyles. Each survivor features a unique sets of attacks and abilities that work harmoniously, with none feeling out of place in relation to the survivor's overall theme and vibe. This makes the player more connected to the game as they have a center point to base their passion and feelings to.
Well designed difficulty curve:
In every single run the player starts off with the nothing except the survivor's attacks and abilities and this fine because the enemies introduced at this point are very forgiving, which allows any players regardless of their experience level to familiarize themselves with the mechanics without being overwhelm or frustrated.
Once the player is confident enough
This game does a really good job in providing a difficulty curve that suits all types of players. Players with little experience the core gameplay loop
Well designed enemies and bosses:
The huge range of different random enemies and bosses, each with their unique attacks and behaviors heavily contribute in making the combat feel more dynamic and refreshing. The player will never have the same experience in any stages and different variants of the same enemies and bosses adds another layer of complexity and bizarreness, which makes the game more intense and player dosed in high adrenaline. The sense of accomplishment of learning the pattering and defeating
Creativity and replayability:
Here comes the most fun part of the game in my opinion, because without it I don't think this game would be the same. The items of this game
Zero to hero:
Satisfying art and audio:
The enemies and bosses are very well designed as well
Many players and including myself have their own favorite characters, and there is just something about it where seeing
the progress of building your survivor into a godlike being
Vampire Survivors
The player can use the mouse to aim at the incoming blocks.
Using the keyboard the player can practice moving and shooting at the same time.
Movement
The player can move the spaceship by using the WASD keys.
Shooting
The bullets shoots automatically as soon as the game starts.
There is a cooldown before the next bullet is shot.
Dodging
The player can use the mouse to aim at the incoming blocks.
Using the keyboard the player can practice moving and shooting at the same time.
Upgrades
There are two types of small upgrades.
Small upgrades are spawned randomly when an enemy is defeated, these increases the player stats:
Increase movement speed
Increase health
increase bullet speed
Big upgrades are spawned after defeating each boss and the player can choose between 3 random options:
Shield
Blade
Increase damage
Bigger bullets
As this is an rouge-like endless game, I need to make sure that each element of the game is random and the scales appropriately as the player progresses.
Each wave spawns in 10 random enemies and the number increases with the amount of bosses defeated.
After every fifth wave a random boss is spawned.
The health and shooting rate of enemies or bosses also scales in relation to the amount of bosses defeated.
Since the enemies gets stronger as the game progresses, it is only fair the player does too.
Players can pick up small or big upgrades and depending on the skill or luck of the player, they can eventually reach a god-like status.
The background is procedurally generated to give off an infinite feel.
Enemy
Small fighter
HP: 1
Bullet type: Small circle
Description: The fastest enemy with a small hit-box that moves in a random pattern.
Design Rationale: This ship is intended to be like a annoying fly to the player as it dies in one shot no matter which sector but due to their movement speed it is really hard to hit.
Medium fighter
HP: 10
Bullet type: Small circle
Description: It moves in a random pattern and stops for couple seconds before moving again.
Design Rationale: This ship is designed to be the all rounder enemy type, where it is not annoying to deal with but scales well into the late game.
Big fighter
HP: 20
Bullet type: Rectangle wave
Description: It moves very slowly and have the biggest hit-box out of the others
Design Rationale: This ship is has the highest hp and the biggest projectile size and are difficult to destroy if the player does not prioritize increase their base damage.
Boss
Mothership
HP: 500
Bullet type: Small circle, Homing rockets, Lasers
Description: A heavy hitter boss that packs a lot of different attack patterns.
Design Rationale: This boss is supposed to be a big stationary ship that packs a lot of hp and the attacks are a big storm that players would have to deeply focus to dodge.
Phase 1: Cannons that shoots small circles will be locked onto the player.
Phase 2: Once the ship is below 75% hp, a different type of cannons will appear to shoot homing rockets.
Phase 3: When below 20% hp, laser drones will spawn and lasers will be shot at random periods (Before shooting a flashing red indicator is shown).
Octoship
HP: 400
Bullet type: Small circle
Description: A ship with 4 arms attached that needs to be destroyed before the main ship can be damaged.
Design Rationale: I centered this ship's design from an octopus, where each arm will move randomly and once the arms are destroyed, the main ship will go into berserk mode.
Phase 1: Each arm will move randomly and have a set amount of hp and the main ship is protected by a shield.
Phase 2: Once all the arms are destroyed, the shield is gone and the attack pattern is completely different. The ship will move frantically and different bullet pattern is used.
More upgrades: Currently I feel the game does not have enough small and big upgrades as during the late stages of the game the gameplay can be bit boring
Different player ship: I wanted to let the player choose their ship before the game begins and different ships can have different perks or bullet type.
Combine upgrade mechanic: Like many of those rouge-like mobile games, different upgrades can be combined into a even more powerful upgrade and I want to add this system into the game.
More enemies and bosses: Right now I feel there isn't enough enemies or bosses to make the game feel more fresh and engaging, especially as the player progresses into late game.