🔄 NEW FEATURES:
- Update_Checker.lsl: Revolutionary in-world GitHub integration
• Direct connection to GitHub Releases API
• Smart file filtering (essential vs development files)
• Precise deployment instructions verified by linkset scan
• Owner menu integration + chat commands (/1 check, /1 download)
• Memory optimized to replace eliminated UpdateHelper.lsl
🔍 ENHANCED TOOLS:
- Enhanced_LinkScanner.lsl: Complete 84-prim linkset analysis
• Real-time structure validation and prim mapping
• Script placement verification for all 17 LSL scripts
• XyzzyText system analysis (48 leaderboard prims)
• Update deployment guide generation
📊 SYSTEM IMPROVEMENTS:
- Zero-infrastructure updates via existing GitHub + Jenkins pipeline
- Professional error handling and user feedback
- Smart file classification with link-specific instructions
- Multi-instance safe operation for multiple game tables
📋 VERIFIED LINKSET STRUCTURE:
- Link 1: 13+ root prim scripts + Update_Checker.lsl
- Link 12: scoreboard manager cube
- Link 35: leaderboard bridge + XyzzyText start
- Links 35-82: 48 XyzzyText prims (4 banks × 12 rows)
- Link 83: dice display bridge
🎯 END USER BENEFITS:
- Automatic update detection and download
- No more guessing which scripts go where
- Clean separation of game files vs development files
- One-click access via /1 check or admin menu
- Winner Glow Effects: Bright green glow on both scoreboard and floaters for winners
- Extended Victory Display: 24-second celebration timer before game reset
- Enhanced Visual Feedback: Color-coded glow system (green/yellow/red)
- Victory Text Display: Winner floaters show 'ULTIMATE VICTORY!' and 'ULTIMATE SURVIVOR'
- Timer System Optimization: Dedicated victory timer mode, removed unused timeout system
- Memory Efficiency: Cleaned up unused components for better performance
- Synchronized Celebration: Both scoreboard and floater systems celebrate winner simultaneously
- Visual Priority: Winner glow overrides peril glow during victory celebration
Professional winner recognition system makes victory feel rewarding and celebrated!
- Added proper attribution: 'Feature suggested by Pawkaf (pawkaf.lutrova)'
- Credits Pawkaf for the innovative red X overlay idea for eliminated players
- Updates all documentation files with appropriate recognition
- Updates: CHANGELOG.md, README.md, CHANGELOG_Notecard.txt, README_Notecard.txt
- Added 'Enhanced Elimination Visual Feedback' section to all documentation files
- Documents the red X overlay that appears on eliminated players' profile pictures
- Explains immediate visual feedback when players reach 0 lives
- Notes persistent display until game reset for historical reference
- Improves user experience by making elimination status clearly visible
- Updates: CHANGELOG.md, README.md, CHANGELOG_Notecard.txt, README_Notecard.txt
- Added critical 'Number Detection & Shield Logic Fixes' section to all documentation files
- Documents the fix for system not recognizing numbers players had picked
- Explains the root cause (pick data sync issues) and solution (enhanced validation)
- Ensures complete coverage of v2.8.4 improvements including shield mechanics restoration
- Updates: CHANGELOG.md, README.md, CHANGELOG_Notecard.txt, README_Notecard.txt
All notable changes to Peril Dice will be documented in this file.
## [2.1.0] - 2025-01-08
### ✨ Major Features Added
- **Ready State System**: Players must mark themselves ready before games can start
- **Game Protection**: Prevents players from joining games in progress
- **Performance Optimization**: Reduced lag by limiting confetti to wins only
- **Enhanced Bot Intelligence**: Improved bot behavior and duplicate number avoidance
### 🔧 Core Fixes
- **Complete Game Flow**: Fixed end-to-end gameplay from start to finish
- **Elimination Logic**: Proper handling of player elimination and game continuation
- **Win Condition**: Fixed victory detection and game ending
- **Data Synchronization**: Resolved corruption in pick data between scripts
- **Peril Player Assignment**: Fixed race conditions in peril player transitions
### 🎮 Gameplay Improvements
- **Dynamic Picking**: Number of picks now properly based on peril player's lives
- **Duplicate Prevention**: Enhanced system to prevent duplicate number selection
- **Dialog Pagination**: Improved number selection interface for d30 dice
- **Floater Updates**: Real-time HUD updates throughout gameplay
- **Bot Continuation**: Bots now properly continue games when humans are eliminated
### 🛠️ Technical Enhancements
- **Modular Communication**: Improved inter-script messaging system
- **Error Handling**: Comprehensive validation and error recovery
- **Memory Management**: Better floater cleanup and channel tracking
- **Data Encoding**: Fixed CSV conflicts with semicolon encoding system
- **State Management**: Robust game state synchronization across modules
### 🐛 Bug Fixes
- Fixed missing pick dialogs after game events
- Resolved duplicate message issues between scripts
- Fixed lives reset problems between rounds
- Corrected floater display inconsistencies
- Fixed bot confusion during player elimination
- Resolved pick data corruption issues
- Fixed peril player variable sync problems
### ⚡ Performance
- Removed confetti from life loss (keeping only victory confetti)
- Optimized debug output to reduce lag
- Improved floater management efficiency
- Enhanced bot processing speed
## [2.0.0] - 2024-12-XX
### 🎉 Initial Modular Release
- **Modular Architecture**: Separated functionality into specialized scripts
- **Bot System**: Added AI players for testing and gameplay variety
- **Floating HUD**: Real-time player statistics display
- **Dynamic Dice**: Automatic dice sizing based on player count
- **Player Management**: Runtime player joining and leaving
- **Owner Controls**: Administrative functions for game management
### 🎲 Core Game Features
- **Pick System**: Number selection with validation
- **Rolling Mechanism**: Automated dice rolling with visual effects
- **Life Management**: 3-life system with elimination
- **Peril Tracking**: Dynamic peril player assignment
- **Victory Conditions**: Last player standing wins
### 🏗️ Architecture
- **Main Controller**: Central game logic and state management
- **Dialog Handlers**: User interface and input processing
- **Roll Module**: Dice mechanics and particle effects
- **Bot Manager**: AI player behavior and automation
- **Floater Manager**: HUD display coordination
- **Game Helpers**: Utility functions and calculations
## [1.0.0] - 2024-XX-XX
### 🌟 Original Release
- Basic Peril Dice game implementation
- Manual gameplay mechanics
- Simple player tracking
- Basic dice rolling functionality
---
## Development Notes
### Known Issues
- **Bot Race Condition**: Bots may occasionally pick duplicate numbers when triggered simultaneously
- **Debug Output**: Extended games may experience minor lag from comprehensive logging
### Future Enhancements
- Serialized bot picking to eliminate race conditions
- Configurable debug levels
- Additional game modes and variants
- Enhanced visual effects and animations
### Credits
- **Original Game Design**: Noose the Bunny (djmusica28) - Second Life
- **Automation & Development**: Enhanced for automated gameplay
- **Architecture**: Modular LSL system for scalability and maintainability
Overview
Peril Dice is a multiplayer elimination game where each player selects numbers before a die is rolled. If the peril player’s number is rolled, they lose a life. Players are eliminated when they reach zero lives.
🔧 Features
✅ Player System
Max players: 10
Each player starts with 3 lives
Players can Join, Leave, or mark themselves Ready
The first player to join gets a Start Game button
The owner can join the game and also has a special Owner menu
🎲 Dice Scaling
Dice type is automatically chosen to ensure at least 3 picks per player
Dice types supported: d6, d12, d20, d30
Player Count Dice Type
1–2 d6
3–4 d12
5–6 d20
7–10 d30
🧍 Test Players
Owner can add/remove test players (bots)
Test players rez stat floaters at offset positions to prevent overlap
Floater objects follow players and update in real time
🪟 HUD & Stat Floaters
Players receive a floating HUD showing:
Player name
Lives
Picks
Peril status or game state
📦 Modular Architecture
Separated scripts:
Main Controller: Handles core game logic
Dialog Handler: Manages pick dialogs
Dice Selector: Returns dice type based on player count
Stat Float Manager: Rezzes and updates floaters
Stat Float Object: Displays floating text per player
🕹️ Game Flow
Players touch the controller object to join the game
Once 2+ players have joined, the first player gets the option to Start Game
Dice type is selected automatically
Each player is prompted (in order) to select 3 numbers
After all picks are made:
The dice is rolled
The result is compared to each player’s picks
If the peril player’s number is rolled or no one picked it, the peril player loses a life
The system checks for eliminations and starts the next round
🧰 Admin Controls
Owner can:
Join or leave the game
Open a special Owner menu
Add/remove test bots
Reset the game
Debug current state (optional)