diff --git a/www/html/session-summary-2026-06-14.md b/www/html/session-summary-2026-06-14.md new file mode 100644 index 0000000..cb01d62 --- /dev/null +++ b/www/html/session-summary-2026-06-14.md @@ -0,0 +1,63 @@ +# Justice Game — สรุปงาน 2026-06-14 + +## [1] CARD BAN (การ์ดแบนผู้เล่น) — แก้หลายชั้น + +1. **หน้าโหวตไม่เด้ง** + - สาเหตุ: ไม่มี CSS ของ `#pick-vote-overlay` เลยทั้งโปรเจกต์ + (JS สร้าง div แต่ไม่มี style เลยจมหลัง UI lobby) + - แก้: เพิ่ม CSS modal กลางจอ ธีม neon-cyan (room-lobby.css) + +2. **คนถูกแบนควรเข้าไปดูเพื่อนเล่นได้ แต่เล่นเองไม่ได้** + - ทำ spectator mode: + - input-shield คลุมจอ (กันปุ่ม/จอย/canvas) + - บล็อกคีย์บอร์ด + - ป้ายแดง "คุณถูกแบนรอบนี้" + - server กันไม่ให้ได้เหรียญ/หลักฐาน (peer.bannedSpectator) + +3. **แบนแล้วไม่มีผล** + - สาเหตุ: ID ไม่ตรง (โหวตได้ `__lobby_bot_N` แต่บอทที่เล่นคือ `__pv_bot_N`) + - แก้: map กันให้ตรง (URL `&banBot=N`) + - แบนคน = เข้าเกมเป็น spectator + - แบนบอท = ไม่ลงเล่นรอบนั้น (rebalancePreviewBots ข้าม slot) + +## [2] ระบบเกรด + การ์ดรางวัล + +- ตรวจแล้ว rarity ต่อเกรด "ตรงสเปกอยู่แล้ว": + - เกรด A : ชี้คนร้าย 30% / rare 50% / ธรรมดา 20% + - เกรด B : ชี้คนร้าย 20% / rare 30% / ธรรมดา 50% + - เกรด C : rare 20% / ธรรมดา 80% + - threshold A>=80, B>=60, C<60 +- แก้ MG2/MG5 ให้คิดเกรดจาก "คะแนนเฉลี่ยทุกคน" (เดิมใช้จำนวนผู้รอด) -> ทุกเกมใช้วิธีเดียวกัน + +## [3] ตรวจ + แก้ SCORING รายเกม + +- **MG2 (กับดัก):** ตรงสเปกทั้งหมด — เริ่ม 100, ชน -10, อันดับ +100/80/60, + คะแนนเท่า=อันดับเท่า, ตกขอบจอ=ตายทันที +- **MG6 (ยิงอุกกาบาต):** ยิงโดน +5 (ok), ชน 3 ครั้ง=ตาย (ok) + - แก้: เวลา 90 -> 60 วินาที, เพิ่ม +20 โบนัสรอดจนจบ +- **MG7 (ยิงบอส):** คง +10/โดนบอส + - เพิ่ม: -5/ยิง (clamp 0), +100 ฆ่าบอส (ทุกคน), +10 ผู้รอดชีวิต + +## [4] CSS / UI + +- **MG5/MG6 หน้าสรุปผล:** ขาดไฟล์ `mission-complete.png` (Jumper/ViolentCrime) + -> copy จาก QUESTION ทำให้ช่อง "โบนัสพิเศษ" ตรงกับเกมอื่น +- **MG4 icon คำถามพิเศษเกิดบนโต๊ะ:** โต๊ะวาดใน background แต่ grid ไม่ได้มาร์ค + -> ให้ icon เกิดใกล้จุดผู้เล่น + เว้น buffer รอบ hub/โต๊ะ +- **MG7 avatar + ปุ่ม SHOOT:** avatar ตรง design อยู่แล้ว (1729,21) + -> เพิ่มปุ่ม SHOOT มุมขวาล่าง (1648,818, Artboard 8.png) แตะยิงได้ + +## [5] ค้างอยู่ + +- `[ban-debug]` log ยังอยู่ใน server.js (รอยืนยัน Card Ban ใช้งานได้ครบก่อนถอด) +- ถ้า MG7 avatar/ปุ่มยังเพี้ยนตอนเล่นจริง รอ screenshot เพื่อจูนพิกัด + +## ไฟล์ที่แก้ (deployed prod) + +- `Game/server.js` — grade, ban, bannedSpectator, MG4 spawn, ban-debug log +- `Game/public/js/play.js` — spectator UI, MG6/MG7 scoring, MG7 SHOOT button, banBot +- `Game/public/js/room-lobby.js` — pick-vote nav, banned/banBot +- `Game/public/css/room-lobby.css` — pick-vote overlay CSS (v0.0175) +- `Game/public/play.html` — play.js v0.006131821 +- `Game/public/room-lobby.html` — room-lobby.js v0.0278 +- `Game/public/img/{Jumper,ViolentCrime}/mission-complete.png` — เพิ่มใหม่