Commit Graph

17 Commits

Author SHA1 Message Date
rizkyaz0 7f336df6e5 Latihan lanjutan, rival adaptif, dan perbaikan AI jurus area (RENCANA 6.5 dan 6.6)
Perbaikan AI: CPU hampir tidak pernah memakai skill 2 milik Ethanol Man (TAWA MELEDAK) dan Solo Man (SARUNG PUTAR). Penyebabnya, cpuPick selalu mendahulukan pukulan dasar (161 px) yang menutup lingkaran jurus area (135 dan 140 px), dan penutup kombo cpuFollowUp tidak pernah lolos cpuLands. Kini cpuAreaKit/cpuAreaFits mendahulukan jurus area pemusat-diri bila lawan di dalam lingkarannya (selisih 12 px, sejajar tinggi, tidak sedang berjalan keluar, pukulan pemain yang sedang disiapkan tidak mendarat lebih dulu), dan CPU berdiri lebih rapat saat jurus itu siap. Karakter lain dan urutan random() mesin tidak berubah.

Rival adaptif (ai.js, window.AIAdapt): CPU di versus mengingat kebiasaan pemain dalam satu pertandingan lewat jendela bergulir (melompat, memblok, memukul dekat, menembak dari jauh) dan menggeser sedikit antiAir, evade, punish, speed, aggression, dan peluang jurus didahulukan. Kekuatan mengikuti tingkat (easy hampir nol), dua arah, tanpa membaca tombol dan tanpa menyentuh damage atau HP. Layar hasil menampilkan satu kalimat "Rival belajar: kamu sering ..." bila ada kebiasaan dominan. Reset di startMatch.

Latihan lanjutan (training.js, training.css): tombol DUMMY di arena latihan membuka panel dengan perilaku dummy (Diam, Blok terus, Lompat terus, Serang acak, Ikuti pemain, CPU penuh), Reset posisi, Tampilkan hitbox, Tampilkan frame data (startup, aktif, recovery, total, jangkauan), Darah dummy tak terbatas, penghitung kombo dan damage, serta Rekam dan Putar ulang input pemain (maksimal 10 detik, dijadwalkan menurut waktu simulasi dengan benih random() yang sama, hasil dibandingkan dengan rekaman). Hanya aktif di latihan biasa, tidak di tutorial.

Kait di game.js dibuat satu baris (Training dan AIAdapt dipanggil dengan ?.). Catatan di docs/ENGINE_NOTES.md, laporan keseimbangan, dan komentar uji pasangan diperbarui. precache.js dan files.json tidak disentuh: perlu dibangun ulang oleh integrator untuk berkas baru.
2026-10-05 14:54:39 +07:00
rizkyaz0 806dec41b6 Uji otomatis satu perintah (RENCANA 5.4): node tests/all.mjs menjalankan sintaks semua JS, smoke, 49 pasangan arah singkat oleh bot (galat konsol, angka tidak wajar, jurus terpakai, data peringkat, tampilan Koleksi); perintah dicatat di ENGINE_NOTES dan README 2026-10-05 14:12:57 +07:00
rizkyaz0 3839869adb Simulator keseimbangan (RENCANA 5.1): bot pemain sederhana untuk sisi hero (jarak, kombo yang pasti kena, skill menurut jangkauan data, blok/parry/lompat setelah jeda reaksi, ultimate sebagai balasan), simulator 7 x 7 di kedua posisi tanpa render (BAL_N, BAL_WORKERS, BAL_ONLY, BAL_BOT, BAL_BASE, BAL_JSON), laporan Markdown dan hasil ringkas sebelum penyetelan 2026-10-05 14:12:57 +07:00
rizkyaz0 db14b18417 Dialog pasangan: balon pembalas muncul belakangan di sisi mana pun, rapikan beberapa baris dialog, dan lepas berkas uji t3-dialog (mode ringan: diuji manual); catatan mesin diperbarui 2026-10-04 06:58:03 +07:00
rizkyaz0 f24f7bccd9 Dialog pasangan di layar VS (21 pasangan, balon ucapan kiri-kanan) dan easter egg berpasangan: empat dialog rahasia berlabel DIALOG RAHASIA, +75 koin sekali per pasangan, pencapaian REUNI; layar VS ber-dialog tampil 3,3 dtk; uji tests/t3-dialog.mjs dan penyesuaian tunggu VS di t2-vsresult 2026-10-04 01:17:16 +07:00
rizkyaz0 deb7df20d0 Tambah uji regresi layar hasil dan VS: menu tidak menutupi arena setelah MAIN LAGI, Spasi/Enter tidak memulai ulang, toast tidak menutupi bilah VS, Statistik tidak meluap di layar pendek dan potret; catat di ENGINE_NOTES 2026-10-04 00:45:09 +07:00
rizkyaz0 4743c24246 Rapikan integrasi Tahap 2: catatan Yang baru memuat HUD, VS, dan layar hasil; tes arcade menunggu layar VS (bukan tidur tetap); catatan mesin 2026-10-03 08:24:58 +07:00
rizkyaz0 00771939ff Gabungkan wf/t2-brand: latar kolase, bersih-bersih sisa AETHER, kutipan loading, daftar Yang baru (Tahap 2.5, 2.7, 2.8)
Konflik index.html diselesaikan per token: teks Indonesia, kutipan loading, dan skrip brand dari brand; meter ultimate, panel jeda dua kolom, vs.css, dan skrip quotes/vs dari HUD dan vsresult dipertahankan.
2026-10-03 07:55:05 +07:00
rizkyaz0 2531a58f65 Gabungkan wf/t2-vsresult: layar VS, layar hasil baru, dan kutipan karakter (Tahap 2.2, 2.3, 2.6)
Konflik index.html: baris skrip akhir dan panel jeda; dipertahankan panel jeda dua kolom dari HUD dan ditambahkan content/quotes.js serta vs.js dari vsresult.
2026-10-03 07:54:35 +07:00
rizkyaz0 cc923f35ad Bersihkan sisa AETHER CLASH, kutipan layar loading, dan daftar Yang baru (RENCANA 2.5, 2.7, 2.8)
- Latar menu utama dan About: kolase tujuh potret petarung dengan CSS (lapisan miring, cahaya, gerak lambat yang menghormati prefers-reduced-motion); video dan banner game asal tidak dipakai lagi (berkas aset tetap ada)
- Teks sisa AETHER/ARCO/FENR/Mecha/Demi-Human dibersihkan dari index.html, tag arena, pengaturan, label aksesibilitas, dan dokumen; kredit Bang Tutorial tetap di About dan README
- brand.js, content/loading.js: kutipan acak berbahasa Indonesia di layar boot dan loading, berganti tiap dimuat
- brand.js, content/changelog.js: panel Yang baru di About dan toast Ada yang baru satu kali saat versi berubah
- README ditulis ulang untuk Konoha Fighting, DEPLOY.md dan catatan mesin diperbarui
- tests/t2-brand.mjs: 51 pemeriksaan
2026-10-03 07:53:09 +07:00
rizkyaz0 2315bbe5ed Tambah layar VS sebelum ronde 1, layar hasil baru dengan rincian koin, dan kutipan karakter
- vs.js + vs.css: layar VS sekitar 2,2 detik (dua potret, nama, tag, kutipan pembuka, teks VS, bisa dilewati klik/Spasi/Enter/Esc), hanya untuk versus/Arcade/Survival/dua pemain, tidak di latihan. Cue Round 1 ditunda sampai layar selesai; urutan intro, FIGHT, dan announcer tetap utuh
- ResultView: pemenang besar dengan kutipan menang, yang kalah redup dengan kutipan kalah, rincian koin per baris, statistik singkat, tombol Main lagi / Pilih ulang / Ke toko / Menu utama; akhir Arcade/Survival memakai tampilan yang sama
- Meta.award menyimpan rincian koin di Meta.lastAward tanpa mengubah jumlah koin
- content/quotes.js: kutipan intro/win/lose untuk 7 karakter; build_precache.py ikut memuat folder content/
- tests/t2-vsresult.mjs: uji headless VS, lewati/batal, hasil, Arcade/Survival, jalur menu, ponsel lanskap
2026-10-03 07:35:36 +07:00
rizkyaz0 cbd193a46b Tambah meter ultimate di HUD (SIAP/mode) dan daftar gerakan di menu jeda (Tahap 2.1 dan 2.4)
Meter ultimate tipis di bawah HP pemain dan lawan: terisi mengikuti cooldown ultimate, berdenyut berlabel SIAP, dan menjadi bar waktu mode yang menyusut (nama mode, warna aura) untuk 6 karakter berbasis data, mode mengamuk Bro Wo, bentuk Senator A Nice, serta feral FENR. Data sama untuk CPU dan P2.
Menu jeda memuat bagian Daftar gerakan yang dapat dilipat: tombol dasar, gerakan perintah, nama skill dan mode karakter, kontrol P2. Teks jeda dan bantuan kontrol dibuat berbahasa Indonesia.
Tombol tambahan sentuh dikecilkan pada tinggi 361-400 px agar tidak menimpa meter lawan. Uji headless tests/t2-hud.mjs.
2026-10-03 07:27:34 +07:00
rizkyaz0 0b2ccbb090 Tambah uji regresi tests/t1-review.mjs untuk perbaikan temuan review Tahap 1 2026-10-03 07:02:29 +07:00
rizkyaz0 39eb029844 Gabungkan wf/t1-feel: rasa kena (hit-stop, getaran, K.O. slow-motion, angka pop, peringkat kombo)
Konflik di blok API uji akhir game.js: pemeriksaan window.__game.fx (efek jurus) dan hook uji hitDummy/feel/feelState (rasa kena) saling bebas, jadi keduanya dipertahankan.
2026-10-02 23:15:22 +07:00
rizkyaz0 d418f56d29 Efek jurus hidup: gelombang, area, dash, jurus mode, dan semut Gufron
Mesin efek bersama (canvas 2D, tanpa gambar baru): proyektil punya umur, muncul dengan overshoot, memanjang, irisan bergoyang, ekor bayangan, percikan, dan memudar.
Gelombang suara kini berbeda per karakter (cincin berdenyut, teriakan dengan huruf, rantai cincin), ombak Ethanol Man bergulung dan mengangkat lawan.
Jurus area punya cincin aba-aba 0,25 s, gelombang kejut, retakan, dan serpihan. Dash meninggalkan bayangan sprite, debu, dan garis kecepatan.
Jurus mode mendapat mekanik berbeda lewat flag data: rebound, genangan api, split, korosi, belit, konvoi, ledakan susulan, sedotan.
Bahasa Semut: 10 semut mengitari lalu mengejar, damage naik di tengah (maks 45).
Pemain dan CPU memakai data dan efek yang sama; tests/t1-fx.mjs menguji semua jurus dari kedua sisi.
2026-10-02 23:13:55 +07:00
rizkyaz0 376763dedf Rasa kena: tabel penyetelan hit-stop dan getaran, K.O. slow-motion, angka damage pop, peringkat kombo
- feel.js baru: tabel FEEL terpusat per jenis serangan (ringan, sedang, berat, ultimate, guard, parry, counter),
  getaran searah pukulan, riak, kilat putih pada sprite yang kena (pemain dan lawan CPU)
- K.O. memperlambat simulasi visual (0,25x ~0,9 dtk; K.O. akhir 0,2x ~1,5 dtk) dengan zoom ke yang kalah dan vignette;
  jam ronde dan penutup K.O. tetap memakai waktu nyata
- angka damage pop dengan warna per jenis (counter oranye + teks COUNTER, parry biru, guard abu), dibatasi 8 aktif
- peringkat kombo C/B/A/S di tengah layar, memantul tiap pukulan dan beranimasi saat naik peringkat
- tests/t1-feel.mjs: skenario headless (53 pemeriksaan) dengan screenshot
2026-10-02 22:49:36 +07:00
rizkyaz0 7038918998 Tambah harness uji headless (Playwright) 2026-10-02 21:55:45 +07:00