Skip to content

jsg155/Devour-the-Earth

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

313 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Devour the Earth

Game link: https://ecse-csds290.itch.io/team9-s2025

Trailer video: https://youtu.be/e8B69nNBfKg Watch the video

Devour the Earth is a Space Invaders-inspired shooter built in Unity that focuses on persistent progression through failure. Players control disposable hive mind entities, assimilating enemy ships across runs to overwhelm an escalating planetary defense system gradually.

Core Systems & Mechanics

In Devour the Earth, each run (invasion) is a single, expendable hive mind entity attempting to break through Earth's defenses. Individual entities are inherently weak, so failure is expected. The primary objective during an invasion is to damage the Earth by firing at it while surviving waves of defending ships. Earth's health is represented by a global HP bar.

Assimilation

During each invasion, enemy ships, when destroyed, occasionally drop fragments, which can be collected and sent back to the hive mind base. These fragments are assimilated between invasions and converted into minions that persist across runs.

Before starting a new invasion, players can drag assimilated minions into a radar-like area. These minions will be deployed in the invasion to assist the next hive mind entity during combat. Once destroyed, minions are removed from the Hub to encourage experimentation and risk management.

Enemy Phases

Earth's defenses escalate based on remaining HP. Every 25% reduction, including the start, introduces a new enemy type:

Basic Enemies

Standard projectile-based units (with two variants).

Basic enemy attack

Kamikaze Enemies

High-speed, homing units that self-destruct on contact.

Kamikaze enemy attack

Electric Enemies

Area-control units that shoot electrical orbs, stunning any entities they hit.

Electric enemy attack

Laser Enemies

Precision-based units that charge high-damage laser attacks.

Laser enemy attack

(The gif does not represent the true damage of the enemies, as the player's health is increased by 3 - 4 times for recording purposes)

Minion Control

Different minion types require different player inputs to activate their abilities. Basic and Electric minions fire using the player shooting input (left mouse click), Kamikaze enemies launch when the '1' key is pressed, and Laser enemies charge while holding the spacebar and fire upon release.

This input differentiation gives each minion type a distinct tactical role and forces players to make active decisions during combat.

Technical Notes

Unity 6 C# Platform

Due to a WebGL limitation, the electric enemy's orb VFX does not render correctly on itch.io. Hence, the Windows executable is recommended.

Lessons Learned

  • Designed a fail-to-win progression system, centered around the assimilation mechanic
  • Implemented acceleration-based movement to achieve smooth yet slippery controls, inspired by DawnosaurDev's player movement concepts, independently implemented and adapted vector-based, top-down space movement.
  • Balanced player, minion, and enemy strengths to maintain a consistent difficulty
  • Built a state-based enemy AI system that idles around the Earth and chases or attacks players and minions accordingly
  • Learned that the hierarchical enemy/minion class structure (base entity => enemy/minion => specific types) significantly simplifies logic flow

Contributors

  • @nirow1010 - custom player movement design, entity class hierarchy, and enemy/minion ability design & implementation (including particles and VFX)
  • @Aisuirocellist - main theme composition, sound effects, menu UI, and CONTROLS scene
  • @James-275 - assimilation system, enemy AI & pathfinding, and minion auto-targeting
  • @TheSpoon7784 - enemy/minion sprites, health bars, and enemy spawn design

Each member contributed support across other areas as needed, as well as to the game documentation and core concept.

Special Thanks to:

About

Reinterpretation of the space invader genre. Recommend downloading because one of the SFX effects is invisible on the website.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C# 70.9%
  • ShaderLab 24.1%
  • HLSL 5.0%