An open-source vertical scrolling shmup built with Godot 4.4, featuring dual weapon systems, wave-based progression, and procedurally generated audio.
Switch between two distinct weapon types, each with 5 upgrade levels:
- Vulcan Cannon: Rapid-fire spread shots that increase from 1 to 5 projectiles
- Laser System: Piercing beams that penetrate multiple enemies with scaling damage
Face increasingly challenging waves of enemies with:
- Dynamic Difficulty: Enemy health, speed, and point values scale with each wave
- Formation Patterns: Enemies spawn in line formations, V-shapes, and random bursts
- Movement Behaviors: Straight-line attacks, zigzag patterns, and dive-bomb maneuvers
Collect floating power-ups that provide:
- Weapon Upgrades: Increase your weapon level for more firepower
- Weapon Switch: Toggle between Vulcan and Laser systems
- Bombs: Screen-clearing explosions for emergency situations
- Extra Lives: Extend your survival in the increasingly difficult waves
Experience a completely procedural soundscape:
- Zero Audio Files: All sound effects are generated in real-time using mathematical waveforms
- Dynamic Audio: Sounds vary based on context with pitch and frequency modulation
- Rich Sound Design: From laser blasts to explosion effects, everything is synthesized on-the-fly
- Godot Engine 4.4.1 or newer
- SCons build system (
pip install scons) - Windows, macOS, or Linux
# Clone the repository
git clone <repository-url>
cd continuum
# Install dependencies (one-time setup)
./plug.gd install
# Launch the game
/Applications/Godot.app/Contents/MacOS/Godot --path .
# Or use the professional build system
scons help # Show all available commandsMovement: Arrow Keys or WASD
Shooting: Spacebar (automatic firing)
Bomb: Z key (limited use)
Pause: Escape key
- Survive the Waves: Destroy incoming enemies before they overwhelm you
- Collect Power-Ups: Grab floating items to upgrade your weapons and capabilities
- Master Both Weapons: Learn when to use spread fire vs. piercing lasers
- Use Bombs Wisely: Save screen-clearing bombs for critical moments
- Achieve High Scores: Earn points by destroying enemies, with higher waves worth more
- Vulcan (Spread Fire): Excellent for crowd control and multiple weak enemies
- Laser (Piercing Beam): Perfect for tough enemies and tight formations
- Weapon Levels: Higher levels increase damage, fire rate, and special effects
- Stay mobile - movement is key to avoiding enemy fire
- Prioritize power-ups to stay competitive with wave difficulty
- Learn enemy movement patterns to predict and avoid attacks
- Use the invulnerability period after getting hit to reposition safely
- Modular Design: Clean separation between player systems, enemy management, and audio
- Signal-Based Communication: Decoupled systems communicate through Godot's signal system
- Resource Efficiency: Smart instantiation and cleanup for smooth 60 FPS gameplay
- Procedural Audio Engine: Complete sound synthesis without external audio files
- Particle Effects System: Dynamic explosions and visual feedback
- Mathematical Difficulty Scaling: Algorithmic wave progression for balanced challenge
- Professional Build System: SCons integration for advanced build automation
- Modern Package Management: Dependencies managed with gd-plug
- Comprehensive Testing: Professional testing framework with gdUnit4
- Automated Quality Assurance: Pre-commit hooks ensure code quality
# Install development dependencies
./plug.gd install
# Run tests to verify setup
scons test
# Run comprehensive project validation
scons validate
# Open in Godot Editor for modifications
/Applications/Godot.app/Contents/MacOS/Godot --path . --editorProfessional build automation with comprehensive targets:
scons test # Execute complete test suite
scons validate # Run project validation
scons build-dev # Build development version
scons build-release # Build optimized release
scons help # Show all available commandsSConstruct # Main SCons build configuration
site_scons/ # SCons build modules
โโโ assets.py # Asset processing and validation
โโโ godot_integration.py # Godot export automation
โโโ validation.py # Comprehensive quality assurance
scenes/ # Game scenes (player, enemies, projectiles)
scripts/ # Game logic organized by system
โโโ autoloads/ # Global systems (audio, effects, enemy management)
โโโ player/ # Player ship and weapon systems
โโโ enemies/ # Enemy AI and behaviors
โโโ projectiles/ # Bullet and laser implementations
test/ # Comprehensive test suite
assets/ # Ready for sprites, sounds, fonts
The game is designed for easy modification:
- New Enemy Types: Extend the base Enemy class with custom movement patterns
- New Weapons: Create new projectile types and add them to the player system
- New Power-Ups: Add power-up types and implement their effects
- New Audio: Extend the synthesis engine with new waveform generators
# Run the complete test suite
scons test
# Run comprehensive project validation
scons validate
# Direct Godot testing (advanced)
/Applications/Godot.app/Contents/MacOS/Godot --path . --headless -s addons/gdUnit4/bin/GdUnitCmdTool.gd --add test/unitContinuum combines classic arcade shmup action with modern technical innovation:
- Accessibility: Easy to learn controls with deep strategic weapon management
- Progression: Satisfying power-up system that keeps gameplay fresh
- Challenge: Mathematically balanced difficulty that scales fairly
- Innovation: Unique procedural audio creates a distinctive soundscape
- Performance: Optimized for smooth 60 FPS gameplay across platforms
- Language: 100% GDScript
- Audio: 100% procedurally generated (zero external sound files)
- Testing: Comprehensive test coverage with automated quality assurance
- Performance: Optimized for 60 FPS with efficient memory management
- Platforms: Cross-platform compatibility through Godot Engine
Continuum features a production-grade CI/CD pipeline that automatically builds and deploys across multiple platforms with 100% success rate:
All platforms build successfully in parallel with optimized times:
- ๐ช Windows Export: ~1m15s (Cross-compiled from Ubuntu)
- ๐ง Linux Export: ~1m8s (Native Ubuntu build)
- ๐ฑ Android Export: ~1m41s (ARM64 APK with keystore signing)
- ๐ Web Export: ~1m25s (Auto-deployed to GitHub Pages)
- ๐ Web Version: Play instantly in your browser (Auto-deployed)
- ๐ง Linux: Native x86_64 executable for all distributions
- ๐ช Windows: Universal executable for Windows 10/11
- ๐ฑ Android: ARM64 APK with debug signing (release signing available)
- Zero-Failure Builds: 4/4 platforms build successfully on every commit
- Automatic Versioning: Every push to main automatically increments patch version and creates releases
- Comprehensive Testing: Pre-commit hooks + automated test suite + validation
- Smart Dependency Management: Automated gd-plug installation with gdUnit4
- Android Build Templates: Full Android SDK integration with custom keystore support
- Multi-Stage Quality Gates: Static analysis โ testing โ building โ deployment
- Artifact Management: Automatic APK/executable generation and GitHub artifact storage
- GitHub Pages: Automatic web deployment on main branch pushes
- Auto-Release Pipeline: Every push โ CI/CD โ version bump โ release creation โ multi-platform builds
- Version Control: Automatic patch increments (v1.1.1 โ v1.1.2) with manual major/minor override
- Debug & Release Modes: Android supports both debug (active) and release builds
- Cross-Platform Assets: Unified builds work across all target platforms
Built using official Godot CI/CD best practices:
- barichello/godot-ci:4.4.1 Docker containers for consistent builds
- Professional keystore management with GitHub Secrets integration
- Asset optimization with ETC2/ASTC texture compression for Android
- Template installation with automatic build version management
- Comprehensive error handling and fallback mechanisms
- ๐ฎ Play Now: stphung.github.io/continuum - Instant browser gameplay
- ๐ฆ Latest Release: GitHub Releases - Stable multi-platform builds
- ๐ง Development Builds: GitHub Actions Artifacts - Latest successful builds
Build Status: All platforms operational with auto-versioning โ
Continuum features a fully automated release pipeline that eliminates manual version management:
๐ Workflow: git push โ CI/CD builds โ auto version bump โ immediate release creation โ multi-platform downloads
๐ Version Strategy:
- Patch Increment: Every successful push to main automatically creates
v1.1.1โv1.1.2โv1.1.3 - Manual Override: Include
#majoror#minorin commit message for bigger bumps - Skip Versioning: Add
[skip-version]to commit message to skip automatic versioning - Zero Configuration: No manual tags or version files required
๐ฏ Benefits:
- Single Workflow: All building, versioning, and release creation in one streamlined process
- Instant Releases: New Android APK + all platforms available within ~3 minutes of push
- Consistent Versioning: Never forget to tag releases or create builds
- Developer Friendly: Focus on code, not release management
- Production Ready: Every release includes comprehensive testing and quality gates
Continuum is open source and welcomes contributions:
- Fork the Repository: Create your own copy to work on
- Install Development Tools: Run
./plug.gd installfor the full development environment - Make Your Changes: Add features, fix bugs, or improve existing systems
- Run Tests: Ensure your changes don't break existing functionality with
scons test - Validate Quality: Run
scons validateto ensure comprehensive quality assurance - Submit a Pull Request: Share your improvements with the community
- Gameplay: New enemy types, weapon systems, or power-up mechanics
- Audio: Additional waveform generators or sound effect variations
- Visual Effects: New particle systems or visual feedback
- Performance: Optimization and efficiency improvements
- Testing: Additional test coverage for new features
Continuum is licensed under GPL v3.0, making it free and open source software. You're free to:
- Play the game
- Modify the source code
- Distribute your modifications
- Use it for learning game development
See LICENSE.md for complete terms.
One of Continuum's unique features is its completely procedural audio system. Every sound you hear - from laser blasts to explosions - is generated mathematically in real-time. This creates a unique audio experience that's both retro-inspired and technically innovative.
**Experience the evolution of shmup gameplay - download, play, and modify Continuum today!**Test changelog generation functionality