How skillissuedd/alphabattleters works
Purpose and Runtime
This is a packaged Godot game project (ALPHABATTLETTERS.console.exe, ALPHABATTLETTERS.pck) centered on letter-tile/deck placement, board combat, enemies, and run progression. It runs locally through the Godot engine using GDScript, .tscn scene graphs, .tres resources, shaders, imported media, and desktop export settings (project.godot, export_presets.cfg). No backend, network service, or cloud dependency is evident.
Application Entry and Scene Flow
The configured Godot entry scene is defined in project.godot (its contents are not supplied). The visible scene hierarchy supports a menu-to-run lifecycle:
• Menu, language, options, tutorial, loading, and game-over views: Entities/Scenes/general/mainMenu/mainMenu.tscn, Entities/Scenes/general/loadingScreen/loadingScreen.tscn, Entities/Scenes/general/gameover/gameover.tscn.
• Gameplay is hosted by the run scene: Entities/Scenes/Rooms/runScene/runScene.tscn, controlled by Entities/Scenes/Rooms/runScene/runScene.gd.
• Scene transitions are centralized rather than implemented solely by individual screens: Entities/managers/SceneManager/SceneManager.gd.
Global State and Cross-Cutting Services
Godot global/autoload-style scripts appear to hold shared runtime state and event coordination:
• Core globals/signals: Entities/Globals/Global.gd, Entities/Globals/global_signals.gd.
• Player/meta state and options: Entities/Globals/GlobalStats.gd, Entities/Globals/GlobalOptions.gd.
• Audio and upgrade catalog services: Entities/Globals/GlobalAudio.gd, Entities/Globals/UpgradeDatabase.gd.
These form an important boundary: scenes and gameplay objects should coordinate through managers/globals and signals rather than directly owning persistent profile, settings, or shared audio state.
Run, Board, Hand, and Deck Loop
A run manager likely owns progression and encounter-level state, while board, hand, and deck managers own the tactical turn state:
• Run orchestration: Entities/managers/RunManager/run_manager.gd.
• Board placement/occupancy: Entities/managers/Board/board_manager.gd, Entities/managers/Board/boardManager.tscn.
• Draw/hand interactions: Entities/managers/Hand/hand_manager.gd, Entities/managers/Hand/hand_wheel.gd.
• Deck construction/draw source and randomness: Entities/managers/Decks/deck.gd, Entities/managers/RNG/RNG.gd.
The primary flow is inferred as deck/RNG → hand → player placement on board → combat resolution → run outcome/reward/progression.
Letter Entities and Interaction Components
Letters are composable scene entities rather than plain data records:
• Base letter and display logic: Entities/Letters/LetterBase/letter_base.tscn, Entities/Letters/LetterBase/letter_base.gd, Entities/Letters/LetterBase/letter_label.gd.
• Letter state/stat representation: Entities/Letters/LetterStats/letter_stats.gd, Entities/Letters/Components/Properties/propertiesData.gd.
• Player manipulation is separated into drag, rotation, scaling, status, and visual-shadow components: Entities/Letters/Components/Drag/drag_component.gd, Entities/Letters/Components/Rotation/rotation_component.gd, Entities/Letters/Components/Status/status_component.gd.
This component boundary isolates input/presentation behavior from letter identity and combat-relevant properties.
Combat Resolution and Entities
Combat has a distinct simulation-versus-presentation split:
• Rules/state calculation: Entities/managers/BattleManagers/Simulator/battle_SIMULATOR.gd.
• Animation/visual sequencing: Entities/managers/BattleManagers/Animator/battle_ANIMATOR.gd.
• Shared entity base and enemy definitions: Entities/EntityBase/entity_base.gd, Entities/Enemies/Database/enemy_info.gd.
Health-bar scenes provide the display boundary for entity health: Entities/healthBars/health_bar.gd, Entities/healthBars/EnemyHealthBar/enemy_health_bar.gd.
Upgrades, UI, and Persistence
Upgrade slots encode tiered tactical modifiers, while popups/UI expose selection and information:
• General upgrades: Entities/GeneralUpgrades/General_upgrade.gd, Entities/Globals/Letter_upgrading.gd.
• Tiered/special slot implementations: Entities/Slots/Upgrade/slot_upgrade.gd, Entities/Slots/Upgrade/Tier1/Dart/slot_upgrade_dart.gd, Entities/Slots/Upgrade/Tier3/Rebirth/slot_upgrade_rebirth.gd.
• Upgrade/deck/action dialogs: Entities/UIPopups/UpgradePanel/UpgradePanel.gd, Entities/UIPopups/DeckSelector/deck_selector.gd, Entities/UIPopups/ActionForm/action_form.gd.
• Local persistence is handled by Entities/managers/saveload/SaveManager.gd with profile/settings resource models under Entities/managers/saveload/ProfileStats/ and Entities/managers/saveload/Settings/.
Main entry points: SceneManager.gd Scene Manager · run_manager.gd Run Manager · battle_SIMULATOR.gd Battle Simulator · Global.gd Global State & Signals
Components 19
Godot Runtime
- Project Entry · Configures the startup scene and desktop export.
project.godot - Scene Manager
Entities/managers/SceneManager/SceneManager.gd - Menu & Outcome Screens · Menu, loading, and game-over views.
Entities/Scenes/general/mainMenu/mainMenu.tscn
Global Services
Shared autoload state and coordination.
- Global State & Signals · Shared state and event coordination.
Entities/Globals/Global.gd - Profile & Options
Entities/Globals/GlobalStats.gd - Audio & Upgrade Catalog
Entities/Globals/GlobalAudio.gd
Run Gameplay
- Run Scene · Hosts active gameplay.
Entities/Scenes/Rooms/runScene/runScene.gd - Run Manager · Owns progression and encounter state.
Entities/managers/RunManager/run_manager.gd - Deck & RNG
Entities/managers/Decks/deck.gd - Hand Manager
Entities/managers/Hand/hand_manager.gd - Board Manager · Owns tile occupancy and placement.
Entities/managers/Board/board_manager.gd - Letter Entity · Letter identity, display, and combat properties.
Entities/Letters/LetterBase/letter_base.tscn - Letter Interaction Components · Drag, rotation, status, and related behavior.
Entities/Letters/Components/Drag/drag_component.gd
Combat
- Battle Simulator · Calculates combat state and outcomes.
Entities/managers/BattleManagers/Simulator/battle_SIMULATOR.gd - Battle Animator · Sequences combat visuals.
Entities/managers/BattleManagers/Animator/battle_ANIMATOR.gd - Entity & Enemy Definitions
Entities/Enemies/Database/enemy_info.gd - Health Bars
Entities/healthBars/health_bar.gd
Meta, UI & Save
- Upgrades & Selection UI · Upgrade slots and deck/action dialogs.
Entities/UIPopups/UpgradePanel/UpgradePanel.gd - Save Manager · Persists local profile and settings.
Entities/managers/saveload/SaveManager.gd
Connections 22
- Project Entry → Scene Manager: starts scene flow
- Scene Manager → Menu & Outcome Screens: shows
- Scene Manager → Run Scene: loads
- Menu & Outcome Screens → Scene Manager: navigation requests
- Global State & Signals → Run Scene: shared signals/state
- Profile & Options → Global State & Signals: provides persistent state
- Audio & Upgrade Catalog → Global State & Signals: global services
- Run Scene → Run Manager: hosts
- Run Manager → Deck & RNG: builds and draws
- Deck & RNG → Hand Manager: dealt letters
- Hand Manager → Board Manager: places tiles
- Letter Interaction Components → Letter Entity: controls
- Letter Entity → Board Manager: occupies
- Board Manager → Battle Simulator: board state
- Entity & Enemy Definitions → Battle Simulator: enemy data
- Battle Simulator → Battle Animator: resolved actions
- Battle Animator → Health Bars: updates presentation
- Battle Simulator → Run Manager: encounter outcome
- Run Manager → Upgrades & Selection UI: reward choices
- Audio & Upgrade Catalog → Upgrades & Selection UI: upgrade catalog
- Upgrades & Selection UI → Deck & RNG: modifies deck
- Save Manager → Profile & Options: loads and saves