Files
BreakEscape/docs/TUTORIAL_STYLE_COMPARISON.md

260 lines
9.4 KiB
Markdown
Raw Permalink Normal View History

# Tutorial Style Comparison - Before & After
## Quick Reference Guide
### Tutorial Prompt Modal
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Overlay Background | `rgba(0, 0, 0, 0.85)` | `transparent` | Keep game visible |
| Overlay Pointer Events | Normal | `pointer-events: none` | Allow clicks through |
| Overlay Z-Index | `10000` | `1400` | Below minigames (1500+) |
| Modal Background | `linear-gradient(135deg, #1a1a2e 0%, #16213e 100%)` | `rgba(0, 0, 0, 0.95)` | Match game's solid dark backgrounds |
| Modal Pointer Events | Normal | `pointer-events: all` | Re-enable for modal |
| Border Radius | `12px` | `0` (removed) | Pixel-art aesthetic |
| Box Shadow | Basic shadow with inner glow | Enhanced: `0 0 30px rgba(0, 255, 136, 0.4)` | Stronger accent color glow |
| Inner Glow | Inline style | `::before` pseudo-element | Better separation of concerns |
| Title Font Size | `20px` | `20px` (kept) | Good size maintained |
| Title Letter Spacing | None | `1px` | Better readability |
| Body Font Size | `20px` | `22px` | Improved readability |
| Body Bottom Margin | `25px` | `30px` | Better spacing |
### Tutorial Panel
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Overlay Background | `rgba(0, 0, 0, 0.4)` | `transparent` | Keep game visible |
| Overlay Z-Index | `9999` | `1400` | Below minigames (1500+) |
| Panel Background | `linear-gradient(135deg, #1a1a2e 0%, #16213e 100%)` | `rgba(0, 0, 0, 0.95)` | Consistency with other panels |
| Border Radius | `12px` | `0` (removed) | Pixel-art aesthetic |
| Bottom Position | `20px` | `100px` | More clearance above inventory |
| Max Height | None | `calc(100vh - 120px)` | Prevent going off screen |
| Overflow | Hidden | `auto` with scrollbar | Handle tall content |
| Box Shadow | Basic shadow | Enhanced double shadow | Better depth |
| Inner Glow | Inline style | `::before` pseudo-element | Better implementation |
### Buttons (Primary)
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Border Radius | `6px` | `0` (removed) | Sharp corners |
| Box Shadow | Single shadow on hover | Layered 3D effect | Better depth perception |
| Hover Transform | `translateY(-2px)` | `translateY(-2px)` (kept) | Good interaction |
| Active State | None | `translateY(0px)` with adjusted shadow | Button press feedback |
| Letter Spacing | None | `1px` | Better readability |
### Buttons (Secondary)
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Background | `transparent` | `rgba(0, 0, 0, 0.5)` | More visible |
| Color | `#888` | `#aaa` | Better contrast |
| Hover Color | `#aaa` | `#fff` | Stronger feedback |
| Box Shadow | None | `0 2px 0 #222` | Depth effect |
### Progress Indicator
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Font Size | `18px` | `20px` | Better visibility |
| Letter Spacing | `1px` | `2px` | More emphasis |
| Text Shadow | None | `0 0 8px rgba(0, 255, 136, 0.5)` | Accent glow |
### Skip Button
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Border | `1px solid #444` | `2px solid #444` | Consistent with game |
| Border Radius | `4px` | `0` (removed) | Pixel-art aesthetic |
| Font Size | `16px` | `18px` | Better readability |
| Letter Spacing | None | `1px` | Consistency |
| Text Transform | None | `uppercase` | Better emphasis |
| Hover Background | None | `rgba(255, 107, 107, 0.1)` | Better feedback |
| Hover Box Shadow | None | `0 0 10px rgba(255, 107, 107, 0.3)` | Red glow warning |
### Tutorial Title
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Font Size | `16px` | `18px` | Better hierarchy |
| Margin Bottom | `12px` | `15px` | Better spacing |
| Letter Spacing | None | `1px` | Consistency |
### Tutorial Instruction
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Font Size | `20px` | `22px` | Better readability |
| Line Height | `1.5` | `1.5` (kept) | Good value |
### Objective Box
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Border Left | `3px solid #00ff88` | `4px solid #00ff88` | More prominent |
| Border Radius | `4px` | `0` (removed) | Pixel-art aesthetic |
| Padding | `10px 15px` | `12px 16px` | Better spacing |
| Animation | None | `objective-pulse` (2s infinite) | Draw attention |
| Completed State | None | `.completed` class with green | Visual feedback |
### Objective Label (strong)
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Font Size | `12px` | `13px` | Slightly larger |
| Margin Bottom | `5px` | `8px` | Better spacing |
| Text Transform | None | `uppercase` | Emphasis |
| Letter Spacing | None | `1px` | Consistency |
### Objective Text
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Font Size | `18px` | `20px` | Better readability |
| Line Height | None | `1.4` | Better multi-line |
### Tutorial Actions
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Border Top | None | `2px solid #444` | Visual separation |
| Padding Top | None | `15px` | Better spacing |
### Continue Button
| Property | Before | After | Reason |
|----------|--------|-------|--------|
| Border Radius | `6px` | `0` (removed) | Pixel-art aesthetic |
| Box Shadow | Single on hover | Layered 3D effect | Better depth |
| Letter Spacing | None | `1px` | Consistency |
| Text Transform | None | `uppercase` | Emphasis |
## New Features Added
### 1. Completion State
```css
.tutorial-objective.completed {
border-left-color: #4ade80;
background: rgba(74, 222, 128, 0.1);
animation: none;
}
```
Visual feedback when objectives are completed.
### 2. Objective Pulse Animation
```css
@keyframes objective-pulse {
0%, 100% {
border-left-color: #00ff88;
box-shadow: 0 0 5px rgba(0, 255, 136, 0.3);
}
50% {
border-left-color: #00cc6a;
box-shadow: 0 0 15px rgba(0, 255, 136, 0.5);
}
}
```
Draws attention to current objective.
### 3. Focus States
```css
.tutorial-btn:focus,
.tutorial-next:focus,
.tutorial-skip:focus {
outline: 3px solid #00ff88;
outline-offset: 3px;
}
```
Accessibility for keyboard navigation.
### 4. Reduced Motion Support
```css
@media (prefers-reduced-motion: reduce) {
/* All animations disabled */
}
```
Respects user accessibility preferences.
### 5. High Contrast Mode
```css
@media (prefers-contrast: high) {
/* Enhanced borders and shadows */
}
```
Better visibility for users with visual needs.
## Color Palette Used
| Color | Hex | Usage |
|-------|-----|-------|
| Primary Accent | `#00ff88` | Borders, titles, primary buttons |
| Primary Accent Dark | `#00cc6a` | Button hover/active states |
| Primary Accent Darker | `#00aa55` | Deep shadow effects |
| Success Green | `#4ade80` | Completion indicators |
| Warning Red | `#ff6b6b` | Skip button hover |
| Text Primary | `#fff` | Main text |
| Text Secondary | `#e0e0e0` | Body text |
| Text Tertiary | `#aaa` | Secondary buttons |
| Border Standard | `#444` | Dividers, inactive borders |
| Border Light | `#666` | Hover states |
| Background Dark | `rgba(0, 0, 0, 0.95)` | Panel backgrounds |
| Background Overlay | `rgba(0, 0, 0, 0.85)` | Full-screen overlays |
## Typography Scale
| Element | Font | Size (Desktop) | Size (Mobile) |
|---------|------|----------------|---------------|
| Modal Title | Press Start 2P | 20px | 16px |
| Panel Title | Press Start 2P | 18px | 14px |
| Button Text | Press Start 2P | 12px | 10px |
| Objective Label | Press Start 2P | 13px | 11px |
| Progress Text | VT323 | 20px | 18px |
| Body Text | VT323 | 22px | 20px |
| Instruction Text | VT323 | 22px | 20px |
| Objective Text | VT323 | 20px | 18px |
| Skip Button | VT323 | 18px | 16px |
## Spacing System
| Property | Desktop | Mobile |
|----------|---------|--------|
| Modal Padding | 30px | 20px |
| Panel Padding | 20px 25px | 15px 18px |
| Button Padding (Primary) | 12px 24px | 10px 16px |
| Objective Padding | 12px 16px | 10px 12px |
| Section Gap | 15px | 12px |
| Button Gap | 15px | 10px |
## Animation Timing
| Animation | Duration | Easing | Purpose |
|-----------|----------|--------|---------|
| fadeIn | 0.3s | ease-in | Overlay appearance |
| slideDown | 0.4s | ease-out | Modal entrance |
| slideUp | 0.4s | ease-out | Panel entrance |
| objective-pulse | 2s | ease-in-out (infinite) | Draw attention |
| hover transitions | 0.2s | ease | Button interactions |
## Summary of Changes
- ✅ Removed all border-radius for pixel-art aesthetic
- ✅ Replaced gradients with solid dark backgrounds
-**Removed dark overlay** - game stays fully visible
-**Proper z-index layering** - tutorial below minigames (1400 vs 1500)
-**Pointer events management** - clicks pass through overlay
-**Screen positioning** - max-height prevents going off top of screen
-**Smart content handling** - scrollable if content is too tall
-**Conditional steps** - objectives step skipped if scenario has none
- ✅ Added 3D depth to buttons with layered shadows
- ✅ Increased font sizes for better readability
- ✅ Added letter-spacing for consistency
- ✅ Enhanced hover and active states
- ✅ Added pulsing animation to objectives
- ✅ Implemented completion visual feedback
- ✅ Added accessibility features (focus, reduced-motion, high-contrast)
- ✅ Improved mobile responsiveness
- ✅ Better positioning relative to game HUD
- ✅ Consistent color palette with rest of game
- ✅ Added inner glow effects with pseudo-elements