K8s Games v1.1.0
K8s Draw — 3D Architecture Diagramming (/draw)
A brand new tool at k8sgames.com/draw — like Excalidraw but for Kubernetes in 3D.
- Drag-drop 21 K8s resource types onto a 3D canvas
- Draw connection lines between resources
- Double-click to rename any resource
- Auto-layout organizes by tier (Nodes → Workloads → Networking → Storage → RBAC)
- Export as YAML (correct apiVersions) or PNG screenshot
- Share diagrams via URL — one-click copy
- Properties panel: edit name, namespace, labels, replicas
Investigation-Gated Resolution
Incidents now require actual investigation before resolving — teaching real SRE workflow.
- Resolve button locked until 2+ investigation commands are run
- 35 incident types now have investigation steps (was 6 hardcoded)
- Click investigation step → copies command to command bar
- Progress counter shows "2/3 investigated"
- Investigation progress persists across page reloads
Easter Eggs
kubectl get coffee→ ☕ + 5 XPkubectl explain life→ "42. That's it."kubectl run --image=doom→ 🎮 + 10 XPkubectl delete ns kube-system→ 💀 + 25 XPsudo kubectl→ "Permission denied. Just kidding"- Create a pod named
konami→ 🕹️ + 100 XP - Click "K8s Games" logo 7 times → 🎉 Party mode (10s rainbow)
- 5 new secret achievements
kubectl explain Command
Type kubectl explain pod.spec.containers to see real K8s API docs inline. Supports 20 resource types with field drill-down and all aliases.
New Features
- Settings Panel — difficulty presets (Easy/Normal/Hard/Nightmare), display toggles, camera speed, export save, reset progress
- Achievement toast notifications — animated slide-in popup when achievements unlock
- Real metrics dashboard — CPU/memory charts now show actual cluster data instead of random noise
- Ingress Path Picker — dialog on Ingress creation to define path-based routing (fixes Level 10)
- 6 new incident types — StatefulSetOrderedReadyStuck, ResourceQuotaExceeded, InitContainerCrash, LoadBalancerPending, WebhookAdmissionRejection, LivenessProbeFailure
Bug Fixes
- Fixed HUD XP diverging from ScoringEngine (was using its own formula)
- Fixed 3 dead event listeners making achievements unreachable
- Fixed ScoringEngine only tracking 7 of 25 resource types (now 18)
- Fixed Settings button ID conflict between main menu and in-game panel
- Fixed Level 10 route objective checking wrong Ingress path nesting
- Fixed draw mode resource colors (disabled simulation tick)
- Fixed draw mode rename not updating 3D labels
- Fixed XSS in draw properties panel
- Fixed shared diagram connections lost on reload
Stats
- 41 incident types (was 29)
- 51 achievements (was 40)
- 16+ kubectl commands including
explain - ~18,000 lines of JavaScript