
Spiritfall
A downloadable game
When the dead rise, only spirits can save us!
Description
Spiritfall is a strategic tower defense game for the Game Boy Classic where you command an army of mystical spirits to defend against waves of undead invaders! In this supernatural showdown, deploy six unique spirit types across three lanes to stop skeletons, wizards, pumpkin monsters, and floating skulls from reaching your sacred grounds.
Written entirely in Game Boy Z80 assembly, Spiritfall combines classic tower defense gameplay with retro Game Boy aesthetics. Each spirit has unique abilities - from basic shooters to soul generators, explosive bombs, and tactical traps. Master the art of spirit placement, manage your soul economy, and survive 10 increasingly challenging levels!
Perfect for fans of Plants vs Zombies-style gameplay with a spooky Halloween twist! ๐
๐ฎ How to Play
Controls
- D-Pad: Move cursor to select grid position or spirit card
- A Button: Place selected spirit / Select spirit from deck
- B Button: Cancel spirit placing / Cancel spirit removal
Game Mechanics
- Soul Economy: Collect souls from defeated enemies and Glim spirits. Souls are your currency for placing spirits!
- Strategic Placement: Position spirits on a 3-lane ร 8-column grid. Each lane must be defended!
- Recharge System: After placing a spirit, wait for its recharge timer before placing another of the same type
- Wave Defense: Survive 4 waves per level. Enemies spawn from the right and march toward your base on the left
- Progressive Unlocks: Complete levels to unlock new spirit types with unique abilities
If you've played a tower-defense game like Plants vs. Zombies, we highly encourage you to select the "Skip Tutorial" option!
Victory Conditions
Defeat all waves without letting enemies reach the left edge of the screen
Game Over if any enemy crosses your defenses!
๐ป Spirit Arsenal ๐ป
Six unique spirits to command, each with distinct tactical roles:
๐ GHAZE - Cost: 4 souls
Role: Basic Shooter | HP: 10 | Fire Rate: 3s
Your bread-and-butter defender. Shoots slime ball projectiles at approaching enemies. Unlocked from the start.
โ๏ธ GLIM - Cost: 2 souls
Role: Soul Generator | HP: 10 | Fire Rate: 7s
Generates 1 soul every 7 seconds. Essential for building your economy! Unlocked after Level 1.

๐ก๏ธ FLAN - Cost: 2 souls
Role: Wall/Blocker | HP: 40 | Fire Rate: N/A
High-HP defensive wall. Doesn't attack but absorbs massive damage. Unlocked after Level 2.

๐ฃ ACID - Cost: 8 souls
Role: Area Bomb | HP: 200 | Fire Rate: 1s (detonation)
Explodes after 1 second, dealing 30 damage in a 3ร3 area (3 lanes ร 3 columns). High-risk, high-reward! Unlocked after Level 3.

โ CATCH - Cost: 1 soul
Role: Trap | HP: 10 | Fire Rate: 5s (arm time)
Arms after 5 seconds. When an enemy passes, grabs them and drags them into the nether realm, dealing 30 damage in a 2-cell horizontal range. Cheap and deadly! Unlocked after Level 4.

๐ฑ TRYAD - Cost: 8 souls
Role: Piercing Shooter | HP: 10 | Fire Rate: 4s
Fires shadow fire projectiles that pierce through enemies, hitting all targets in a single lane! Ultimate crowd control. Unlocked after Level 5.

๐ Enemy Types ๐
โ๏ธ SKELETON (Infantry)
HP: 5 | Speed: Medium | Damage: 2
Basic undead warrior. Your standard threat.
๐ง WIZARD (Hat Skeleton)
HP: 10 | Speed: Slightly Fast | Damage: 3
Tougher and slower. Takes more hits to bring down.
๐ PUMPKIN MONSTER
HP: 50 | Speed: Very Slow | Damage: 40
Boss-tier enemy! Extremely dangerous with massive HP and devastating damage. Moves slowly but is nearly unstoppable.
๐ FLOATING SKULL
HP: 5 | Speed: Fast | Damage: 0
Harmless but sneaky! Doesn't damage spirits but can block shots and moves quickly across the field. It also floats above enemies, without stopping to damage them!
๐ฏ Game Modes
- Campaign Mode: Progress through 10 levels of increasing difficulty. Each level unlocks new spirits!
- Skip Tutorial Mode: Start at Level 6 with all spirits unlocked. Perfect for experienced players who want to jump straight into the action!
โจ Features
- ๐ฎ Pure Assembly: 100% Game Boy Z80 assembly code - no high-level languages!
- ๐ฆ MBC1 Compatible: Runs on original hardware with MBC1+RAM+BATTERY cartridge
- ๐จ Authentic GB Graphics: Classic 4-shade monochrome palette with smooth animations
- ๐ต Retro Sound: Chiptune audio effects powered by hUGEDriver for that authentic Game Boy experience
- ๐ 10 Unique Levels: Each with custom wave patterns and difficulty curves
- โก Optimized Performance: Smooth 30 FPS gameplay with efficient entity management
- ๐ฏ Strategic Depth: Multiple viable strategies with 6 unique spirit types
๐ ๏ธ Technical Specifications
Platform: Game Boy Classic (DMG-001)
Language: Z80 Assembly (RGBDS toolchain)
Cartridge Type: MBC1+RAM+BATTERY (Type 3)
ROM Size: 32 KiB
RAM Size: 8 KiB External SRAM
Tested On: BGB 1.6.4, Emulicious, Real Hardware
Frame Rate: 30 FPS
Max Entities: 24 Spirits, 15 Skulls, 10 Projectiles simultaneously
๐ฅ Authors and Licenses
Developers:
โข Felipe Rojas Cascante
โข Abel Gandรญa Ruรญz
โข Alba Carmona Quirante
Team: BottomTextGames
Jam: GBRetroDev'25: Heroes of ASM 2
License: Open Source (MIT License recommended)
Third-Party Content: All game assets, code, graphics, and audio are original creations by the development team, with the exception of:
- hUGEDriver: Game Boy music driver used for audio playback. As stated in their GitHub repository: "hUGETracker and hUGEDriver are dedicated to the public domain."
Tools Used:
- RGBDS (Rednex Game Boy Development System) - Assembly toolchain
- BGB - Emulator and debugger
- Emulicious - Emulator and testing
- Aseprite - Sprite and tileset creation
- hUGEDriver - Game Boy music driver
๐ Development Notes
Spiritfall was developed specifically for the GBRetroDev'25 competition at the University of Alicante. The entire game is written in Z80 assembly language, showcasing low-level programming techniques including:
- Entity Management: Custom pooling system for efficient sprite allocation
- Render Queue: Deferred tilemap updates during VBlank for flicker-free graphics
- Animation System: Frame-based sprite animation with configurable timing
- Collision Detection: Optimized lane-based collision for projectiles and enemies
- Wave Manager: Data-driven level design with flexible spawn patterns
- Memory Optimization: Careful WRAM usage to fit within 8 KiB constraints
Here's a link to the source code
๐ฎ Tips & Strategies
- ๐ก Start with Glim: Place Glim spirits early to build your soul economy
- ๐ก๏ธ Use Flan Wisely: Position walls in front of valuable shooters to protect them
- ๐ฃ Acid Timing: Place Acid bombs just before large groups arrive for maximum impact
- โ Catch Placement: Put Catch traps in lanes where enemies frequently pass
- ๐ฑ Tryad Power: Save souls for Tryad when facing dense enemy waves in a single lane
- โก Remove & Replace: Don't be afraid to remove spirits (B button) to adapt your strategy!
๐ Ready to Defend Against the Undead? ๐
Download Spiritfall now and prove your strategic mastery!
The spirits await your command...
| Status | Released |
| Author | BottomTextGames |
| Genre | Strategy |
| Made with | Aseprite |
| Tags | 2D, Cute, Game Boy, Ghosts, Halloween, Pixel Art, Singleplayer, Skeletons, Top-Down, Tower Defense |
| Code license | MIT License |
| Average session | A few minutes |
| Languages | English |
| Inputs | Keyboard, Gamepad (any) |
| Links | GitHub |






Comments
Log in with itch.io to leave a comment.
Tremendo, simplemente sin palabras, juegazo