Skip to main content

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

  1. Clone the repository:

    git clone https://github.com/yourusername/signal-cartographer.git
    cd signal-cartographer
    
  2. Set up virtual environment:

    python -m venv .venv
    
  3. Activate virtual environment:

    • Windows: .venv\Scripts\activate
    • macOS/Linux: source .venv/bin/activate
  4. Install dependencies:

    pip install -r requirements.txt
    
  5. Run the game:

    python main.py
    

    Or use the provided scripts:

    • Windows: .\start_game.ps1 or .\run.bat
    • Unix: ./run.sh

๐ŸŽฏ How to Play

Getting Started

  1. Launch the game and enjoy the enhanced startup sequence with progress indicators
  2. Type commands in the purple-bordered command input box (with TAB completion!)
  3. Type HELP or press Ctrl+H for the comprehensive gameplay guide
  4. Start with SCAN to detect signals in the current sector
  5. Use FOCUS SIG_1 to lock onto the first detected signal
  6. Run ANALYZE to reveal hidden information and earn Analysis Points

Essential Commands

  • SCAN / S - Scan current sector for signals
  • SCAN BETA-2 - Scan specific sector (ALPHA-1 through EPSILON-5)
  • FOCUS SIG_1 / F SIG_1 - Focus on a detected signal
  • ANALYZE / A - Analyze the currently focused signal
  • ANALYZE spectral - Use specific analysis tool
  • UPGRADES - View and purchase equipment upgrades
  • ACHIEVEMENTS - View achievement progress
  • STATUS - Show comprehensive system status
  • SAVE / SAVE mysave - Save game progress
  • LOAD / LOAD mysave - Load saved game
  • PERFORMANCE - 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

  1. Pulsed-Echo (Beginner) - Basic radar-like signals
  2. Bio-Resonant (Easy) - Life-sign indicators
  3. Quantum-Drift (Easy) - Quantum interference patterns
  4. Phase-Locked (Medium) - Synchronized transmissions
  5. Null-State (Medium) - Inverted signal patterns
  6. Bio-Neural (Hard) - Neural collective consciousness patterns
  7. Quantum-Echo (Hard) - Dimensional interference signatures
  8. Omni-Band (Very Hard) - Multi-frequency spectrum signals
  9. 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 SCAN first to detect signals in current sector
  • FOCUS not working? โ†’ Ensure signals exist after scanning; try SCAN again
  • 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 CLEANUP to free memory

Save System

  • Save failed? โ†’ Check disk space and permissions; saves go to saves/ directory
  • Load failed? โ†’ Verify filename exists; use LOAD without 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

signal_cartographer-1.0.0.tar.gz (227.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

signal_cartographer-1.0.0-py3-none-any.whl (249.7 kB view details)

Uploaded Python 3

File details

Details for the file signal_cartographer-1.0.0.tar.gz.

File metadata

  • Download URL: signal_cartographer-1.0.0.tar.gz
  • Upload date:
  • Size: 227.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for signal_cartographer-1.0.0.tar.gz
Algorithm Hash digest
SHA256 022d16a342cd185428eefa55904647665f517f9e403385a0852d6128753d18af
MD5 528f30219d4b8d9efe386d0b55339210
BLAKE2b-256 8ad3ecfc8ddfd7c62618ec33a646f27f5302393820e022dd8267ac3025a0ca10

See more details on using hashes here.

File details

Details for the file signal_cartographer-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for signal_cartographer-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ce1f4d89f505b7462c2ca19721895535ce0ddfd8a192001f5d9e06dcc3b07376
MD5 bea10661ff3040fa735cabc665a04680
BLAKE2b-256 ed9f866865a8a3d5e7807d89fe13f5da15d3f72a4f406c046f8aa85e46664836

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page