# Laporan keseimbangan karakter Dibuat oleh `node tests/harness.mjs tests/balance.mjs` (simulator RENCANA 5.1). Tanggal: **2026-10-05** · Jalan: **Setelah penyetelan**. - Tingkat CPU: **hard** · ronde per pasangan arah: **8** · karakter: BRO WO, MEGA CHAN, SON OF SOLO MAN, ETHANOL MAN, A NICE, SOLO MAN, GUFRON. - Satu **ronde** = satu pertarungan sampai K.O. atau waktu habis (90 dtk), arena Bellora, gaya Seimbang, tanpa layar VS. Pasif dan kelemahan karakter ikut aktif. - Tiap pasangan dimainkan di **kedua posisi** (A sebagai bot lalu B sebagai bot) dan digabung. Pertandingan cermin (karakter sama) hanya dipakai sebagai pembanding bot terhadap CPU, tidak masuk persentase karakter. - Bot pemain (tests/bot.mjs) mendekat, memukul dan menyambung kombo, memakai skill saat jaraknya cocok dan akan kena, memblok atau parry sebagian serangan yang terbaca setelah jeda reaksi, kadang melompati proyektil, dan **membalas ultimate lawan dengan ultimate** (atau memakainya sendiri setelah 8 dtk). Tidak memakai lempar, jurus perintah, atau jurus toko, dan tidak menghindari genangan. - Total ronde dimainkan: 392 (termasuk cermin). Ronde macet: 0. ## Persentase menang per karakter Persen menang = (menang + setengah seri) dibagi jumlah ronde lawan non-cermin, gabungan kedua posisi. Sisa HP dari 200. | # | Karakter | Menang % | Tier | M-K-S | Menang sbg bot % | Menang sbg CPU % | Sisa HP saat menang | Sisa HP akhir ronde | Durasi rata-rata (dtk) | | ---: | --- | ---: | :---: | :---: | ---: | ---: | ---: | ---: | ---: | | 1 | MEGA CHAN | **58,3** | S | 56-40-0 | 100,0 | 16,7 | 45,1 | 26,3 | 18,8 | | 2 | GUFRON | **56,3** | A | 54-42-0 | 81,3 | 31,3 | 35,4 | 19,9 | 18,8 | | 3 | SON OF SOLO MAN | **53,1** | A | 51-45-0 | 77,1 | 29,2 | 28,6 | 15,2 | 17,8 | | 4 | A NICE | **49,0** | B | 47-49-0 | 87,5 | 10,4 | 28,7 | 14,1 | 17,6 | | 5 | BRO WO | **44,8** | C | 43-53-0 | 66,7 | 22,9 | 33,4 | 15,0 | 17,5 | | 6 | ETHANOL MAN | **44,8** | C | 43-53-0 | 79,2 | 10,4 | 45,6 | 20,4 | 17,4 | | 7 | SOLO MAN | **43,8** | C | 42-54-0 | 72,9 | 14,6 | 46,4 | 20,3 | 17,7 | ## Posisi: bot melawan CPU - Pertandingan non-cermin: bot menang **80,7%**, CPU menang 19,3%, seri 0,0% (336 ronde). - Pertandingan cermin (karakter sama, hanya cermin posisi): bot menang **76,8%**, CPU menang 23,2%, seri 0,0% (56 ronde). Selisih dari 50% menunjukkan keunggulan struktural satu posisi (urutan pemrosesan, kebal saat jurus, bonus counter hanya untuk pemain); karena tiap karakter dimainkan di kedua posisi, selisih ini saling meniadakan di persentase per karakter. - Ultimate pertama dalam ronde (semua ronde): bot lebih dulu **0,0%**, CPU lebih dulu **34,4%**, hampir bersamaan (selisih di bawah 0,3 dtk, saling kunci) 65,6%, tak ada yang memakai 0,0%. ## Tabel menang-kalah 7 x 7 Persen menang karakter **baris** terhadap karakter **kolom**, gabungan kedua posisi (`M-K-S` ada di tabel berikutnya). | baris \ kolom | BRO WO | MEGA CHAN | SON OF SOLO MAN | ETHANOL MAN | A NICE | SOLO MAN | GUFRON | | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | | **BRO WO** | · | 50% | 44% | 50% | 56% | 56% | 13% | | **MEGA CHAN** | 50% | · | 50% | 56% | 69% | 56% | 69% | | **SON OF SOLO MAN** | 56% | 50% | · | 75% | 44% | 63% | 31% | | **ETHANOL MAN** | 50% | 44% | 25% | · | 50% | 63% | 38% | | **A NICE** | 44% | 31% | 56% | 50% | · | 50% | 63% | | **SOLO MAN** | 44% | 44% | 38% | 38% | 50% | · | 50% | | **GUFRON** | 88% | 31% | 69% | 63% | 38% | 50% | · | ### Menang-kalah-seri (ronde) | baris \ kolom | BRO WO | MEGA CHAN | SON OF SOLO MAN | ETHANOL MAN | A NICE | SOLO MAN | GUFRON | | --- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | | **BRO WO** | · | 8-8-0 | 7-9-0 | 8-8-0 | 9-7-0 | 9-7-0 | 2-14-0 | | **MEGA CHAN** | 8-8-0 | · | 8-8-0 | 9-7-0 | 11-5-0 | 9-7-0 | 11-5-0 | | **SON OF SOLO MAN** | 9-7-0 | 8-8-0 | · | 12-4-0 | 7-9-0 | 10-6-0 | 5-11-0 | | **ETHANOL MAN** | 8-8-0 | 7-9-0 | 4-12-0 | · | 8-8-0 | 10-6-0 | 6-10-0 | | **A NICE** | 7-9-0 | 5-11-0 | 9-7-0 | 8-8-0 | · | 8-8-0 | 10-6-0 | | **SOLO MAN** | 7-9-0 | 7-9-0 | 6-10-0 | 6-10-0 | 8-8-0 | · | 8-8-0 | | **GUFRON** | 14-2-0 | 5-11-0 | 11-5-0 | 10-6-0 | 6-10-0 | 8-8-0 | · | ## Sebelum dan sesudah penyetelan Sebelum: jalan "Sebelum penyetelan" (2026-10-05, 8 ronde per pasangan arah, benih 11). Sesudah: jalan ini (benih 11). | Karakter | Sebelum % | Sesudah % | Selisih | Tier sebelum | Tier sesudah | | --- | ---: | ---: | ---: | :---: | :---: | | MEGA CHAN | 78,1 | **58,3** | −19,8 | S | S | | GUFRON | 71,9 | **56,3** | −15,6 | S | A | | SON OF SOLO MAN | 50,0 | **53,1** | +3,1 | B | A | | A NICE | 52,1 | **49,0** | −3,1 | A | B | | BRO WO | 41,7 | **44,8** | +3,1 | C | C | | ETHANOL MAN | 27,1 | **44,8** | +17,7 | C | C | | SOLO MAN | 29,2 | **43,8** | +14,6 | C | C | ## Cara membaca dan batasan - Angka berasal dari simulasi bot melawan CPU, **bukan kebenaran mutlak**. Dengan 8 ronde per pasangan arah, tiap karakter punya sekitar 96 ronde; galat acak sekitar ±5,1 poin persen (satu simpangan baku), jadi selisih di bawah itu belum berarti. - Ultimate dan mode pasca-ultimate mengunci lawan beberapa detik, sehingga siapa yang lebih dulu dan seberapa mematikan rangkaian ultimate-nya menentukan sebagian besar ronde. Bot sengaja membalas ultimate lawan agar yang diukur adalah adu rangkaian, bukan sekadar siapa menekan duluan. - Bot tidak menghindari genangan api atau asam dan tidak memakai lempar atau jurus toko, jadi karakter berbasis genangan mungkin sedikit terlalu tinggi dibanding pemain manusia yang pandai menghindar. - Batas tier: S ≥ 58% (Dewa Arena), A ≥ 52% (Jagoan Kampung), B ≥ 46% (Lumayan Lah), selebihnya C (Butuh Semangat). ## Penyetelan angka (RENCANA 5.3) Hasil awal (benih 11, 8 ronde per pasangan arah): **MEGA CHAN 78,1%** dan **GUFRON 71,9%** di atas batas 65%, **ETHANOL MAN 27,1%** dan **SOLO MAN 29,2%** di bawah 35%. Angka disetel dalam empat putaran kecil: hanya angka data (manifest karakter, `browo.js`, `content/passives.js`), tanpa mengubah mekanik. | Karakter | Perubahan angka (sebelum → sesudah) | | --- | --- | | MEGA CHAN | ultimate: banteng 8 → 7; mode ultimate TANDUK NERAKA: damage per banteng 7 → 6; pasif KEPALA BANTENG: damage diterima −8% → −5% | | GUFRON | skill 1 BAHASA SEMUT: damage per semut 4 → 3 dan jumlah semut 10 → 8; ultimate: gelombang semut 9 → 8; mode ultimate: 12 → 11; pasif: pulih skill +12% → +5% | | SOLO MAN | skill 1 ESEMKA RUSH 20 → 22; skill 2 SARUNG PUTAR 16 → 18; ultimate KONVOI ESEMKA: mobil 6 → 7 dan damage per mobil 8 → 9; mode ultimate: mobil 9 → 10; kelemahan: damage keluar −6% → −3% | | ETHANOL MAN | skill 2 ETHANOL SPLASH 18 → 20; ultimate BANJIR BIOETANOL: damage per gelombang 9 → 10; mode ultimate: damage per pilar 4 → 5; kelemahan: pulih cooldown −5% → −4% | | BRO WO | ultimate HUTAN SAWIT: damage per pohon 3 → 4 | | A NICE, SON OF SOLO MAN | tidak diubah | Riwayat (persen menang, benih 11, 8 ronde per pasangan arah; satu putaran = satu kali jalan simulator sesudah beberapa perubahan sekaligus): | Karakter | Awal | Putaran 1 | Putaran 2 | Putaran 3 | Akhir (putaran 4, tabel di atas) | | --- | ---: | ---: | ---: | ---: | ---: | | MEGA CHAN | 78,1 | 53,1 | 47,9 | 52,1 | **58,3** | | GUFRON | 71,9 | 70,8 | 71,9 | 54,2 | **56,3** | | SON OF SOLO MAN | 50,0 | 46,9 | 55,2 | 52,1 | **53,1** | | A NICE | 52,1 | 47,9 | 46,9 | 47,9 | **49,0** | | BRO WO | 41,7 | 45,8 | 45,8 | 46,9 | **44,8** | | ETHANOL MAN | 27,1 | 49,0 | 51,0 | 55,2 | **44,8** | | SOLO MAN | 29,2 | 36,5 | 31,3 | 41,7 | **43,8** | Putaran 4 menambah buff kecil BRO WO (belum tersentuh sebelumnya, terendah pada jalan konfirmasi). Jalan konfirmasi dengan benih bot lain (benih 23, keadaan akhir, tidak tertulis ke laporan): GUFRON 62,5 · MEGA CHAN 52,1 · ETHANOL MAN 51,0 · A NICE 51,0 · SON OF SOLO MAN 49,0 · BRO WO 42,7 · SOLO MAN 41,7. Pada kedua jalan semua karakter berada di antara 41% dan 63%. Selisih antar putaran sebesar 5 sampai 10 poin masih wajar dari galat acak, jadi jangan membaca satu angka sebagai ukuran pasti. ## Temuan penting 1. **Rangkaian ultimate menentukan hampir semua ronde.** Terhadap sasaran pasif, ultimate pertama ditambah ultimate mode (pasca-ultimate) menghasilkan 110 sampai 148 damage dari 200 HP sebelum penyetelan (MEGA CHAN 148, A NICE 134, SON OF SOLO MAN 129, BRO WO 127, SOLO MAN 126, GUFRON 126, ETHANOL MAN 110), dan selama itu lawan terkunci. Bot yang dikunci CPU kehilangan rata-rata sekitar 155 HP per ronde dari rangkaian ultimate dan ultimate mode (diukur pada GUFRON dan MEGA CHAN sebagai CPU, 18 ronde masing-masing). Karena itu hampir semua penyetelan di atas menyentuh angka ultimate, dan satu atau dua damage per denyut bisa menggeser persen menang belasan poin. 2. **Penutup ultimate menjatuhkan lawan.** Penutup (finisher) membuat sasaran jatuh dan bangun sekitar 2,1 dtk, dan denyut ultimate mode yang jatuh pada waktu itu tidak mengenai (sasaran jatuh dianggap tidak hidup oleh `bwAlive`). Memakai ultimate mode segera setelah rangkaian pertama membuang beberapa denyut; bot menunggu lawan bangun. 3. **CPU hampir tidak pernah memakai skill 2 ETHANOL MAN dan SOLO MAN** (pada uji pasangan `tests/pairs.mjs`: SOLO MAN 0 dari 7 ronde, ETHANOL MAN 1 dari 7). Keduanya berjenis area tanpa `ahead` (jangkauan 135 dan 140), lebih pendek dari pukulan dasar (161), dan `cpuPick` selalu mendahulukan pukulan dasar, sedangkan penutup kombo (`cpuFollowUp`) praktis tidak pernah memenuhi `cpuLands` (sisa stun pemain lebih pendek dari waktu kena skill). Akibatnya kedua karakter ini lebih lemah sebagai lawan CPU daripada angka kitnya. Ini celah AI (mekanik), bukan angka; uji pasangan (`tests/pairs.mjs`) mencatatnya sebagai peringatan. Bila AI atau datanya diperbaiki (misalnya `ahead` di manifest), jalankan ulang simulator dan setel ulang kedua karakter. **Pembaruan (cabang wf/t6-ai, RENCANA 6.5):** `cpuPick` kini mendahulukan jurus area pemusat-diri bila lawan di dalam lingkarannya (`cpuAreaKit`, `cpuAreaFits`) dan CPU berdiri lebih rapat saat jurus itu siap; angka di tabel laporan ini dibuat SEBELUM perbaikan itu dan belum dijalankan ulang penuh, jadi persen menang ETHANOL MAN dan SOLO MAN (terutama sebagai CPU) bisa sedikit naik. 4. **Posisi bot punya keunggulan besar.** Bot menang 77 sampai 85% pada semua jalan, juga pada pertandingan cermin. Penyebabnya struktural (pemain kebal saat skill dan ultimate, bonus counter 25% hanya untuk pukulan pemain, urutan pemrosesan hero lebih dulu) ditambah bot yang cukup rapi. Persen menang per karakter menggabungkan kedua posisi sehingga keunggulan ini saling meniadakan, tetapi banyak pasangan berakhir 8-8-0 (bot menang di kedua posisi), yang berarti hasilnya ditentukan posisi dan bukan karakter. Resolusi pengukuran jadi lebih kasar; untuk keputusan penyetelan pakai `BAL_N` 12 atau lebih, atau lemahkan bot (`BAL_BOT`). 5. **Pasangan paling timpang** (jalan akhir): GUFRON atas BRO WO 88% (14-2), SON OF SOLO MAN atas ETHANOL MAN 75%, MEGA CHAN atas A NICE dan atas GUFRON 69%. Pasangan GUFRON dan BRO WO layak diperiksa lebih dulu pada penyetelan berikutnya. 6. **Kebijakan ultimate bot menentukan apa yang diukur.** Pada percobaan awal bot memakai ultimate sendiri pada detik ke-5 seperti CPU tanpa membalas, dan menang sekitar 93% ronde apa pun karakternya (siapa yang menekan duluan menang; tidak informatif). Maka bot kini membalas ultimate lawan dalam waktu reaksi: sekitar dua pertiga ronde menjadi adu rangkaian yang hampir bersamaan, dan sepertiga sisanya CPU lebih dulu (biasanya bot sedang terkena serangan atau sedang menjalankan skill saat CPU mulai). ## Menjalankan ulang ```bash BAL_N=8 BAL_WORKERS=2 BAL_LABEL="Setelah penyetelan" BAL_BASE=docs/balance-before.json BAL_JSON=docs/balance-after.json BAL_TIERS=1 \ node tests/harness.mjs tests/balance.mjs 2026-10-05 ``` `BAL_BASE` memakai hasil sebelum penyetelan (`docs/balance-before.json`, benih 11, N=8) untuk tabel perbandingan, `BAL_TIERS=1` menulis ulang `content/tiers.js`, dan bagian ini (di bawah penanda catatan manual) dipertahankan. Hasilnya sama untuk benih, N, dan jumlah pekerja yang sama.