All MicroEvals
Bạn là Senior Game Engineer + Graphics Programmer + Gameplay...
Create MicroEval
Header image for Bạn là Senior Game Engineer + Graphics Programmer + Gameplay...

Bạn là Senior Game Engineer + Graphics Programmer + Gameplay...

Prompt

Bạn là Senior Game Engineer + Graphics Programmer + Gameplay/AI Engineer. Lưu ý trong game chỉ có tiếng việt mà thôi. Hãy tạo một game chiến thuật auto-battler phong cách “Đấu Trường Chân Lý / TFT” (tham chiếu cơ chế chung) nhưng IP HOÀN TOÀN MỚI (tên game, tướng, hệ/tộc, item đều tự tạo). Game chạy OFFLINE chỉ bằng 1 file duy nhất index.html: mở bằng Chrome/Edge là chơi ngay. 0) PHÁP LÝ / IP Tuyệt đối không dùng tên/asset/nhân vật/UI/biểu tượng/nhạc của bất kỳ game thương mại nào. Tạo tên game mới + logo chữ đơn giản tự vẽ (Canvas2D/text). 1) RÀNG BUỘC KỸ THUẬT (BẮT BUỘC) Chỉ WebGL1: canvas.getContext('webgl') hoặc 'experimental-webgl'. Không WebGL2. Prompt_Fifa Shader GLSL ES 1.00 (attribute/varying, không #version 300 es). Không engine / không thư viện / không CDN / không file ngoài. Tất cả HTML/CSS/JS nhúng trong index.html. Prompt_Fifa UI vẽ bằng Canvas2D overlay (HUD, shop, bench, tooltip). Có state machine tối thiểu: Menu → Game → Pause → Result. PromptMineCraft Nếu tab mất focus → auto pause (không crash / không “màn hình đen”). Prompt_Fifa 2) VÒNG LẶP ROUND (BẮT BUỘC GIỐNG TFT VỀ “PLACEMENT”) Mỗi round có 2 pha: Planning Phase (ví dụ 25s): người chơi kéo-thả tướng lên các ô trên board để “set vị trí” (frontline/backline). Trong planning cho phép đổi vị trí thoải mái. Combat Phase = 20 GIÂY CỐ ĐỊNH: bắt đầu combat, khóa vị trí ban đầu, tướng tự đánh/di chuyển/ra skill. Combat luôn chạy đủ 20s rồi mới sang round tiếp theo (dù đã clear hết sớm thì vẫn chờ hết timer và hiển thị “Round End in …”). Sau combat: tính thắng/thua, trừ HP, cộng gold, rồi sang round kế tiếp. 3) GAMEPLAY TỐI THIỂU (ĐỦ “CHƠI ĐƯỢC”, KHÔNG QUÁ NẶNG) Board Board dạng grid (khuyến nghị 7×4 ô). Mỗi ô là “cell” đặt tướng (snap-to-cell, highlight ô hợp lệ). Có bench 8 slot (kho dự bị). Shop & Economy Shop có 5 slot/round. Có gold, income cơ bản theo round + win/loss đơn giản. Nút: Reroll (D): -2 gold Buy XP (F): -4 gold Level giới hạn số unit trên board: Level 1→1, … cap khoảng 6. Units Tối thiểu 12 tướng (procedural low-poly) chia cost 1–3. Mỗi tướng có stat đơn giản: HP, AD, AS, range, moveSpeed. Mỗi tướng có 1 skill đơn giản (chọn từ: projectile, heal, shield, aoe stun/slow). Merge (giảm độ phức tạp nhưng vẫn “đúng chất”) 3 bản sao cùng tướng → lên 2★ (không cần 3★ để nhẹ). Traits Mỗi tướng có 2 tag: 1 “Origin” + 1 “Class”. Tối thiểu 4 Origin + 4 Class. Mốc kích hoạt đơn giản: 2/3/4 (tùy bạn), bonus dễ kiểm tra (HP%, AS%, shield…). UI panel hiển thị trait đang active. AI Opponent Tối thiểu 3 AI (tổng 4 người chơi). AI mua tướng theo 1 build trait ngẫu nhiên, đặt frontline/backline đơn giản, đủ để chơi tới endgame. 4) COMBAT (AUTO FIGHT) Targeting: ưu tiên mục tiêu gần nhất trong range. Di chuyển: đơn giản (greedy tới ô gần địch nhất), tránh chồng lên nhau ở mức cơ bản. Attack theo cooldown; skill cast theo mana/timer đơn giản. Hiển thị VFX nhẹ + damage number (Canvas2D hoặc billboard). 5) ĐỒ HỌA & UI (MỨC VỪA) Render 3D isometric nhẹ: board + unit low-poly, 1 directional light + ambient. UI Canvas2D: Timer planning/combat (combat đếm từ 20) Gold/Level/HP Shop 5 slot + nút Reroll/XP Bench bar Tooltip unit (cost, trait, star) 6) CONTROLS (GIỐNG CẢM GIÁ “ĐẶT TƯỚNG”) Chuột: Click mua tướng từ shop (đẩy vào bench nếu còn chỗ) Drag & drop tướng từ bench lên board và đổi vị trí trên board Right click tướng: sell Phím: D reroll, F buy XP, Esc pause 7) OUTPUT FORMAT (BẮT BUỘC) Trả về DUY NHẤT nội dung file index.html (CSS+JS nhúng) trong 1 khối code duy nhất, không giải thích dài ngoài code. Đầu file có 3 dòng hướng dẫn: lưu index.html, mở trình duyệt, controls. Sau code, thêm “Quick sanity checklist” 8–10 gạch để test (mua, kéo thả, khóa vị trí khi combat, combat đúng 20s, round chuyển tiếp, AI hoạt động, thắng/thua…). Bắt đầu tạo index.html ngay bây giờ.

A system prompt was added to support web rendering

Response not available

Drag to resize