A sci-fi terminal-based signal analysis game with beautiful TUI interface
Project description
๐ฐ๏ธ The Signal Cartographer: Echoes from the Void
A sci-fi signal analysis game built with Python and Textual TUI. Explore the void of space, detect mysterious signals, and uncover their secrets using the AetherTap terminal interface.
๐ฎ Game Overview
You are a Signal Cartographer exploring space sectors to detect and analyze mysterious signals from unknown sources. Use advanced tools to scan different sectors, focus on interesting signals, and analyze them to reveal hidden information. Progress through increasingly challenging sectors while upgrading your equipment and unlocking achievements.
โจ Complete Feature Set
๐ฅ๏ธ Interface & User Experience
- Professional TUI Interface - Built with Textual for a modern terminal experience
- 6-Panel AetherTap Interface - Spectrum analyzer, signal focus, cartography, decoder, captain's log, and command input
- Enhanced Command System - TAB autocompletion with live preview and multi-word support
- Real-time Visual Feedback - Immediate feedback with success/error icons and suggestions
- Context-Sensitive Help - Smart help system that adapts to your current progress
- Modern Visual Indicators - Progress bars, status icons, and enhanced UI elements
- Full Hotkey Support - F1-F5 for panel switching, Ctrl+H for help, Ctrl+C to quit
๐ Exploration & Content
- 5-Tier Difficulty Progression - ALPHA-1 (Beginner) through EPSILON-5 (Expert)
- 9 Unique Signal Types - From basic Pulsed-Echo to advanced Singularity-Resonance
- Advanced Signal Properties - Frequency, strength, modulation, stability, and signatures
- Progressive Complexity - Signals become more challenging and rewarding in higher sectors
- Dynamic Signal Generation - Procedurally generated signals with unique characteristics
๐ Progression & Achievements
- Equipment Upgrade System - 4 tier upgrades: Scanner Sensitivity, Signal Amplifier, Frequency Filter, Deep Space Antenna
- Analysis Points Currency - Earned through signal analysis and spent on upgrades
- 10 Achievement System - From "First Contact" to "Deep Space Pioneer" with progress tracking
- Performance Statistics - Track your scans, analyses, discoveries, and efficiency
- Progression Commands - UPGRADES, ACHIEVEMENTS, PROGRESS for detailed tracking
๐พ Save System & Persistence
- Complete Save/Load System - JSON-based with metadata and error handling
- Multiple Save Slots - Named saves with SAVE filename and LOAD filename commands
- Auto-save Functionality - Automatic saves on sector changes and major progress
- Progress Preservation - All upgrades, achievements, and discoveries saved
- Save File Management - File size tracking, timestamps, and corruption protection
โก Performance & Optimization
- Memory Management - Advanced garbage collection and object tracking
- Render Caching - LRU cache for expensive ASCII rendering operations
- Command Throttling - Prevents spam and improves responsiveness
- Performance Monitoring - PERFORMANCE command to monitor system efficiency
- Error Handling - Graceful degradation and fallback functions
- Data Cleanup - Automatic cleanup of old/stale data
๐ฏ Enhanced Commands & Tools
- Core Commands - SCAN, FOCUS, ANALYZE, STATUS, HELP with enhanced feedback
- Progression Commands - UPGRADES, ACHIEVEMENTS, PROGRESS, PERFORMANCE
- Save Commands - SAVE, LOAD with flexible filename support
- System Commands - CLEAR (logs), QUIT with proper cleanup
- Analysis Tools - 6 specialized tools: pattern_recognition, cryptographic, spectral, ascii_manipulation, constellation_mapping, temporal_sequencing
- Command Aliases - Short forms like S for SCAN, F for FOCUS, A for ANALYZE
๐ Quick Start
Prerequisites
- Python 3.8+
- Windows, macOS, or Linux
Installation & Running
-
Clone the repository:
git clone https://github.com/maverickkamal/signal-cartographer.git cd signal-cartographer
-
Set up virtual environment:
python -m venv .venv
-
Activate virtual environment:
- Windows:
.venv\Scripts\activate - macOS/Linux:
source .venv/bin/activate
- Windows:
-
Install dependencies:
pip install -r requirements.txt
-
Run the game:
python main.pyOr use the provided scripts:
- Windows:
.\start_game.ps1or.\run.bat - Unix:
./run.sh
- Windows:
๐ฏ How to Play
Getting Started
- Launch the game and enjoy the enhanced startup sequence with progress indicators
- Type commands in the purple-bordered command input box (with TAB completion!)
- Type
HELPor press Ctrl+H for the comprehensive gameplay guide - Start with
SCANto detect signals in the current sector - Use
FOCUS SIG_1to lock onto the first detected signal - Run
ANALYZEto reveal hidden information and earn Analysis Points
Essential Commands
SCAN/S- Scan current sector for signalsSCAN BETA-2- Scan specific sector (ALPHA-1 through EPSILON-5)FOCUS SIG_1/F SIG_1- Focus on a detected signalANALYZE/A- Analyze the currently focused signalANALYZE spectral- Use specific analysis toolUPGRADES- View and purchase equipment upgradesACHIEVEMENTS- View achievement progressSTATUS- Show comprehensive system statusSAVE/SAVE mysave- Save game progressLOAD/LOAD mysave- Load saved gamePERFORMANCE- View system performance statistics
Progressive Gameplay
- ALPHA-1 (๐ข Beginner): 3 basic signals, learn the fundamentals
- BETA-2 (๐ก Easy): 2 stronger signals, practice analysis skills
- GAMMA-3 (๐ Medium): Complex signals with deeper secrets
- DELTA-4 (๐ด Hard): Bio-Neural and Quantum-Echo signals
- EPSILON-5 (๐ฃ Expert): Singularity-Resonance - the ultimate challenge
Interface Panels (F1-F5)
- F1 - Spectrum Analyzer - Shows detected signals as frequency spikes
- F2 - Signal Focus & Data - Detailed information about focused signals
- F3 - Cartography & Navigation - Current sector and signal map
- F4 - Decoder & Analysis Toolkit - Analysis results and specialized tools
- F5 - Captain's Log & Database - Command history, achievements, and system messages
๐ Advanced Features
Equipment Upgrades
- Scanner Sensitivity (+1 signal detection range)
- Signal Amplifier (+20% signal strength reading)
- Frequency Filter (reduce noise, clearer signals)
- Deep Space Antenna (detect distant sectors)
Achievement System
- First Contact - Analyze your first signal
- Explorer - Discover all 5 sectors
- Signal Hunter - Find 10 different signals
- Master Analyst - Complete 50 analyses
- Deep Space Pioneer - Reach EPSILON-5
- Speed Scanner, Perfectionist, Code Breaker and more!
Signal Types by Complexity
- Pulsed-Echo (Beginner) - Basic radar-like signals
- Bio-Resonant (Easy) - Life-sign indicators
- Quantum-Drift (Easy) - Quantum interference patterns
- Phase-Locked (Medium) - Synchronized transmissions
- Null-State (Medium) - Inverted signal patterns
- Bio-Neural (Hard) - Neural collective consciousness patterns
- Quantum-Echo (Hard) - Dimensional interference signatures
- Omni-Band (Very Hard) - Multi-frequency spectrum signals
- Singularity-Resonance (Expert) - Gravitational singularity signals
๐ ๏ธ Technical Details
Built With
- Python 3.8+
- Textual - Modern Python TUI framework
- Rich - Terminal text formatting and styling
- JSON - Save system and data persistence
Architecture
- Modular Design - Separate UI, game logic, signal systems, and progression
- Enhanced Command Parser - Flexible parsing with autocompletion and error handling
- Performance Optimization - Memory management, caching, and monitoring
- Save System - Robust JSON-based persistence with error recovery
- Progression System - Comprehensive tracking of player advancement
๐ Project Structure
signal-cartographer/
โโโ src/
โ โโโ ui/ # User interface components
โ โ โโโ layout.py # Main interface layout
โ โ โโโ panes.py # Individual panel widgets
โ โ โโโ input_handler.py # Command input with autocompletion
โ โโโ utils/ # Utility functions
โ โ โโโ save_system.py # Save/load functionality
โ โโโ content/ # Game content and data
โ โโโ game_controller.py # Core game logic
โ โโโ command_parser.py # Enhanced command parsing
โ โโโ progression_system.py # Upgrades and achievements
โ โโโ enhanced_ux.py # UX improvements and autocompletion
โ โโโ performance_optimizations.py # Performance monitoring
โ โโโ aethertap_textual.py # Main TUI interface
โโโ data/ # Game data files
โโโ saves/ # Save game files
โโโ instruction/ # Documentation
โโโ main.py # Game entry point
โโโ requirements.txt # Python dependencies
โโโ GAME_GUIDE.md # Comprehensive gameplay guide
โโโ README.md # This file
๐ก Pro Tips
Efficiency & Strategy
- Use TAB completion for faster command entry
- Focus on progression - analyze signals to earn Analysis Points
- Upgrade strategically - Scanner Sensitivity first for more signals
- Save frequently with named saves for different playthroughs
- Monitor performance with the PERFORMANCE command
- Explore systematically - master each sector before advancing
Advanced Techniques
- Sector progression - Complete lower sectors before attempting DELTA-4 or EPSILON-5
- Achievement hunting - Use ACHIEVEMENTS command to track progress
- Equipment synergy - Combine upgrades for maximum effectiveness
- Pattern recognition - Look for relationships between signals in different sectors
๐ Troubleshooting
Common Issues
- Can't see signals? โ Run
SCANfirst to detect signals in current sector - FOCUS not working? โ Ensure signals exist after scanning; try
SCANagain - ANALYZE gives no results? โ Focus on a signal first using
FOCUS SIG_1 - Commands not working? โ Commands are case-insensitive; try TAB completion
- Performance issues? โ Use
PERFORMANCE CLEANUPto free memory
Save System
- Save failed? โ Check disk space and permissions; saves go to
saves/directory - Load failed? โ Verify filename exists; use
LOADwithout filename to see available saves - Corrupted save? โ Delete the corrupted file and use an earlier save or start new game
๐ Game Statistics
After completing development and testing:
- 5 Explorable Sectors with unique characteristics
- 9 Signal Types across difficulty spectrum
- 4 Equipment Upgrades for enhanced capabilities
- 10+ Achievements to unlock and master
- 6 Analysis Tools for specialized signal processing
- Complete Progression System with meaningful advancement
- Robust Save System supporting multiple playthroughs
- Performance Optimized for smooth long-term gameplay
๐ค Contributing
Contributions are welcome! Areas for contribution:
- Additional signal types or sectors
- New achievements or upgrade paths
- Performance improvements
- Cross-platform testing
- Documentation improvements
Please feel free to submit issues, feature requests, or pull requests.
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
- Built with the amazing Textual framework
- Inspired by classic sci-fi and signal analysis themes
- Thanks to the Python community for excellent tooling
- Special thanks to contributors and testers
๐ Ready to explore the void? Launch the game and start your signal cartography journey!
The signals are waiting... what secrets will you discover in the depths of space?
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file signal_cartographer-1.0.1.tar.gz.
File metadata
- Download URL: signal_cartographer-1.0.1.tar.gz
- Upload date:
- Size: 227.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
869e8bd68212e6c8be2a41073275e0874f131e88e02becd6339875988905e9dd
|
|
| MD5 |
45deca709f82cb7ec2ecc04adfac7615
|
|
| BLAKE2b-256 |
84099bb33f738600e13e0f8ce4321534ba3196b170e853d3adc8e945dad8ad69
|
File details
Details for the file signal_cartographer-1.0.1-py3-none-any.whl.
File metadata
- Download URL: signal_cartographer-1.0.1-py3-none-any.whl
- Upload date:
- Size: 249.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df2e4824c11977ff90b07b0d5423a3b27aa1a51c281030594e0ae087abd23a30
|
|
| MD5 |
ef373fa27e1363d3f9463e42f93904f5
|
|
| BLAKE2b-256 |
2c07b60ac1e2cb927f822c4ff28e9420b2a73b554ac32f36930734e4eac25adc
|