diff --git a/Gooner-Training-Academy-v0.5-Beta.zip b/Gooner-Training-Academy-v0.5-Beta.zip new file mode 100644 index 0000000..c5e9ea8 Binary files /dev/null and b/Gooner-Training-Academy-v0.5-Beta.zip differ diff --git a/Gooner-Training-Academy-v4.1-Beta.zip b/Gooner-Training-Academy-v4.1-Beta.zip index eca3617..24dbeb1 100644 Binary files a/Gooner-Training-Academy-v4.1-Beta.zip and b/Gooner-Training-Academy-v4.1-Beta.zip differ diff --git a/README.md b/README.md index 34ab328..f37f984 100644 --- a/README.md +++ b/README.md @@ -1,438 +1,325 @@ # ๐ŸŽฎ Gooner Training Academy - - *Master Your Dedication Through Advanced Training Systems* +A comprehensive adult edging training application featuring **Campaign Mode** (30-level story progression), **Training Modules** (8 focused sessions), **Quick Play** (customizable sessions), and **Porn Cinema** (professional video player), with an advanced XP progression system and professional media library management. +--- -A comprehensive adult edging training application featuring three specialized game modes, an advanced XP progression system, and professional media library management. +## ๐Ÿš€ Quick Start +### Desktop Application (Recommended) +```bash +npm install +npm start +``` + +### Web Browser +1. Open `index.html` in a modern browser +2. Choose your game mode and begin +3. Upload custom content via Library Management +4. Configure settings in Options menu + +--- + +## ๐ŸŽฎ Game Modes + +### ๐ŸŽ“ Campaign Mode (30 Levels) +**Structured story-driven progression across 6 narrative arcs** + +Experience a complete training journey from beginner to master through 30 carefully designed levels. Each arc tells a story while progressively introducing new skills and challenges. + +**Six Story Arcs:** +- ๐Ÿ“š **Foundation (Levels 1-5)**: Edge training, rhythm, visual immersion, multi-tasking +- ๐ŸŒŠ **Immersion (Levels 6-10)**: Extended sessions, webcam activation, library building +- ๐ŸŽฏ **Advanced Training (Levels 11-15)**: Hypno spirals, TTS commands, sensory overload +- ๐Ÿ”ฅ **Intensity (Levels 16-20)**: Multi-screen porn, chaos mode, extreme endurance +- ๐Ÿง  **Mind Control (Levels 21-25)**: Deep conditioning, advanced hypnosis, total immersion +- ๐Ÿ‘‘ **Mastery (Levels 26-30)**: Ultimate challenges, final tests, graduation + +**Features:** +- Progressive difficulty with skill building +- Story-driven instructor dialogue +- Library integration (add directories, tag files) +- Rhythm training with custom tempo sequences +- Webcam positioning and photo sessions +- Hypnotic visual effects and TTS narration +- Multi-video chaos modes +- Level-specific achievements and progression tracking + +**XP Rewards:** +- โฑ๏ธ Time Training: **1 XP per 2 minutes** +- ๐Ÿ“น Webcam Activity: **1 XP per minute** +- ๐Ÿ“ธ Photo Session: **2 XP per photo** +- ๐ŸŽฏ Level Completion Bonuses + +--- + +### ๐Ÿ‹๏ธ Training Modules (8 Focused Sessions) +**Specialized 20-30 minute training experiences with rank-based unlocks** + +Each training module offers a focused, repeatable session designed to develop specific skills. Unlock new modules by increasing your rank through XP progression. + +**Available Modules:** +- ๐Ÿ“ธ **Photo Session** (Tier 1 - Rank 1): Webcam-based photography with posing instructions +- ๐Ÿ˜ˆ **Humiliation** (Tier 4 - Rank 10): Intense punishment and humiliation challenges + +**Coming Soon Modules:** +- ๐Ÿ”„ **Goon Loop** (Tier 1 - Rank 1): Endless edging cycles +- ๐ŸŽต **Rhythm Training** (Tier 2 - Rank 3): Advanced rhythm patterns +- ๐Ÿ™‡ **Worship Session** (Tier 2 - Rank 5): Dedicated worship training +- ๐ŸŽฏ **JOI Session** (Tier 3 - Rank 7): Guided instruction sessions +- ๐Ÿ–ฅ๏ธ **Multi-Screen** (Tier 3 - Rank 8): Multiple video streams +- ๐ŸŽญ **Tease & Denial** (Tier 4 - Rank 12): Advanced edging challenges + +**Features:** +- Rank-based progression system +- Repeatable focused experiences +- Specialized training for specific skills +- Quick 20-30 minute sessions +- Individual module statistics tracking --- - - -## ๐Ÿš€ Quick Start - - - -### Desktop Application (Recommended) - -```bash - -npm install - -npm start - -``` - - - -## ๐Ÿ† Three Core Game Modes - -## ๐ŸŽฎ Game Modes - -### ๐ŸŽฌ Training Academy - -**Immersive scenario-based training with progressive storylines** - - - -The Training Academy offers structured training programs through branching narrative scenarios. Experience guided sessions with multiple specialized training modes: - - - -- **Photography Studio**: Webcam-based photography sessions with posing instructions - -- **Training Academy**: Core scenario-driven training with adaptive content### Web Browser - -- **Punishment Gauntlet**: Intense punishment and humiliation challenges - -- **Endurance Trials**: Progressive endurance training from beginner to expert levels - - - -**XP Rewards:** - -- ๐Ÿ“ธ Photo Session Completion: **2 XP per photo** - -- โฑ๏ธ Time-Based Training: **1 XP per 2 minutes** - -- ๐ŸŽฏ Scenario Completion Bonuses - -- ๐Ÿ“น Webcam Activities: **1 XP per minute** - - - ### โšก Quick Play - **Fast-start training with customizable sessions** +Jump straight into action with fully customizable training sessions. Perfect for when you want immediate engagement without story progression. **Session Setup:** - - โฐ Flexible Duration: 15 minutes to Endless hours - - ๐ŸŽฌ Background Video Integration: 40+ videos available - - ๐ŸŽ›๏ธ Individual Task Controls: Enable/disable specific tasks - - ๐ŸŽฏ Custom Task Creation: Add personalized challenges - **XP Rewards:** - - โœ… Task Completion: **1-3 XP** (based on task duration) - - ๐ŸŽฏ Session Bonuses: **2 XP every 15 minutes** - - ๐Ÿ“น Recording Bonus: **+1 XP** when webcam recording enabled - - **Features:** - - Real-time task filtering with persistent settings - - Background video with floating opacity controls - - Session cleanup and statistics tracking - - Webcam integration for photo capture - - Punishment system with consequence images +--- ### ๐ŸŽญ Porn Cinema - **Professional video viewing experience** - Dedicated video player system designed for focused media consumption with comprehensive viewing analytics. +**Features:** - ๐ŸŽฌ Professional Video Interface: Full-screen theater mode - - ๐Ÿ“‹ Playlist Management: Organize viewing sessions - - - - ๐Ÿ“Š Progress Tracking: Resume exactly where you left off - - - ๐ŸŽ›๏ธ Advanced Controls: Speed, volume, seeking, and more - -**XP Rewards:** - -- โฑ๏ธ Viewing Time: **1 XP per 5 minutes** of active viewing - -- โœ… Video Completion: **Bonus XP** for 90%+ completion - -- ๐Ÿ“Š Binge Sessions: **Additional rewards** for extended viewing- Multiple training modes with unique content- - - Seamless integration with linked video directories - -- Watch time and completion analytics- Progressive difficulty scaling - +- Watch time and completion analytics - Favorite video tracking - - Theater mode for distraction-free viewing - - Multi-format video support -- Real-time XP tracking with status display +**XP Rewards:** +- โฑ๏ธ Viewing Time: **1 XP per 5 minutes** of active viewing +- โœ… Video Completion: **Bonus XP** for 90%+ completion +- ๐Ÿ“Š Binge Sessions: **Additional rewards** for extended viewing + +--- ### ๐Ÿ“ˆ Experience Points (XP) Overview -The XP system tracks your dedication and progress across all training modes, providing a unified progression metric. - +The XP system tracks your dedication and progress across all training modes, providing a unified progression metric that unlocks new Training Modules and tracks your overall dedication level. ### ๐ŸŽฏ XP Sources by Mode | Mode | Activity | XP Reward | Notes | |------|----------|-----------|-------| -| **Training Academy** | Time Training | 1 XP / 2 minutes | Passive time-based reward | +| **Campaign Mode** | Time Training | 1 XP / 2 minutes | Passive time-based reward | | | Webcam Activity | 1 XP / minute | Active engagement bonus | | | Photo Session | 2 XP / photo | Achievement-based reward | -| **Quick Play** | Task Completion | 1-3 XP | Speed-based scaling | +| | Level Completion | Bonus XP | Story progression rewards | +| **Training Modules** | Module Completion | Variable | Based on module difficulty | +| | Time Investment | 1 XP / 2 minutes | Consistent dedication | +| | Special Tasks | Bonus XP | Module-specific achievements | +| **Quick Play** | Task Completion | 1-3 XP | Duration-based scaling | | | Session Bonus | 2 XP / 15 min | Consistency reward | | | Recording Bonus | +1 XP | Additional engagement | | **Porn Cinema** | Video Viewing | 1 XP / 5 minutes | Engagement tracking | | | Video Completion | Bonus XP | 90%+ completion required | -### ๐Ÿ“Š Progression Levels +### ๐Ÿ“Š Progression & Ranks -- **๐ŸŒฑ Beginner (0-100 XP)**: Learning the basics - -- **๐Ÿ“ˆ Intermediate (100-500 XP)**: Building consistency - -- **๐ŸŽฏ Advanced (500-1500 XP)**: Mastering techniques - -- **๐Ÿ† Expert (1500+ XP)**: Peak dedication +**XP Levels:** +- ๐ŸŒฑ **Beginner (0-100 XP)**: Learning the basics +- ๐Ÿ“ˆ **Intermediate (100-500 XP)**: Building consistency +- ๐ŸŽฏ **Advanced (500-1500 XP)**: Mastering techniques +- ๐Ÿ† **Expert (1500+ XP)**: Peak dedication +**Rank System** (Training Modules): +- Higher XP unlocks higher-tier Training Modules +- Ranks 1-3: Tier 1 modules (beginner) +- Ranks 3-5: Tier 2 modules (intermediate) +- Ranks 7-8: Tier 3 modules (advanced) +- Ranks 10-12: Tier 4 modules (expert) ### ๐Ÿ” XP Tracking - -- **Real-time Display**: Live XP counter in all game modes- Real-time XP tracking with status display - +- **Real-time Display**: Live XP counter in all game modes - **Session Summaries**: XP earned per session with breakdowns - - **Statistics Dashboard**: Comprehensive XP analytics - - **Progress Visualization**: Charts and progression metrics - -## ๐Ÿ“š Library System Explained +--- +## ๐Ÿ“š Library System ### ๐ŸŽฌ Video Library Management - The Library system provides centralized management for all your media content across game modes. - - -### ๐Ÿ“ Library Organization - -- **Video Directories**- Real-time task filtering with persistent settings - +**Video Directories:** - **Automatic Discovery**: Scans linked directories for video files - - **Format Support**: MP4, WebM, MOV, AVI, and more - - **Smart Indexing**: Automatic categorization and metadata +- **Cross-Mode Access**: Available in all game modes -- **Cross-Mode Access**: Available in all game modes- Session cleanup and statistics tracking - -- **Photo Collections**: Webcam integration for photo capture Content Management - +**Photo Collections:** - **Upload System**: High-quality image upload (1600x1200 resolution) - - **Gallery Management**: Pinterest-style layout with aspect ratio optimization - - - - -#### **Advanced Management** - -- **Bulk Operations**: Select, enable/disable, delete multiple files - -- **Dynamic Themes**: Library theme adapts to your uploaded content - - **Smart Compression**: Optimized storage without quality loss -- **Video Integration**: Link external video directories for seamless playback - +**Advanced Management:** +- **Bulk Operations**: Select, enable/disable, delete multiple files +- **Dynamic Themes**: Library theme adapts to your uploaded content +- **Tagging System**: Organize content with custom tags - **Usage Analytics**: Track which content is most accessed - -#### **Integration Across Modes** - -- **Quick Play**: - - Background video selection and task images - - ๐Ÿ“‹ Playlist Management: Organize viewing sessions - - ๐ŸŽฌ Background Video Integration: 40+ videos available - - **High-Quality Processing**: 1600x1200 resolution with smart compression - -- **Training Academy**: Scenario content and photo sessions - -- **Porn Cinema**: Full video library access with playlists- ๐Ÿ“Š Progress Tracking: Resume exactly where you left off - +**Integration Across Modes:** +- **Campaign Mode**: Scenario content, video playback, photo sessions +- **Training Modules**: Module-specific media selection +- **Quick Play**: Background video selection and task images +- **Porn Cinema**: Full video library access with playlists - **Punishment System**: Consequence image selection -- ๐Ÿ”„ Multi-Screen Mode: 4-video grid for intensive sessions- ๐ŸŽ›๏ธ Individual Task Controls: Enable/disable specific tasks - - ### ๐Ÿ“Š Library Analytics +- ๐Ÿ“ˆ **Content Usage**: Most viewed/used media tracking +- ๐Ÿ’พ **Storage Monitoring**: Space usage and optimization suggestions +- ๐Ÿ”„ **Sync Status**: Real-time directory scanning results +- ๐Ÿ“‹ **Content Health**: Missing files and broken links detection -- **๐Ÿ“ˆ Content Usage**: Most viewed/used media tracking- ๐ŸŽ›๏ธ Advanced Controls: Speed, volume, seeking, and more - -- **๐Ÿ’พ Storage Monitoring**: Space usage and optimization suggestions - -- **๐Ÿ”„ Sync Status**: Real-time directory scanning results - -- **๐Ÿ“‹ Content Health**: Missing files and broken links detection - - +--- ### ๐Ÿ”’ Data Protection - - **Automatic Backups**: Every 30 minutes during active sessions - - **Manual Backup/Restore**: Full control over your data - - **Export/Import**: Portable data management - - **Emergency Backups**: Before any reset operations -**Features:**- โœ… Task Completion: **1-3 XP** (based on completion speed) - ### ๐ŸŽจ Customization - -- **6 Visual Themes**: Including dynamic Library theme- Seamless integration with linked video directories - +- **6 Visual Themes**: Including dynamic Library theme - **Task Disable Toggles**: Individual control in Quick Play - -- **Adaptive Difficulty**: Progressive timer scaling- Watch time and completion analytics- ๐ŸŽฏ Session Bonuses: **2 XP every 15 minutes**### Desktop App (Recommended) - +- **Adaptive Difficulty**: Progressive timer scaling - **Personal Content**: Upload and organize your media -- Favorite video tracking - -### ๐Ÿ–ฅ๏ธ Technical Excellence - -- **Cross-Platform**: Windows, Mac, Linux support- Theater mode for distraction-free viewing- ๐Ÿ“น Recording Bonus: **+1 XP** when webcam recording enabled```bash - -- **Electron Desktop App**: Native OS integration - -- **Web Browser Compatible**: No installation required- Multi-format video support - -- **Professional UI**: Responsive, modern design - +--- ## ๐ŸŽฏ Controls & Navigation - | Control | Action | Mode Availability | - |---------|--------|-------------------| - | **Enter** | Complete current task | All modes | - -| **Ctrl** | Skip task (triggers punishment) | Training, Quick Play | - +| **Ctrl** | Skip task (triggers punishment) | Campaign, Quick Play | | **Space/P** | Pause/Resume session | All modes | - | **M** | Toggle background music | All modes | - | **H** | Show help menu | All modes | - | **Escape** | Close dialogs/return to menu | All modes | - --- - - ## ๐Ÿ› ๏ธ Technical Architecture - - ### ๐Ÿ“‚ Core Structure - ``` - -webGame/| Mode | Activity | XP Reward | Notes |- Webcam integration for photo capture1. Open `index.html` in a modern browser - +webGame/ โ”œโ”€โ”€ index.html # Main hub and library management - -โ”œโ”€โ”€ quick-play.html # Quick Play game mode|------|----------|-----------|-------| - -โ”œโ”€โ”€ training-academy.html # Training Academy mode - -โ”œโ”€โ”€ porn-cinema.html # Video player system| **Training Academy** | Time Training | 1 XP / 2 minutes | Passive time-based reward |- Punishment system with consequence images2. Choose your game mode and begin - +โ”œโ”€โ”€ campaign.html # Campaign Mode (30 levels) +โ”œโ”€โ”€ training-academy.html # Training Modules (8 sessions) +โ”œโ”€โ”€ quick-play.html # Quick Play game mode +โ”œโ”€โ”€ porn-cinema.html # Video player system +โ”œโ”€โ”€ library.html # Media library management โ”œโ”€โ”€ player-stats.html # Statistics dashboard - -โ”œโ”€โ”€ user-profile.html # Profile and achievements| | Webcam Activity | 1 XP / minute | Active engagement bonus | - +โ”œโ”€โ”€ user-profile.html # Profile and achievements โ”œโ”€โ”€ src/ - -โ”‚ โ”œโ”€โ”€ core/ # Game engine and state management| | Photo Session | 2 XP / photo | Achievement-based reward |3. Upload custom content via Image Management - +โ”‚ โ”œโ”€โ”€ core/ # Game engine and state management โ”‚ โ”œโ”€โ”€ data/modes/ # Game mode configurations - -โ”‚ โ”œโ”€โ”€ features/ # Modular feature systems| **Quick Play** | Task Completion | 1-3 XP | Speed-based scaling | - +โ”‚ โ”œโ”€โ”€ features/ # Modular feature systems โ”‚ โ”‚ โ”œโ”€โ”€ media/ # Video players and media management - -โ”‚ โ”‚ โ”œโ”€โ”€ stats/ # XP and statistics tracking| | Session Bonus | 2 XP / 15 min | Consistency reward |---4. Configure settings in Options menu - +โ”‚ โ”‚ โ”œโ”€โ”€ stats/ # XP and statistics tracking โ”‚ โ”‚ โ”œโ”€โ”€ tasks/ # Interactive task system - -โ”‚ โ”‚ โ””โ”€โ”€ ui/ # User interface components| | Recording Bonus | +1 XP | Additional engagement | - +โ”‚ โ”‚ โ””โ”€โ”€ ui/ # User interface components โ”‚ โ”œโ”€โ”€ styles/ # CSS themes and styling - -โ”‚ โ””โ”€โ”€ utils/ # Utility functions and helpers| **Porn Cinema** | Video Viewing | 1 XP / 5 minutes | Engagement tracking | - +โ”‚ โ””โ”€โ”€ utils/ # Utility functions and helpers โ”œโ”€โ”€ images/ # User-uploaded image library - -โ”œโ”€โ”€ audio/ # Background music collection| | Video Completion | Bonus XP | 90%+ completion required | - -โ””โ”€โ”€ videos/ # Linked video directories - +โ”œโ”€โ”€ audio/ # Background music collection +โ”œโ”€โ”€ videos/ # Linked video directories +โ””โ”€โ”€ docs/ # Documentation + โ”œโ”€โ”€ ACADEMY_PHASE1_COMPLETE.md + โ”œโ”€โ”€ TRAINING_MODULES.md + โ”œโ”€โ”€ MODULE_RANK_SYSTEM.md + โ”œโ”€โ”€ LEVEL_STRUCTURE_TEMPLATE.md + โ”œโ”€โ”€ GAME_STATS_PANEL_FIX.md + โ””โ”€โ”€ training-game-redesign/ ``` - -### ๐Ÿ“Š Progression Levels - +### ๐Ÿ”ง System Requirements - **Node.js 16+**: For Electron desktop application - - **Modern Browser**: Chrome 90+, Firefox 88+, Safari 14+ - - **Desktop Features**: File system access for media linking - - **Storage**: Minimum 100MB for application and user content - - - - - -## ๐Ÿ“‹ Recent Major Updates - - - -### v4.0 - Comprehensive Backup System (November 12, 2025) - -- โœ… **Automatic Data Protection**: 30-minute backup intervals - -- โœ… **Manual Backup Controls**: User-initiated backup/restore - -- โœ… **Export/Import System**: Portable data management - -- โœ… **Emergency Backup Hooks**: Before reset operations - -- โœ… **Data Loss Recovery**: Complete incident prevention system - -- **Session Summaries**: XP earned per session with breakdowns - -### v3.3 - Media Library Consolidation (November 11, 2025) - -- โœ… **Unified Gallery System**: Single media management interface- **Statistics Dashboard**: Comprehensive XP analytics**Player Features:**- **M** - Toggle music - -- โœ… **Dynamic Library Theme**: User content-based theming - -- โœ… **Pinterest Layout**: Aspect ratio-optimized image display- **Progress Visualization**: Charts and progression metrics - -- โœ… **Advanced Organization**: Smart categorization and bulk operations - -- ๐ŸŽฌ Professional Video Interface: Full-screen theater mode- **H** - Help menu - -### v3.2 - Quick Play Enhancement (November 6, 2025) - -- โœ… **Task Disable Toggles**: Individual task control system--- - -- โœ… **Persistent Settings**: Configuration memory across sessions - -- โœ… **Real-time Filtering**: Dynamic task exclusion- ๐Ÿ“‹ Playlist Management: Organize viewing sessions- **Escape** - Close dialogs - -- โœ… **Enhanced Debugging**: Comprehensive logging system - -## ๐Ÿ“š Library System Explained - -### v3.1 - Background Video Integration (November 3, 2025) - -- โœ… **Seamless Video Playback**: Background videos during gameplay- ๐Ÿ“Š Progress Tracking: Resume exactly where you left off - -- โœ… **Opacity Controls**: Floating video control system - -- โœ… **40+ Video Integration**: Comprehensive video library access### ๐ŸŽฌ Video Library Management - -- โœ… **Multi-Mode Support**: Video features across all game modes - -The Library system provides centralized management for all your media content across game modes.- ๐Ÿ”„ Multi-Screen Mode: 4-video grid for intensive sessions## ๐Ÿ› ๏ธ Technical +### ๐Ÿ–ฅ๏ธ Technical Excellence +- **Cross-Platform**: Windows, Mac, Linux support +- **Electron Desktop App**: Native OS integration +- **Web Browser Compatible**: No installation required +- **Professional UI**: Responsive, modern design +- **Modular Architecture**: Easy to extend and customize --- +## ๐Ÿ“‹ Recent Major Updates +### v4.1 - Campaign Mode & Training Modules (December 2025) +- โœ… **Campaign Mode**: 30-level story progression across 6 arcs +- โœ… **Training Modules**: 8 specialized focused training sessions +- โœ… **Rank System**: XP-based module unlocking +- โœ… **Level Structure Template**: Standardized level creation guide +- โœ… **Advanced Rhythm Training**: Custom tempo sequences with beat timeline +- โœ… **Game Stats Panel Fix**: Preserved UI consistency across all tasks +- โœ… **Documentation**: Comprehensive guides for campaign and modules +### v4.0 - Comprehensive Backup System (November 2025) +- โœ… **Automatic Data Protection**: 30-minute backup intervals +- โœ… **Manual Backup Controls**: User-initiated backup/restore +- โœ… **Export/Import System**: Portable data management +- โœ… **Emergency Backup Hooks**: Before reset operations +- โœ… **Data Loss Recovery**: Complete incident prevention system + +### v3.3 - Media Library Consolidation (November 2025) +- โœ… **Unified Gallery System**: Single media management interface +- โœ… **Dynamic Library Theme**: User content-based theming +- โœ… **Pinterest Layout**: Aspect ratio-optimized image display +- โœ… **Advanced Organization**: Smart categorization and bulk operations + +### v3.2 - Quick Play Enhancement (November 2025) +- โœ… **Task Disable Toggles**: Individual task control system +- โœ… **Persistent Settings**: Configuration memory across sessions +- โœ… **Real-time Filtering**: Dynamic task exclusion +- โœ… **Enhanced Debugging**: Comprehensive logging system + +### v3.1 - Background Video Integration (November 2025) +- โœ… **Seamless Video Playback**: Background videos during gameplay +- โœ… **Opacity Controls**: Floating video control system +- โœ… **40+ Video Integration**: Comprehensive video library access +- โœ… **Multi-Mode Support**: Video features across all game modes + +--- diff --git a/docs/LEVEL_STRUCTURE_TEMPLATE.md b/docs/LEVEL_STRUCTURE_TEMPLATE.md new file mode 100644 index 0000000..1017a57 --- /dev/null +++ b/docs/LEVEL_STRUCTURE_TEMPLATE.md @@ -0,0 +1,616 @@ +# Level Structure Template + +## Overview +This document defines the standard structure and components for creating Training Academy campaign levels. Follow this template to ensure consistency across all levels. + +--- + +## Level Data Structure + +### Basic Level Properties +```javascript +{ + id: 'academy-level-X', // Unique identifier (academy-level-1, academy-level-2, etc.) + name: 'Level Title', // Display name (e.g., "Edge Training 101") + arc: 'Arc Name', // Story arc (Foundation, Immersion, Advanced Training, etc.) + level: X, // Level number (1, 2, 3, etc.) + duration: 300, // Estimated duration in seconds + interactiveType: 'scenario-adventure', // Always use this for campaign levels + interactiveData: { + // Scenario data here... + } +} +``` + +--- + +## Scenario Structure + +### Interactive Data Template +```javascript +interactiveData: { + title: 'Level X: Level Title', // Match the level name + steps: { + // Steps defined here... + } +} +``` + +--- + +## Step Types + +### 1. Story Step (Narrative/Dialogue) +**Purpose**: Display story text without user interaction beyond continuing + +```javascript +start: { + type: 'story', + mood: 'welcoming', // Options: welcoming, instructional, praising, anticipatory, intense, etc. + story: 'Your story text here. This displays to the player.', + nextStep: 'next_step_id' +} +``` + +**Common Moods**: +- `welcoming` - Friendly introduction +- `instructional` - Teaching/guidance +- `praising` - Positive reinforcement +- `anticipatory` - Building excitement +- `intense` - High energy/challenge +- `satisfied` - Completion/success + +--- + +### 2. Action Step (Interactive Task) +**Purpose**: Execute an interactive task (edge, rhythm, library management, etc.) + +```javascript +step_id: { + type: 'action', + mood: 'instructional', + story: 'Explanation of what the player will do.', + interactiveType: 'edge', // Type of interactive task + params: { + // Task-specific parameters + count: 5, + instruction: 'Edge 5 times - slowly and deliberately', + showTimer: true, // ALWAYS include for countdown timer display + preserveContent: false // Set to true if you want to append to existing content + }, + nextStep: 'next_step_id' +} +``` + +--- + +### 3. Completion Step +**Purpose**: Mark level as complete and show completion message + +```javascript +completion: { + type: 'completion', + mood: 'satisfied', + story: 'โœ… Level X Complete - Summary of achievements.', + outcome: 'levelX_complete' +} +``` + +--- + +## Standard Interactive Task Types + +### Edge Task +**Purpose**: Edge training - stroke to the brink without release + +```javascript +{ + type: 'action', + mood: 'instructional', + story: 'Edge training instructions.', + interactiveType: 'edge', + params: { + count: 5, // Number of edges (optional) + duration: 300, // Duration in seconds (optional) + instruction: 'Edge 5 times - slowly and deliberately', + showTimer: true, // Show countdown timer in sidebar + preserveContent: false, // Whether to preserve existing content + keepVideoPlaying: false // Keep video player active + }, + nextStep: 'next_step_id' +} +``` + +**Components Created**: +- Edge instruction display +- Start button +- Dev skip button (auto-shown in dev mode) +- Session duration display +- Sidebar countdown timer (if showTimer: true) +- Status messages + +--- + +### Rhythm Task +**Purpose**: Follow specific stroking rhythm patterns + +```javascript +{ + type: 'action', + mood: 'focused', + story: 'Follow the rhythm pattern.', + interactiveType: 'rhythm', + params: { + pattern: 'slow-fast-slow', // Pattern name (see patterns below) + duration: 180, // Duration in seconds + enableVideo: true, // Enable video playback + enableMetronomeSound: true, // Play metronome tick sounds + showTimer: true, // Show countdown timer in sidebar + multiPattern: [ // Optional: Multiple patterns in sequence + { pattern: 'fast-slow-fast', duration: 300 }, + { pattern: 'varied-medium', duration: 360 } + ] + }, + nextStep: 'next_step_id' +} +``` + +**Available Patterns**: +- `slow-fast-slow` - [60, 80, 100, 120, 140, 120, 100, 80, 60] BPM +- `fast-slow-fast` - [140, 120, 100, 80, 60, 80, 100, 120, 140] BPM +- `steady` - [90, 90, 90, 90, 90, 90] BPM +- `escalating` - [60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 170, 180] BPM +- `varied-slow` - [70, 80, 90, 100, 0, 80, 90, 110, 100, 0, 70, 85, 95, 80, 100] BPM +- `varied-medium` - [100, 120, 140, 160, 150, 0, 130, 150, 170, 140, 180, 0, 120, 160, 140, 180, 200] BPM +- `varied-intense` - [140, 160, 180, 200, 0, 160, 180, 200, 220, 0, 180, 200, 220, 240, 0, 200, 220, 180, 240] BPM + +**Components Created**: +- Pattern title display +- BPM display +- Phase indicator +- Metronome visual (pulsing indicator) +- Video player (if enableVideo: true) +- Video controls (skip, volume) +- Metronome volume control +- Dev skip button +- Sidebar countdown timer + +--- + +### Rhythm Training Task (Advanced) +**Purpose**: Advanced rhythm training with custom tempo sequences + +```javascript +{ + type: 'action', + mood: 'intense', + story: 'Advanced rhythm training with varying tempo.', + interactiveType: 'rhythm-training', + params: { + duration: 180, + enableVideo: false, + showTimer: true, + tempoSequence: [ + { tempo: 60, duration: 25.71 }, // Slow warmup + { tempo: 120, duration: 25.71 }, // Medium + { tempo: 150, duration: 25.71 }, // Fast + { tempo: 60, duration: 25.71 }, // Back to slow + { tempo: 150, duration: 25.71 }, // Fast again + { tempo: 200, duration: 25.71 }, // Intense + { tempo: 240, duration: 25.71 } // Extreme finish + ] + }, + nextStep: 'next_step_id' +} +``` + +**Components Created**: +- Beat timeline visualization (scrolling beats) +- Current BPM display +- Tempo label +- Video player (optional) +- Volume controls +- Dev skip button +- Sidebar countdown timer + +--- + +### Add Library Directory Task +**Purpose**: Add media directory to library + +```javascript +{ + type: 'action', + mood: 'practical', + story: 'Add content to your library.', + interactiveType: 'add-library-directory', + params: { + suggestedTags: ['amateur', 'solo'], + showTimer: true + }, + nextStep: 'next_step_id' +} +``` + +**Components Created**: +- Select directory button +- Suggested tags display +- Result status area +- Automatic completion on success + +--- + +### Tag Files Task +**Purpose**: Tag files in the library + +```javascript +{ + type: 'action', + mood: 'practical', + story: 'Tag files in your library.', + interactiveType: 'tag-files', + params: { + minFiles: 10, + suggestedTags: ['pov', 'blowjob', 'riding', 'amateur'], + showTimer: true, + preserveContent: true // Keep existing content visible + }, + nextStep: 'next_step_id' +} +``` + +**Components Created**: +- Open library button +- Tag progress tracker +- Suggested tags display +- Auto-completion when target reached + +--- + +### Video Start Task +**Purpose**: Start video playback + +```javascript +{ + type: 'action', + mood: 'intense', + story: 'Watch the video.', + interactiveType: 'video-start', + params: { + player: 'focus', // Video player mode + tags: ['amateur'], // Filter tags + duration: 120, // Duration in seconds + showTimer: true // Show countdown timer in sidebar + }, + nextStep: 'next_step_id' +} +``` + +**Components Created**: +- Video player container +- Start video button +- Dev skip button +- Sidebar countdown timer +- Auto-completion when duration complete + +--- + +## Standard UI Components + +### 1. Sidebar Countdown Timer +**Always Preserve Game Stats Panel** + +```javascript +// โœ… CORRECT - Use specific timer elements +const countdownEl = document.getElementById('sidebar-countdown-display'); +const countdownWrapper = document.getElementById('sidebar-countdown-timer'); + +// Show timer +if (countdownWrapper) { + countdownWrapper.style.display = 'block'; +} + +// Update timer +if (countdownEl) { + const minutes = Math.floor(timeRemaining / 60); + const seconds = timeRemaining % 60; + countdownEl.textContent = `${minutes}:${seconds.toString().padStart(2, '0')}`; +} + +// Hide timer +if (countdownWrapper) { + countdownWrapper.style.display = 'none'; +} + +// โŒ WRONG - Never use sidebar.innerHTML +// This destroys the game stats panel! +sidebar.innerHTML = '
Timer
'; // DON'T DO THIS +``` + +**Required Elements**: +- `#sidebar-countdown-timer` - Wrapper element (show/hide) +- `#sidebar-countdown-display` - Text element (update time) +- `#game-stats-panel` - Stats panel (NEVER destroy this) + +**See**: `docs/GAME_STATS_PANEL_FIX.md` for complete guide + +--- + +### 2. Dev Skip Button +**Standard Implementation** + +```javascript +// HTML + + +// JavaScript +const skipBtn = container.querySelector('#skip-[task]-btn'); + +// Show if dev mode +if (window.isDevMode && window.isDevMode()) { + skipBtn.style.display = 'inline-block'; +} + +// Handler +skipBtn.addEventListener('click', () => { + console.log('โฉ Dev skip - completing task'); + + // Clean up intervals/timers + if (timerInterval) clearInterval(timerInterval); + if (beatTimer) clearInterval(beatTimer); + + // Stop audio + if (audioContext) audioContext.close(); + if (ambientAudio) ambientAudio.pause(); + + // Hide countdown timer + if (countdownWrapper) { + countdownWrapper.style.display = 'none'; + } + + // Mark complete + task.completed = true; + + // Enable continue button + const completeBtn = document.getElementById('interactive-complete-btn'); + if (completeBtn) { + completeBtn.disabled = false; + completeBtn.textContent = 'Continue to Next Step โœ“'; + } +}); +``` + +**Required Cleanup**: +- Clear all intervals and timers +- Stop all audio (metronome, ambient, video) +- Hide countdown timer +- Mark task as completed +- Enable continue button + +--- + +### 3. Task Completion Pattern +**Standard Completion Flow** + +```javascript +// When task naturally completes +task.completed = true; + +// Update UI +statusArea.innerHTML = '
โœ… Task complete!
'; + +// Hide countdown timer +if (showTimer && countdownWrapper) { + countdownWrapper.style.display = 'none'; +} + +// Enable continue button +const completeBtn = document.getElementById('interactive-complete-btn'); +if (completeBtn) { + completeBtn.disabled = false; + completeBtn.textContent = 'Continue to Next Step โœ“'; + completeBtn.style.background = 'linear-gradient(135deg, var(--color-success), var(--color-primary))'; +} +``` + +--- + +### 4. Cleanup Function +**Every Task Must Have Cleanup** + +```javascript +// Store cleanup function on task +task.cleanup = () => { + console.log('๐Ÿงน Task cleanup called'); + + // Clear intervals + if (timerInterval) clearInterval(timerInterval); + if (beatTimer) clearInterval(beatTimer); + + // Stop audio + if (audioContext) { + audioContext.close().catch(err => console.warn('โš ๏ธ Error closing audio:', err)); + } + if (ambientAudio) { + ambientAudio.pause(); + ambientAudio = null; + } + + // Stop video + if (videoElement) { + videoElement.pause(); + videoElement = null; + } + + // Hide countdown timer + const countdownTimer = document.getElementById('sidebar-countdown-timer'); + if (countdownTimer) { + countdownTimer.style.display = 'none'; + } + + console.log('โœ… Cleanup complete'); +}; +``` + +--- + +## Complete Level Example + +### Level 1: Edge Training 101 + +```javascript +level1: { + id: 'academy-level-1', + name: 'Edge Training 101', + arc: 'Foundation', + level: 1, + duration: 300, + interactiveType: 'scenario-adventure', + interactiveData: { + title: 'Level 1: Edge Training 101', + steps: { + start: { + type: 'story', + mood: 'welcoming', + story: 'Welcome to The Academy, aspiring gooner. I am your instructor, and I will guide your transformation. Today, we begin with the foundation of all gooning: the edge. You will learn to ride the wave of pleasure without release. Are you ready to begin your journey?', + nextStep: 'intro_complete' + }, + intro_complete: { + type: 'action', + mood: 'instructional', + story: 'Your first lesson is simple: edge 5 times. Stroke yourself to the very brink, feel that rush of pleasure, then stop. Hold yourself there. Feel it pulsing, demanding release. But you will not give in. This is control. This is the beginning.', + interactiveType: 'edge', + params: { + count: 5, + instruction: 'Edge 5 times - slowly and deliberately', + showTimer: true + }, + nextStep: 'first_edges_done' + }, + first_edges_done: { + type: 'story', + mood: 'praising', + story: 'Good. Very good. You felt it, didn\'t you? That moment where your body screamed for release, but your mind held firm. That is power. That is what we are building here. You have completed your first training session. Level 2 awaits when you\'re ready.', + nextStep: 'completion' + }, + completion: { + type: 'completion', + mood: 'satisfied', + story: 'โœ… Level 1 Complete - You have taken your first steps into The Academy.', + outcome: 'level1_complete' + } + } + } +} +``` + +--- + +## Step Flow Diagram + +``` +[start] (story) + โ†“ +[intro_complete] (action - edge task) + โ†“ +[first_edges_done] (story) + โ†“ +[completion] (completion) +``` + +--- + +## Critical Rules + +### โœ… DO: +- Always include `showTimer: true` in task params +- Use specific timer elements (`#sidebar-countdown-display`, `#sidebar-countdown-timer`) +- Add dev skip buttons to all timed tasks +- Include cleanup functions for all interactive tasks +- Clear all intervals/timers in cleanup and skip handlers +- Hide countdown timer when task completes +- Enable continue button when task completes +- Use consistent step naming (start, completion) +- Include mood indicators for atmosphere +- Provide clear instructions in story text + +### โŒ DON'T: +- Use `sidebar.innerHTML` (destroys game stats panel) +- Forget to clear intervals in cleanup +- Forget to hide countdown timer when complete +- Create tasks without cleanup functions +- Use generic button IDs that might conflict +- Forget to check for element existence before using +- Hardcode values that should be parameters +- Skip the dev skip button implementation +- Forget to stop audio in cleanup + +--- + +## Testing Checklist + +When creating a new level, verify: + +- [ ] Game stats panel stays visible throughout all tasks +- [ ] Countdown timer appears when tasks start +- [ ] Countdown timer updates every second +- [ ] Countdown timer hides when task completes +- [ ] Dev skip button appears in dev mode (`localStorage.setItem('devMode', 'true')`) +- [ ] Dev skip button completes task immediately +- [ ] All intervals/timers are cleared on completion +- [ ] All intervals/timers are cleared on skip +- [ ] All audio stops on completion +- [ ] All audio stops on skip +- [ ] Continue button enables when task completes +- [ ] Level transitions smoothly to next step +- [ ] Story text displays correctly +- [ ] Moods are appropriate for each step +- [ ] Task parameters work as expected +- [ ] No console errors during execution +- [ ] Cleanup function executes without errors + +--- + +## Quick Reference + +### Common Parameters +```javascript +params: { + showTimer: true, // Show countdown timer + preserveContent: false, // Preserve existing content + duration: 180, // Duration in seconds + enableVideo: true, // Enable video player + suggestedTags: [], // Suggested tags array + instruction: '', // Custom instruction text +} +``` + +### Common Element IDs +- `#sidebar-countdown-timer` - Timer wrapper (show/hide) +- `#sidebar-countdown-display` - Timer text (update) +- `#game-stats-panel` - Stats panel (preserve) +- `#interactive-complete-btn` - Continue button (enable) +- `.skip-task-btn` - Dev skip button class + +### Common Event Handlers +- Start button click โ†’ Begin task +- Skip button click โ†’ Complete immediately +- Timer interval โ†’ Update countdown +- Completion โ†’ Clean up and enable continue + +--- + +## Resources + +- **Game Stats Panel Fix**: `docs/GAME_STATS_PANEL_FIX.md` +- **Rhythm Timeline System**: `docs/rhythm-timeline/README.md` +- **Training Modules**: `docs/TRAINING_MODULES.md` +- **Level Breakdowns**: `docs/LEVELS_1-15_BREAKDOWN.md`, `docs/LEVELS_16-20_BREAKDOWN.md` + +--- + +## Version History + +- **v1.0** (2025-12-06) - Initial template based on Levels 1-3 structure diff --git a/index.html b/index.html index efd386c..b9c205d 100644 --- a/index.html +++ b/index.html @@ -221,7 +221,7 @@

Master Your Dedication - โ˜… Advanced Training System โ˜… v0.41 + โ˜… Advanced Training System โ˜… v0.5

diff --git a/scripts/create-distribution.bat b/scripts/create-distribution.bat index 9736ff6..ab359e6 100644 --- a/scripts/create-distribution.bat +++ b/scripts/create-distribution.bat @@ -5,7 +5,7 @@ echo ================================================= echo. :: Set distribution info -set DIST_NAME=Gooner-Training-Academy-v4.1-Beta +set DIST_NAME=Gooner-Training-Academy-v0.5-Beta set BUILD_DATE=%DATE:~-4,4%-%DATE:~-10,2%-%DATE:~-7,2% set OUTPUT_DIR=..\%DIST_NAME% @@ -29,6 +29,8 @@ echo ๐Ÿ“„ Copying core application files... copy index.html "%OUTPUT_DIR%\" copy quick-play.html "%OUTPUT_DIR%\" copy training-academy.html "%OUTPUT_DIR%\" +copy campaign.html "%OUTPUT_DIR%\" +copy library.html "%OUTPUT_DIR%\" copy porn-cinema.html "%OUTPUT_DIR%\" copy player-stats.html "%OUTPUT_DIR%\" copy user-profile.html "%OUTPUT_DIR%\" @@ -38,9 +40,14 @@ copy package.json "%OUTPUT_DIR%\" :: Copy documentation echo ๐Ÿ“š Copying documentation... copy README.md "%OUTPUT_DIR%\" -@REM copy TESTER_GUIDE.md "%OUTPUT_DIR%\" -@REM copy INSTALLATION_GUIDE.md "%OUTPUT_DIR%\" -@REM copy README-DESKTOP.md "%OUTPUT_DIR%\" +mkdir "%OUTPUT_DIR%\docs" +if exist docs\ACADEMY_PHASE1_COMPLETE.md copy docs\ACADEMY_PHASE1_COMPLETE.md "%OUTPUT_DIR%\docs\" +if exist docs\TRAINING_MODULES.md copy docs\TRAINING_MODULES.md "%OUTPUT_DIR%\docs\" +if exist docs\MODULE_RANK_SYSTEM.md copy docs\MODULE_RANK_SYSTEM.md "%OUTPUT_DIR%\docs\" +if exist docs\LEVELS_1-15_BREAKDOWN.md copy docs\LEVELS_1-15_BREAKDOWN.md "%OUTPUT_DIR%\docs\" +if exist docs\LEVELS_16-20_BREAKDOWN.md copy docs\LEVELS_16-20_BREAKDOWN.md "%OUTPUT_DIR%\docs\" +if exist docs\GAME_STATS_PANEL_FIX.md copy docs\GAME_STATS_PANEL_FIX.md "%OUTPUT_DIR%\docs\" +if exist docs\training-game-redesign xcopy docs\training-game-redesign "%OUTPUT_DIR%\docs\training-game-redesign\" /e /i /q :: Copy setup scripts echo ๐Ÿ”ง Copying setup scripts... @@ -85,9 +92,14 @@ echo 2. Follow setup prompts >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" echo 3. Launch with Start-webgame.bat or npm start >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" echo. >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" echo DOCUMENTATION: >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" -echo - TESTER_GUIDE.md: Testing instructions >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" -echo - INSTALLATION_GUIDE.md: Detailed setup help >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" echo - README.md: Complete documentation >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" +echo - docs/: Campaign and training module guides >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" +echo. >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" +echo TESTING FOCUS: >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" +echo - Campaign Mode: 30 levels across 6 story arcs >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" +echo - Training Modules: 8 focused modules (2 available) >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" +echo - Photo Session, Humiliation modules unlocked >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" +echo - Level progression, stats tracking, media library >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" echo. >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" echo REQUIREMENTS: >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" echo - Node.js 16+ >> "%OUTPUT_DIR%\DISTRIBUTION_INFO.txt" diff --git a/scripts/create-distribution.sh b/scripts/create-distribution.sh index 96ded41..3bd1468 100644 --- a/scripts/create-distribution.sh +++ b/scripts/create-distribution.sh @@ -15,7 +15,7 @@ echo -e "${PURPLE}==================================================${NC}" echo "" # Set distribution info -DIST_NAME="Gooner-Training-Academy-v4.0-Beta" +DIST_NAME="Gooner-Training-Academy-v0.50-Beta" BUILD_DATE=$(date +%Y-%m-%d) OUTPUT_DIR="../${DIST_NAME}" @@ -36,14 +36,42 @@ mkdir -p "$OUTPUT_DIR" # Copy core files echo -e "${BLUE}๐Ÿ“„ Copying core application files...${NC}" -cp index.html quick-play.html training-academy.html porn-cinema.html "$OUTPUT_DIR/" -cp player-stats.html user-profile.html package.json "$OUTPUT_DIR/" +cp index.html quick-play.html training-academy.html campaign.html porn-cinema.html "$OUTPUT_DIR/" +cp player-stats.html user-profile.html library.html package.json "$OUTPUT_DIR/" # Copy documentation echo -e "${BLUE}๐Ÿ“š Copying documentation...${NC}" -cp README.md TESTER_GUIDE.md INSTALLATION_GUIDE.md "$OUTPUT_DIR/" -if [ -f README-DESKTOP.md ]; then - cp README-DESKTOP.md "$OUTPUT_DIR/" +mkdir -p "$OUTPUT_DIR/docs" +cp README.md "$OUTPUT_DIR/" + +# Copy main docs +if [ -f docs/INSTALLATION_GUIDE.md ]; then + cp docs/INSTALLATION_GUIDE.md "$OUTPUT_DIR/docs/" +fi +if [ -f docs/TESTER_GUIDE.md ]; then + cp docs/TESTER_GUIDE.md "$OUTPUT_DIR/docs/" +fi +if [ -f docs/README.md ]; then + cp docs/README.md "$OUTPUT_DIR/docs/" +fi + +# Copy campaign/academy documentation +if [ -f docs/ACADEMY_PHASE1_COMPLETE.md ]; then + cp docs/ACADEMY_PHASE1_COMPLETE.md "$OUTPUT_DIR/docs/" +fi +if [ -f docs/TRAINING_MODULES.md ]; then + cp docs/TRAINING_MODULES.md "$OUTPUT_DIR/docs/" +fi +if [ -f docs/MODULE_RANK_SYSTEM.md ]; then + cp docs/MODULE_RANK_SYSTEM.md "$OUTPUT_DIR/docs/" +fi +if [ -f docs/GAME_STATS_PANEL_FIX.md ]; then + cp docs/GAME_STATS_PANEL_FIX.md "$OUTPUT_DIR/docs/" +fi + +# Copy training game redesign docs if they exist +if [ -d docs/training-game-redesign ]; then + cp -r docs/training-game-redesign "$OUTPUT_DIR/docs/" fi # Copy setup scripts @@ -143,11 +171,27 @@ REQUIREMENTS: - 100MB+ free storage TESTING FOCUS: +- Campaign Mode: All 30 levels progression +- Training Modules: Photo Session and Humiliation modules - Core game modes functionality - Webcam integration stability - Performance during extended sessions - Cross-platform compatibility - Media library management +- XP and progression tracking + +CAMPAIGN MODE: +- 30 structured levels across 6 arcs +- Progressive feature unlocks +- Level-specific interactive tasks +- Story-driven progression +- Preference checkpoints at key levels + +TRAINING MODULES: +- 8 focused training sessions (2 currently available) +- Photo Session: Webcam photography challenges +- Humiliation: Interactive story-driven degradation +- 6 additional modules coming soon SUPPORT: Report issues with detailed reproduction steps and system information.