todo - zwaper/terminal-clicker GitHub Wiki

TERMINAL TYCOON

Development Roadmap for Godot 4 Implementation

Last Updated: 2025-05-03


OVERVIEW

This roadmap outlines the development process for Terminal Tycoon in Godot 4, breaking the project into distinct phases with clear milestones, tasks, and deliverables.


PHASE 1: FOUNDATION (2-3 weeks)

Goal: Create the core terminal UI and basic resource mechanics

Milestone 1: Terminal Interface Prototype

  • Set up Godot 4 project with appropriate structure
  • Create a basic terminal UI using RichTextLabel and LineEdit
  • Implement command parsing system
  • Create command history navigation (up/down arrows)
  • Implement basic terminal styling (colors, font)
  • Create text animation for terminal-like output

Milestone 2: Core Resource System

  • Implement basic resource types (cycles, bandwidth, storage)
  • Create resource generation logic
  • Implement resource display in terminal header
  • Add basic manual resource generation commands
  • Create saving/loading system using JSON
  • Implement offline progression calculation

Milestone 3: Basic Automation

  • Create upgrade system for resource generators
  • Implement automation mechanics
  • Add basic idle progression
  • Create resource cost scaling formulas
  • Implement progress bars for ongoing processes

Technical Tasks

  • Create custom terminal text renderer in Godot
  • Set up signal system for command processing
  • Create resource manager singleton
  • Set up configuration system
  • Implement autosave functionality

PHASE 2: EXPANSION (3-4 weeks)

Goal: Add progression systems and basic gameplay loop

Milestone 1: Research & Technology Tree

  • Implement research points system
  • Create basic technology tree structure
  • Add research commands and interface
  • Implement technology unlocking mechanics
  • Create tech tree visualization command

Milestone 2: Basic Skill Tree

  • Design initial skill tree structure
  • Implement skill point acquisition
  • Create skill node system with prerequisites
  • Add skill tree visualization command
  • Implement effects of basic skills

Milestone 3: Network Infrastructure

  • Create network node system
  • Implement basic network visualization
  • Add network expansion mechanics
  • Create network efficiency calculations
  • Add network-related commands

Technical Tasks

  • Design data structure for tech tree
  • Create skill tree data model
  • Set up network graph visualization system
  • Optimize resource calculations for idle time
  • Implement notification system for completed research/upgrades

PHASE 3: SYSTEMS INTEGRATION (4-5 weeks)

Goal: Implement core gameplay systems and start creating content

Milestone 1: Terminal Varieties

  • Implement terminal switching mechanism
  • Create basic terminal (term-0)
  • Add CryptoCore terminal (crypt-0)
  • Develop NetSec terminal (sec-0)
  • Implement terminal-specific commands
  • Add terminal-specific UI elements

Milestone 2: Card System Basics

  • Create card data structure
  • Implement card collection system
  • Add card drop mechanics
  • Create card management interface
  • Implement basic card effects
  • Add card slot system

Milestone 3: Events & Challenges

  • Create event triggering system
  • Implement basic security events
  • Add opportunity events
  • Create challenge system
  • Implement daily/weekly challenges
  • Add reward distribution system

Technical Tasks

  • Design modular terminal UI framework
  • Create card effect processor
  • Set up event queue and manager
  • Implement timed events system
  • Add notification system for events
  • Create challenge tracking system

PHASE 4: PROGRESSION DEPTH (4-5 weeks)

Goal: Add depth through migration systems and advanced gameplay

Milestone 1: Migration System

  • Implement Cloud Migration (first prestige)
  • Create migration rewards system
  • Add permanent bonuses
  • Implement reset mechanics
  • Create migration preparation phase
  • Add post-migration bonuses

Milestone 2: Advanced Card System

  • Add card rarity system
  • Implement card fusion mechanics
  • Create card synergies
  • Add terminal-specific cards
  • Implement card events
  • Add special effect cards

Milestone 3: Advanced Terminal Features

  • Implement DataLab terminal
  • Add NetForge terminal
  • Create terminal upgrade paths
  • Implement terminal customization
  • Add terminal synergies
  • Create terminal-specific achievements

Technical Tasks

  • Design migration data persistence system
  • Create card effect combination processor
  • Implement advanced terminal rendering
  • Optimize performance for late-game
  • Add analytics for balancing

PHASE 5: POLISH & COMPLETION (3-4 weeks)

Goal: Balance, polish, and prepare for release

Milestone 1: Content Completion

  • Complete all planned terminal types
  • Finish card collection
  • Complete all migration paths
  • Finalize skill tree
  • Complete achievement system
  • Add endgame content

Milestone 2: Balancing & Testing

  • Balance resource generation rates
  • Adjust upgrade costs
  • Test progression pacing
  • Balance card effects
  • Test migration rewards
  • Verify idle progression

Milestone 3: Polish & Optimization

  • Add polished ASCII art
  • Implement sound effects
  • Optimize performance
  • Add quality-of-life features
  • Create help documentation
  • Fix bugs and edge cases

Technical Tasks

  • Perform optimization pass
  • Clean up code and add comments
  • Create export configurations
  • Set up error logging
  • Create user documentation
  • Test across platforms

APPENDIX: GODOT 4 IMPLEMENTATION SPECIFICS

Terminal UI in Godot

  1. Core Implementation:

    • Use Control nodes as the base for the terminal UI
    • RichTextLabel for terminal output (supports BBCode for formatting)
    • LineEdit for command input
    • Create a custom resource for terminal themes
  2. Text Rendering:

    • Consider a custom shader for terminal text effects
    • Use a monospace font like "Cascadia Code" or "JetBrains Mono"
    • Implement cursor blinking with a Timer node
  3. Command System:

    • Create a CommandParser singleton
    • Use signal system for command execution
    • Implement command registry for modular commands

Resource System

  1. Data Management:

    • Use Resources for data definitions
    • Create custom Resource types for upgrades, tech, cards
    • Implement a ResourceManager singleton
  2. Saving/Loading:

    • Use Godot's File class for save data
    • Implement JSON serialization
    • Store save data in user://saves/

Performance Optimization

  1. Idle Processing:

    • Use delta time to calculate resource generation
    • Implement time jump calculations for offline progress
    • Consider using background threads for heavy calculations
  2. Memory Management:

    • Pool commonly used objects
    • Use object instances sparingly
    • Unload unused textures/resources

UI/UX Considerations

  1. Terminal Animations:

    • Implement typing effect
    • Create fade in/out for new lines
    • Add visual feedback for commands
  2. Audio Integration:

    • Use positional audio for terminal feedback
    • Implement simple keyboard click sounds
    • Add ambient background effects

TODO LIST (Kanban Format)

Backlog

  • Set up project structure
  • Design terminal UI layout
  • Research terminal fonts
  • Create ASCII art style guide
  • Design resource scaling formulas

To Do (Next Sprint)

  • Create basic terminal UI
  • Implement command parser
  • Set up resource system
  • Create saving/loading mechanism

In Progress

  • Project setup in Godot 4
  • Terminal UI design mockups

Testing

(Empty at start)

Completed

(Empty at start)


RESOURCES

Godot 4 Specific

Terminal UI References

⚠️ **GitHub.com Fallback** ⚠️