How dylan-joyn/krypt-o-key works
Krypt-o-Key is a Java typing-based fantasy RPG with both a Swing game and a separate console battle entry point. The GUI workflow begins at the title screen, moves through narrated character setup into the game menu, then handles typing challenges, damage, and battle outcomes. Player progression and monster behavior are modeled separately from the interface. The README provides no capability details; the map follows the shown source and module references, so some unsampled implementation relationships are omitted.
Main entry points: BattlePanel.java Battle Interface · BattleLogic.java Console Battle Logic · Player.java Player Progression · GameGUI.java Game Menu
Components 17
Startup and Story
- Application Entry
src/src/Main.java - Font Loader
src/src/FontLoader.java - Title Sequence
src/src/TitleSequence.java - Narration Setup
src/src/NarrationScene.java
Game Interface
- Game Menu
src/src/GameGUI.java - Battle Interface
src/src/BattlePanel.java - Monster Images
src/src/MonsterImageLoader.java - Game Assets
src/resources/assets - Transition Effects
src/src/TransitionEffects.java
Battle and Typing
- Console Game Entry
src/src/TypingRPG.java - Console Battle Logic
src/src/BattleLogic.java - Typing Challenges
src/src/TimedTyping.java - Damage Calculation
src/src/DamagePerCharacter.java
Game Domain
- Player Progression
src/src/Player.java - Monster Model
src/src/Monster.java - Game Utilities
src/src/UtilFunc.java
Other components
- Player
Connections 24
- Player → Title Sequence: opens game
src/src/TitleSequence.java - Application Entry → Font Loader: loads fonts
src/src/Main.java - Application Entry → Title Sequence: shows welcome
src/src/Main.java - Title Sequence → Narration Setup: opens narration
src/src/TitleSequence.java - Narration Setup → Game Menu: starts game
src/src/NarrationScene.java - Narration Setup → Player Progression: creates player
src/src/NarrationScene.java - Game Menu → Battle Interface: shows battle
src/src/GameGUI.java - Game Menu → Monster Model: creates monster
src/src/GameGUI.java - Game Menu → Player Progression: uses player state
src/src/GameGUI.java - Battle Interface → Typing Challenges: handles typing
src/src/BattlePanel.java - Battle Interface → Damage Calculation: calculates damage
src/src/BattlePanel.java - Battle Interface → Monster Model: updates monster
src/src/BattlePanel.java - Battle Interface → Player Progression: updates player
src/src/BattlePanel.java - Battle Interface → Monster Images: loads imagery
src/src/BattlePanel.java - Battle Interface → Game Utilities: uses utilities
src/src/BattlePanel.java - Console Game Entry → Player Progression: uses player
src/src/TypingRPG.java - Console Game Entry → Console Battle Logic: starts battles
src/src/TypingRPG.java - Console Battle Logic → Typing Challenges: runs challenges
src/src/BattleLogic.java - Console Battle Logic → Damage Calculation: calculates damage
src/src/BattleLogic.java - Console Battle Logic → Monster Model: battles monster
src/src/BattleLogic.java - Console Battle Logic → Player Progression: updates player
src/src/BattleLogic.java - Typing Challenges → Game Utilities: computes distance
src/src/TimedTyping.java - Damage Calculation → Typing Challenges: reads typing result
src/src/DamagePerCharacter.java - Monster Images → Monster Model: reads monster
src/src/MonsterImageLoader.java