Files
neon-survivors-dev 796880375e NEON SURVIVORS v1.1 — full-featured bullet-heaven survivor game
Vanilla JS + Canvas, zero dependencies, offline-first PWA.

Gameplay:
- 11 weapons x8 levels + 11 evolutions (chest-based), incl. timed mines
- 13 passives, crit system with directional hit-sparks & hit-stop
- 10 characters w/ unique mods + unlock conditions, gold cosmetic skins
- 3 biomes (Neon Graveyard / Frozen Hollow / Magma Rift) each with own
  spawn tables, boss plans and music flavor; Endless mode + surges;
  4 difficulty grades; breakable crystal-lamp props
- Elite random affixes (Swift/Sturdy/Volatile), 4 bosses, win flow
- Achievements (23) w/ gold rewards, run history, daily seeded challenge

Tech:
- Cinematic canvas main-menu scene, game-feel FX suite (trails, muzzle,
  status tints, low-HP pulse), viewport culling + particle pooling
- WebAudio synth SFX + generative per-biome soundtrack
- Gamepad support, remappable keys, touch joystick, fullscreen
- i18n VI/EN, localStorage saves w/ export-import codes
- Cloudflare Workers leaderboard scaffold (KV) w/ signed submits
- Headless integrity test-suite (node test/integrity.js)
2026-08-23 07:01:22 +00:00

123 lines
6.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 📊 GAP ANALYSIS — Thương mại hóa NEON SURVIVORS
> Trạng thái đánh giá: bản hiện tại (v1.0 — core loop hoàn chỉnh, playable end-to-end).
> Mục tiêu: trả lời "thiếu gì để bán được tiền / lên store".
---
## 1. Điểm mạnh sẵn có (không phải làm lại)
| Hạng mục | Trạng thái |
|---|---|
| Core loop | ✅ Hoàn chỉnh: bắn tự động, XP, level-up choice, chest/evolution, boss, win/lose |
| Nội dung nền | 10 vũ khí + 10 tiến hóa, 13 passive, 8 nhân vật, 8 loại quái, 4 trùm |
| Meta progression | Vàng vĩnh viễn + 12 nâng cấp shop + unlock nhân vật theo thành tích |
| Kỹ thuật | Không dependency, offline-first, WebAudio tự sinh, test headless, dev tools |
| Platform-ready | Touch + desktop, responsive DPR, i18n VI/EN, localStorage |
→ Đây là mức **"vertical slice tốt"**. Khoảng cách tới sản phẩm thương mại nằm ở các nhóm dưới.
---
## 2. Khoảng trống — xếp theo độ chặn đường kinh doanh
### 🔴 Nhóm A — CHẶN BÁN (bắt buộc có trước khi thu tiền)
| # | Thiếu | Vì sao chặn | Effort |
|---|---|---|---|
| A1 | **Art thật thay programmer-art** | Emoji + hình vector là chuẩn prototype. Store screenshot/video quyết định 80% conversion. Đây là điểm yếu lớn nhất | Lớn (asset pack ~$50300 hoặc commission $5002000) |
| A2 | **Âm nhạc/nhạc stage** | Loop generative 1 track duy nhất → nghe chán sau 10 phút. Cần 35 track (menu/stage/boss) + stingers thắng/thua | Trung ($20 license pack hoặc commission) |
| A3 | **Đủ nội dung để chơi lại (replayability)** | 1 stage duy nhất × 20 phút × cùng timeline mỗi lần = người chơi hết việc sau 23 giờ. Genre chuẩn cần ≥3 stage + endless + độ khó leo thang | Trung — code sẵn chỗ cắm (SPAWN_TABLE/BOSSES là data) |
| A4 | **Tutorial onboarding** | Hiện 1 dòng toast. Người mới không hiểu evolution/chest/meta → churn ngay phút đầu | Nhỏ |
| A5 | **Pháp lý**: Privacy Policy, EULA, tuổi (IARC), kiểm tra trùng tên "Neon Survivors" | Store từ chối duyệt nếu thiếu; trademark trùng bị gỡ | Nhỏ (giấy tờ) + phí nền tảng |
### 🟠 Nhóm B — QUYẾT ĐỊNH DOANH THU (chọn mô hình thì làm)
Tùy mô hình:
**Premium (Steam, $4.99 — mô hình của chính Vampire Survivors):**
| # | Thiếu | Ghi chú |
|---|---|---|
| B1 | Steam wrapper (Tauri/Electron) + Steamworks: achievements, cloud save, overlay | Cần tài khoản Steam partner ($100/app) |
| B2 | **Achievements hệ thống trong game** (3050 thành tựu gắn unlock) | Hiện chưa có khung achievement |
| B3 | DLC pipeline: bộ nhân vật/stage/cosmetic bán thêm | Cần tách data content khỏi code (đang hard-code JS) |
| B4 | **Mod support** (Workshop) | VS sống dai nhờ mod; yêu cầu data-driven + sandbox loader |
**F2P (mobile/web portal):**
| # | Thiếu | Ghi chú |
|---|---|---|
| B5 | **Rewarded ads** (xem quảng cáo: hồi sinh, x2 vàng, reroll thêm) | Nguồn thu chính F2P; tích AdMob/AppLovin |
| B6 | IAP: gói khởi đầu, skin nhân vật/vũ khí, bỏ quảng cáo | Cần cosmetic system (hiện không có skin layer) |
| B7 | Daily quests + daily login + mission chain | Retention D1/D7 |
| B8 | Battle pass mùa (nếu đủ scale) | Chỉ làm khi có DAU |
### 🟡 Nhóm C — GIỮ NGƯỜI CHƠI & VẬN HÀNH
| # | Thiếu | Ghi chú |
|---|---|---|
| C1 | **Leaderboard** (daily-seeded run, global + bạn bè) | Cần backend nhẹ — hợp nhất: Cloudflare Workers + KV/D1 (đang dùng CF tunnel sẵn) |
| C2 | Cloud save / account | Cùng backend ở trên; cần chống sửa save (checksum/signed) |
| C3 | Analytics funnel (install→phút 5→churn), remote config để tune balance không cần update | Tự host hoặc PostHog/Firebase |
| C4 | Crash reporting (Sentry), profiling budget 60fps mobile low-end | |
| C5 | Run history / stats cá nhân theo nhân vật-stage, best từng loại | |
| C6 | Live-ops cadence: cập nhật nhân vật/vũ khí 48 tuần/lần | Quy trình, không phải code |
### 🟢 Nhóm D — CHẤT LƯỢNG & TIỆN NGHI (nâng cấp dần)
| # | Thiếu | Ghi chú |
|---|---|---|
| D1 | **Gamepad support + remap phím** | Genre này kỳ vọng cao; Gamepad API |
| D2 | Viewport culling + object pooling | Hiện render mọi entity kể cả ngoài màn hình; GC pressure do tạo object liên tục — quan trọng cho mobile low-end |
| D3 | Seeded RNG | Math.random hiện tại — chặn daily-challenge/replay/anti-cheat |
| D4 | Fullscreen toggle, khóa hướng ngang mobile, PWA manifest | |
| D5 | Accessibility: colorblind palette, giảm motion, chữ to | |
| D6 | Save slot + export/import code | |
| D7 | Bản dịch thêm (ES/PT-BR/ZH/JA...) — khung i18n sẵn | |
| D8 | Interactive props trong trận (đèn phá rơi vàng, bẫy môi trường) | Genre-standard juice |
---
## 3. Roadmap đề xuất
```
PHASE 1 — "Store-ready core" (24 tuần dev)
├─ D2 culling + pooling (perf mobile)
├─ D1 gamepad + D4 fullscreen/PWA
├─ A4 tutorial tương tác run đầu
├─ A3 stage #2/#3 (biome + boss riêng) + Endless + Difficulty grade
├─ B2 khung achievements (30 cái) — dùng chung cho Steam sau này
├─ C5 run history
└─ D3 seeded RNG (chuẩn bị daily)
PHASE 2 — "Thu tiền được" (song song art/audio)
├─ A1+A2 art pack + soundtrack
├─ A5 pháp lý + chọn model (premium vs F2P)
├─ Steam build (B1) HOẶC mobile build (B5B7)
└─ C3 analytics + remote config
PHASE 3 — "Sống lâu"
├─ C1+C2 leaderboard/cloud-save (Cloudflare Workers)
├─ B3 DLC / B8 pass
├─ B4 mod support
└─ C6 live-ops nhịp 48 tuần
```
Chi phí nền tảng tham khảo: Steam $100/app · Google Play $25 một lần · Apple $99/năm · Web portal (Poki/CrazyGames): miễn phí, chia doanh thu quảng cáo.
---
## 4. Tôi có thể code NGAY trong repo này (không cần asset ngoài)
1. **D2** Viewport culling + object pool cho Particle/Proj (perf)
2. **D1** Gamepad API + remap phím
3. **A3** Stage system: 2 biome mới + Endless mode + difficulty grade (data-driven sẵn)
4. **B2** Khung achievements + popup + gắn unlock (dùng luôn điều kiện cond của nhân vật)
5. **D3** Seeded RNG + **Daily Challenge** (seed theo ngày UTC, lưu best local)
6. **A4** Tutorial tương tác (mốc: di chuyển → lên cấp → chọn → mở rương → gặp trùm)
7. **C5** Run history + trang stats
8. **D6** Export/import save code (base64)
9. **D8** Props phá được (đèn đá rơi vàng/chicken)
10. **D4** Fullscreen + PWA manifest
> Nói "làm phase 1" (hoặc liệt kê số) là tôi triển khai tiếp.