- Add 2P multiplayer mode with individual scoring and lives
- Implement player elimination system with continue/restart options
- Fix collision detection for moving into ghosts
- Add 3-second respawn invincibility like original Pacman
- Visual effects: pulsing/glow during invincibility, smoother animations
- Controls: P1 uses WASD+arrows in 1P, WASD only in 2P; P2 uses arrows
- Fix continue in 1P mode transferring surviving player state
- Revert ghost AI to simple targeting for reliability
- Add 2P mode selection and controls (P1: WASD/Arrows, P2: IJKL)
- Implement individual scoring and lives for both players
- Fix collision detection for both moving into ghosts and ghosts moving into players
- Add player elimination system with continue/restart options
- Revert ghost AI to original working logic
- Add visual smoothing with CSS transitions and effects
- Fix standing still collision bug
- Prevent duplicate piece shapes when generating next pieces
- Enhanced randomTetromino() with excludeShape parameter
- Update piece placement logic to avoid visual duplicates
- Improve initial state generation for both players
- Add P1 and P2 next piece previews in 2P mode
- Playback Speed Control: 0.5x, 1x, 1.5x, and 2x speed options
- Looping Toggle: Enable/disable automatic looping of audio playback
- Seeking: Click anywhere on the oscilloscope display to jump to that position in the audio
✅ Export Options
- Resolution Selection: Choose from 640×480, 1280×720, or 1920×1080
- Frame Rate Options: 24, 30, or 60 FPS
- Format Selection: WebM or MP4 (if supported)
- Quality Settings: Low, Medium, or High quality presets
✅ Microphone Calibration
- Real-time Level Monitoring: Visual indicator showing current microphone input level
- Gain Control: Adjustable gain slider (0.1x to 3x) to optimize input levels
- Visual Feedback: Color-coded level indicator (red=too loud, yellow=good, green=too quiet)
- Calibration Mode: Dedicated calibration panel that appears when mic is active
- Up/Down Arrow Navigation: Users can now press ↑/↓ to navigate through previously executed commands
- History Storage: Commands are stored in state and persist during the session
- Duplicate Prevention: Avoids adding the same command multiple times consecutively
- Reset on Typing: Manual typing resets the history navigation position
✅ Tab Completion
- Auto-complete: Pressing Tab completes partial commands that match available commands
- Single Match: If only one command matches, it completes the full command
- Multiple Matches: If multiple commands match, displays all possible completions in the terminal output
- Case-insensitive: Works regardless of input case