From 849d67002ec9a095e5ade0d2134847d4e869350e Mon Sep 17 00:00:00 2001 From: <> Date: Mon, 28 Oct 2024 22:39:57 +0000 Subject: [PATCH] Deployed c6883f1 with MkDocs version: 1.6.1 --- 404.html | 4 +- errorcodes/bemani/index.html | 4 +- errorcodes/sega/index.html | 4 +- extras/ascs/index.html | 4 +- extras/asphyxia/index.html | 4 +- extras/audio/index.html | 4 +- extras/hexguide/index.html | 4 +- extras/parts/index.html | 4 +- extras/patchsp2x/index.html | 4 +- extras/patchweb/index.html | 4 +- extras/pollingrates/index.html | 4 +- extras/softether/index.html | 4 +- extras/streamaudio/index.html | 4 +- games/beatstreamfinal/problems/index.html | 4 +- games/beatstreamfinal/setup/index.html | 4 +- games/chunithmluminous/c2c/index.html | 4 +- games/chunithmluminous/controllers/index.html | 4 +- games/chunithmluminous/setup/index.html | 4 +- .../troubleshooting/index.html | 4 +- games/chunithmnew/c2c/index.html | 4 +- games/chunithmnew/controllers/index.html | 4 +- games/chunithmnew/setup/index.html | 4 +- games/chunithmnew/troubleshooting/index.html | 4 +- games/chunithmnewplus/c2c/index.html | 4 +- games/chunithmnewplus/controllers/index.html | 4 +- games/chunithmnewplus/setup/index.html | 4 +- .../troubleshooting/index.html | 4 +- games/chunithmsun/c2c/index.html | 4 +- games/chunithmsun/controllers/index.html | 4 +- games/chunithmsun/setup/index.html | 4 +- games/chunithmsun/troubleshooting/index.html | 4 +- games/chunithmsunplus/c2c/index.html | 4 +- games/chunithmsunplus/controllers/index.html | 4 +- games/chunithmsunplus/setup/index.html | 4 +- .../troubleshooting/index.html | 4 +- games/ddrace/problems/index.html | 4 +- games/ddrace/setup/index.html | 4 +- games/exchain/problems/index.html | 4 +- games/exchain/setup/index.html | 4 +- games/gitamatixx/problems/index.html | 4 +- games/gitamatixx/setup/index.html | 4 +- games/hellopopn/problems/index.html | 4 +- games/hellopopn/setup/index.html | 4 +- games/iidx10/setup/index.html | 4 +- games/iidx10/troubleshooting/index.html | 4 +- games/iidx11/setup/index.html | 4 +- games/iidx11/troubleshooting/index.html | 4 +- games/iidx12/setup/index.html | 4 +- games/iidx12/troubleshooting/index.html | 9 +- games/iidx13/setup/index.html | 655 +++++++++++++----- .../{problems => troubleshooting}/index.html | 40 +- games/iidx14/problems/index.html | 4 +- games/iidx14/setup/index.html | 6 +- games/iidx24/problems/index.html | 4 +- games/iidx24/setup/index.html | 4 +- games/iidx25/problems/index.html | 4 +- games/iidx25/setup/index.html | 4 +- games/iidx26/problems/index.html | 4 +- games/iidx26/setup/index.html | 4 +- games/iidx27/lightning/index.html | 4 +- games/iidx27/problems/index.html | 4 +- games/iidx27/setup/index.html | 4 +- games/iidx30/extras/index.html | 4 +- games/iidx30/setup/index.html | 4 +- games/iidx30/troubleshooting/index.html | 4 +- games/iidx31/extras/index.html | 4 +- games/iidx31/setup/index.html | 4 +- games/iidx31/troubleshooting/index.html | 4 +- games/iidx32/extras/index.html | 4 +- games/iidx32/setup/index.html | 4 +- games/iidx32/troubleshooting/index.html | 4 +- games/iidx9/setup/index.html | 4 +- games/iidx9/troubleshooting/index.html | 4 +- games/jubeatclan/problems/index.html | 4 +- games/jubeatclan/setup/index.html | 4 +- games/maimaidx/buddies/controllers/index.html | 4 +- games/maimaidx/buddies/setup/index.html | 4 +- .../buddies/troubleshooting/index.html | 4 +- games/musecafinal/problems/index.html | 4 +- games/musecafinal/setup/index.html | 4 +- games/nostforte/problems/index.html | 4 +- games/nostforte/setup/index.html | 4 +- games/nostop2/problems/index.html | 4 +- games/nostop2/setup/index.html | 4 +- games/popnpeace/problems/index.html | 4 +- games/popnpeace/setup/index.html | 4 +- games/popnusaneko/problems/index.html | 4 +- games/popnusaneko/setup/index.html | 4 +- games/reflesia/problems/index.html | 4 +- games/reflesia/setup/index.html | 4 +- games/sdvx4/problems/index.html | 4 +- games/sdvx4/setup/index.html | 4 +- games/sdvx5/problems/index.html | 4 +- games/sdvx5/setup/index.html | 4 +- games/sdvx6/extras/index.html | 4 +- games/sdvx6/setup/index.html | 4 +- games/sdvx6/troubleshooting/index.html | 4 +- games/taikonijiiro/setup/index.html | 4 +- games/taikonijiiro/troubleshooting/index.html | 4 +- img/iidx13/10.png | Bin 123355 -> 0 bytes img/iidx13/2.png | Bin 39867 -> 0 bytes img/iidx13/3.png | Bin 42071 -> 0 bytes img/iidx13/4.png | Bin 39905 -> 0 bytes img/iidx13/bt1.png | Bin 82350 -> 0 bytes img/iidx13/bt2.png | Bin 28342 -> 0 bytes img/iidx13/distorted_logo.png | Bin 31144 -> 25707 bytes img/iidx13/{5.png => firstlaunch/1.png} | Bin img/iidx13/firstlaunch/10.png | Bin 0 -> 324758 bytes img/iidx13/firstlaunch/11.png | Bin 0 -> 100871 bytes img/iidx13/firstlaunch/12.png | Bin 0 -> 140096 bytes img/iidx13/{6.png => firstlaunch/2.png} | Bin img/iidx13/{7.png => firstlaunch/3.png} | Bin img/iidx13/{8.png => firstlaunch/4.png} | Bin img/iidx13/{9.png => firstlaunch/5.png} | Bin img/iidx13/firstlaunch/6.png | Bin 0 -> 127633 bytes img/iidx13/{11.png => firstlaunch/7.png} | Bin img/iidx13/{12.png => firstlaunch/8.png} | Bin img/iidx13/firstlaunch/9.png | Bin 0 -> 103451 bytes img/iidx13/{ => setup}/1.png | Bin img/iidx13/setup/2.png | Bin 0 -> 12611 bytes index.html | 4 +- resources/index.html | 4 +- search/search_index.json | 2 +- 123 files changed, 707 insertions(+), 393 deletions(-) rename games/iidx13/{problems => troubleshooting}/index.html (97%) delete mode 100644 img/iidx13/10.png delete mode 100644 img/iidx13/2.png delete mode 100644 img/iidx13/3.png delete mode 100644 img/iidx13/4.png delete mode 100644 img/iidx13/bt1.png delete mode 100644 img/iidx13/bt2.png rename img/iidx13/{5.png => firstlaunch/1.png} (100%) create mode 100644 img/iidx13/firstlaunch/10.png create mode 100644 img/iidx13/firstlaunch/11.png create mode 100644 img/iidx13/firstlaunch/12.png rename img/iidx13/{6.png => firstlaunch/2.png} (100%) rename img/iidx13/{7.png => firstlaunch/3.png} (100%) rename img/iidx13/{8.png => firstlaunch/4.png} (100%) rename img/iidx13/{9.png => firstlaunch/5.png} (100%) create mode 100644 img/iidx13/firstlaunch/6.png rename img/iidx13/{11.png => firstlaunch/7.png} (100%) rename img/iidx13/{12.png => firstlaunch/8.png} (100%) create mode 100644 img/iidx13/firstlaunch/9.png rename img/iidx13/{ => setup}/1.png (100%) create mode 100644 img/iidx13/setup/2.png diff --git a/404.html b/404.html index ca13edaf..6c79e9de 100644 --- a/404.html +++ b/404.html @@ -775,11 +775,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/errorcodes/bemani/index.html b/errorcodes/bemani/index.html index ca06d998..28b20950 100644 --- a/errorcodes/bemani/index.html +++ b/errorcodes/bemani/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/errorcodes/sega/index.html b/errorcodes/sega/index.html index 0a0d6933..50580d20 100644 --- a/errorcodes/sega/index.html +++ b/errorcodes/sega/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/extras/ascs/index.html b/extras/ascs/index.html index 1de7e56d..4675e5c5 100644 --- a/extras/ascs/index.html +++ b/extras/ascs/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/extras/asphyxia/index.html b/extras/asphyxia/index.html index 59a9c911..45749aa3 100644 --- a/extras/asphyxia/index.html +++ b/extras/asphyxia/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/extras/audio/index.html b/extras/audio/index.html index 47cbf85e..8cac8030 100644 --- a/extras/audio/index.html +++ b/extras/audio/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/extras/hexguide/index.html b/extras/hexguide/index.html index 11efc07e..813ca1cd 100644 --- a/extras/hexguide/index.html +++ b/extras/hexguide/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/extras/parts/index.html b/extras/parts/index.html index b0425acf..97b1ff91 100644 --- a/extras/parts/index.html +++ b/extras/parts/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/extras/patchsp2x/index.html b/extras/patchsp2x/index.html index f59e2b46..866dd2be 100644 --- a/extras/patchsp2x/index.html +++ b/extras/patchsp2x/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/extras/patchweb/index.html b/extras/patchweb/index.html index fe12123f..cd5475de 100644 --- a/extras/patchweb/index.html +++ b/extras/patchweb/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/extras/pollingrates/index.html b/extras/pollingrates/index.html index a4aad123..b16e33b0 100644 --- a/extras/pollingrates/index.html +++ b/extras/pollingrates/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/extras/softether/index.html b/extras/softether/index.html index 5f08558b..6747d053 100644 --- a/extras/softether/index.html +++ b/extras/softether/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/extras/streamaudio/index.html b/extras/streamaudio/index.html index a7b4beca..2aa1fbdb 100644 --- a/extras/streamaudio/index.html +++ b/extras/streamaudio/index.html @@ -784,11 +784,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/beatstreamfinal/problems/index.html b/games/beatstreamfinal/problems/index.html index 5f4f6315..1777d48b 100644 --- a/games/beatstreamfinal/problems/index.html +++ b/games/beatstreamfinal/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/beatstreamfinal/setup/index.html b/games/beatstreamfinal/setup/index.html index 77cf2a46..7481eae4 100644 --- a/games/beatstreamfinal/setup/index.html +++ b/games/beatstreamfinal/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmluminous/c2c/index.html b/games/chunithmluminous/c2c/index.html index ab4126b7..ee99efc0 100644 --- a/games/chunithmluminous/c2c/index.html +++ b/games/chunithmluminous/c2c/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmluminous/controllers/index.html b/games/chunithmluminous/controllers/index.html index 5e9b6454..ec8dd337 100644 --- a/games/chunithmluminous/controllers/index.html +++ b/games/chunithmluminous/controllers/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmluminous/setup/index.html b/games/chunithmluminous/setup/index.html index ad2460fd..a5f757ed 100644 --- a/games/chunithmluminous/setup/index.html +++ b/games/chunithmluminous/setup/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmluminous/troubleshooting/index.html b/games/chunithmluminous/troubleshooting/index.html index 3c9418d0..3cea81c7 100644 --- a/games/chunithmluminous/troubleshooting/index.html +++ b/games/chunithmluminous/troubleshooting/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmnew/c2c/index.html b/games/chunithmnew/c2c/index.html index 86c4528d..2f8a0cc6 100644 --- a/games/chunithmnew/c2c/index.html +++ b/games/chunithmnew/c2c/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmnew/controllers/index.html b/games/chunithmnew/controllers/index.html index 57907154..a021865c 100644 --- a/games/chunithmnew/controllers/index.html +++ b/games/chunithmnew/controllers/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmnew/setup/index.html b/games/chunithmnew/setup/index.html index d0fa1725..e8687aa7 100644 --- a/games/chunithmnew/setup/index.html +++ b/games/chunithmnew/setup/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmnew/troubleshooting/index.html b/games/chunithmnew/troubleshooting/index.html index 1b1d67a9..68912962 100644 --- a/games/chunithmnew/troubleshooting/index.html +++ b/games/chunithmnew/troubleshooting/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmnewplus/c2c/index.html b/games/chunithmnewplus/c2c/index.html index 147284c9..86396467 100644 --- a/games/chunithmnewplus/c2c/index.html +++ b/games/chunithmnewplus/c2c/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmnewplus/controllers/index.html b/games/chunithmnewplus/controllers/index.html index 4e2a501d..5f970af5 100644 --- a/games/chunithmnewplus/controllers/index.html +++ b/games/chunithmnewplus/controllers/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmnewplus/setup/index.html b/games/chunithmnewplus/setup/index.html index 7e4b2723..27dee87f 100644 --- a/games/chunithmnewplus/setup/index.html +++ b/games/chunithmnewplus/setup/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmnewplus/troubleshooting/index.html b/games/chunithmnewplus/troubleshooting/index.html index 9b095cdc..057c146c 100644 --- a/games/chunithmnewplus/troubleshooting/index.html +++ b/games/chunithmnewplus/troubleshooting/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmsun/c2c/index.html b/games/chunithmsun/c2c/index.html index 0cf032d4..b7a1a58c 100644 --- a/games/chunithmsun/c2c/index.html +++ b/games/chunithmsun/c2c/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmsun/controllers/index.html b/games/chunithmsun/controllers/index.html index dfeb9c3f..ac8f4471 100644 --- a/games/chunithmsun/controllers/index.html +++ b/games/chunithmsun/controllers/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmsun/setup/index.html b/games/chunithmsun/setup/index.html index d0d0cfa3..ed46b57b 100644 --- a/games/chunithmsun/setup/index.html +++ b/games/chunithmsun/setup/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmsun/troubleshooting/index.html b/games/chunithmsun/troubleshooting/index.html index 7b32e2af..ad7a9081 100644 --- a/games/chunithmsun/troubleshooting/index.html +++ b/games/chunithmsun/troubleshooting/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmsunplus/c2c/index.html b/games/chunithmsunplus/c2c/index.html index d2fd2389..ba5abfe8 100644 --- a/games/chunithmsunplus/c2c/index.html +++ b/games/chunithmsunplus/c2c/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmsunplus/controllers/index.html b/games/chunithmsunplus/controllers/index.html index d7492040..d5527066 100644 --- a/games/chunithmsunplus/controllers/index.html +++ b/games/chunithmsunplus/controllers/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmsunplus/setup/index.html b/games/chunithmsunplus/setup/index.html index b6db4774..5c3d1b6e 100644 --- a/games/chunithmsunplus/setup/index.html +++ b/games/chunithmsunplus/setup/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/chunithmsunplus/troubleshooting/index.html b/games/chunithmsunplus/troubleshooting/index.html index f242b474..287ad219 100644 --- a/games/chunithmsunplus/troubleshooting/index.html +++ b/games/chunithmsunplus/troubleshooting/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/ddrace/problems/index.html b/games/ddrace/problems/index.html index b3603781..09eb82dc 100644 --- a/games/ddrace/problems/index.html +++ b/games/ddrace/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/ddrace/setup/index.html b/games/ddrace/setup/index.html index 6638e2ae..0e40ae72 100644 --- a/games/ddrace/setup/index.html +++ b/games/ddrace/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/exchain/problems/index.html b/games/exchain/problems/index.html index 95a246be..9e61ade7 100644 --- a/games/exchain/problems/index.html +++ b/games/exchain/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/exchain/setup/index.html b/games/exchain/setup/index.html index 623181a2..f63187e9 100644 --- a/games/exchain/setup/index.html +++ b/games/exchain/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/gitamatixx/problems/index.html b/games/gitamatixx/problems/index.html index 9af9f413..efe1e08a 100644 --- a/games/gitamatixx/problems/index.html +++ b/games/gitamatixx/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/gitamatixx/setup/index.html b/games/gitamatixx/setup/index.html index a1b3d8b0..e3aa10fc 100644 --- a/games/gitamatixx/setup/index.html +++ b/games/gitamatixx/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/hellopopn/problems/index.html b/games/hellopopn/problems/index.html index 4005aa6f..288b0f03 100644 --- a/games/hellopopn/problems/index.html +++ b/games/hellopopn/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/hellopopn/setup/index.html b/games/hellopopn/setup/index.html index caaf2b98..1a6a972a 100644 --- a/games/hellopopn/setup/index.html +++ b/games/hellopopn/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx10/setup/index.html b/games/iidx10/setup/index.html index 8b54427d..4fd4e34f 100644 --- a/games/iidx10/setup/index.html +++ b/games/iidx10/setup/index.html @@ -994,11 +994,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx10/troubleshooting/index.html b/games/iidx10/troubleshooting/index.html index d8706998..5cb8a960 100644 --- a/games/iidx10/troubleshooting/index.html +++ b/games/iidx10/troubleshooting/index.html @@ -892,11 +892,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx11/setup/index.html b/games/iidx11/setup/index.html index 6e6dff94..98a2a1b2 100644 --- a/games/iidx11/setup/index.html +++ b/games/iidx11/setup/index.html @@ -985,11 +985,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx11/troubleshooting/index.html b/games/iidx11/troubleshooting/index.html index 2cf09189..5106c4f6 100644 --- a/games/iidx11/troubleshooting/index.html +++ b/games/iidx11/troubleshooting/index.html @@ -892,11 +892,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx12/setup/index.html b/games/iidx12/setup/index.html index e4b11549..290ce28f 100644 --- a/games/iidx12/setup/index.html +++ b/games/iidx12/setup/index.html @@ -994,11 +994,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx12/troubleshooting/index.html b/games/iidx12/troubleshooting/index.html index c6603cf2..10e2554c 100644 --- a/games/iidx12/troubleshooting/index.html +++ b/games/iidx12/troubleshooting/index.html @@ -892,11 +892,11 @@
  • - + - Common Problems/Tips + Troubleshooting @@ -4847,6 +4847,7 @@

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    +

    I'm getting "NETWORK WARNING" instead of "NETWORK OK"

    This can be caused by:

    @@ -4857,6 +4858,7 @@
  • Game is not run using the Administrator account
  • +

    My background videos aren't working!

    You need to install a codec.

    @@ -4879,6 +4881,7 @@ This applies for all styles that require this codec, not just HAPPY SKY<

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    +

    My game crashes immediately!

    This can have multiple reasons. These fixes shouldn't be needed for HAPPY SKY since we're addressing them in the guide. We'll add them anyway just in case.

    @@ -4917,7 +4920,7 @@ This applies for all styles that require this codec, not just HAPPY SKY< - June 6, 2024 + October 28, 2024 diff --git a/games/iidx13/setup/index.html b/games/iidx13/setup/index.html index a370f6cc..a7bb34a4 100644 --- a/games/iidx13/setup/index.html +++ b/games/iidx13/setup/index.html @@ -16,7 +16,7 @@ - + @@ -817,45 +817,111 @@
    • - + - Getting Started + Preparing data
    • - + - Configuring Your Tools + Installing Bemanitools + + + + + +
    • + +
    • + + + Configuring Bemanitools + + + + + +
    • + +
    • + + + Connecting to a network
    • - + - Configuring Bemanitools for an Online Network - - - -
    • - -
    • - - - Configuring the game for an Online Network - - - -
    • - -
    • - - - Setting up the game's resolution, locking FPS and fixing stretched videos + Game resolution and locking FPS @@ -871,12 +937,45 @@
    • + + + First launch + + + + +
    • @@ -904,11 +1003,11 @@
    • - + - Common Problems/Tips + Troubleshooting @@ -4776,45 +4875,111 @@
      • - + - Getting Started + Preparing data
      • - + - Configuring Your Tools + Installing Bemanitools + + + + + +
      • + +
      • + + + Configuring Bemanitools + + + + + +
      • + +
      • + + + Connecting to a network
      • - + - Configuring Bemanitools for an Online Network - - - -
      • - -
      • - - - Configuring the game for an Online Network - - - -
      • - -
      • - - - Setting up the game's resolution, locking FPS and fixing stretched videos + Game resolution and locking FPS @@ -4830,12 +4995,45 @@
      • + + + First launch + + + + +
      • @@ -4867,79 +5065,164 @@

        beatmania IIDX 13 DistorteD

        -
        -

        Before reading

        -

        This game will require you to touch and edit files manually. This guide tries to make everything as clear as possible. Bemanitools & Bemanitools Supplement will be used in this guide.

        +
        +

        Please make sure you downloaded your data from an appropriate source.
        This guide is unable to troubleshoot any problems related to bad or poorly managed data.

        +
        +
        +

        Preparing data

        +
        +

        After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

        +
          +
        • Right click the folder containing your data, then click on Properties.
        • +
        • In the General tab go down to Attributes, untick Read-only and click Apply.
        • +
        • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
        • +
        • Finally, click OK again to exit out of properties.
        • +
        +
        +
        +

        Installing Bemanitools

        +
        +
          +
        • +

          Download Bemanitools.

          +
        • +
        • +

          Inside bemanitools-5.48.zip locate iidx-13.zip.

          +
        • +
        • +

          Extract everything inside the folder that contains the bm2dx.exe which is located in \FDD\JAG.

          +
        • +
        +

        Pictured below is what your folder should look like. We've removed any files not necessary for DistorteD.

        +
        +

        +

        Using iidxhook-13.conf & RtEffect.dll

        +
        +
          +
        • +

          Download the Bemanitools supplements

          +
        • +
        • +

          Open bemanitools-supplement-v1.6.zip and navigate inside misc.zip

          +
        • +
        • +

          Inside misc\d3d8to9, extract d3d8.dll to \FDD\JAG.

          +
        • +
        +

        This enables us to use the graphic options inside iidxhook-13.conf which we will take advantage of.

        +
          +
        • +

          Open bemanitools-supplement-v1.6.zip and navigate inside iidx.zip

          +
        • +
        • +

          Inside iidx/misc, extract RtEffect_stub.dll to \FDD\JAG.

          +
        • +
        • +

          Delete the already existing RtEffect.dll and rename RtEffect_stub.dll to RtEffect.dll.

          +
        • +
        +

        This will eliminate any immediate crashes relating to needing specific old hardware.

        +
        +

        Installing CLVSD.ax

        +
        +

        We need to install a codec so that background videos will work and won't cause an error.

        +
          +
        • +

          Open bemanitools-supplement-v1.6.zip and navigate to \iidx.zip\iidx\misc\ where CLVSD.ax is located.

          +
        • +
        • +

          Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

          +
        • +
        • +

          Open the command prompt as administrator. Now type regsvr32 "<location of the file>\CLVSD.ax" into the command prompt.

          +
        • +
        +

        As an example, it could look like this: regsvr32 "D:\BEMANI\IIDX\CLVSD.ax"

        +

        A prompt should appear telling you that it has been installed successfully. +This applies for all styles that require this codec, not just HAPPY SKY.

        +

        If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

        -

        Warning:

        -

        Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

        -

        If you encounter any issues or errors regarding this guide or come across issues that aren't listed, feel free to open up a GitHub Issue!

        +

        You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

        -

        Getting Started

        -
        -

        After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, locate iidx-13.zip inside the bemanitools-5.44.zip. Extract it inside the folder that contains the bm2dx.exe which should be located in \FDD\JAG. Pictured below is what your folder should look like, we've removed any files not necessary for DistorteD. Feel free to name your gamestart.bat file whatever you desire, for the sake of convenience we've kept it as it.

        -
        -

        -

        -

        -
        -

        Next up, open the bemanitools-supplement-v1.6.zip or any version higher than that and navigate inside the misc.zip. Now navigate into misc\d3d8to9 and extract d3d8.dll into the same folder as we previously have done. This enables us to use the graphic options inside iidxhook-13.conf which we will take advantage of. It should look like this:

        -
        -

        -

        -
        -

        Now, open up bemanitools-supplement-v1.6.zip again and navigate into iidx.zip. Next, navigate into iidx/misc and extract RtEffect_stub.dll into the same folder as we previously have done.

        -

        Delete the already existing RtEffect.dll and rename RtEffect_stub.dll to RtEffect.dll. This will eliminate any immediate crashes relating to needing specific old hardware.

        -
        -

        -

        -

        -
        -

        Lastly, we need to install a codec so that background videos will work and won't cause an error.

        -

        Inside the Bemanitools Supplement archive, navigate to \iidx.zip\iidx\misc\ where you'll find CLVSD.ax.

        -

        Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

        -

        Open up the command prompt as administrator. Now type regsvr32 "<location of the file>\CLVSD.ax" into the command prompt.

        -

        As an example, it could look like this: regsvr32 "D:\BEMANI\IIDX\CLVSD.ax" A prompt should appear telling you that it has been installed successfully. -This applies for all styles that require this codec, not just DistorteD.

        -

        If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

        -

        You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

        -
        -

        Configuring Your Tools

        -
        -

        To configure your keybinds, open up your config.bat file. You'll be greeted by this screen:

        -
        -

        -
        -

        It works similarly to Spice but not entirely. Make sure to also bind Test and Service since we will need it later. Service will also be used to insert coins to start the game. When you're done setting up your keybinds and analogs, it should look something like this:

        -
        -

        +
        +

        Configuring Bemanitools

        -

        If you'd like to play offline, you can head straight to Setting up the games resolution

        +

        To configure your keybinds, open your config.bat file.

        -

        Configuring Bemanitools for an Online Network

        +

        Buttons

        -

        After setting the keybinds and analogs, we can head over to the Network tab, which will look like this:

        +

        Double click on the right on a button that you wish to bind, then press the key you want associated with the action.

        +

        With your controller and/or keyboard plugged in, configure your keys for:

        +
          +
        • Maintenance: Service, Test
        • +
        • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
        • +
        • P1 Keypad: Keypad Insert Card
        • +
        +

        Only if you're playing using a keyboard:

        +
          +
        • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
        • +
        -

        +

        Analogs (controller/cab only)

        -

        Now we will set up our PIN pad and card. -Click on Keyboard device, you may or may not have more than one option. This is normal. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.

        +

        With a controller rather than binding buttons to TT+ and TT-, you need to:

        +
          +
        • Head to the Analogs tab at the top.
        • +
        • In Device, pick your controller.
        • +
        • In Control, pick whichever one corresponds to the turntable.
        • +
        • Turn your turntable ensuring that the preview turns along with it.
        • +
        • Click OK, leaving the rest of the settings alone.
        • +
        +
        +

        Lights (controller/cab only)

        +
        +

        Your controller might support having its lights controlled by the game through bemanitools.

        +

        If it does, here's how you may link different actions to your lights:

        +
          +
        • In Device, pick your controller.
        • +
        • In Game Light, select the corresponding button that will be used for that light.
        • +
        • Repeat for your other lights.
        • +
        +
        +
        +

        If you'd like to play offline, you can head straight to Game resolution and locking FPS

        +
        +

        Configuring Bemanitools for a network

        +
        +

        Head over to the Network tab.

        +
        +
        +

        Now we will set up our PIN pad and card.

        +
          +
        • Click on Keyboard device
        • +
        • You may or may not have more than one option. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.
        • +
        • Once you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed).
        • +
        • Grab your card, create a .txt and name it however you like. In this example it's called card.txt
        • +
        • Place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder.
        • +

        If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

        +

        +
        +

        Connecting to a network

        -

        If you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed). It should look similiar to this:

        -
        -

        -
        -

        Next, grab your card, create a .txt, name it however you like, in this example it's called card.txt and place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder. It should look like this:

        -
        -

        -

        Configuring the game for an Online Network

        -
        -

        Locate your iidxhook-13.conf and edit it in your desired text editor (we're using Notepad++). It may seem overwhelming at first but it's actually fairly simple. All we really care about are these lines:

        +
          +
        • +

          Locate your iidxhook-13.conf

          +
        • +
        • +

          Open it with your desired text editor (we're using Notepad++)

          +
        • +
        • +

          Replace the eamuse.server=localhost:80 with your desired network URL

          +
        • +
        • +

          Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

          +
        • +
        # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.
         eamuse.server=localhost:80
         
        @@ -4949,126 +5232,140 @@ Click on Keyboard device, you may or may not have more than one opt
         # EAMID
         eamuse.eamid=XXXXXXXXXXXXXXXXXXXX
         
        -

        Replace the eamuse.server=localhost:80 with your desired network URL

        -

        Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

        -

        Setting up the game's resolution, locking FPS and fixing stretched videos

        +
        +

        Game resolution and locking FPS

        -

        Before we begin, we'd like to mention that you have two options when it comes to how the game renders. You can choose between Linear and Point.

        +

        We'd like to mention that there are two options when it comes to how the game renders. You can choose between Linear and Point.

        Below is an example of how both look like.

        -
        Linear -

        +

        Point -

        +

        -

        It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

        -

        Next up, we'll setup borderless window, configure the proper resolution and fix stretched background videos. We're using a 1920x1080 monitor so we will use that.

        -

        Repeat the previous step and open your iidxhook-13.conf. We want to find these lines:

        -
        # Fix stretched BG videos on newer GPUs. Might appear on Red and newer
        -gfx.bgvideo_uv_fix=false
        +

        Next up, we'll setup borderless window and configure the proper resolution. We're using a 1920x1080 monitor so we will use that.

        +

        Repeat the previous step and open your iidxhook-12.conf. We want to find these lines:

        +
        # Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)
        +gfx.frame_rate_limit=0.0
         
        -# Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)
        -gfx.frame_rate_limit=0.0
        +# Run the game windowed
        +gfx.windowed=false
         
        -# Run the game windowed
        -gfx.windowed=false
        +# Windowed width, 0 for default size
        +gfx.window_width=0
         
        -# Windowed width, 0 for default size
        -gfx.window_width=0
        +# Windowed height, 0 for default size
        +gfx.window_height=0
         
        -# Windowed height, 0 for default size
        -gfx.window_height=0
        +# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.
        +gfx.scale_back_buffer_width=0
         
        -# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.
        -gfx.scale_back_buffer_width=0
        +# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.
        +gfx.scale_back_buffer_height=0
         
        -# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.
        -gfx.scale_back_buffer_height=0
        -
        -# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).
        -gfx.scale_back_buffer_filter=none
        +# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).
        +gfx.scale_back_buffer_filter=none
         
        -

        If you can't seem to find them, simply press CTRL + F and search for each argument. It will highlight them for you.

        +

        If you can't seem to find them, press CTRL + F and search for gfx.frame_rate_limit=0.0. This will bring you to the first line we want to edit.

        -

        Listed below are the values we want to change them to.

        -

        gfx.bgvideo_uv_fix=true
        -gfx.frame_rate_limit=59.95
        -gfx.windowed=true
        -gfx.window_width=1920
        -gfx.window_height=1080
        -gfx.scale_back_buffer_width=1920
        -gfx.scale_back_buffer_height=1080
        -gfx.scale_back_buffer_filter=linear
        +

        gfx.frame_rate_limit=59.95
        +gfx.windowed=true
        +gfx.window_width=1920
        +gfx.window_height=1080
        +gfx.scale_back_buffer_width=1920
        +gfx.scale_back_buffer_height=1080
        +gfx.scale_back_buffer_filter=linear
         
        -Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false. Under normal circumstances there shouldn't be a need for you to fiddle with gfx.monitor_check=1.000000 so we are also going to ignore it.

        -

        Make sure to adjust for if you want either Linear or Point rendering.

        +Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false.

        +

        Make sure to decide on whether you want Linear or Point rendering.

        gfx.scale_back_buffer_filter=linear
         gfx.scale_back_buffer_filter=point
         
        -

        When you're done, it should look like this:

        -

        Final Steps and Setting up the Game

        We can now focus on starting the game and getting it running. Open gamestart.bat (if you kept the name as is)

        You will be greeted by the initialization screen and shortly after this screen:

        -

        -

        -
        -

        Hit your Start button to confirm to get to this screen:

        +
        +

        First launch

        +
        +

        If you have any issues running the game, refer to the Troubleshooting page.

        -

        +

        BACKUP DATA

        -

        Hit your Start button again to confirm. This will bring you into the games settings menu. From there, navigate to CLOCK SETUP. You can leave the date, no need to manually change it. Simply navigate to SAVE AND EXIT.

        +

        If you've followed all instructions correctly, you're now finally ready to launch the game!

        +

        First plug your controller if you have one and run gamestart.bat.

        +

        If it's your first time running the game, you'll immediately be greeted with this screen.

        -

        -

        +

        +

        +
        +

        Press your Start key to confirm to get to the next error message.

        +
        +

        CLOCK ERROR

        +

        +
        +

        Press your Start key to confirm. This will bring you into it's service menu.

        +
        +

        +
        +

        Instructions on how to navigate the menu are shown at the bottom of the screen.

        +
          +
        • Press 1 and 2 to go up and down.
        • +
        • Press 6 to select/execute.
        • +
        +

        Navigate to CLOCK. You do not need to manually change it. Navigate to SAVE AND EXIT.

        +
        +

        -

        If you'd like to play offline, you can head straight to Final Notes

        +

        If you'd like to play offline, you can head straight to Final Notes

        -

        Enabling e-AMUSEMENT for Online Play

        +

        Enabling e-AMUSEMENT for Online Play

        -

        From the games settings menu, naviate to e-AMUSEMENT OPTIONS and select it. This will bring you to e-AMUSEMENT SETTINGS. Select it aswell.

        +

        From the service menu, go to NETWORK OPTIONS then e-AMUSEMENT SETTINGS.

        -

        -

        +

        +

        -

        It'll bring you to this next screen, select it so that e-AMUSEMENT switches to ON and it will look like this:

        +

        It'll bring you to this screen, change it so that e-AMUSEMENT switches to ON and it will look like this:

        -

        -

        +

        +

        -

        We now have to change our SHOP NAME SETTING and PREFECTURE otherwise the game will throw errors at us.

        -

        Start with the shop name, select it and change them to what ever you like. When you're done editing your shop name, navigate to EXIT and select it.

        +

        We will need to set a SHOP NAME SETTING and change our PREFECTURE otherwise the game will throw errors at us.

        -

        +

        -

        For the prefecture change it once or how many times you'd like, it doesn't matter as long as it's not the default one.

        +
          +
        • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
        • +
        • Navigate to EXIT and select it.
        • +
        • Change your prefecture once or how many times you'd like, it doesn't matter as long as it's not the default one.
        • +
        -

        +

        -

        Once that is done, hit SAVE AND EXIT. The game will now give you a message, which translated means:

        +

        Select SAVE AND EXIT. The game will now give you a message, which translated means:

        e-AMUSEMENT settings have been changed. Please turn the power off and on again.

        -

        So, close the game and open it up again.

        +

        So, close the game and open it again.

        -

        +

        +

        Final Notes

        -

        You're all done! From the service menu select GAMEMODE and the game should load ready to be played! Make sure to insert two credits by pressing your SERVICE key! Have fun!

        +

        You're all done! From the service menu select GAMEMODE and the game should load ready to be played. Make sure to insert two credits by pressing your SERVICE key. Have fun!

        Have any other errors?

        -

        Check out the Common Problems/Tips section to resolve any issues not seen in this guide to greater depth.

        +

        Check out the Troubleshooting section.

        @@ -5090,7 +5387,7 @@ Unless you'd like to have the game properly windowed you can safely ignore - July 11, 2024 + October 28, 2024 diff --git a/games/iidx13/problems/index.html b/games/iidx13/troubleshooting/index.html similarity index 97% rename from games/iidx13/problems/index.html rename to games/iidx13/troubleshooting/index.html index 8e923d2d..9b89727d 100644 --- a/games/iidx13/problems/index.html +++ b/games/iidx13/troubleshooting/index.html @@ -24,7 +24,7 @@ - Common Problems/Tips - two-torial.xyz + Troubleshooting - two-torial.xyz @@ -111,7 +111,7 @@
        - Common Problems/Tips + Troubleshooting
        @@ -805,7 +805,7 @@ - Common Problems/Tips + Troubleshooting @@ -816,7 +816,7 @@ - Common Problems/Tips + Troubleshooting @@ -4845,8 +4845,9 @@

        My Game Is Running Crazy Fast!

        -

        The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

        +

        The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

        +

        I'm getting "NETWORK WARNING" instead of "NETWORK OK"

        This can be caused by:

        @@ -4857,17 +4858,30 @@
      • Game is not run using the Administrator account
    +

    My background videos aren't working!

    You need to install a codec.

    -

    Inside the Bemanitools Supplement archive, navigate to \iidx.zip\iidx\misc\ where you'll find CLVSD.ax.

    -

    Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    -

    Open up the command prompt as administrator. Now type regsvr32 "<location of the file>\CLVSD.ax" into the command prompt.

    -

    As an example, it could look like this: regsvr32 "D:\BEMANI\IIDX\CLVSD.ax" A prompt should appear telling you that it has been installed successfully. -This applies for all styles that require this codec.

    +
      +
    • +

      Open bemanitools-supplement-v1.6.zip and navigate to \iidx.zip\iidx\misc\ where CLVSD.ax is located.

      +
    • +
    • +

      Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

      +
    • +
    • +

      Open the command prompt as administrator. Now type regsvr32 "<location of the file>\CLVSD.ax" into the command prompt.

      +
    • +
    +

    As an example, it could look like this: regsvr32 "D:\BEMANI\IIDX\CLVSD.ax"

    +

    A prompt should appear telling you that it has been installed successfully. +This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    -

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    +
    +

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    +
    +

    My game crashes immediately!

    This can have multiple reasons. These fixes shouldn't be needed for DistorteD since we're addressing them in the guide. We'll add them anyway just in case.

    @@ -4884,7 +4898,7 @@ This applies for all styles that require this codec.

    Fix #2 (RtEffects.dll didn't get replaced)

    -

    Refer to Getting Started again and check if you have followed all the instructions explained in it.

    +

    Refer to Using iidxhook-13.conf & RtEffect.dll again and check if you have followed all the instructions explained in it.

    @@ -4906,7 +4920,7 @@ This applies for all styles that require this codec.

    - June 6, 2024 + October 28, 2024 diff --git a/games/iidx14/problems/index.html b/games/iidx14/problems/index.html index 86c23ca5..b6c260b7 100644 --- a/games/iidx14/problems/index.html +++ b/games/iidx14/problems/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx14/setup/index.html b/games/iidx14/setup/index.html index 1fd68fa4..ac885200 100644 --- a/games/iidx14/setup/index.html +++ b/games/iidx14/setup/index.html @@ -13,7 +13,7 @@ - + @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx24/problems/index.html b/games/iidx24/problems/index.html index 5c7579d9..2427163e 100644 --- a/games/iidx24/problems/index.html +++ b/games/iidx24/problems/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx24/setup/index.html b/games/iidx24/setup/index.html index 9e1e469f..1ef17762 100644 --- a/games/iidx24/setup/index.html +++ b/games/iidx24/setup/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx25/problems/index.html b/games/iidx25/problems/index.html index ebe3a3b4..1e3ecf69 100644 --- a/games/iidx25/problems/index.html +++ b/games/iidx25/problems/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx25/setup/index.html b/games/iidx25/setup/index.html index ec227dfd..03cc18de 100644 --- a/games/iidx25/setup/index.html +++ b/games/iidx25/setup/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx26/problems/index.html b/games/iidx26/problems/index.html index d2bb6f9d..0d03c9b1 100644 --- a/games/iidx26/problems/index.html +++ b/games/iidx26/problems/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx26/setup/index.html b/games/iidx26/setup/index.html index b8d3ee65..e2d37b06 100644 --- a/games/iidx26/setup/index.html +++ b/games/iidx26/setup/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx27/lightning/index.html b/games/iidx27/lightning/index.html index 3a8e70ee..68565167 100644 --- a/games/iidx27/lightning/index.html +++ b/games/iidx27/lightning/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx27/problems/index.html b/games/iidx27/problems/index.html index b7b50612..afcaefc4 100644 --- a/games/iidx27/problems/index.html +++ b/games/iidx27/problems/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx27/setup/index.html b/games/iidx27/setup/index.html index 60133a10..f2ecb5e7 100644 --- a/games/iidx27/setup/index.html +++ b/games/iidx27/setup/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx30/extras/index.html b/games/iidx30/extras/index.html index 4fae7b3c..f30e2a4b 100644 --- a/games/iidx30/extras/index.html +++ b/games/iidx30/extras/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx30/setup/index.html b/games/iidx30/setup/index.html index c2ae05a1..c9b7195c 100644 --- a/games/iidx30/setup/index.html +++ b/games/iidx30/setup/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx30/troubleshooting/index.html b/games/iidx30/troubleshooting/index.html index 2c875290..5d4ac0d8 100644 --- a/games/iidx30/troubleshooting/index.html +++ b/games/iidx30/troubleshooting/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx31/extras/index.html b/games/iidx31/extras/index.html index 24e06707..fb782e82 100644 --- a/games/iidx31/extras/index.html +++ b/games/iidx31/extras/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx31/setup/index.html b/games/iidx31/setup/index.html index 76b072db..1df42b60 100644 --- a/games/iidx31/setup/index.html +++ b/games/iidx31/setup/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx31/troubleshooting/index.html b/games/iidx31/troubleshooting/index.html index 5feabe0f..58599879 100644 --- a/games/iidx31/troubleshooting/index.html +++ b/games/iidx31/troubleshooting/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx32/extras/index.html b/games/iidx32/extras/index.html index 0a744fa5..a905f77b 100644 --- a/games/iidx32/extras/index.html +++ b/games/iidx32/extras/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx32/setup/index.html b/games/iidx32/setup/index.html index bf20b171..c0fc9317 100644 --- a/games/iidx32/setup/index.html +++ b/games/iidx32/setup/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx32/troubleshooting/index.html b/games/iidx32/troubleshooting/index.html index eb36a222..c71aada7 100644 --- a/games/iidx32/troubleshooting/index.html +++ b/games/iidx32/troubleshooting/index.html @@ -790,11 +790,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx9/setup/index.html b/games/iidx9/setup/index.html index 10ff0777..bfadc86e 100644 --- a/games/iidx9/setup/index.html +++ b/games/iidx9/setup/index.html @@ -976,11 +976,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/iidx9/troubleshooting/index.html b/games/iidx9/troubleshooting/index.html index f7530401..b0285d53 100644 --- a/games/iidx9/troubleshooting/index.html +++ b/games/iidx9/troubleshooting/index.html @@ -892,11 +892,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/jubeatclan/problems/index.html b/games/jubeatclan/problems/index.html index 9d17e635..f03f46c1 100644 --- a/games/jubeatclan/problems/index.html +++ b/games/jubeatclan/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/jubeatclan/setup/index.html b/games/jubeatclan/setup/index.html index d7bc8d66..4dce04c9 100644 --- a/games/jubeatclan/setup/index.html +++ b/games/jubeatclan/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/maimaidx/buddies/controllers/index.html b/games/maimaidx/buddies/controllers/index.html index 26b6788f..22b5b1d1 100644 --- a/games/maimaidx/buddies/controllers/index.html +++ b/games/maimaidx/buddies/controllers/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/maimaidx/buddies/setup/index.html b/games/maimaidx/buddies/setup/index.html index 5611810e..53b62871 100644 --- a/games/maimaidx/buddies/setup/index.html +++ b/games/maimaidx/buddies/setup/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/maimaidx/buddies/troubleshooting/index.html b/games/maimaidx/buddies/troubleshooting/index.html index 6a6dbd36..bd4bdb6c 100644 --- a/games/maimaidx/buddies/troubleshooting/index.html +++ b/games/maimaidx/buddies/troubleshooting/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/musecafinal/problems/index.html b/games/musecafinal/problems/index.html index fcda7361..7c1fc89e 100644 --- a/games/musecafinal/problems/index.html +++ b/games/musecafinal/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/musecafinal/setup/index.html b/games/musecafinal/setup/index.html index caf4df21..a96dc004 100644 --- a/games/musecafinal/setup/index.html +++ b/games/musecafinal/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/nostforte/problems/index.html b/games/nostforte/problems/index.html index 651d4057..cb915695 100644 --- a/games/nostforte/problems/index.html +++ b/games/nostforte/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/nostforte/setup/index.html b/games/nostforte/setup/index.html index 29b9f596..ddd6d54d 100644 --- a/games/nostforte/setup/index.html +++ b/games/nostforte/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/nostop2/problems/index.html b/games/nostop2/problems/index.html index aaa5e910..1ddb8289 100644 --- a/games/nostop2/problems/index.html +++ b/games/nostop2/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/nostop2/setup/index.html b/games/nostop2/setup/index.html index a4443221..df183981 100644 --- a/games/nostop2/setup/index.html +++ b/games/nostop2/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/popnpeace/problems/index.html b/games/popnpeace/problems/index.html index 16a39efc..8aad678d 100644 --- a/games/popnpeace/problems/index.html +++ b/games/popnpeace/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/popnpeace/setup/index.html b/games/popnpeace/setup/index.html index 035ce74b..8d06fe28 100644 --- a/games/popnpeace/setup/index.html +++ b/games/popnpeace/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/popnusaneko/problems/index.html b/games/popnusaneko/problems/index.html index 1d89ea61..5d95d6b1 100644 --- a/games/popnusaneko/problems/index.html +++ b/games/popnusaneko/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/popnusaneko/setup/index.html b/games/popnusaneko/setup/index.html index 5d8ceab6..5e39759c 100644 --- a/games/popnusaneko/setup/index.html +++ b/games/popnusaneko/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/reflesia/problems/index.html b/games/reflesia/problems/index.html index 5ad78acf..1c278b11 100644 --- a/games/reflesia/problems/index.html +++ b/games/reflesia/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/reflesia/setup/index.html b/games/reflesia/setup/index.html index 7f7fb460..51d76397 100644 --- a/games/reflesia/setup/index.html +++ b/games/reflesia/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/sdvx4/problems/index.html b/games/sdvx4/problems/index.html index fa108c6f..629ad58d 100644 --- a/games/sdvx4/problems/index.html +++ b/games/sdvx4/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/sdvx4/setup/index.html b/games/sdvx4/setup/index.html index f031b207..bf937c5a 100644 --- a/games/sdvx4/setup/index.html +++ b/games/sdvx4/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/sdvx5/problems/index.html b/games/sdvx5/problems/index.html index 3adb9fa2..5080491e 100644 --- a/games/sdvx5/problems/index.html +++ b/games/sdvx5/problems/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/sdvx5/setup/index.html b/games/sdvx5/setup/index.html index 065f8900..b9fe4213 100644 --- a/games/sdvx5/setup/index.html +++ b/games/sdvx5/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/sdvx6/extras/index.html b/games/sdvx6/extras/index.html index a957329d..3e098ddf 100644 --- a/games/sdvx6/extras/index.html +++ b/games/sdvx6/extras/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/sdvx6/setup/index.html b/games/sdvx6/setup/index.html index 7a62326e..230f8f27 100644 --- a/games/sdvx6/setup/index.html +++ b/games/sdvx6/setup/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/sdvx6/troubleshooting/index.html b/games/sdvx6/troubleshooting/index.html index 0b90e5a7..1734e78c 100644 --- a/games/sdvx6/troubleshooting/index.html +++ b/games/sdvx6/troubleshooting/index.html @@ -788,11 +788,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/taikonijiiro/setup/index.html b/games/taikonijiiro/setup/index.html index 55c5910a..2ceda9ac 100644 --- a/games/taikonijiiro/setup/index.html +++ b/games/taikonijiiro/setup/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/games/taikonijiiro/troubleshooting/index.html b/games/taikonijiiro/troubleshooting/index.html index 03ab34ac..cf320012 100644 --- a/games/taikonijiiro/troubleshooting/index.html +++ b/games/taikonijiiro/troubleshooting/index.html @@ -786,11 +786,11 @@
  • - + - Common Problems/Tips + Troubleshooting diff --git a/img/iidx13/10.png b/img/iidx13/10.png deleted file mode 100644 index 97c3f667a50c0a929e6c6e456d79922aafca78ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123355 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 a47Zg9#l4;$YzDRz7(8A5T-G@yGywp(rDH|_ diff --git a/img/iidx13/3.png b/img/iidx13/3.png deleted file mode 100644 index f9072b1f2aae5b7ffc5177aa6d352293896156e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42071 zcmd?RWn3KFy6)Qvfdo%NfB->)ySoN=2->*2yGw9~1b269+@bN{?i$=7xWj2OGv}If z?X~wg=icA_botQfsvcuhb#+z!>v`U1B@t*EZCb)z{W@w(iyE1OT82jOCT=lq4nC zbuG=QwV&EhJDFQSdIJEQJWf{Hx~BSecslxq#ui-oM~z^7JYzjBd?1q~t)vydzLBwr zi;cdVisi>WS~9zG8@9;XvKWB_x0J8e8Cb2AHDb|)_UU*obv-aoCT!N>d6#Lkop z|BszglKhOvZ)u~C$4pI2rAtdokH^ABO~=g0$jVBIM^8&nOGC>-Lq|(RPtQ)v%+ADs z_xleYvNan$19n*fq2JqrEOFr*+1XjK)6h6NI#N3_P+Qs<($KN7vC+`d)6mmXL0VAR zI$PLjJ5gEK68t%WfWED+jj@%Tv84sx(}>zSmiBgB_>evQ<13h3{WYwG?eD_`IbbwS z+Ez4l)U;1u>Cc9elK*p4bMwDi+uF(M|7(B$CJ9>vc_mUfo5MwV81^z_uUc%(pM3q4CmTe4prBqiBJEo|+yEp+uo z1-S4bLr@zV>#?)YGBD5z2(U1*Ffh{52@0~Zva$&Yurl&8^V71iFbVwGSHM!&-dx|p z?$5q@|LV*7-}Zev7tF07TNco_F?P_`6SA>1$NTl2*^U4EePQ}<$NSw^@4w#{=Kr=Y z4P<9%o_^WC{nCG~f}B22Z~r=PAq#(<`T7=+)7=JgUax3krT_rxeWC)q@=kO6DV}Dk z)6Fx|vfsnru(sVKQ$mUO0~6)#Wj=t6#$?QQ0t09xuXh#i1P@w?-i>qQq8Tm zl3j;3?yV1r$i`|&-Fd#Do-7=(Z7tajvn`+ArxxA1_Z&D7Xc?Z)=teX@-0XSYPkY|y z@!Z3ztUaS=WQ-o(%E12N@yxY81q-|skYT&;wsCXxcn=19+`ACIZA;7Gg1vM`mX8<)wbf@F^q`dSIq>?NY^PVl zNLmY-F96EW5CMuC$CYG!7lSM>2yBdkMW%8rXSP zZ-m7D1|Ux_x1y(sS6M|26jueXe*w=mpE?5@daRf7=yd;_PadB#-B z9Fx}?*Zg3qSF~8mwzqlexaJ5~BXyXSuk0rj;C`PgrogG`0lWUy%-0o|XP5B38}hDd zYzYfdu}bi_AR8MGhWAXyNLISBF$bEE{mzM`uvEuG|uv;Qy2&t@sVg`0z1NYvls}K%A|BoD@1^XS6^GoPCT(J}s@OMO+Oa)iv3<|FyB(UvJX znWo?n20Sg72*eDmeUyhOCqv3DFt>Xw*zodIHjGq<&*9IKZF*4J*1D*k^R~A9xGybq zZW3cuy4-~Mw33U5?1>VU~2f~cXLdCmDIT1j)= z>$ev~<>rZ`onMa=UU-I@4R7v7_%#=4S|3Rm@&(27XxL_yahczd%~_EV6}{vGq<3s% zf3UI`io?Qy=g64f8_saFK~7Y5g6kkI4CM>oP*Sdf@iHzHB*N-PAnd^u%2#)^o#$SN z?Y0$|A#bk9lQc+xfmd1;$91N#!WmKn~e=nzBRk zcW{OFVnTk|Ccq}U(}^2Po7$QK{@0q=0L&Mw_D55<8xg2Yg7%65JYjy;qp5p-mjurN zWwkpg2$QL1&%e|>JGKP?W;zO)QeLqKMZ67FfL!VTz^6vi5RKXIni;PECC?tTpDx

    m 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•GhQ}!Musd|mCEr%YT!q+&6SQx<*JbuAh}nq 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ȔI`+UW56=Fht`Wyw9U6U0|3eg<$e}3Xy~z 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 literal 31144 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 literal 0 HcmV?d00001 diff --git a/img/iidx13/firstlaunch/11.png b/img/iidx13/firstlaunch/11.png new file mode 100644 index 0000000000000000000000000000000000000000..d250cf26159dfc2f10ecc5be708d77b77aa96d3d GIT binary patch literal 100871 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%0DbbueqH_3U5YjxKC(5WwHqBD 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 Fe*iA15~=_I literal 0 HcmV?d00001 diff --git a/img/iidx13/firstlaunch/12.png b/img/iidx13/firstlaunch/12.png new file mode 100644 index 0000000000000000000000000000000000000000..efd4317a269f530214147de8e3435c43ba2852bb GIT binary patch literal 140096 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%0DbbueqH_3U5YjxKC(5WwHqBD zWS@WfNMG7ee5Hdywx*yw-!Up>?YiTOC$Dl<&d#03CqgL!j1gH?H8xh!yuNOHkUMavNFAvSQEfMo=!Mz&OTx;;ht`X`dvD@RfaX)b$*v)M#JM*! zJ;`gF%mh-;Uw>>N!sjWG-QNHFB;b8`^y(?A6L;30TqfqRzDS*XMRXnsn{V|k{9agI z{P~kBzU21Xi?7_V9J4e_S}YkSB4w=}YJ<-MO}S5B?z{)a9$ZFGGJYJWm@Slxn;WrD zD&h90_{$ezZ~04QC^3f~S=Kk+Mx-76@*v`gDUlb*HQE5kiXGTCbV&ZO(~w)gIw`~| z8qe_gNzIeOk{RJNkEfz|YKvPuww8-P@a?XWNt|nlWYpQgqAO&p#1fu;eQVB0wa_M8 zbTZ`oi0ri>OSa=hUqxl}K5Z0C{ovA|XsKG1TXv=Ib#KPWy@)Tm>lo?ZBO{^JD z$Ka7$0{k*gx_DAQVg}+&wU^Ida!)RBoJ@Io&BqNhv1{dd0qO5?`?c^=#ZL$M^HCyloidcX13J8MdfDWqr z1xC9K4l)x6YKFGIzy)Uk{2Wp7cONggz)8qV=#H(sL!SrN|FKN~urT+VMZCHN(vL2x zlFD4uKv>w>tpQc2HausQKVCtAGcS~eJ{Lu#5k3ZKsC!|(hR!MEyZi#MnjRF7M2r&| z5L_c*(}pHXQZe+nQ8nyH8~6f~C?wwUh$DhCNDNWPsC4}9cOlW4eEDaKYfz1!-4W@tq|hytenMjrb~Oz>PfCbwmAo=gW{VjHQN`^ zFtO~%E!0HdS3kJlxN7w>#A62ZfpazM!}Cj0|CFFTAPxS{+o5&wPk-Y+&>a5AH42Vl z&os|U&mqqZPn?$$Vtrjx)v$<Zont5V5p@#>1wTLTt5f>z zo}%E*+4+R$z$ZSX6wlRoa%^4VP0OLNQx>}@m_(9gz-K0)(w%2k{-wW~x&RN)q<(xx z^77sLao4Ti{!c+hX| zjirk+?$6|j16vzkq3|eZ@Hw^tkwbDDMTnL9M<& zJ~^*bc8hWq!c^vZ1Sa|WrFstP1NG-g>T4H%*GOxym~Hrk?IZQ(e~m?JHlViR%Y(%= zGEX6#Ire6D@#(7Di|f$dk`w(qjI0uL|DEEaPTr=q3>G|`!kvCvr^5pR(Je#vc0snj z*RJ*?*_hp)q}=Qg+CsK8Z5+X<UxJ;XtMj!sx=0d~`?`+HSdU{<8P7EYnb$O^a?p2EJk&ZSwPFxywttnh*9% z)6`bq6Q3^kUG_TE??L2HQ1SaTXiC9a5up7b;tDLou5sAvidm- z$vZKw!;L#%a@#m9@A^0-P|>UFX15Ks05hGyomHS;1uw)aUnBb}Jk0PydmBY&Z^IO^ z7a06WcUZZC;c`o;C8!Z<%`q}PFkB!P6KPl9ciDX*4Xg+~h-L)EUCA%Fy`<>x7}q>43@zAK4ZTMXyz$9J z+-VlDp#~~+>(R35tQappZV;8@T%AM{u=WgrSq>rixa-ssiEuTED0m-UxHqLKI4guZ zDIL%>I%2dhjSg$gzPPldl6L)v_ME}?-~Jje7QOzj zR%St<_WW?Fprx#Mh}-y$MJVizFA>5DVW*LJrL>JW%n9Hl{cce<$EM%iC{MPkq^q@VJqng0|%yC4!{D8cr2%V-zmsCcqdD zBTw~0r7P{`Tq!Ulm(p-~l{@yJ$%#v#z$m*X+#^xz_cR_+4t6_)ofUP+_nunmac(_< z_2%MnA~YSUXKGqh0)qkmG%KUFt2CEMLH!Z34SarJOZj#~79efgw#2c_%yhLV{nw@( zBTu6xNJ?1EEb{MM_(}pcEDu~q3Uc|chX=OeE=O}?z~0X|&|Nuv51))75`w4WlX)4j2eJT9(|`GovN0L(11?Mx@3{h#U@gfLgz^rY zV@)!!JD0!jUt&we!O1V`Ih=O9{Va2Nxb$DT>Jd)A6j;9M7ieMiRy(Wi+NMS8S&M)F zZaVY*_RygJCtIA0^<}%tm2tDU0D)!(3CzO2y%J{@9v)ngwe}dxNv2*Aig$^3?=&n- zwUqGp3={uHK?{wZ1Jk(omdX)>{jI+#JXrsTR)!=n$Fu!W?q?{xIkfCoAZ*^0f0wem zlOa+&gPzek&G!A`B_0Yl`$r|41>Zx3ga3y24G=9KMkd#g1f*1Qh>kLT=uqI*mN~fN4WxyCDmny0$4XHCx4`I*CE!L(>2A`ep98}*Q zmt(}f@1IMVI;GEK-mr%Cn`l5EI;F^}%Q2f}m#}#gilnLg86>g(uLy@=giP}rg9CG} z+oX)bb{OfD#WtBxi-$2&>ydAxmk_?{amjU_wFTLH^_&i>QuA=m>u+L5@SFZnX=j~e<+anm! ziMISMO0r{`>m1uq%uIR2EGPN6CB6THkXD2DyWHF@70dYa89J3ioh0K~Z(Z?6z%aao zg!bcGB80 z$dtwR4B=p8@?gviOXj%aHx{`NMTp4q@B1QO?f*KSqk1|qe9l>+iQyWm$B0GMOX7Q`%3vmc(=dJ{Vp%{vYDLJw5B87 zBBIc=mio@;A&G%7Hp9yU7(?|7gkgy7USrb!%wc5QJ;}EoM(0yOEpo;sH>(1N>6Ik= z=CobVkfJ7%>{C4+=%*|sT{HS47Ps~<;pZx3`&=w^k zv;JAyXey>BTN{PotpZ^7zEsnjN=rValrG7)jCT!!N_|Fkdrj{zNXJY5|7=sZG~NmJ zn^H?X4;_T?Abw|D`z&{-j?Q`y5=nmcr3laI=_~Pz9tGE8ry{5p^4T!GExKyIfQRr5 zDA`Bc#hR{6u4e4%CAl@d7sH4HYsj-`hc#q>pTOaFFY`a7A!bV7-HJO?ffJS4nbjM> zO2~#B<;?Ds(Hoy%*(n?zQzCr<@sa2Eq&NWXE#_zd9OolRdfKi1oeVttIDKVxYJ(I5B>)xIoriEAaRMN?;qcys!q;xB8D%C*RgNc1bcb8k1Jbd2AW1bx3mzYvOUiN(9r}~>A zudn%cPNuX6Rl*Q^Nvh%ZU2FXk=sY*lYIW$lPiSfGOh|WD4?R1eE~$A?i~qb3PJKVs zcjUGh${#W`=A*04zKF4$`%|9WS>nXEzc<^VcIWiIpTwU;q{E)Zh7iE+$y;L$8w5U@ zAcslr!-os8;+Oo@Gm^nwLVKwomeYvwywp7XJ+%v4Nt6EoL6XUQzqRJsQw z(XWN*dwvqL#Rnt=)~#-gj^IhkCJNmqh}4^rc*}{J2wH^JHNeKI%hCtnB7O_0$SM0L z%l88I+Z}6W8D8lbq%ux3%ESjQ_Uu`SbF}u$EImNvOajVb;IQom{?mu52LWKmStAGX z2zUg6pVN!~!mig;9s#3Io>Ewe3cxZJZ!AypyfH;=#4D5Yyq)G%HdX)6Co+kP8$uCc zCPr+nGbZ!(gE@)kO^ZKwBb*Y=C~Pxu!?C-EJBBC3Dyjg$XsAk_!qcp!x9Ri0FWt{S z!mTNW@$gHBhhYZ(?z*ij4Rf8gQ8W+k3vUn2uG zHy7vj{re9ieYmiDWTMI7h$>eVF0~J_m*j?wB z135*NeSeXMPr>x6Wet&Z>qj)KyYe2>u|Kg+jC2r{U%TKf^kjjmX0)&B*dQ)F(U~u*6gF_q!`bcU61gpV#b9#f(3T zY`E3`q;tq%oyt`fdZ_FRPE0A=UqbGb7mlyU1#feD2>5$*>1(H1*5N+S14u>#uDrC%oC>g8cHK?lS^Jo;#?fV zY?)2>&66v=jwK9jlr1xBmHv*ulgnOLechIcO}`&-$oUh;eGPV5ZivV8kvjb6#;T>> zthnges=i5IeQER#FEQ#j^+dRSdm?Z`lXr^pdCLDbC{QhZ3rfW$0hspNcWXEnR+vim ztP=^kWqFH({s(rEhlkQXJK_Y>Xf~|wtfvg$0rN-!TRjp8&)EM$#&EG&tZ4oVq3Mjj z&m>{Z*N|;TVD||w%?Wc>Oz*-4-#fI~lR(5$OI#o<&LU=7+1Zu*$b8PU8yn*CkAT{< z%*g2YX?&FnY*-839oHG?%ax5)VNgcKcHF~#t4W03cq+-}6Y8Bvl4!p9%wQAFIz6-+ zk@r#2XLn>WS4o#|UR4QClxgY4=!FaoU{>LX>|`Y1qPoj3Mbt*y#!SeV>xpHx-m@jx z$2I9_oU%TAbX#0Qqp9t%U&4-=sl6->Iku`J0Vs7B1|)KPA~N;bvo4YU^0HKE)htDv zSJ5f8Tz(GtKV>viI8AcJAGYR)s(v~&sI8Wxb zlq)MF5LAIq5a_n7aY%r3FfHK1+t|zhY#sU`_~P5ZJ&s-e<*{=O{$ueYjf+h|x%+_Y zqc|o%CO=xbR9}zmhBmt=xp064wpdy|NMR3^ATw5`HQs*0aoq3EH2_RdbgV7EK*780 zGnO_Mp+njzg6ZGJu~r{&@^LTujH)#1)TGf=-v8kKO@(`hL;A0j7_T4E#TPF1d<8BqeubNH^Xkh+Y=U}aDDNnoKShJ<47Yo)Meo(QEo z2m33iD-P$J$gSMCEL{m2HFI1?yCIZ~W!xRT@a>fBTs-%=X|c6Jo>&A*CC>7-tM%24 z#e^oQFy|ya_6-#B;J(X!V;XcO?*TKQlb(p4`Qgj;IeG@1i;do4)_<-`RY6-|Y;P3H z>ZMINp9qvbVL7*+&pa>l`dE8BiCwbzHDA^juO;OB^MekxWM6?{G6ExYU2GwHT3Cal ztttQ8^(mpqF)7Sk`Hqav^9!~xKWG@vhj_WIY_xsE?CupN>!9)EHApu|H*E`HgMM{u zFIR=OYR=IN6>0gf3|i!$`4%{la`9|qo3zrr=TpJj31WwG%(Y=hYIAD+PGb$VByx=D zP#$tx%oE76>FZjGyK;sa{MTZMfqq}dPJLMZ2Ux3*X;g0sjcLk=-mzGmtkd$S5+|j} z0hN7YNGpF0mbOxyTt#OfNwFE2E?yxmv0&LK%|(X&b8A<>_Ty+OW1CNoZ+r4h{_QCL zEDoz%@{p8}E=N0Fx!P3q;AcHvXEE(U>6|Nf3G3jUk+v9NoS;&+2l)$p5tiFHHmV{x zPQIiAuVxQ+M@^28W^PK#341+sn~QNi{Hf7%{iEuASEPrZK%dOT?;I%b&yk|%tVW>= zT8fNZU@>4bUmzpDCB25AMwc2!*Ivkq|ILrfMQUhgQ>2)Nx~NV5Zacp2r$PekanEoQ zGWEsrNNki#c{7gt7c$5%FEIa189l z3vI8}OqOYVjJ|mWXO_~$7de~VW?fMZJ6~@Wc2q-DRN9}IVc|+rnyI=I;44kVE)i*9 zrF-`Lg2}OTrw3QoEGK4!%bpN$0ei^Ww24Lm`y6{G_Evq{A1acVu0+un8Y*mNBd;nA zE-JOmf2(fCbF3!>u=ZPb@)7T0JzzSKDLHs2KxjK*;vQk@^F^hY*Lzjk_T2orAG56c zAtv6)AI~=y!4Skoeh^-@SFFBxPhy9q&1bEl*|Ml0n1_^`uuV-Ujh2m7POPN`h^_o} zehOD{&o+YmygM4EOMRT{n{$YWrP-BxLS7ELL(Q`j4bT2-^**@*Z=d|^wE!lE%d101g2ytc5^kIgIm1q)emJfIHunrz;{f`a z{=9-(SWRg(geItq$2;5VcL}f)9O$h!rKT)o=JW4%g@?p7>6RRopy_%kG8ji1)8hUE zzcJ%KMmels&n(Bg!f;gt?HlqQ-R?fy>GKs0w91uWGxgN=2>8PK(rLTB2ijys>Q~0f zoCdm2eB>%i@O;rVsVc$l5iE!i_B#|ZeyZVhQ;c8-oC2GV>>~n>_E$K1y8Y7Hb&Q-i zlrRt4(FRW4S)0FEHs0+P!wrAl(Ujiyl?jy(RZs9lCw1#X&)RIlP7r(jnkJuwUe^I= zs*;U<-ML8-@`dnQMvvK+7GqnLV=0VZTzzmdW1F}g(%hP;r~Wqi zcW%0aZ=Reu3BI^xo@pX+jB~m~re251+yA0w@Y}ub=n7}OH+ARthsRmYGo)c}U~RB- z(~-$@mZ=OOob-Q*3=(X1i{Y}6UP%aiGT0YuiN#W!s1PJ%L-@0HIj1PQ$tW!0q@padCD#@y$u2}|U z!-W?ux1%WMI$1SrO6Z4kd+piC_1z;9wIi7a>B60CN{*%rVkzZM98h#)ji}>0JrtZh ze+bMV20L8=J+i@2;Wm&QC7G$DXVU}gh%VDs{b2iZ zf%O*`dha;6bQnBmzTW>HAUZ#-@>oBPlth|MgcMM=ImS|}3qVIHuR?9J@*uPEygs|*?Md7&aFMlKJ=D@x?WLmcEU;Wa;`>&@dC3WF_IR&RT! zc6!#uJlassCW+7z=jG|JvHll@WE?CKx8DN%d_>Go+%8~YsMU89)PW`0@Z|_6mx>lg zc{b~>aYSS}(TAELlcXDD%=}9wxK+i;b4=8Rf4DJhNOa-%{KnJwN{2Gkx*9liQP_QdSh zyR-l3wse#9iqtK=(c~-J91f*rkMiaTH0I& z&hq?a70_LKm0k%q`#*08_BeKE`ux*5PX-(34a&jEGSU~fo!Jn=4U@!3Ap?J6X)FQm zrc4MZLT%x#)2~hewe%O_*JJXYQ%RC}jL!A+DJKRG`A)Yc+P^j%dNjkEL?J*NL|(Nm zHr7)OcJ87#W2>`PITfnG+O0$RlfJKOun{v`#EEo|hqH%+wF^i_liT=?sV5;n>-MlI zC3rFg!CQWu50GVVB>YcKS>_x{!K{K5My4>46=1Di(ANXT{Vca`j9dSs^Il1D;YS-@ z(n=kl;GoEnd4fu@pX!hHb60wJIDS{`3{;R!L}9;uS~*ySjz>N0klD@pxZ7FHqbb=? zM#U(u$OVl~v{ou( zcKdaQ&Sm(QhdRm8jDG5akD^J1vPRsjU*=rDH`2J7OaYa9ZQF<>Cw=jF)q%ydCWVIb zX8(r8u4~Zr$R@UhzfVg*L9G=#zt9On0K@ z(7NE_!B3WJmr8exE1tnc@P{JTx~YjTuq}1jPQEE}IXks3sl_wK-h8}I6vr(y-TeyI zz{b5Igxt|O%Qd(5Gme+p0d{W7K}3eu%hh*ImX;c)6J9mchFx-&7cr8?d|L1rK2$rl zi=X=PoI5yH&3~MZKTYzJgVofLG`4fnLxz6Uqo%hY@92eTk###$=F`=faXdM&dIeDuz_pqoMhf18Zw~h zHU<^k%YF9e|IMSPil1GQb`zBUGf+KLgMBp6bnMa3x?-7NldGx=X`Ori>GpjLWziAD z^aPztM~1H3xx;3QA$^*7GNm*cC~qESkXw4=RZ5;z1&Wr@U9@=%U6R@&(%C;c2vb;SxXeI&Ty%r%`Yc-EVdyFQ~cW6Netu>dtG^o-v{} z?3O!ZIap@GChU3aP0$v)yi2L$>50GBE@(!GH`CbneTAyOeBDv>`;&z0ULg1?N%u6$ z46iK5b}lw4pa+cnKxuHv7klf)*u0)=3~{SLnYbKwqb_;*mu{`>(ZBIfEdHCpJ&s(q zWg@>|F*&;wyMF90?d19(fzO%mM?3j-1(b5_h>@yXAD_p=yYv8phJydjpZ+v_POE%z z#-wnsYVD$B;ke)s66t!;XlZ9xI@N~_WBU{@96s*bmQF_Fy9fAe)}bPX8tiUHcv3Ac z=+W0Ine@bMqajcNeMu_7_BO{FS%{MgL4I@N3h$qc$)TyO$j+Sm3NYn9#JO(d5b4f_ znR4knpLrJQ1w9wDDm~Y*Fc`guj+7&3P*WL7%dC^wNd{Tu%u;Gw4HK?r=PrRV{%_e= z9HDCKoG{z`CZY;^Q0F1P?ZTusT|syi;X$A~%_YW=^u0j?MuO1Hlp*soceYEQpd}iy za_zIQ3%HrFo-?_GMRNrw@C{GkGGzB*dhMwgXEx~O7-RX` z{YEY6oh^$q^5eWLC_u%AI3<>(v@h^7A3QI~hs zK5hK{a5i2N0rphq`ha?v57?V&1i-~K&I*OG3Xj@l4GVFijbhL8T2 zNB{l?kzs1~*6Tnxz#6v36&^aBsQ;U_$C=1FQ}Se;dBxfKmh+VFVp>bgL037Vg_*V( zUG2uxJL^9{R!<6+4yI(aQO0vvOBh!8h`XlgQk*(EM_0U*_I^2lVcvNf@OvNX$$i;%kLhGSHM=`0K&l%oO~=7OQ*Q81sRsD4 zz=%__!>MD_v#F9jVUx^Gfh!vDd7IYFyT4@*&Q&{}EllRmX%KC3`@URK*Nu>;2(HIU zKA1`C-Ekv7fX8v6ho#?ZE+Q?4)}Qt~oD7w=jZO^L3sfe8>fc2M>=zY_khs zTptB|z(tU~^{NZO)6EypS|3c}gq^LHtEc3r)j_1xY3{wp7owOzZF)5 zKUpzlfZG|yqRm|?IByY98B^$A6X&LrkZ)U6hA_F z9|XbBwd#fusX`DG0y{<{K6Z|peMd8_!6)aP=Nyz8@HbFB66a*J6=b@-f}D?WZ+2#W zM&1*;clbj0jbYUf#(iWBD_Gi)*=@8-(gD&v1cOao>>1xM8S0+0GxmYMEM{L@S8z-f zH{N1U&i)P2nng_6iy@x3P$>U~O(VkW8{JZ1^xr#d=JJUR>sk<&nMtGztPncPe=msH z&n|-Q;#8giVIiY?E_)XAgw(@V<39Cr4!?e?4fVne&4n{XY%d74k02s9*k@u>r88J8 z1}Atok4zN@ELSBM{A`Ok=dFHTlcOd^zkDnC=)zMoj%Bt57L5KbN6b(V*09WJ;n+V_ zp>vnlPXFc!J=`zXDM6Z>z8$_CVqYcQthmgcKDKN-o!3K-8@+Ooc{A#A9U4 zjJTvLK!nC>XUp~#OxnLI#a>WFp?!wE%U;L4Gp_06|ch2_Sp@G8HZ61i~$h zet9bGJ8Q7ZB3%DheBI)QHkG04+8^1)BrbTkKeKQk`pYMv33}iVOW{5*PbRio@6Ka% zOQ(K)uf=or#fAsEvPItEpB^`FUKvl(la*NRy>Tkk}{I@ zdG-307e64BsZw*W!F?1rW;(htx;nWEo8|T_`3=Nf&h`4b;M&P@($WwOsw=DHnXyI+ z9EheH=xF05@huHAcxSUy8EkdF?ZI+m3MpfBSq>j3RN6*d$~Z1j>GF3L%O!Rrzfd*B zV{^>9PjpZn&c-TnRGp~Hs4a8c3e)9c#8zRSAKW9Rk&O*KO2y82R7P0#i{$6sR33`~ zE;7%&?nnLtaawfaM!-C|R`D+p(pcTqDJ%>O`{So-7tistzAQEX7-oC* z7g!_E+m(45|C^6J0IJO{L!onJ>Vop22P7mQx7o8BCavZ&J#3#md29#w1!^`km8t9x zrC&B24uUmFaA*n4S-=3+k@wEykeC44W;ucVV?6yng>pkNtHDN7-FK*#mlft785;*F zS$HbpV?FfjUf5Ll2@Q<}UQvFLJ^iPABM)xzIfA8LS&8S3F`{X>SD;?Wo__C&=aWJz zq{$dw%dE*zH~fI3tLoenqszs*NhY)-006&-55LZ{9-fg@TZ+9_?pQpM+_^_4uKI4P ze=)#^DEKhqepBK8pG%8ftxzgOZd8TUoR)Hvpn{QHu+xZi;BNBQAJ^x^x=(!fjDHoU zKyS*sVp6C%WE107!daX~S@Ss+gvyibo%2yUqtW84w}e)9K=?wKR;gBV$MI~>1kt@* zQs6@O3qOXaE49wGnVt{t$BXYnJF+|kt@wt-v=Egu1@-Q>4Kfc|j;%H-XJnA-iL&nzARZ4a2EbNnv*Nndr ze<7)%T;JHNMWJ?s_G6lKyUhsCsb!Yd{mU%QtTF@&Y(<^Q?4AP*LW}+RezKv~sy3!} zqucY#UeUXp!Ed`cj+#?VXc=yv^WfPO?h1Ji?cC(~*RTR<`qD$uOwy$9ry}4b44EoJ z?mT?fb$?v9_hjoH4q73jKgK|kw8AR-8{FlP$v^o8N`s{s@$O11O^zbk_cAKlgZsiu z!gD(+oi%EU!6`gRkjIYZr;%=TU-ip3%H?_h|37#pviJ#yzMoVm;UTspYh-tmtI&P^ z`x6eiIRxudWWB`8Qp)Bf=FBT}ojjc)q5}$aF@ywc3D$|>&&*OKP9Je{*R1QIy3s3} zKjWtmxh^TOpT&_iZQtHE$C5t0VW{?d9p*x-8m_W|PV@kQekp6mu`;xW0)NoNo2;YO z>^_>KTtY*>j6%*UrwjWm+18G2U&J)wsU)IUgV+MuwwCJmjtSHNe)&_AH0RhiWSBgy z7sS_0)9lJ>v@aYiCA?>U%agBGuGXp?i>J31Jp%uA*H)gsLVhaZ7%+Y{VAh((H)MZM zBy~B2W6uB+uD9~=KW&7{k7sH-ikZntN+O<5sRqNg#Y^aewZ{~~Zmc7!%`Ej`l060R zFzw`er8YJtJ@5+LxM>Ys-U98N@;JWfc13vZoA{a^+E{VywDT`m_7p+4d1X!JiuX+g z8RCI9mt2FeNtTv3Y4E(+TZPxe6~?p{URm>Y=zl^k5e(w4dGPZe_o>q2II!uw!u@f1 zjr()6&#M*uC~<(`8Z*7BfSYLak{8MH?{3*>Kdolf-k?JT(v6nBQ9B<`UI)LLebvv8 z^12u;8Yy<$Zg=WX-ngU=nXhjGHMr_00FKFj@S8(q;Yne`#U|fWfJju^OtlB9v`5>x$TyB>v=ap*XGP;A8e{mAZ9H1%d893f`)1UVi>rrc4qdz)3$U zA%f7Dl~?PRo}`mXuT&v0<~3!@6$M}UCjZcojC;1x3z1#%`q6W4d%{nI6Toij#&nON zD1UG6`I8zBg6iUS2l_%My9mK~Vd)FcO%F_rADEz8xr}MAdI|etD#DYztMv5v!{3H` zhg)s%lExUeVYAZc;q%sV5N;lr^)7IRx)FlDl@nWt}tIh_j| z2Ae&_p2(lR+3a7Zst{Q)C;Zldd!dI$qR|p!W&WS(tlP&Ts5*~pTqt2^#y~Z9dhrCN z+2lF&L}V6^WooR1nrG0f^fksbZcC9et%dq#BnF{HpF4acj>g&;VWTb%3VpNIqSsl^ z+x%x8xeYek<|$^6Hf!-WjeTcPcb9`y8~7hR+YNhgM#1jzkNf9i!+5BVP+zRqp>Fju z)m+dlEz)#0HWFXb+e-azx21|QB!WXiYPl9B8j=;!LdOL8sj0Z?Ox)>e9V%tCi}r^H zg&PN|Rul^VIMhBVw>YoKf6-QRy5l6GUoHCxwjBCA?#t>S9k=`3mTKZ7+7IE@?G2yv zyl;?S@f)2hF~qd*;Wv7~F>J{e4~z1~c>4-z2aSR*S6O~)_3MsVzVr3GycobdGNO|vLMQHd{6hIp<n%R;@Z7sN4mm*a?hb#6S1tkJ)*KR2a-v8q7@AC3|rXswT?Gfq8e zb+g8dn%Aw>&D(A-uQRm7{H%Q!0_PFy_EkksqCOQ_p-!L1JN06tEJazl;cag@Ka52m z2t)Y-586Ymkk*T$ENBt$P{dC}f4*~`w26I<{hRN7xbhHgDt$w)cV>6;8WuD2H^~F7 z*yx<_DYm4xs^_6T+_X=aRv05>DReM z^!vAmB9Gb*IZ^9~$}t4;0i!FhvP;>gJ5kE+)agfO+MGqa1IT4>oB4tRx2h^%sQGppU;@ZyRQ1O`AU=Y$^6xI8DU+cIU~A7-wtj*e>kzAozC5P(uZe-Z~lT zSSdZzHor1%*H`Lapr!TFJR~rO9PAC}!>YinBl{C#>1*g6T-$D6*@<;l0yfN=SMf1P zB}oxf;mJiGhEN96f>TIM>p>m*jt7(K>^q^lefCR#raq^?NM~_NG`pe#bt`y$&DSb5MYh0UoIOjbF?n64NzvvNeB%06Iyt{!`Bpmc zlyWO27{2GXTwOOfcivb$J-hW`uoG8e3)+xjEly?gw(~*gX6MROslm@vVBXJxYh5|5 zlsEmUXA@_y#-8JkFT*Nz%X3ynNe2?&qO4a6I1iD)k_l-76nCF?EFY1$jxunsw~NvVi6 z-*_5oOKX<9D)dcWQ}S2Z-J9GU)2=toIk?(yr7lK;Eqs1s2{RV(b}#&nE{D;2M{`<6 z79(M_mBs(Xt4`aYV_&bh=SoG1?jz|OB#Xn!-LFKa_M)BCwND}nJ<46{e#Hfw-D7jK zY544?HD_rVWnK^>hhdSsZB^{=%YCa2zE==Nu6u6~O-;@dEs;N*gV7{{^MLJ$hwG~% zNI}`H;ka>vD84Gys&J{#w0S4R3guCQG^|JsuEBMF0E%1@uuAn#3&fGSeTy_47~0%( z>s=v~e;$SNc%3B8eWddvv#8Qq383D8G|}g2`5nK0w7(iqQmQ8B=0JE*P!r_;hPLE7 zZ3SCS6zrbbI;S@HD3f_bf^+~)!g2cO`!j>qyG*n!ZQm+B|Bjs{o)0p73Xjp9T%(QE z#k5QBUH5^#+pUAq(dP9PV4f0E1|@6;uyP;NdF!TM*)=SkL^gPYQ9aQEL;G!{?Eb+`LzJoVPb5u9Rm}g)^sV{;N;#be{2SSvL z;*@%MZ%9FpWBTHd=1rf_5%Sj5lgGRLh|OFtqo)EV zcoa;mZW_DErw09)wDCjBuyzyqe%6!NfM z2)KmDA74+W4)!1 zw6jcZ%xNz3?3?E=*{I9^1JBD0yj4WB06dWA@UdGk=EIu;8%SdE)qRrs+;O!2Cg@W} z&%=NKJ!3k<8MybFbAjF0ukfl8C83bR`VZXIxJX&9kl)7P$q0GDB*!qhJ3P&Zyl?*! zHMiBqn}pAfv_U`GP`)vE4%tbW;>zb)-=dniEztWyAYuef+`oM>X9iy8eX$FW>0H{l zL~UiUJZ|!KFUvl>5}Oy$>HZ&kZ~hPU`o|9sO);m1IAsZ?EFFaGQ$x|I>?$KBV7ou-qrg}TL@e|G)SPrg#&zwV8o46}MHO*--v>Pj1AF+LAO$(m zCj}>QfNs4U40*blzUBbE{#JeT(-n=OV;?v|S&#lpNA@8P2mKS((&9Qep*0mWRkZ=MvDgb|{%AfjFE_5`W&~jeGA>@c;f(dhns_SN@p4q)HXmiyC|1k97lZVFjy{$+d9!55{^_vp$+Aqs_6V?naT zA7j0!L9pyduN1OZzRC9)P4VtG1@1PqI5A+62IPyP=C03QwyE4O%bwXo+(Rr}0;Yw6 z+uch>AgA`tReyv*qfPIMKgjgtdi(%YDE5-B{`iMb^02GWbG7GREyOn-hqVL+&VO(n z%;F-v{Vpt@@ZhSP$(`FzlI;@qoRbT1*>z&y9OgYfaIU`)#9oT!p6nC2YRQAyvS8O5Ny z6@aVudhRY(FKX|#r=~*vzh*A1wKIcG&x3=dT~`?pyGRe5GKBWdAajCPGp2Q2E$s*E zzFj(Rs60HgI=%a%PP^*gOyP!mAi_8agWoa$Rs6ZmV z7-IRdFjGhy82UXCD`o5P*hQ9g22t)k4%zl<_MWhsT$DkX35W__!b&W24$Cd$5J{Mh z<(jsjJ=2TozYaGpDa~iIf(-rzOG7mN55EF%`B8NY+v@Z4L)PRbYm-lVKN!Q!&!NR&Ep<`n)IA{lOPDh2f z%1-}-Bi7*4dt^mpcvV3piJ;S`gZzRWW!?i+wPQUK7YA;v3?t0%)V&;f>EF~>lQ z4|l+d^L_qS4#~;JN#8+#+ImdGCFEF+K zV1km;z}uH{DFK11J$U}7ZI3I=Sm_iz@K>Vr$u9zXWA=bgqa zK%PCivYGNblV$jnx`{^Lv7{ic?{wab*@7&(NYU4cB&MF+UBpdaoI8@FGy z`9G3QE*QCtPf){Oi~G0g3kG><)+-daU%9$<%&Gw4h~)E$K&X3hZh*Rp1s?ogfa@g> zaMKe#U7U?J?w;ZvZ4&s+|Lm%@e#wPn`j#cOwTM36Ta@|Sw!{zyW-MI6-fbI2Kb`?c5$7Zo3H#rN~p{R|{Tq7V!A-FewvHM5-zge~GLpj5yfiaIsN z3~zti+ZzUGYbd9#qysb-kU0n5nzv>x>`Q8TYbgAsY=6^n+P*rEFJ;qE-4)_4nV8c} z%zC#O<8~{#$=d~~{b<2x4I*JOCa(q^cJp6Ld?b@Pv*G4agJA|Pk8~g}^LIQE_1MLI zqs22%NJP(@nhta%pNtaVb!OTt=xqhs` zM6P~vYbn^URUse2Zhh!FRsIml{etol!m$~9j}mo=XuzHyJ=K^ z_l|Ixu4(Ixr6k3+^O}GaZUG#N?N8t zF0%7Lr+eStPB=A2$W(aw;~%+@Hk5eib`WA@YeQ+LR?jX40K=@%17CO}s)YpVmSg4= zdU)f7L!QrJ!UF5}y=W}!h3s1vU*K) z%BWu*Dv(3Si(@l~Q#Z~y9v{76ZqcrKpoij;e=CJ~Qmz%ZI$<^a3C?Z2oj%@zJ<{6u zxp}P_g%Ny))$!FqTcClz5jhO%K+?A^eNv)5u8V9!wrfb<&eO|u3)90^AYP!F*bkSA zKCO3z%l@m_GAsjU)a7-ju%9`_GHXGPMR=SNo>&i-L5EI~cHD(U3hBdtd3 z@_*g2C>?a}SJwsXF|*xjcCPI1-FEt_^Cl;P6!X7lmLy||UX#fD!FZsO&<%HCeB$SJ z&WHjw;FBS$&;RP*U$Ltdoo)9KGPeDbPj~}L?esAN*=H$#6+mIpJca(4)`9zKK9|`V zZGV_c20y}M^GySb@OR-6{wIvCT!$CN63lw((@AC$;q@gy3STjPUZUvb7~QBzWbkoT zfa8wFIFoW|dfWa`uB(q_#%PdFT&&RaQhZU;20;ArL&;&qE_6Z3to@! z+I)WxbF5+m1ap#i^{|TWI@fl2o{7kJ)UI=F+6x0^ZSL=`bXYonG6tE^Kzg$+oW0kx zuyUOR{CZ3dum|r30l_gF83rVZj0Rbst&)m!w3e3_u7BjFGq;$ zD_8?KIg$yiwSn+?chQklk)GGUs}-=qz}Wf|&Vp1Bv7xW8RS324Nc70HM@Fs}a>pL( z$#ZAEl)nRVdn1!Enk`#7Do-Elv4kvo!{Om@v@N?j;_tPLkxJfRL?}g#1!@|aF1n(- z{B&R)$x#nM#j>z9Z#fSn z@dr&k8k-S-cm%F&iqq=_p_^B!C6NA zn?+T1$1IJUA24`mv)wZYmY1xfoGt@+YCM;>K`bM}fw9pN`r9>aQ@RqHO*RTRWijqQ zX|i@Xu~XGJoA5>~6Q7I9HXk*b>F}${H&1U<<)NwJNq7nhqq?f(#3eYtT%`L+sUeD= zJe9h5SzUSjX#>wv-52kN6%Lj^N1A@>?^dIEL-9KYUS*G;DLpjB(-WpT9#{DLR-LDw zUA^YcG%1ehw9RVPm`XigKz;j3he2ix+zek0jM|Y|ivVu3%MGd$YOUg}LUwn}2PMLk zK-om$`P2XWkH83#B#pWY9?q#8BEhk-KMhho94(Xrw^fjdkerp!nD@0LSuuQ8V--9q z9b5waA>22jZ)AkcJWF97t+}rblXy$Ge&e6TBNZof-7)-arAmW3^mCAv!B&vY@tG4= z^g)s*jjhGL`m?vuxA=r=U-IK>NB})T!)OP+o8fyMwHod(8uA<8?2KR^dAZPUfy(}y zwnV;+hN&L#{$+DnqvF)YgN2Ld9b%J=`xoXNns0L3QXN;3G%wVX(s5)0Zq@0`P9_de zrSg7ubNBz9p=m9XnO_(L5`5RS9@ax~_TTO`KZ2ZH0e?#I`%FzDtIO5+xPJD*N0*Kl z?snyUq!RDEp*Irn)0DmnadXCKm19Im%Sl-(d7B>ZcOT38qSXA^daI)%Z z^K3qS72bF;MOWQs%UAVyEK>i&0)UPW7GHigwBPBsz_y=uUi%GJ)aHvPmeCfhgZ`6- z^jq1Er$&Ey0c&U^`sI%V;sWn6O3ie2^yBlaGL)bQEJ0XO+@cb`jIU1DUHVd0xe@^= z(7?}$x!zFSk3A}_NZD(DfF=saI+`dkBYzWWDMd{h(D`Mo=z$04uf+vJni0>B*d_q2vQKxi_c$E} z2^*cbeKv(eik@@r5;FQmv`x4mp&32r7rI>Zsq7%_AAAccVObA897X$k_(j1I{p^14 zZ4g>NSU-OugFax2CSyapI`5Vh3^8&oGp2B}1kAaL*ME#7g0KF84r>HpLZdo8`aSxU zG-q&6qu~Du+%V?1?OniHBVnwzqoT}$XE}54|KK$~mfKzYMjyH%hG=m<9&$ULBOT-|nGtyN^^Z#T!{O1gulptTTc_(z z35|YNH|H`Y{CgEAcB=NT$(xpPk%)QM=TNe=PXw@jEaMK+f{2EG58u)Y_@7YIf{S9D z?h&*!dB|3?jew}#p?8b3BedZ1Q zl(gbZY((nDBL(@nBx1AQBKG6K%g?boPU8piGGD>8IA$V4QXG|PO#9xy2YE;s6Yf!b z6-kjRV0$5Pt1BI&39ARbc5Uyi?dv;y%~CS9NQDev>7~vFJC!#hCm1zme2UyRVX(t5 z-A=#+Umk%m<96V8al!;vo0pkH%Cv5)7N1xRmrrsUPdtv@P(fb%d|Bt3LwV0iC5DO-}Eh2=AH=6WL^~GTG|{2u7HNL z)0ByYZPFbWxl!%VOT=Mz$nPv3ZCBIUV2O*YaqLb~+fP}YpO5HuC_utb0~dq*I^~p& zY!7qR1?a)G3DfYL6_??NA&+9i^Pe!#f>49B65))cWh9A_ln?#F9)dA-)E%)8UVPpx6JO_CEdH80qMFCaFea{a7(oSX%WDQw9Y*Cp zGN@FYQ5sim*^X)<&}2PmTcO+HNgJK`#{YAOxlG6EX}gGcWTh-0vWGCD#a9G|SmNI8uaZh|jM0&el-5+VLo5>SDD^mi-Ov2d3wh7fG1l!f2&9(H> zvzU7V9*7V$uTC${W!uyNdgbVkGWIFXBI0zvL&TQf(WH=;5x$G8LBFwFQBAJ7Z)~?1 z@w+FP|FS~-jwWV=b_*Ifa8Gy)CuRJ~5op8=B6X^hOU2cz!?7KH3-s|5z`b$F^TGSs zJ&pGiv&u3kKGdofikKO3XsV5g-NGDYZp-((ZEwlI_P}mR7HV)SOG0nvyHw~6{wd$P zyC&eii0S2$d=1YLPCe(86Pzje7#8HuJu!R(y=wxM(s6+Sd`OGWc-~fMicL!|hVO2K zVZCc$T9XdpF{*bl;ZIceeYB0`BHxtb__V<6l^Jp{s`q9L=sK(9xwrI~2z}Xm1}1T_ zLYB*yWsUXn2HQS8oZy9ng8)wd)oLszFl}gSYjHvGKC|zE}d%33j z+#RSsV+SLzd^z3rvvc`cFWFskF16$gVHlCazU5ZKzep`R0>jt{{B{}kOSlVMv!6en zjeUeFw#}wkQP1S}=X7Xt-u`b%=)n|V8GPI~xs)5fyMj0F6vb#zrMiU+9^IVap`C$I zs}>PCe%?>V#05+htEZp!;`W_@NsN9!3}a^eGwI2iU0%EoPnehRn_O5Amp+FZZ6q zO>qNnL75u6d0vI@3cPU(5s9_MhGNMO0OkTF&^_7Oh4kZH_6_o`3ID+i-)#ZI+jgou zs4KQ0RH3aNs%T$jrWwNaT_M7P`1|aEYjP#L5s^?2@}!81oXtz9c}Kn@$f8aZ-?`1D zWxKRU1-9|PYVG(|@#b}@spDU(+MA2uvGp|}c2zSCg*vKbAEFDHIx5WbtXTmq z7p-IuBROAl=?!3@TZYeBPs&nb(!s}Uf#d_zJIp#!^dJL^Y!#ScG?Y2`#oew4oZOz* zc}EpwH%={+;8f%uiVpSNdY~~2D|j3uHU(Vb8>|6y;nlEcbwu#T6B1Wh&fvZiy$$lO z6#D10p3ue0iY`=mlVMuD+tm!g+nN5|2J|yyfG^XUyio*yU)`q!W}nfMx&00%42!(~ zdWg3XKVt+7Z9O~o7M0bpD<1BNt9r(xL2(J4xo~u-2p zd%;_MdE&j_#bC@P7AVw5#X!5x8Hv=i|J_a0poNUF4FjK$92T(Vh)Av<%SS>$_+aw* zd(QjCFnXn?uBF}^{N-vs{oYCA=Aq3?bb7jfW}1&&gDMHr{APqUU8~jLtcn28Ph++X zc)nw^(>A(`7C#)_UMfwWy@qO75sA=fa--JbUn6dpZ6PiSwz!1&)lZvgcA2cqpWlwq zNh*HHli7}`iSp7R-r18$F*&zp%*_my>1`xwY-m_~tY&unmH-ST=g_I4ic8H4BYcc8 zX$~nNboxXZP`XyewvyfdIrJIfgUw8#)71Vu{sKtu|Ma`Y2Sm?~D8!&csJhzkvx9l z`*qTIp5LRz4~c^r$x>`sKs;MMvc?K*sNLL_d1shNaBIP%5z(uF*7Wql5dNOXF0~ik zAhvH%C84A2NEd^nJ!-f&lG*=K6viAoH=Mi?O*Rs_E6q73(tej8pLc}O^xJGG6W@xH zJkF5ZH@~bN z=(`Nt2W!+rd%|z({rU$cF%!?TNq7@_5r+EsQUJ!(Vg|{s3Bh)DTJ}deDN8H?o8xtn z1Re$0o&qD@q+)yXxU?>{(RVUc29eJVKj9k@{DObSiT254buI#>vx6PWPDSGmgH-It z4te_1iaq>v7T$L^@5OBhTUSY zB}J_>QC@_msRB2u*Z@`lr+OPjh?-0X>MT5G*I>&C554|W&;Ds0wNXjg65}grcgl`l zYf5uJzHx%XASrS%NLm?fnS>V4kJhnh7;PI5^(rYENti~x2OzE?O@=aKLh$yqiTScM z0)C=7i^wC%(&F-|4&lkf$12OGTxw1ezgM>y%m?qM(rA1+J>ZUNn0RcGoB(wU%yH%CyLoBLMDo5a|-V+RpY-|zk#YC|JNB2J+~tm;V!v^>xEu(%AlSx z6W^t^p#esLBWh`XDF`?iJFu!t4iT^v6UIHytpORAwx1@dKhr$J>HXe87Z7|8 z?1ah?k?aW-zDhy4X{Uw`f8xj{QK4NhT#9oDSFPOO z1bN`EFHjd9!_5VYrCr;#(W^%B&Nbtm+q2uGMOYB9Pj>ACGLzEc>dS3g9y&=A8V!Th z<3{>bAQ}hg7#aap_X?|5po@`Pf=@?UVmDPKyu#UK8P!TgYow4E4=neDF=!Aw2d`Q* z56m}=^z56imv8zBtf_zcnWf$lgkdsWNFqvSds~rwfd4SV06zY595f=3O@gOahkp-j z*s!x^-LyvTKxmo@YY~_wkI#eXK6;I)?3K)Rm{z|@@gSOosfBJZenl;WkQq=qSD<(0 zhy3`ZcSF^)A8WtR3v8H6P~S`%&(7a}FbHqNDW^I!M~r9E z!k$ef6=uY$ld|eptNCHOM(RT=8O|ASH%gE({Z@0sulT2O6Bz9|YiZ>+?~f%D8cK6H z%PNPGNtfjwv1OwcKw$QjU|oZ?r18C6OC7g6`u&B-O^nvx0$%FEQj5`NDdqDX@WQ#VSIi5m0O;tr(Z2MDT3_7+L8B zhFXSZxQJNa<)&^Pk(Bhe|7c8LO^`cwWW+kP|Lr@)IZX08*00C9Y`#Bj3)uITDV0T( z#gfO@HT78{SZ%3~o#9`e;Hz6{VII*OFXC5(PFc}N2tE8H=V3L+_)5l!+CGr%7nU9V4?H-?E%y%70c!^YE- zeiax%J*OxNW_j+wW`1uH$M5?mq`?#f z^riL1{H5Q2yJiILHLB%W@WyJ4!TIDyO)e*v^YTlJ!b{kQWT6Uy0ebj9legn7S}IMJ zh+*l9G3Mo|J0`r!YVPupq7r4}3StSty<)=N2JPlgKivZT; zGAfSi_@O$mL;3w%6B`bwY2#$jL6VN8{m!YKDl*qwx0PKtUJapciN)BOAzXV_aICk2 ziOf{eLb)=SWfrc-IjDGLGwlTP`l@$)Z`JZTesa*EdZ(>CH6-MJll)eTr*T$KkDVWG zNTVEgSIbq*M~`#ts>i>KGczQW66m2|p(5-AxsT$epGpsOZkbnT4kxpfb+LV?bg`?LRUFHp ztVnDa-kSYjyoUrZ7bVPehTJe|>zOAN`Ky{1=H;;-+9$hld?)_PS~K#}|Ble(j^+}- zr9Xok4@&rm`aoJ7J{TwboJSNPWj^{$@w;2kfg~@tp4=M}MT{nAiFXI~mat)`Bm*VR z(?=2DJl_}T&o)y+DDn`3oOR|ECryZ@LYZS^VSX26kE=U}9Npou# zlObr%7B8PTx~?BE_S6Xr%!~IeLnNKH?92uZX)$DYe*w*3UGIo z_-xtN3_VG(uq1v>rHAxdq@)-3xc{rP^Z!Iy*OZ!sM1Kh7djtG2EAcF`FexFF<_!}PW8C|Dg26tEJ#pS z2hveXWH@qlc0s09&Q2ZU;4*|>K2Vrb=73EgHW-~pB`T|P+Hp@MUpO~^Yg#8`QHMH5 zXM3DX^dPQtNvLA$aY?ZK)xn;gSLc{j^BI(oH@ag9=^IHN5!7m5YVJrHQ@Rx`;SfBV zOAr3Mp6HCRDVs+lF(Z@k`cY?-{gGum%iOy0A*&c_+PgUUOxkwmPwJD}T@-sWSH(Za zb^&y3FY|i=6C*{w%;g8+5_?R-+9PzPB`-?c$UCk!O3yQNAMd)51^c zeOB23Sg|cZ&2;=i+-B-Y)ZE_eakNOoRUv1nUdmw-_`bY!BkM~w$sH>0b2{;8k=r(T z*L7l#Z=7sBNe~3vM!ZS<)p$=&i82CPfoVgnB}X757;`VIi*r%mI?FAF`#zTw-Ie=q zc}jekmh>nd>^K+Y!ARoyQGO@pOK8QQOPb1IUx`F!)JnX3_PtnWK^WdUi zj^{3S=Kf{ELN0%|u1{lY6PFYxEu$;oHxWlwCESJ}ZG%8*9#1S>AJMSfJ#h0k-W@S0 zkepjP9=gcn$ZP9%XsD%wT};V7_w4*8gOU5r!y(wrAnVN9wpkF7*ym!?iAt}VA%whu z7vt{8>E3Am2oJeeTrT)o_KJ}{sjvrLhyGoyTZAe-t%j9BOGGx0 z(~L|}=NV>-w7&_T=B%glH<(td_WP{qPk4A5C74>1JN(@&;&+eq$Id4NlA^_@>P4ge zLF9GHOH&{6fD?z%OV-L(;Czf z@@3W$kp_gt3V0R*XHFrpYy@4UZ<|y-Kc*73lyyTnYVnvvv7yZ_mD#e$ji(!#FE>0UWyah646^Hj}=3wO6Gcnpw8oYomHt%2}344AKzC z&8102*z0$^@%$ze6`F--J|k2ifLGQLDketu37L} z!q9I2)xZZ1pMO&8h5g+@j8jA{y2QoxA^LC3xbx^WaVUs^h?P`2CG{{v6wj;^aj7|1 zeupP-qbEIYnBZ@JQlA&)#y>{L0#hqBZ4#6=r@SHEs=zcX{six?z784DT|tBz!lAB; zH;(=_(X^hn-qA84`guLGOMTLv`bC#NjqW_SzG0lXmFB2WdbB6Wn49g$_H`0b#V<~Vmue(DXi2H320SJ1z81Fu5<{!dm9jxp!t2j^X*OMpejNpOLsSZANJko~-zqc}w9Wgi>9m)2k-pgY zogb!D)}fNCqS1P6_$mJ>U5Ds*=smLYoojEAI`>XL!gl1bnALwp@_@^>5;nHXOn{Ns zKAEa(5k!6BRqj<|W4c88`BL@WMLkwgV4!#nB)#nZSO6TA71B_qI$oShk>EP zW)1Oz|2;{M%}y;*lr+^0HPlZj{02f`-s0;Ks{$G>9zAH`yyL1|_IhpA`y#?M&{q zGt94m#f*;sS<=>z-T@qujcMBmk^}cR`Upm3uyQcZ!>mGD$>a8rf_%Te{qxUHjv$r< z|B}_BZr1@xa+^*^`+>n?+Yi>QyZ_Ps1%W!N22?iaDZi@W0}J&4`oGPg406N)mR1G` zEC+~+86;Y$3xX)1Amd?DSxTugDIgYmEaGS($v-a&ZstV?Slwr833R#4ccW+XYLp32 ztYeDI3oQjlWKMPlD*z=FbY=bPBXoVodkr%Db;*Sj_@@wl+a3xzN0)kHMLf)8n_LRR z7VlQpst4Beq__PP4yXoAO~GPWl-bQxA7x!f?*73|gUVKfo$6uF_#WWlZ(iXHL{W;P z5`4qSVC4ctH^%vhUtQ1cyYXMY73Y-20>Sn>{F(?>YswlEBJjW^lnKwJpgPqM_2&0O zLj1Nd9#gR-fGHB{28+Qrz`q9XEpUJm*;ygGMm0KwC;&V9>V^0ZC0^Y?(s8qBOu?zd zyX>667$fy_RU0zidVHRUz6=HRDa|2yqXZ>n)xgt1%m3@lTxQ`UU^ip-8m|s#Jwvsg z98Ot`8`6QnB9T`-!QmJA=|=Q~zaTk_@yIOn)@%kOe^PSlmFc>{ALZKI1-C&&36A9s zY0V|BAm>Xy80uF7ivVJYzhbKdD?3&sZQ}H#gI;|U+Am*zmNG?U2A`_V3W zL+ZVyQ-;JriXOPVoPL4b-Z#gpl6U%@=ROg8B+c!s?#XnV%s}T)GvWkNDgU}a{;8=B zorODQ?)IytL_#A6YT8)5#W_kk&Vyuod;62Z0V9L>wiq!#eaeHQ_%?*H;LE%XCcF?~ zWll=-`chVm@F-JKW%x!j9G$jIWeMF0!QZkC8`I98b2=@H+8X23Tehs49Ktrw`x|Aj z8o~W_fIO$>bUFVor0(xy1=JcDeN&-sYo@-?@Lt2@^nlMbwxBEFZ2KMXWf!l{ft85` zwF0yOl;e%={TM(u%h(zcJen)eANzDv`vtOI14uV_cm(ceoltaPTXW~!RIbdwhSH1C zyg9Pgh39*EeVW_wCA*Y@n)ar~==^$7Nug3tcZ8cr2R2Xne@Q!?C3rYNK57#nX%@|W zMP}5@tF=_qz($b^XI}WqSqn}>O&ld~5ux^o-?iucj6V>VxOjUtw1-E7v6HdJi2btov~YKFs-JL8ZD|-6(U}h@$;J@ z{pxKS0dC9=T{;G>gV{Ha|3L{dBho3!rp~{=`BGFb`4{)#CxLI1EgM9H)uYk*M)UrT z>Bo>tyZ7nM@BXLVWW~GYDXl_ko>o3;7XgE%T~#SAgWql@4u6O8m|9gvc`2^H;@)yY91}Zz zUz$*ZxY9$%%H1$uKkFv_)Aq}moWHaVeVW~)ZKs<*_uc;sD)GkiWEXt*pO1fM)DtHo8Pw|sb{|sf$v}1ZK{0kodY34+!`0S-EgjtZ@>?LhGC#93t zUM)VRS(yu8s?V6-SA)S~|65sI^0Rx+j-CiyDR-Z5s!-@yIa+ifdIIWwpJ&m)}ar7=l^+7z(?nI{%q#Z zCucGNmEynuw#@%b0r*Q+#Q*w*p&ITFA(hMCS#Gl`1x{YT!!z-}XhCRV^uBwBr7+Bq2#6+fpFwJrWchF0I?PWd>oEtiU ztLoRHy5%KXl@ueUCom08)?(0lvZ>2W}n@s1bP*t0gh&5WTSsfL_;$B9P{#3|Jp)KtbjK z5>o?U14soe*o+IrT0rFZQx%kbIB*utJRJ`)9y;H%0^Ya)T3VqZHU<3t6-BgN5=)T) zvSl}b6Mhshl>!T>PAMQ3IByUHMYV5&7+8)q4FjmHN^AgCv3mY=g`vwiY-k5E^XCj z`F8FWvb{2zrv>EFX{|b|Z>1j=bULNroiB?ApxG6b?_Zx;^sQTY?d=(__5Gm$yf+zX ztVar6J>`uv3K%ng|ECPdTqx-DF2u_WS`K2$*Z2R&;Q+P%p*HkC5#gOrhRA8T7k0+NqU(#C+ zTOG_t&J~q`1<(pC%!bH7q%DmqI)zQCi!A{`IO=b3o$iI~c(4ZQkRbLT6|_t0p%qFr z6!5BFCcN>`S&HIQGYc8&Nd-Z?HD?x-aR+Y$?T-Sx8th=HAmjsAv_5@5_Oj0M(@x+9 zv;3o?h3DK_69a-m%K)k7I#@MzGl>(wos~kY14zET7MAMyWIsd1BX>6RFk1clhnxYD z_O{wDtUv`Futi=bGJwydTm5>cw}!)d8>l6U1K+>GQ_A+c3)-q9w3ltA;(19}ZTEL{C{ln&v#wQ?G9z=ooE2TpYlm{lCliM2qJYJCNj`S}| z=h=ENgPINC8>T`f-No&*p5=E=H1+0i zIiDY@vvG?3>XdA0M8?JlQ^R3ns6Q3FiN#K(i1l^`*dk293URhp3Z2|*)JSkja;97L zCaYSkVyQ`FC8W3CcC28ebEeLmHO;LUbTAnk<2&K(ZeqQE(S)0>p@nPoAiS3{L;KAX zqby9Vt+k%BkA4l&H$W5oJ>=H?qb}dDG4smOxgGYoG{6YS?1bW+8Nha;ND+hH`FV8b zDtDb@lxyK-!44)pW(f5iSa`Yu^deIodiCWSl?h?#R`x z_Qwl8%o9DMv?mOlfS!=qK(dhJwbNjcrxY;-!E?%hz+pB-f+_Nrd+*+33N8yqgslws z(}d56S+<|Pr$YEZ39-Wh6AxnB4|4X@ulSPbXGX~jw01>`mJWz)f1t>Ly7fwW zfIRu=m=bSXPY6IcVCQMz3{2q%+{|l-)<9VAdsK&nrCj;7Pny&ZoZ|HZk?bs;NlU#F z@SavW!Crn{?zsE#-v}RvrD!2F$Z`VPB7#u^vWh^2tUEhH?hqbPu}m7OJ24zM=u9Lm z$wg7YL~RT3_vXdHb7q&-B#k^t=AI=@dpfg^Zq1aMjW0dWeD3*019YP-q8ad(b=y_T zLgkp=Nt#IxW5@ss&9?(OhMxWUKdMRMvyXq^I z0&T&T&9BhUAWw}G4aQyIYQ%rQp1xlLdytseV{he6YF@!p<>sZ(Tg@q?~ zoo@0g?jL&h^q9KjYzdv=98-?WDwgaJkuX9+>lg5%l*6g%Z{u~D_FS|tJjF!;zF!)f*+tq{hzYZrZ(ueAxNjfYE zsu!7mHDTKTZ5cqZNi+o~kG?#+F2)HMH6Ppf9G8?)~#g}y+~?Q=0-LGJ7kp*iqvomj>frnbF*L^-SZDn?=Aj$1h z(;3VbfIeQT_Zv}j9bW`+Z`Q#Qmo!>up^6x>F0eg1Ru2(OttBTdsWC(E_TI2>)92kB zq=i@1g(k9IVh?-+I5;9vkef+f?|l<)VJ~M8X`OagQF@K`L>|C(TWLf!6|Vr#p{oD{ z-1+@xN6xO1nVW!~&a+|0ezDmYL4(^f(dyPCfyTTibDIa~&WZlcTlbD`W+B-fs_j+kS{xtFrR|2+}58{}BvdnYiW2spxPM>6McU;&Q zVjkx*<4(s5AmHpl_zOgufN@U9&=B*I`cc5@KssLOJ3W_*a~Tz6<+OQz3!sJ@JWT#k z(Nuxik@hfg)hciE(ctoF&d0NnGNW7M#?!4{R=q0|Wt8o?VvJ6j+n3=Dk5vOXIW|e` ziN^)KZn5#Juigvgz&()Og0KU9NWwhgxZsWbM`F%8TFPBXKrMf^Szw0pdK11uXh4s0!a#;{BOZMjI>D|?Tg_gl+Jm~VItKS@zD{S>fj26XHnm=U0f zTU)YO}inEodxxhA*FCukdnV}#yg{BGRm9k2k(J7ft> zWno?Cz;MZh3O>k@pPK*Bp}L_yoCs|&I+_-%MyqD4AVe2`f>P2coU*=H6cYFwkQqju z=|Rpqlx`?y+P*KssL2H7?`51YRwZ;__dJ;VhRrCkjRNKQ-7h;=z=6PmxnDSgUy zW8TcRd4C*PZVcX>U4#vE2#~K+wfCwS7T3621Y4^(+zX83x0w-b1I;4sXE#*s9wdM& z7A)$2B$cGVp>)XksLOA7Nw)nx%6GF*o-G)fA1DU+lGkr%?z8bKj1k<<8`5&R#Fw1* z<9Em6YH*;if@bS+Fv{&4Vo#uBC%1Na2m{6n7F-N53sc^K{&1H$A?UMY%=5^9qGqfy z=@#61_y|O;iVG7Iz75?buAuEB1v3^Vl_*SlHbWu2_(Y0gdr&4qMoi-n)+$YHdjZ1&X+Y^uXSqRjN%CC2#)2~9nd&MBI=H%QrDwKlUDVanHjO& zbqp-{7XErb9ZNm8HEZTPKaOtd&l8ui%a?65UD^acqdK;e+(sXI2Mv+7B}5f7z5&?i zD!ORyd#G5mhgHC}?Rm^k#6i`HISA~lafDp>K>2qGkjaWojsS-5k_T_3w-LlG1K;DY zHMA9f%-P+Dm=X9EP#b2Ns5x`sjO2s|_`N}!d6MlIBi=^_##p&V-(t^JgLJ;@`Qiky z6yS{?IxS%2w^Gj9J!*(DrH}T(F~< zbx>V2{}l<4Yxe;0S_>^gwhJ zkP<*Tp^76QEhrE=!GR>wkq8*-Sx=nb|DE6ao)71`&biK~@zabYJkQSFYp->$`@Wa7 z>$?{lEg`CEYV%LPi}tLVi#Dv0>#8lp0!KZ5c84 ziZ5fL(-`6h$|is3r(YnB7j~RHXaKK3Ksf4)=1=$pqz>r@METdC{FPx5o#E?JYmK~)r0eMC#ru&KuJKmnInn$gHN;{#VN9a! z`g^NHAFzW-YM74X(oSC5#Jdl~o{W|MqY4IwYM_#x?V&glzh}r+G*I{K4DXL^v)~@O zHe^Z+wt(8r%~8j%3n^cse0S9rv5lpu_jSaDe0$k;wi-qkrS(BI)&av1M~9~^Rz&Cl zY<~^X;Zacs|9(~@l%g)ed>#~N!1lc4(`PI0)>a^R_oXv75E#F=1gZn=94AFcnKk@I z2NJUtsiy@mY1xh!<-WcCSpA!L#c*+qbn0{QX2E;*Yy$x2<G1^PVbvTNF< z+MZETTr`L(DoZ`OZJ6}g&Q;BgknQjg&qon)iy8`s;Wvdl>6RQ*xO1T~o~07`mQ#Lw4Jp z#&VuCvpyioO%n>b**$aiXmeMUVPkTSq9~wj?0{C8Za8tS_{v$s>25((Mm;o4r&~_O zxgZ9Hi)l~BGq_K2{*?VtR@KQ*8CIscm=`Po9lYR?o+TYE?mT>~I&f6Gq83@i=qGT^3Ddtqmfx~9;Vl}`5Bd; zrKpZDWGPoC1&=HJ+CxK9t)fG$rakm%k=lfYSYWttNF650y(Qrn-1HQ0UgSa*#I5fj@$;59Xaf!?lK_hj}oq_>JB(u#_SVYqJ@ zCy!Iow=}6dt;`f3kW4W%fD>h&?LO1-O zSiS6g4v;RDQJcU7{fHRt{}4tW7Ns%y(Sz=nvX4V0oFj%6(HvJ-E1dgBXb*=c$1s(-yY1z!lIo z?7(n$NBjx(ZcA>EGDTnW1lInJRk1z<5B`9ouHwDqq7k#*7~m(SKVthcG3Jk4b>f@u%6q z#%chI5T!*O;k`Htjw=|$-zZ3DCmi-Vzs;TPqjzB);3K3!R1E+(iBlVTV|M1ww`McG zPI`6r(ay$ZCYt0LgP~!YpI#!~ng2i+a%oN;45*$h&kI3rKdWC@i;sLy(lXsB`Gnd5 z`a9y0(c97Dt@58RLa-_)Rgt;8qcx25d9lydP2*apa6ik3Cfy|fR}+N74=FHS5a!U-59_Vr|49q^!N)ANAyBaZ#N)HlH{qFQKS;|0uwy&DWYxO7eq74PMaMRF`C?-Ua%JhcLr=Z=oV8=)F!-Lljv)d6mzDO^j6u=I zPp?*CXiBneA2>F7^El-u@U^m!P6cJ(*?Oh06qA=O@uGxOEdH);1wJ1YkpG`d^xo&m zY`g`LL+ka8_#1-vbcuT{jNk%8X;J%f^9oE}Igga~{*bi@yJ*T04hzdmZo9LJG?HhA zX6OTRLj{*lqYwwcwyGqNcaio$@OcINyONJrjwWnCgb1zk9!N(y!+lYx4V!ETQ690^ z<^;gSrI7~c!c|*dM8;tkuO;iK4Fm6_npT3?8@fNNTxsk_dI_&k{@}Xh0K@F6qzXLB z1$*bwtRyo@g!6*E86zfm6M-~qtU%ld@AaI{iXhkbhJ}8OwtRN{uj@}xxG6$;r2R4{emKm0v|s+T=qao&IO89#6I<;zaoDAHXphb$e?U(P`F^H zEUvtX3wB|^)6_GmlA*@SpTXqXAl>)SKOYxKEW2(4el2eED63Wa?Va${7+wsQeFoMp zM;?&&@lueA3V6y@FBt&2YaX8AxO_ zf~&WFkIzxmIAvgJhn#%am7FM222_D)_&@lVhTAWY<6#5`0fH%_v*c`tLm>2aEZTDY zF9ePhyJsE#&U!@E9hi8wxMudf+-7%G(N{Sz6OW}fXJ~2e7JOrU%G_wQ)O@<{V2(F; z>RAcNnuSKrN*(~d1b>B1rN{UMCEVXui9--NCKit(B0-pTie@71P*(a7D zck7tkJ?HQeb{@1W*YO@$y*RFd%=2Q_PHJ5Ub&uVWS#ACK>nQ|KI}fzISagmwDKZy* ziF4Sk_=6BA@)8>6!2nzI-u!!ROEa~BnR;*#dmGzU~sSUFyGBw#gAtVp#dBl}l-6-{W zu#w>uYtL*I#_YgdIM>&M$e_ae&75C?R?=e^egr%YG?G*2aglE^l;0k?r_Vo%tii-} zpS)Ce)g78yPuRx9{J?5M^5X7SxBZHSk&Ggp>^*bZgcOO z=_&tNSpj(Ddvrqo#!sIY_Q=3F;x(=kbR-A!3I7xUe z>kbDu?D924x`D9z(U@|ePkl0X2p?m|p^9?2|jYKD`1y66ThI--!d&Rf%2}v^DXO z6nYH~M0VDpHVp zZt_++m2s zzN4-~xj;)nv$27vn`ek;T+fl741kY*X9><7Gw-=cRpb%IW!ynO=Oha^Pf9+G4E6*>!`;@l zr!a^rs$s||bF>GhJK2d3?uLZXy-sUVAqx@5p3OaI&biXj#yjbzWG+dkK5rKuS4XfX z$(C0lO8PX=hsCw+MWYK4)XJltt00ShANsaBP(s`i#63T6zF|MS0OI=EOiuqU3ut^! zs;OMuen+{?wnP#~EE>T|1MqvK&piXOo<=V|D;q_jw!U4zq^c*JV3$*O#9kTwh*MLbNBy~3{EgGr ztwE0_llL_0{gf3TZF7xQf0fXJ%W=6#!&7_8eR2`?8T$p}=E3zW^$Q6$Pl6MJQ-jlj z&7dXqHptV(D@Gd6!vK&Fdg}~vx;ZTcI<+>ggLUc)iCxm>+xlYdCxBgR@UE#gLz}HC z<|FRsV%d2QfoD2pbeB9~UEVY&8hc#MPAw`OJaY8FU_ww#GdaWK8RL^0(GXvlm@(bbmztV8G_FjlVR~B+_xa(tgOL;t z4mxyr%dc2CTwe;bKuu}m-8y&8mSH*KMJB$ z8Td*2YMPU>c?6bLbF^KWwF*;iHnaXsF6F_HSyqlPNqXT!Rq_W%eA4o;u_xNJR^CQX zh1PL}RNo~1p`^2EKFH^`3*TF`Qa)T?3E=1mv!`5!$gnhOBXqFp)?f7h-}6zD?`o7K zx)VN`xE>L$NOTq-$c1x91g>~nY96-JTlwV-DdmWm9HT(o>yvG$Es!Y&BnMPVMiQ%1 z>6-NJ^g7@C-%|2iEg##J)OM$Q2(ieKNe-Db07^xogZNNukbx_qD|I%=Y3Nsm(pE}p z$11EYs$mPsLqC(3Yy_gY!XwkG=cF()^*}Y%eN{ar)H;QE|V&WaJ954om5VEX;S9; z(7trp!SxfYU^09CiaRf?Wgrj9Wp-e&RNqtxdGQ$F;x;bkVj0*Y_*9B6~$X#Jf4c$&eZQvUFdhlf!@H<0CD1p^KnUypj>?ggLe~0+RA+E4O~a#9U=@Y?7lnXm1~WE_npopu-72$hwn9K z7Cw{xOeCEJA0R>2;#`Xcn_-2UOYI+J7vXu&__+wexE1(UUpL5kCRo+yvT@dnx2~%# zbCf$V_?qKP?8|-O%RwWHa1z1M?s3Y#N}X*mXv~kaD0HvI9sslFK7e3-z4|2sGd&^0>Ka4MKM3ODFQcbH_CE~+&gGqrR!C+G53Z+|cXubMf&x%MoM$} z>grzzhZDtxlnCtV2~N4fTQ7Ysi>jIs4`~N#5r5HgSoxhC2q3^wa`3b!(k~I&PjXYr zMOH%nM&h17V}3U=rM*H-9Ps6x?n+tu3U0d8BN~E!Y&~XyRXgoX(MlA+HYH8n-FZJD zujQ#MkZk@&-_#Cii+Ff<_F*nE0bP5T|Fscq4}4sb+Ocxusx+ht7Fh8w}Xh|9m8D5GuIE}d{TqkHH=;!2%C ztVR<>>p{k}d%yn#_U7$z1Cjg{N2-5qri}bmyQ4(9ZOpgd9=kP!_Nv>ignt2RYPnaY zGjSCm-2oRx^*@w3A_&#_q<%bgLB5wT z*($5=4t;fXREmtG}VnLFpzNOi(je@R#BAu8^gKhD|1$X{^}t4{tK zT>op6kW>-UukN4lMvUtUl4*T5QY((MMR#zv#~dm55vQm>emeK)*nqlGn$<}gMF zsk-9aEujfj^4yf~u5=GS_dm~`SXMC|_MVkYpLN`}aD@ORO~64w-mS1#vgAaZ*`v45xh(M!fUSxKPDU+*y8_O$lKt- zL@<$b$W)-{RA@UrlE$-pqo;@?%GoEpyLi7nB2>-oUsWL7Bu32nuC14mXMNU&1z9UI z;)XAQ5d5jbgQz?QFX@%bT9t)*(@^(~s)X?bh6q2kmEbK{qn9Te_cMw^4h^PV@G zJ#B)fAO-vdB{_KT4hnaCS)bs|NV9#lk!r9h!EZI_#MlijL`0dsCPc00U-`LKFl?$J^we3~R6ooOh4`E3jS02f;!|KQ+j zq*rx{e|X%KdmRsbvHhcjlOwrVPV#R(Kst$N*3rwwp(TaYYrelKlyYikrOgg{3XMQJ zR{F}4D#6PnsnnB)!&y+E-Tsr{T|Z^EvCnWc)S6eyI2*{F1J<06X*i==ebdg@QlsCM z3G5$}$~|lNRzh7dvF@(5)d{2f=2&^yKcD}3uL;_Q(}ZVK{aT{>SPUMsKqT9kbnlXjMH&7d7|AG$pn&E7$&-Bp~r5pYIKnoNT z<33V_6Mg0kcX_Pi$V=7(9lTrc`>e@YndgkB3zsInKT|Hk+%$)1`BFcv*#$g=V10hz zU3YVy1_r?Hj7;2aSjt%>sCiv*!GvH7`!vRhY0wxS=@wYZxhL!B)JjE0|KRI{G1@Bw zwU-=a(7&8$IWK@RF4u?J27OYuESYIrhu(2)P(4{L**-k8%+$EzYANSmc6c+g`j@AU zKpumRtcN!3-u=TuC~F>@b-8Ys?kr=v4L4TN0j}l zBQgrz@c*@SDkI&7%5RA?BV*Zp(Nel-oO)-ZcM7y)d`MVM}&iNIs%j1rTL*CYBosr@s~Er?5=OjAlg`M-rG@m6oE#xDa`%e;J(FPa=y@J}~z#f<+9-Bskr3mhoKS zi)sZaVmZZoZMYW{&hwmivvR9sXaC3=n)O;9e?CMXEIkW+hh|^!SptkjIA6;rkgbs? z8W%Wugc!JgZ&=jy&IT1%+nEveDrgf$3Ytv*e%vOW-cJ>L!u|)w7n?J|Pe?Gy`C^&- zziqWIIZLM1WuJJxL@>I&nAdkk-pFX%=A!&R%0l!`CFn&8oohS$0gD@d(mKw5Kj-)X zh^z1?t%R7Zz&oOp>u2T5Bew8MBee;9yPO!w|BUrY2~$;i1DU3@NC$KiXN;W~NpHj! z*EdN24T*68lxyF2Z~E0DGl5A9(vZ2U9RK{xv=EBV?Gu8EZoD#RO6*)w%MFnp_3n%c zlFW>r!UbX^7-boM2a=Pp)Caer^Q44k+e{M)D8=*tM-)3@juAemVf6IuIj#$W{eXsRHol3xgKpzY6;#xC06o84Hxv)O zBGy64Xw}%b*R;9RsaZDGskSV^%MqGPF^<7Erg3CJ0?%}FIfAIP zYwQF>G8JeXRR&Frj!mq$CQdCGhmBsUKF))b7B5_P=_mCPGg`BXkzZILxeSE*0trCUY%1pA^TuTIO8IUdQ%4$E+wJ%D9peV(*F|%#8WG_RgR&FH$EBsWPOyQT|NwAc5T;g4v>= z_uBGL<|FD370#lnBnWm;c0nN`XWnAb+p5UbC3KCIF4+*;OwlIAosdsO%%IlxShOc>yf zbA(h5-|ki9)?9XrH{FTqL40IB3^pTAREiU3+e6xwHH{1vetS28Yq5vovEY>g#o9&# zTE0I4f##p_{%3RR-WNx;u^xq-?Z&DD2AZS)+ zS$$ZSt^j{g>(0FmMZffNr5zyzyIGsSQ;85kToa)v z03CQ~s|g<91ir(lf$64E@fXvq;9b1QCI5e`FV!Tf7?6F^80 z7#Q!t*8&eTQ1L~x-Gs`j*mE0=L>@@vJ(|vI-AH<)D~*>c z-|yPt+ujq2y;?R(4$z%0GGHqNAVdAKeJ&4WFn6}i14lXkM?&lDpcHr3OyNw$kF(?v zKDEyjlZ7eAG{rgZOVf$n;3qIlQk3aU@{$Jy9NIA{UW)pNv6)s+)+4j+Ip5m9mD$K> z7Q7KIw_AJqHoVl=84{3g#3kl0@*6^6IUpSD1#9J;>lU8^)Sdgkb${?Dt(A7V)Mh7) z{K|>SS6I;haPXrG2m$rO(I(mWXCjz7w+%`Vl2(e5cN+WuRx=2VV4q(7G?qXP5rxr! zc(Z`31nL>Z1*o$fAW^$vZindII*`V1qC)GpZe#F(Z3`*~KSMicm%GZsU}C%X2MqJI z6*OrjVBV4d2=Zy#?M;>zY;?S(Mix9ySw?~qT*xb+XsSpf%LCMEnV6~9FH;#LmHH|$ zd87XcgJq$!xwY8=Gc*y6OQ{mHB~w}UhCn3l<+g9XY_A@+lY#it;k!8+H0_CO{(Bfu%=5+IoEAU5n}$)6A&GELNysm{RB6|*A; z;Y+UqQ$#Xi{MCVo^k_ii@?gLZDrX{uuJw)iP*bLp%mp0%_R|YMR06>+rg5v^dM{v7eslKFt!3LmyjF@Xg3nlz`zsf z>5;(%wYX4M)ojTAYa@4EQ6v#z%ca50i5xv<1`NXObsTTl&LPHVuW|mbHT|0g)&bg% z_D{T?VEz4UO!hO4rCtJUkZT60@#R=TM?}V`AzABP@+YT;o(i{yMAaQI*=Re5NFR;2 zq`{auk%{wcJ#Dk&gE{gp8oSri=Yz7DgMD>mMX)_^o&y$vL3X;vN)25pjk{)SM~7TJ zv!hrEoj&go7pRy0V}0(kAPywSX__2C$Y9w@vyPdIGS>FtE!~x(^ry_nxt5rte z^_B(}!kKz+Y0_vdu71$w=!nne(BS?BS}d~MsAL0HgBH2w@_Qq9D&kF(8Q|X~!vJ5;ewGab0^}j^3kucEvc(2k%5X0) z$9F`kHw*msulK9RH=#DLAEr$1W>s1!E0Z6DDum+A`j=-2$c=OxT;3up5Y1w$UmYX8 z17`N<5&cGCXhtj1_3yLYg$P^`E-Bds#szioNAcWh+7|*Fd8lSm%iU=|oE1A5OO)UF zpM?7FcRY*Uw&0XUAR|&%cRtv5a>%$~uhq$HIc^JoYnDIOE}pv=N?_k4EUdu%S9jz< z(p=pGP0_X-3NuA^h$q!H&nB*d|4G*W*Js}~B>Ex1)?9iwuQ#w%RM*UW5%3Girchyy ztX&N`EaJfnzZy#aW>&64*Eokg&#!uDB$b+E8FD2NzA!sPo0vLKG6Bij+qaH zS2~9@+>P;(&y7j!4UY9l`}an=RV4)6|Kn3(23~#@Q2blB5Wcki#Os%_P7o@0okPYF z`Cwj}09z!DCA5WUxMphok0`|E0oErIQGGEDh0xLU7f}Z9A-=`@qn|G1Cs@R4!l`kWGt`?sQ=mOVrn=7AO85x0d1H)fq{eard z69Gup_%>2sWxe@-ZD&Y9xD+#ho7;hK1!y7A*pIn0JO;m!Z443>c(y2%(T`VZ_>)Ea zf>+`Oi6+aE1kouQWSjqNV1cFD0cFb>_{r5Y7{l$Rt+Mfr22n1Qfk;IWei@5k<-NTY z*mW`pBj1OwEWZ_w{iGiC}}$4tVdVc|6dQE46?s_&W*!*>mgIRc#*Bz4%wk|;80^%f)GjfQ1o^e z!l@VhN!th)whRMZoRxtpASayRe;c{I_5W`^?mP0W6Ph-Z5WPTUeVOA+1-=DCkQ-x; zas2(={~fN_8!G<$J45Jdex1gh@VyVQ=wWwRqYyGVIoRL^jlNp&G zbu7fc1O}ALn!3EXT=Gd>R9}S~*uy61D+pa&HV*s&QoD6jYO!E|{;`H8Q|P!K*kg9J zOXR$e|1FZk)<@2!oMiB%Mq0YxXcc?uxcbuER9@kz7+goawpSoFA%9pgG|TWtoSRI2 zc5T1~Z=XN+JPC46>Q zKsj@dvcr9ni~VIWsNlUz}!uQucnG2y+2TUdhR>b0A$z-#RWMN8lf0;!87 z)g`8DC#RoTg(nL1L6kv&>0V=nYHw$pL>yN`-Hfed8dvkN(4Z2~MVv$I9DP!rJRH*N z7CP1W?eLl(B>yaib5O?D7<(426)|n_cc6atmU3G_{NZU}jZ)yI%SxjV(+4|n8!G6u zDJO#n{1#>d5fmdbdG(5JznXF0ylyt+DH_yR1^FGtA&{F_MP^M7`b*pq8$sC3$i&aw zwiuA!uO?E3zSq`HW=r=mJ}3gSAcAQ>IH+isSG}K6D~5aw>X7cgP9Lm=_}A#a{&o5J*W~EOM)=p`=_m_}``6;?Ux%;1L*u^&XDpx*_`m=9yZyZ-{-5}} z{TokV1^&HG{=H6E2jO4C$diA^j{je-ljs=49nl!Tm^4JzSp~*jqr>36=LX=$TEf-{ zm=vZV_`zzGbygZ3V9hO47l4#Hg6F*OG!X7wMW8j7c(9~#kEkA<8!>_?0ZWX;$!Z4t zk!x#B1>i@Een=M!!Rbb6ETa$Oq&fSN^+&RUuaT~syUd1nqD8=@-6I+DDg1{TM3I>@d zs-A}degI1bZRP-bq$2H|s_yhT@3xS((h<`BW$W@KaL3fZkagp149f-S?J$3>&$L6> z)6I4hX{@wiYCzRJJXK&wqJNLo7v*h6aKUpK?X;+o~+jM?JJRr&?B;z`f9<&WnYt{}ShasRXhA zpCw^S5qF;X_#nTDHQ?A@Rt?$fNuZ_<1Z!hx3FRvR+gm?hRme;wRC3Z&@ zwOl*(ENX=#_{+sK#3daAZk9+RumFopY2!mpyfp)dmOB~PQ|Ej#km(cd9*t<>b4YKf z_2LR*1xdBGQyU*#Kk?$W+CylFP8cu{*sQe%+J(YN^+RA;*|vRi&Ynwsq6FEJh|W0i zu>glMv0F!&<4?{k>I*})2$n&oE`GI#hA0Rbt=q@1Dox!K{Pn{{>Y(D4gs58Vm#09& z#2$~|^%bmu5|&62QXeg(#JvFZR`(k@kZw_TkYpLp)J4BxGEi z?J<}YpiET__hQa;FA;kkM86twOlZxUrbsmKobxhF`)H zYpy?SP^foDv^lxOK$P(@3nA<9?BK$wX;nGo`?pc^M?ZlW?gAkn$IH}hLEydSj;%Z|^Ln~=AqmAGy5+X*k06{9utiU%{+#>Pef=@6Vw`bf{jy}hO$M}O3$S2+Ia)JqJ})x# zv`FZMAz!Y}KGp2_<7YTXoSy{l9@1O44d&9c%W(I9cQlnXQf{o1VoOxazuu)7zlRq2 z1p^V5hf+~H>-r5>Io?30pHbjfTV8^mP~+n9vu$%B%LtVK!&m74UNn^@ zM#ZJWo-Xdd*e^cMRlqAYgwho#1GvylW(Q(YR!mw9zqkUSR!?@KrcJ6u0&}dIk@84P zh2tX}nK)CC#*%i`GPh2K;nwA=%9(H`2+)8WjeQ}4s!o|*`1q4@P#7fcx4;q~M}+VM$KFMjOu9=$s-6Xe}8 zq8}BES#33}^Q^90r%K9!d(f7#S_k+<7gd|9(`}fv zhyC}BzhWqh8&A2fSZuBK$$=r+<$*bba=-+mQ{zs2kT4yl$XJ5j*6J8*T*wwThHd2Cj~!s7GK$k zofOqysS0h6)+!4=6N{@xle|=(1m0U;rU^c-@lKx4tI1EM3{+XTQK)t2B+*pm(~<|M z6<@&1*Mb2?YBen9Md*sFoa)oGSX6iCEW>L4F}yNCVK=7ptl>DSq8`3wKCW-8e{_&K zzg19UmKy2>90kc!TLx_!H?W7N;Igx-!nfCVFBTilaW`X6A3_P4L9@Z?$&)BW>^l|J z21M67mcu_B1sNTPOBi8FDJ>-x2re?jGVow z+ir=tbM^>|<#kBj!X#f{!X$y(-k`+`B8*LF?A*xZ;=DuW*Ip?ZXwu`iHz(q?-W#eV zDx&7JRnlt&@fBlSz5-&0^%V~ zgTN3)Y?~2VOeAT9WEXtvasoqQO`g7LHW$?{N_Vu7|6;(OoqC3Y+iQR3lvFeS+8=8J zGf_Ni?BCEEB^mDuq7{d=FT~Gk9(w$+%7fvKBoyjtbqfy1=blZAz*PLD@O@pT$6I`d}(Hbez>?H z<#QNh(au%c3|`!rUbxV?cBJiA~U6nX6d8!Ax(T zw=H1g^xdIM)JfMfbI!GEguobekpJ%*Z`o^v^^lY_qh=CywJ|VTjHWChnNRgQU0-5c zATqIKIalRX_%twj_~eBA2DrRBY{FTQMcSVlyK#&&Z>{h!F}@l*a6F-{ilc3rO062! zq1TrvRTXyDs?SL~GmLsB-baJ$*(xGDPYP^V-#;;WvRP?s^uvZrK=k1yssZW?;?CA^ z;^cu>*i(rWYoTzxCFCZlE@|+w2^6(OJW*V4FNKqmQ1L-`Ut(?wy9@R~D${2R;X+Ar zm@pb-URd+}skv`mYR-y}U8qviKf#HVue(A*o>FRF@lR63AUj$2VwPgjwO(hwWZx}; zQ`cJ-!*(f-89T8hJNQT=9(JE1mm3BE3?DGuhVWK6V?rj`2S2 zbz6mC@+w7HhlmK4YV})d_0eL&o_y_>VlOVM=05bwUo1NH*|uDU!>FW?app9?M&igu zJSn?az&a#%|Du(z(;57pLA_t;FU;7M_0()bMpV$A#aqR3oO1##*TX)h>yU+E238(! z`v85Qj~T!57~5{AvJM0-i5H#)>54|}5l#8-YR?oOXj5%FU+^$k4n$QED#jMETFP7Z zID($zDs;Ec6qp^uUQ3fOQvn83LedV-JD|5#;W};?N_%SuPvpYqEBw4uV@KKSgM1xY z!iLlm$qE#M+?a~uP_GV}st1{Wo3$S=OdhJriF-2Cuv+H55!wQVowliY7H_!RXo z>|f0>%FJq9;SYPc``oXAk@^X`0NCdzaJU)qpvxIjV=Ux%V$@r0U4 zqgM#r9u{36Rv24rpb?zICED!L!!IhNI=63eEh$t~pue*%fGOVM zZe;P>^}>S#v>?fe>MST%w7}6=AT4kuXcvv|+}2!+Qn1BLyPwS*g)vW5zQ2Jw^T&_# z$l-QtV zBg}~x?%^ql$r=e)KpVU;uo1uON$}n<#&HD>jI=plfY5H9nU|42V^QhM%=1EREflJ? zDIbw~$TlTKA`}lXdeKT=zkGlU(@2S68SCdYEIpqO4iNPkXU=n_*u!wk7ba@6-lvnI z3I|4q;DfC&j22nJ$E*RKjbGD#cKZ(-PL)K~1?w1&zxVftJp1k#J0Z3A;rJoPRY zJNxvMvZu!*qrtdlfWz2sP&Xk7g;CY=+o-nVLeWcdRx-#n`7Y1cWr30q5~0kf_}2G2P4S(|Uu{uq^~eZ^R$lX$BN z-z8~oC;a_LOlXqR8}Ix0hu`!%BpyWJ(f5k;AwA35HKIZ%Rw)foQe^QTw$Ii)c(Uhf zPFu1Bs&mDWZ=F_2TPOKx$J%Zx^yzO(P!3?~7wtjI7o?Lpcs7B-9BuJ4$lcCRkm2^k zaj{VcuYG^!+Rnr|D^scmGR&kg!i!I@yYh{hJN1O}%#3olgjgQe{KQ$gHezB$ zp$&bVLa#nfnPo~GVy|azlHBh=xtt!usFqJ>*TjB4PU#pBt~z#9cIK@nb@)THHu`I~ z=(R=$4?V~bE+fhg>=Oyf@7T8>>VN+c8E&6h@XhHNzFF{nq4B%sQWnF6IaI1c z7mFl6H$49XsX0$~lW8)&UKtY|MZ!i#gvd$RtLxThBWGDa{pO!S4pijF0) zC{GN~(PtSbk?x7lx{bt{sP>aUVNS495xV^ld*P%Kzu@!n@T2)t-pu9Xzuy{(>OK<4@*xY9-z;QeAlkQ3X3HuwxYSE%ro= z0eXcKN2f;OUXG|B`6NxKa4)paen;!z~c)_9qADypJ5U)5)Iy6$| z_PY7W#$)Hx*4IV2N-Vh!O}r1AnO99P>@2G}{@CZk#SWh7nKYj9{H+VIYgTyrTl@0U z&4NQ2MaTOriG7`Z*E%!xUf5SvC6??rP8#?vC6da=?#V$HAdcQ=9QDB9;owBxx9 zVSVQ`?zqf!8rJ@>F&X5M%NGke;0Y-EI=5!xaJ!h*W|nY$;9*iUkH+Xr!hhDPeE15s=vcd*P zRVH2p8Tu#*t+PDpMPi1;9qX%XO73$u8}Gmmbrn}Pc_rIql5D#z!j&gD`ti<62bOn) z{N6%v&$e7r3FSZ99`u&HYx8#0S*>S2!ML!WI5Wn|kaGwLZW4;M7mZ9My$NcW0t zp^knOI(tT0wR&M!&^_J5-=B@hWJF;5K?wB=iEy}-QLyj$nvud#!wKgnu15m%NWti! zS042R*GnU063;fO9GP!=R7RRRLQ+lREL$Qp+sl7dyYj7IUq(c{?E}-GoU^V3*-ZftG~j-{ilBas|)AI5=u*7Mn4M4_V$1I!!jG+!K7{XTB`_M ztH3v9ohNtMmtquIRKP~nR7j1NT5 z-%*;+IlcMo(5;wYen<_VB5=^_DoCRQZEwHvLtHskvlxQklZTAW;rcS?E?nuF2|`>Oo)e)8R4-FS^P55@m}yqa9rV-sA}>9xbEd?J8tBesU? zxIq5gRKR{}{0qgy9^0M)fmE)N;+p0U~rCH14ocD;wu+{R-FE-|h z2@NyaGb5i%>Mr_M+zj6m$ag42JE#bt;+{|Y>yi34`?gjs@vEPFzVGz4iiuGP-M7ss zaLSOH=yQEWI%)yi*N|-Jwrpjy-E=v1CUp7C(QW-*uzB7pI=|bYQk1unso5lsS19h1<6G*o)xNI){$xbz zY}jwS!_N<*{=AMqEBpP}QGqP?f_rb=Hmo>#q_K00j zjMf4^sDA0*Qnk#Km-Tj+)Rx!7v@mBkHlypP&5ng`vJ7pz%}D>5E2UB8Rvg+9XJkpt z*RY8dY}f2y5C3UCe(mz@u;+W9yp0Qa+p#3ra&q@ruv(hc`qu}vsLD$yp&sz$OUt?cXvpfQ_rHhD%48N z@WG;MSDzn=+}ro_gTBJ)U_(C6upL#uXNK3a+o^4P`*9;9T&nd?fgVl_`=)KC*$LF% zO3^m<&mpVXp{oMR1yt^z*QG;gB;2Lzq(_NQ)W%FLC4UJU!S60Sw!4e%sf(v!pO<3K z{-oUv7K3czPgjkrC%Km7`L2KG+?ISpxT^qH9njzr8cx6Te(Am41Euiy)${vY{07y0 z}e?9Cja57en`3X7fSV_#lyP0isj`(zdD(+6^Qw59=`fwg`dW#Yis(p^*!-JZs;`>EzdRN zh8$yiT6bJ5o8Ziwvwxkx_v}&KZ>V;^BX}2+te4X|p%&YNbKRG|#>f;h*WSz*?x=U? z8TzRdwyC^C|C5P7Z=}S>3l_v3vl+QzrEE)T&8pkHLvIRqF`6wX?C^@z!OM^qC6%R< zw=>O@-`czUWbJiHjjdZ_$9As_Y|@R~0(SKk)1hU-{N*#UUk@%n*LtMmb+5yM798T) zw{vW*$&!&XO&mMY-`<$Ls6g8n^0BhJem#7N3;*^v*W<(Hu#M!84`K1>bF-@!zOtEfIZR+KSzEN0j8^!%l<6fQzV zMs!*A+Q82*hG|ESn)~_$pGG&-A7(2mi`gvaJ0ttuYucKjJoHy!fs*XW6DQmvXVZRx zUw)5{C&e7OEx@nUK#to)HY4iz&&S86N|OFBnyx$?>b`rAX=D(FDUp3wWX&MVAfasa z=!rrmdksk*OPLuAS;|&q&(cQOcfwd3vgV;N*0E&CzMEl;-?#UDe}A~H`O{o;&iUNu zzVCC6DD{~o=-!DhgqL6+h=Jk6COrpYc89%Piv`2-`~72i`5+!}>3Y|rAF>2Xutir9 zb2KtUQo$D8<@0Pgz{Ul|vGJX-g~NT|g3PgMMZXOG70-BOJ#{@H@M!G{xO6H7xrdXC zQ`9gh->p}k&IC1#hUL85`=LBaqpke4yJ>&jFa(_ooT+(;1CAN9qG@re_pcDp7dG!7 zt(j@bfvj{+F}<+z@u!6RCf_W`fH!1niJk_-wvL|0{MGJH)`$TXQ455Y@;7=yHYXcb zuFi-b&!jpzx7eOexW`(^eorWSa$$iIQLVaGsod1u1bqe{igF>ZZ z`2Mk&>8D-cuB%_TMi#GtRUF&mM-mKeoq`CR;NExb;p${WL&>@0W_90Q)^l6z8&_|DhEHjU{d+9m(SDj&d7G9!m;M+L!^cq zrNd>QWHBIHyBc-e)*+Ok_S|*5v6AR%T-~_fGbVf=D?kOZKj|7hZf?h$X(00R@3*_W zj@sKfWxc@%x{kRxMt1*0Ipyu7{;$dXUpvY~ldT z@Eiv(LGF5;>t!c)Z`iO2rwFRgs>g86M)#}pi?-UTF=MV~T;C1t zH966=x!lBD&Qlu;_Xr!t=m7^5XqvN?qSek9KV;MOQk65eW@xw!W!IN>-dpMiovEsy z8ohnfsCu58A2aZhl9H3D{|jlZP%=+|;Ct{s{ugINQ3-nt#}<^q3yBl_%CngO(jCq` zB{00_ou)!KA`q7SqTY6$&yj)urN3lrIsACl?rg}&MMGuK#j)(y zz>`2!L*!k9c^?do9I;ChG{7FB7ZKu1*(wec!T;2A##yH}e()M?qzh2y(D!{&I& z@$E`-j)Z9=(cVhDUt{eWD9b<9NA-B`*t6HCfqK|TJ3%k|oaCs@+B33MCC&jI{VHYQyHEI-) z9sC8zBgyTFvZGiXq1&EHQzcPg z#$>T*ieb0}veVSvid0bdsBxWxWf1E&UJS%0=GDkf4%f~rf0g)ioTQ4U-!x)aclU$m zAI@g=9%l8Yci_l+SHab<-z0huW2ugMp#PT6%**kv>MbKmCG`Jh zAMH$~I?M{stNJ0l^DB^VSQ`Epml$KhTt9QAKkFd-s31@Km+H>vO*DQ`RtglCjpm$H zpoFEM%8Ko12_i%tjKgq%m47k_tFs}22q_i9eOfQ#q+yq@VcFgSFn#b+1x4?KK`8{A1;&_aez`OXx)XF}D%ID!pfbJRxs z?#WpzM!Qv}(Mf|;XV5Acg5HyTtkt5q+9C?cg3f^-cjc}^UlqUi91RZVS#2UxQZW;W zAl+4Q(+eA4^maHYReOBlQq3Y>yI0PHu!lo}krZ2}8bo2fl-*gQ+a|cx_0a*^*(7Ns z?_>6I@b}T!-or^~!RQ@3_T=uzWe*6Q=23o`73O!|g|06tuvlf>h|$=$KQuk={4ldV zzP%W%WPsa!uQ(w%Xrwj!>n^PQZT=LV`Rh1V0~vMnbn|>%Faia`=>?1~i1CF~ef0mS z9DXkYG4w5UyTNv~)!);0fGtbG?DS9{=I9U5=@l8x!fo3idN zbV0}03KpU<-P0q1mHDqb2o8^WPm0`gzGC!lmpFgL)jqyRBd#*m2a_1lE4pGwO)VKg zinTJmHdM0VxkHXeJv?M(Qm#e>-5^8IjMUJ7j_05mN9Wtl2->3*2(g+h&@JFejw#|yUJ&R3hZtd~9$=Mi4HJvx* zHD4UAh%2BP6fdcQh=KdE9D9f~9Ps-l(kISQgqMb*IxJrVDv5=GJSXNyev`3?ySfn? zS;!l~I8UrV{lVnjc5Fcrj2 z>mELXt9Puz!^CKzVp{Cn;8enZ_p6T^$uu9OPDvH*k$n8d;j}VLviaI+xWJi3iQ62% zIQwA!B0tT|#~p-#mJ9Cb=QVs9Ev^fdWaoZLPFnx|m@i5S%`pTW2Nq=TeJ7`E0sWl$ zEnaC}U0$sLGOQ4OT53iwnZ^8cqN{wTlBugZ5uJ{5{aJeF-A5!0acokoPs$(+SSRiq&i^O{0ntQ4fPlfuw;*1y|@mi z;Cygtp`(zm3-)-5hdFg^=x>x$%)#$~>Vl&f4DM42owI{mrznKxqWC>k?jHN2^0YGb zP_x<8S~LALsl^dCv1?l59Gu2FGYL7@TsHOgJ_c8+JCa1{m;I$U_iVE}#M77Tm@ggj z3qllv8u%eUQTq$b@!$CNv!MZAoss7>?}e**wXD&p+Qv)?;H3f4yjxuSe8eP&g=M;I z9tQUpxvKZ`hQwMqhdaQNMk>pWb{&s*HJ?98Q?6P)_?iqV^rm@K8-~j$rFX}&RC~tx zTyNdSQTN{>^abE*rF7wuyQ6~*-TocN+uhixQ(pb6-)>5auT`9w4Yfjei!QGTI1@gU zUD2Jc=-=Iy@lZC*eQG}u-9m;g$^1z>&T72b-#eHFQOc)b`i9`v{qH zawL`D-&RMDL`7rdyhz8TDF48cReoMxv5WuBfjC-G({4=`IErvU(7_9E*0MMAwz<59 zPO^K_c@+cYQxCR*vz&P$lDVd(1N$qc$FTCyBdxO^q%P5Jq9kP@mseN#p%Pu}G$;pD zk>ed7)HUA1jS?3LnPRWzkY+yzm9CYOpzN|PR?_XM6(3wWq3<}pa)@7u7cUflo`U(h zSH#&&RPb1${4Lm|rZ{95a&_uzNSs!yEW0CsV4zRHQ{cmcA8xE2p&XMOUp_Cd1=VV> z*d|;Pg3VR3jSV&>xLy+M^}IIah(Pi>XpbadJetbbXorpL&6u>RFyeqLDZ9K(^;mXi zQD}8zEcnnHG75K$(xMEb7KegV#{*G<|ex59V-%Ov#VkyZg{{A!4=a>BO(CI zEp_b8fFet%4yy4mkLYIbCor{m;c{^Y+i#RpLbK{-63uVzL-?6@=bJtjML#19f_LYo zjxMwr-%)OH$8`kk3I)mDdLWh7i?9xiD}NUF`2_0vCCP_nL34My^OS{o&%b|VQD%b6 z6{D2yMO4(brG?HWPY$p-Pa#&We zMclCZWWavIRj3guwajg8J7#M048&otJkDoEMPkSv!#(f5%PEGj+|thQtURNd{KJc> zA}26*kSJ1)8WumdHA{Xm8jo5C#`V!uWMj_GrdgHBmLkfdmp{IvbpcqQ>{^2?=t7uA zSeRSh(svkbPw7~0v1 zb@tUncL=)`>PGa#VMU4177}zi;NV||`{0S-w&T?iuv=4?(m!N8?~(zg-Nd&-oUtQcE^Rg)h7!9HSLY{G6$1NGh zCznMnKz1S4A!aw?QzdJ4>&I9L5YFk2BC+ar)^~a0RO(?+@OskEe{^r}i}DuU6l1Y6 z;4u(E?HqNc(5K~14Q>G+Y5T{cMnA0eO&>Gulb3*RFEU3c0xMzW%hX_uoyZ=UBWY8q zDDhh9(hIa4EOJ?=Sfllu9<&+!7F@d4QCumfdR;Hc!9NzAE=~+tJD4~_NcMDU{h(-a z=ViEFu$&Q8X`L8pcRFPEbI8}~)0b@cUH?U@-G*ec&bVA>zo*cozkg*9v_4S)(#=q= zjLfMQFL+k2zG@JjXdq>)YmaTH(3?1`@*C@$=?XMsT|GZext*-Zv(8(pHb7d1>{sk@@zCV~HEO z)VVeq?46oKYSGq%70Ak%y#+l_bjNKZUDH3%v_7rsLh} zn)U|EorA1(de)#ZQZih%7ZK|>o5|x+lK9gjPR8vIz*03c%&a8sWW=l%C}+f8`I^GFNZ;+EN8oB2e}vLEX0`$9WYX#;jRM zcj#3t2DdiSK}t8|VEuhiqBF+i=KSYOc*t(mzR9UXy?JJezDrp7Io}RoMKP#A$DqRv zB$>^Gg*(elCbpQG``Fj*o&HC*@H><`61H6Av}DbS_A=0io9^ogj%9HX3%27rMyLN` zNsYpImb*K(543=BaMwvNx~TAO4oAzOYfaR!~AVk@^=UJHEtoWIFWtZ5eMc z$4=K*v9i7K&nFc~Qm844A5I-%2Ah+kH)!7;{momC$-E*2om#ebb?Ly$iutkwDYp_S z0tY3fLB$nJe`Mjxc$8;5w5AeS4@U+E{G)F((vj}&;TKo)`{Em8E^g-^vKQ)11N@F> z&u?`?F@8RyhnMvE$yPn~<7N(yQhOP5=n&Mv+V!EA?&sB=z3JPf0ppB*>@88=r!|w( zqZ6((Cvm;P2A9X2>`!lO z&eIWNFy@?L(JmyToH@ltd9%y*s_j!)9<+I7#IJ~rb`NtE?&LgzU2kT6t7mVCZe^rggG${fvjFzRIM)LB`F-dsJe zrKFO7#OeSMt}J2l2J&V~`~`o+%GbEAUTiS_uNYDDUBbS%1BlFAy424>o- zVRu^i%#Sy$?lz4`c;)4ki6C|WzW-nXD8raAbwD{13rqM?QuPv@i{A0E2SQ%%a3oO5 z)Wd2|R=&d@(!=WQD#sfV-BQlkAzCSNv+d+bDm>6#Xms~8KrSkTnai~}^{bqLQGXsr zEq`Ad1X_+*=v`7AP(#{M#uHX|DpPh_$YLJ?j2!6ed>p_vm-rk ziV2v-RqXc+O=$EfYx|=x1emjg}8w7fLNi8r!dwW68J( zf9DA)6AW2@cKxv7B(}zX$kE8S8uLD)oExIN{i%7ccyib%Si5|j;+n^Zz^la3&Jn(9 zzZ7rgDFcMdxP`ojhdYh?_CI6>k@S~~2U$gtMjYwn|8+_gEIQ6l^t zDTFDMqU51^&y2Qw;`0yq4C+y0cOj+jsncSo@n;$&{dCynB& zn7XNdSMC`WQwjLUF?&fJitHud7ZzwTUx(k$)ILF@xi0Y}K<^cI?)3tBQR@TM#p@ot z`dxeBU9wmu7zvPk%owyO&5x100u7aH74iADnbCg1K$$9~#ZKTYaY+nhF4ZYg?5^nR zyL~nnn@QBq690_m9x&8Tnv&J}t!3u*E{pJ%5HPCWY?1->bTKj`Omw|1(PoQGgu$#a{ONryrD_X;G4^bHHskkEyw_Cz3|T-($E{d-)#QpZ|JU? zo5E6g8_4czryURMi-7dnKQnckzeTyDfbWj0BQheVLe)q=K~Fx=SNJTDE^7tCYFtsp zq|t^FZ%BnhwtTJ?>q~YxVFbK9YF?M8w6Z7za6;!eyChUhPuEw9Kw}2E2@lH~;xeR_ zfUb|-*?Ow?Rj!fJ`gx(_D?{6Q_}(g{Gz*0W6POR)QT4IP@DQ6FOD#1Zc$dEd4x$V8 zyC(7hZ%>&~l0B;+u`iIUyoP&#czw9}(Fk_bcRS{e^6=lci7gS5Eqy=^m*#{9`4@_>mzf)xt^T6j_j1Gk>K-{~ zr$tN(^Y-W2Q^?4s8H+nbE{xtiT(UV*psegboE=ptx+iB|JxjBztjVb&>Q#TUlX%=0 zklInHKAoPRH}~B6?#Qg2i-tDesBW)~fC-kReqo^}#mH*?_Z6>BIUz^vr>8yk58)@u zvY{W8{r8_@DBK1w;(sjpF-p$xin!7s0K^cy{ zx$42iw#TF9OPa~l6ZpJ4I(PTa?UU;K%jmCBJ38qh-tW7t$=BAV1Kw3NX(+R#r+PYI z*7oWdwQ-`1ChZ~bj}uh@xl-Kozxa0vXV-!qF%r(k!2ikUfwfq&JV0St`yh>a0YBoM zTWY_*els!Mu?WQxMB60^XYTjyLy%C6ujd=_s`o}mwf+{ZZ=^Qwofzh4NY%1G&gz!t zrSSF8^Nx42v*Lc9-ZJh1cz5@;(`-#%`OT@aP#Re$ zAdguc9fl939-R+EXYRdWUBDTb&Yj8O&Hs^2Kmhos1lm=bmlJhZp^Es(y<&#G3o||} zwQkXTclPGZJ@}YYK|LmWR)WPAJ*vm*$@+*jFqSv1E~ASxbAt~Dn;NaA z$|TxS)l2xE#|ie3%@JIk8~-+~c?)MKh|F1-Zsxgn+zsnASC>P{!P9x9Bva4YH1#iR ze#9ajzcuj*Q_ko5K;(&UyfwWKv-VWhVLF*7a|%g{hvg%kTh+uE_<{X-SU?%uu=|cl-mjS7%VWB5G8%z; zRo&*txc5XvXzAp3*t+(+dt$w1Gxg8x69KY@2=Uvt>u2;@eXd8S?2k~~xE|t++Vz-| zDm8-j_~mltWkn&+LiHHTUOP|vd%9D`>P{0^ELJXPD`P<`o|{qc7lx@rQlBYgBmg{S zn9F~p`f)8l{1hY%F89r|+rm6t2(UILMeNWyFQjIo%U`oCeu90T*PPXl)mU!q8oE3F zPN-k#8PtvF>*0DG4s?kXX1T7bF8dREp%#l_{*cqPytiaFR!2`5-3b*X{0p&?gI<6d zdq~-K5@jAir8z74EO5pf*5Wtp__E_>$X!6q*Uu%wT+YIFi6BUBq`p^5ts)D{iQ|RI zgXRD%bsu8AeiOt`<4=W$@cxh`LKE`q(McFSDTp(~sWDGPB;fla*4QRScM~>f)mIn5 zMGrA1!NdLVQ}yBOr#P_Z1FwMvgl}iq zA80kg0C7&vvv0R?M@Hz0nDbrK8jyT5^2Y@eULk_7-U#dp5H^7ZL~W~=XI|BdBv(-3 zV*r)y<5OV$P1k3(2=Apneo(xF-P2aR5@P$*ChD(^;L+<%n{5P==h8=TY46|Qo$%*> zhfh|0=S|DS{)9%6&Wx#$V(v4aTdA(?OaplaJvpy)M9_$OykSQ2g4rYJZ{!^jx9D*rDmxc4RE{HEDKXvh@36(O*(%pm$} z-j2D3pl801FS01a*;BD4aZ84mrmTwY1D~CpGcD8(!cz6c=Xi>Qdi((TRvH^w#HU6R zpS_!%zEBlO4^_S_2f~~c0*%xi;nfJJXET1CjebWe-6rY-{Gjb|g@_k1j9PlFdDeqc zqQP($8U!%hz2^VDVZuUJU0$(BsZ2-ag*1p|<1;z5U<1&<7r;00;&2hjdB{1Ob_#IEQaP~XFAIl8!IYH(EcAHahBPnme=ZJE( zQc>5&x1{V7B5Ly;Tz*r2UfeLi@(FK+Ic)sZY_ehgcHVc?YJT!r31Go$kqzc6jB>+o za7xn)r>gYJ$~pQh>N$s?2M58D??T=+zr#=yK@F0%Gg^1NEILcI4US{<3nq(|(WH|< z9Ueyjd;6VUf*LNDH~9*lUVxx+m>4M0!^&&qRmtOxx0mRbc{>U^FAc+r)H~UO# zi&xB%S?iLd-zZ7dv4q{ZRCd)NU$W$o2Xh$iSTh%n(1IIcWC2nS`H9vO(i?d+j^n7o~(InrRZzTb@vWf zhM^U(u}?cPzemD+=`yn&<6hhg*%Uo7PwQB1s(sEy#&2r)-@b@r%%i#EO7{D&8U?Zs zhL3vemaZ=XGoR81!9dE zMJ0L7L-GH#-<+F0yHhpWAKeY%qPm-nMup^Zj}o%?wnUaq_j3D3E~Dy_2hT0JZN@8I5$h@@VT~`PM@$Bawc+kIhCzYyC~0p zI0TuxOmR^iz6Qbvc|Lr6E<_^IfzDSd*Pezc?IwJMMN+HrkZCVbnJ=z~jZ?NsakK&YD!eYA(u25&M9T;c$Vv zT;{W$Pu72j?$>VVi4UHMM3XP1f6baoey`3t83hI7jZXDrPe10>hb2_N)3qLZL5iS4 zcxi=5MWxVK2R(gZ{`@nFyUva`EMYzIK7JD9;{J;5rv_erKOPaTAlI!z?+M0bWhf3_ zQ+d`nECW_4yPk9P#?8{3D0V1qQ(0aLV|?T84TDmBv|+O;=;slu+nb|FR`iJfX!nBa zKT9WAZilM2Hax3iLW9Awp07-0#gE~rO?ciRdww@a=WH|96vW>-7y;Gq~YF>#9nNsuQ8Q4yf;@#?sQV-@#6YjIb?ELm@{` zBL`(%mJ*BY;Zy(IsZYxfI72Z^v!-$(1Ix5$^%&gUKWfX;MIN zZDh>*m~dxAMr*A^2AX6JD#t0!+ePb#m8~Dg{yqDGiWVYqQ7;i-uR=n~@%s`kSH5e# z@o}$s6RS5|xc-7ZVv9KYSxU@ZaWu(zYR-<%?#zZwLy}QOe|fp8KhL?`qq7mvQO2j} z#h8J|8my{q3prxKST>D*P&K?5(520}hS-NbgDSGB(8D9ozC{h-^-}XZfDq`;$_{8nSip2$RgOmKm_ex$Lxj8FPKN znyhs%a_UhWDnJBRz||}GpGPbUDA%hkZaaxj|4kp%LfD*BKj^JhO^!XWXhm$X-N!j! zb40N+Q>bckyms_TwGb*d<}5y}q=xh_b)E}zN9ar6QN(mjW|mriG?UrG%$=G=~e!5BeNG z&bb4{AM`lW27afyw0(EDPEAgA^J1}{c!C7TRN#j!KA*FPV*~b?)z#J8LrAA7+GaE%RYrczq#-1Joz7BX z0eJ-Bas`*{e>DQ}Gk62xFj+&`HiR>&w~4hvE+jt&a>GD&^|LwnDVTp>323{bFaa!1 zEVo!L;NBmxdW>Vh-lJFS*l)8ZL&v)wp52f_LQTa^bOWrzivBU54l74hSuD6?rBwtR zsMZ>*5E`)R3+O5U_I&oxnnnBFoabLZ_6f!-4hd1KPaW&3n%-;uG||a#yYQ*}Ex@RH zMvK&CmwT{us?WeP0Z($qLcOS0?EvZThA z->L47h!$80qo^T@v!kD3mjU2qpD6F*+wPM40KTf&*&6{(9{u%i*)eQQ#w^3??jIMb zh-widu4qmn*337h+>uZ=tAkY-OH*`5XvAL^HE@1KwP!7HmQ^yiTL&T1q0aY4dgVyjb zrC{X}LXQd~3w?Ti6KCs3$#-8{%>^uIuZDYIPOauylGg89c9c}yoDC81^m?kRF(;!d z3##DB`v$N%H-c8t>jx2?-u8=401cNwvr3?UDLMGEs*w{{+}821pw1G!G3IRjB9@o5 zeQ-F<7sG=ew;gb+aI@2N-()4zQi>CASJv$w$Yo=n@WDrt-ail6t(EpCdu)Gv%ejaU7Ly$^BDz3vt>c*KQM zU9LR`jZU%OI~u>uheSouJpP}<&WW7L6x+g6IFald9B61hC*-?)(5V)EF#P5>o-tkv z2X{FT+$^e;&^PIOOTtHAe0mhd9xY3_tu_md11Hq)g(&Js=8GM|rOC4JAJWqCfpcuN zEBxSiu??^^VV2-VG`lgNgm2d&3|emO-UI4A1XWLBk7HhJ&UcWLU%-W)@InbfyUur> zr(MwcXa%riwm0tir>u9GCpCV`_L5I{DwQKyTB0W_Uc^nPYBv%zR%>C$9fbd=yLSwb z6ixXrkpl|^HNq34v5p%g?<3&Q>xg)0wAOTB?Jf}ziwSWD4xsD6q{U?p`QJK(*j|=N zn@6n#@d|xWyC)YBy|=TZK-=(@gurGJ9+*LAB-Qy9ZeOA3N+kT&vTvzyetZb<-Teyn z&NjO*FJCAD6@KN|gZ~|Kl|^ecARb)0*_Fo*U9!SifwDY3{a)t={PyW3@n$4_lM5+| zjkR9wNv5QWe`u~XZ=KLknyZ4Kx7l79O}LUvxe!|dqdo4p$cqoczGvdSSZuQ&IQtE+ zt+dHXBAhJo7g+z45t7sYVZi#bo*}(5{zn;2-nZUP@sTz~R^jQY~onVxG>*ZnqVYy)mPf4^I zS-&s;eq8?cX7ifpO?2azRk0u@L*ow&3;Y$~Q^@mkLaWN{Qv6-zbOnEE8-u(%_MPE` z+!cCWWLrRQoD1}5(j-&Ah^F1wYxW+Kcd~GLU!^@_oZjN?v7Ol)iv417NqIu$G%v4D z#D8q5KC`sx3qLFr?>d5qz&E9y>77NrW;KGauiV;m-n*S`Wn>QX+;OJH|HIO{E0b@Q zbVdM96NP*O1VkKJ@!YN$uT99UkUNiq8v(O(Y4aC-)!V8+-64xfiHjx)+YYp>712<0 z1CF_`!0hn>L0pwqv)>;rwPxlamk({_AaPJ&7l$16EmbV-zQj)@=e)?--n^{CV!QDY zs-Ss+l8kQHm4;F^Y>2Cni*|)y#HIJ*@ zN~^G{?<()|d+pfg77yTFiS;tI+k#?bOMI}ng`?m zmFzwMoQc(j^R?)7gdxvLzAxlqkwW=L8^ujbyqVMEW%%h<=%0UO_#-i-k_a(p^@Z$1 zuCaxJSVRqc2!xO{@htt&oGkqu^K+qu_ff!LmSUpOhH1!~#rGu;!D#L-DUZ*m2sO;r zEN~L|=Ds|Llc2y>hMAx<{T%oG^4{(&teBj9b@_pH+DN#}Ov6-h&YMHb3BxakaOF4K zscAT11V&s(2j-H(x}@jC4ai;9@+w9BxRfFo(p4Cn4_0AmA@NDR&@Vi7(Ow#n>^qJsKU-~Pm+B?8()K5g_j^Cz`Ptg#gh@n(4CylYSddG55 zEd%sAdnP**8qRkf@@)9OlqAO}pMWmLN<3ntG}#2?Ys6~cU|{lY5HQhrJ{OR@@n~2t zSAWWZifz-xww9G0?k1BDz;tZY(_v}g-LHM zN`;QPMJd^M{=m~8vbn$q%?qeoER+D~2Lz8+^_$0ev6T9L3}=gcu_Km z0YJ>buIuH!$&s~trRR|`E5#w&`o{w&(x`M+|cx>ETz3_ul$0H9*I{dW^LB?M|us*3Ulwke{;5IkRzgk*owy zvKGU=E76nMlJB9GgUn-YD&1KcH5I>;QCz}qTwxM=88Kzr&vOSP3PpNaq5lnZI$XKe zq=4FVtbazWig_CZT(uHtxAb~spU)=t5l`qz5oWnKB_F6vQMRU3#qgA{?^S3Zzi;~m z4A-7^`n0Jip7rB!LvH$Y~ja>oLoZ&yf} za;c5*4^a(S)Q-4H%~xg_LM2_nr+L|9icPQ?h^f4hj|iKSX}NLFb@BTe;^i6e9c783G&9C%UUmh5F-3bxxFIx4pAioAUiNm2bKg|+3`Of#|~ zCO4ZjAec0Yb4GsR0qp7Ua?{y)LyVr#0qx=Tnv3jVy|vX&6W!eSQicnBsdxBX!IFpQ zRscq7=Axr}&&arHsq%JJj1%VEY{uI=SLn!KS5d^t!YezCic>XOf+TiD1WT$=PuRTm z(Y4CkVskQ-QJ0TAt{33lbap46&GD}f=5P8&f6dR>8&G0|Znl=#R@hpPGHSy5%acou z)w0u^V@-(9OKx%R{|eZdF18&01&mPmeo_7IPu&`+Su-1|LR8IbWN*Da2rW7%XG9OR zNHcNm=?<(RS2CT}8G2$ZRGsI|mzzm;yU&WGs3qTu*qcYYGavfq?S5*qQ&>YD{{t8+@p*^5#ZYqet>Udb?c$l$vm5R>xkv!fE!(ZO@k1hAlS}J%zdbTJEq$8;6W5{xRwqJDxLM2XwEZQk+D(U}JUyJ_ z;o=|=q|u+j9a2AFJF%RE7eO00!%z83___vg!5U*E4D41-@>P*0rf%+7=-6wSx_Z(_ z`HHQs>bbEP)X~DdgBHsCEM-!A;6NhkQ{3wD%S|O!A_HJ#y+5YCJC&Fu}^i||VzL(>JsWZzlBCSJqKx25yH(J{( zT-Q(h;kK)Z!Oj)HWPVz(HXJ>YL|QKE73uwL>v5-SzLQs(&O^MF4V>d9#HnlYc%1d^ zI{2!=l3J=fX4@#DaglRiw140u)3Ui#@E2R~2Afqi+WM8o51J{4&6!LsQm4dp+}(I% zn}Sb+QCC6!h!=Xvrs=?q&k_8#4MIckyKb59fh_J!Y1r|1!u#M`$8}D zZ1Xk>Rwinv*MYTwFM1&dgT}_YPt;o0m^H2c4b-I?R-v8!;d5s#ElRUy<$8umgs&Ov zu_t!-?7rXaUay_d0BR{x|39<&?Xgng^CpFbYzCaD71oOoH+FXLE$}CNpjbuNZ8vuW zZ)f}y@Cy)!!L=JU=o>k&O8sBfPpY@LJ*^3tT#}y(D8Q zZF_0=ZoH#^VMWe+bVKu(y)p@djlUf#MKVsi{8Y}mcEPl%et}o;YP&(Gos*X84cIZj zL${c$UU;l%+wI1Bb~wc!o-Yagk|+KV%>WD>he}i_kaDS#ZQd%BhZIuYPa#{XARjq^ zlIzU!dA0aKu2Q7Up$C?r8}0^n{^t{l?3ev$KCQ)N(vK~SvJ{Ppp|tKuZNV82o)rCC zvs9??=*^%llW?h3q#-Q3lc&>V-WPhUe)(-%V^q@G^yQ_tNjf)}Ur5G9H~i~%o#$9! z#kJPj`Fh&N*(1-X=?dEI*{Bb^7vxQ6Z~_um;F!OjpFHQE!Oph&|zbVg0-M>|-E*U3x$cX;@SRUdnv>={AH zOmZ(dV0c`ymD!Vm4W$nV9M@$Z)(v7G>Gce6bLvzkYMi7Z_t0^(3cUfI+1WooF-j0F z!HlLttTTz>jxW>h4pa%YizHqpZC@EDfIJxjHKXB_hfEE(*t7dT-BK9FxC={{HeWd{PnLI^j98zMd2$36tA?nR68eo7!=9%(;?awMTaG>)d(bvcS#4 z5*p3x0Qh}EAUr_lwG+ij;2)g^I(O*jqo_^5vE0KtK0LgWb_x>emv)k1vn~VTR~nlTgo?QS|!*g+!BxXkd`ls8%;=%3Xx4EDLF(^FX_71RPgPZfAkk*Pbo>kXu;bL!?&th7Le%8xc0lp9 z9j(dbyBk*Eg>VsEF^tGLI>0cvDy`}zUbhuFg4SoP)8axVqqnN*5K@JjKfuxH%7 zSkd{ymY->2>fD8x!UbCKNKbt|(D=2p{lBA=5pt#$9-<}cE2A#~nl(|`+#FZ6!815* zVV9v8f-qi%Gqp2wx6MIzzDP7hW>Gppyi+w90!!jaNJh7j%4;lm8c6|kn)BPKi{4_Uv zC#}DK7ndEVua!Qr*Utg-| ziX!Md=%T)?g3-p!lbx#aUrrHJ!Rvs-M1~N9uGBAPo^BtwJ(@6q8GBFrryH!Iy3dB6 zVzb1_(WJ$%*V?YOEX2C*sY|AEvHTgiR1Za}-j2PxOMZkoEGz+llMSU-5k2D8rKE0^ zo&R$4Q~b{{ttXkPO-3G5>#-JlS3al_DIAoVoTl=w73awK-OrnOlPm41zl1z5{L2k) zYrh0e2&qj8qSfnb-MpFe*272zI25@P_55JOHYxYJH~aPNs_@`FrN@9TD}PtS0LSuZ z_H7gF2l5ezc55X3WUmh+W79z2-GsCTJxj{1MQB$>OHahS4V(}J+E^rOizRwlU>bQ;>Q2+bl&k)$L;^;bm&;w^VmX)tQ>m_ zWhG^c9J6zTWbZ?v%X2h*9mm1%(|zCH-(UXlco>iKeqY!1 zzOL8xd^s_kKB;r9xgSloJmWQ*{gn4RJcSk3Kfp$p79hA3TMTH+_(%INz2Wq|l+vSV zjkgvlX3J>px+zOp*JtwBgzXK2-RWHi9)0j-wEPOoyV0Tb=_2H4U10Z2hat28J*G6J zfayX!fZ~2Lcw~aZuMyHJ*?)ixYzp61F^^_8>S9y~SE{P{3w<@-ezO=M!K=IG^>fdYWW1GKMvh4uR^Ql&aa=LY7inbCC;T+wX zv*QKY?HEg3fxXh=B;Eq73`5s{*iIZ$N<#0V9jsVC9(@(SFgesO2vARdK&I{ss`Cm} z_{_(p9HlZo+Qp6H$scKHqU`4KKF#F7Iz0|{^=*xI;Dj4JynC_TG5CavTj=~PMl3t)&2(n)>YcpNz_)pm^o+f=S<1BMXtPsVb==y;iQ_P+SxmDxddKUKY5lr*0sacJ$as8<#OA&YkaxEZU zyz>}HOtA((FQ^O8vK&u_&L(Kq)`oM$&{_6N?knfaD66yjNf`eX!|)#O^B(AJKL*80 zUv_`|@>K_defb5}!+}z|2uKc{JCEaZE-kL{*!9^grz|2zd4<4WcYmJ)6?ZG^pUA}qXYP9T)M~GSW8!|Xr9uUsV5e~lv!JnWj2flJMK^s&V9eD-gv#c z1pCV~S$5y8v1aUE68G@X1vhJUjRifbDdmPgBoHVrO7Q+i+X-b%L#Uxd^L~t$e5w}E zT(ZY_Tni9Tmv7BqCMlo1+DfLGss83n=mgXbVY~0i3nXZ=dH^N7CXl4FTTqWIxos2a zt|&-Agzq`vYC`w796wDw?ltHaD#VBt7YOl2tq%8I$fgE)p&F2P zRcErp(_{eQn)<25gsHH(kooJ1m?GH3)a+B2>k#3pT6X}D!{8V0Ea!y(lN+ev_-s+x zO`uNKbpqHM)77EYJ$V&vi2P>VFGy{0phI$J#&N_5Jpa?(E%`jvtLgm;+*I9Vb_rnW z&{G@cwEsO$?Z%}MiGbkD=X%lZx^dt#BAF9z8ae%3%T;mBU7BpwgE&Wh2fY)zF(g^1 z1k;;TTd+VU*Sghi)~1mn_Zy_1FbBN+n{0Qu{V0tUO4CAftNFa{GiKEVq7*;PqOL0V zC(V;!eB9RM&PNDtALBNlBhD4SLPXZ(9cXtq$;|z1P1e*qUnr!GcRJ*2YYAVi{AXre z8IA}KcuI9jf}eo;e0*F?p}q!c`L|}LH10Dko@sGV+u~2+qPLmNU77Kc??>D2x30Oz zar!&MM1h}kZXF>w*SbCTG%a1^hh{AA3-^Iow!9uEPk)yRkWTuI*p6ZTA2{l5{V{7eo z4Q7n2uwpOipl)xK$58D}8p@wL8prW(;XW2*Z5zhl^+iZVInEzJ$}b()34S+UJG7k# zkUab=%+Sk((9zWS);}?5$Bj&<_ErT_PaqtnI!ks7#;&+%{#N~jQRuXG-u9nDG>N#~tSK6&#%KQ?rhXYc6kVKUY`96lsv)*tE<^h4!{?@i-A z`Y6t#$?%pC;=GUB!^RTj79YX3e!;rN^Ta5CKm$6_dE8pxUl1_s(R?00z9o!sCmOWu z-KL)2l1G4ubcd23u?0B(`{&~Ewo_LJ%qp(HcdeB34srO)yWLpESvckMX2-wHwg1z4 zf=O;bVQ+ekeVc7iG>0V%+)Y_MtguNp6gF@%<+?hgt?1% z@Y$gO=AE=IFQg$TDF<~8#mLUV$q zY)Yn!d;RLHSy2RqY*wG74Y;xS(}|XWbg)kSm8tb9e^ zEY3A$5Fy(mIubA0za*Xwn7#mpb+~+;_Aox#cnRvVN?~~4{(hIKxoc*)mJyXlr@^H& z?Y_&@3bCfYoi~>3L3Mvg%7u!UeW@=l099@ET%T#7gqstOCny$pyeBcO+jV`n?3(E# zyP^*zs2JGj$N$dt-#id)t8yZNPkLy*Q?5sowND08Pqf{vRXc8ba63nGxYH;eDV+|4 zWE6jTs15Y+GdI*Zdu`KCJdqscRq3At@f4Ir~?w|xV6MV_pB^7G<=lCu0S^tdFms$|V0 znIs6UGyM9nF+WE3w*!eM2-BK3P<6j)MLB9&xf@}W~)78AuMkDmIm^@QWTeK9oMiVeaYSTOq%;2Yu))P;smZl_O-*zfze~^AY zuR3Xp1Hg%t=KUuviY>wJ?GkHl-O5<+=v^vj@1iTYK?=+yZBaQPk+_2&-hxrVGhR34 zBuIai2vR=CtM#zfh26O%wEc!|xEE9_Ot2Cz<684gP zzAXb{T)+l)U`K=^;L!T^5fm{ak*&bjOFxkkf(aK(Uf!Q1M72dgmKld|V z7%jBiZ>oD~pJly(D!nwN^xG@m(Gqt;f`(;8iR=x(K(h_8H)6t<u?@FHe&G0{4|BB}rqmmEQNg%dag1l~`e)Yb-W2olV6tDOma(^0%`_ z&R7p!H=|wp1-eAR;7;~<8v6a`p7i7k)FY8}+%CE7EZ;oVZ!eB(epop(TxF@UAJL)W zoOr|>ggs4j4>6_+lG*?EboO&((k!anLU+PxZp{IeSy~p8aS;8CO4@d#6ZK}+Sl~Mp zX|!!GXXBD-3#ep5PHKeT2C?*NPVLIOy??0!H(Ar?Mj~8WZn-`OTG5>}#-}fLYJN$n;|Pw0I8&Hd9UY z7N)r1F$%4y+34Op_uHS@NCtWgh~E3jgjc9R;BmC3JMnvYEI49k=anWnE#-cTku)Lm z$VLgtE`~rpW zL`I=y#TE;=M|C@ieP=s?g6#JzN>t}O#9EAgHP+;t>CbXa@nBvy7w@CleITCe1AHM< zsW^V;VXu^a*^buGv5vvnVf*yNu4BRE(2w)Zrz6ovdlWAO6@nw^zRYm#V9~+xF!^b8 zT~Hx>w%U>eC0>KdPtK5yd6UIquy4LGhpqBRGA&r(Ao6 zv2WMW;caV56wG+lifF!@rM4?Wa6NEYC<+{zj#C}}@vvIoRNS21#8bxKaX_21$LgfJ z;X+->ez@83apY&hST=G&B0c~LDxz|cacBBCm7U-7n|US+|6mOv;C`~yTA-9{rVzdB zdph>bw=UO1(a6By1KaE`y0-QR(_Dw!)*#(b~f_s*76-?2N62 zPJWJyw^;TaV^+IZR`2*cQa~7+5)7L?L(T5?xx6<{fM2jF{bT1HbGc2WN zHvTJRxXIiNNK~~hv~wOS;4Im;66y-dXmCiHF|eTK!96mI>?i!tKbaAPK52onKA3fM zV0+p$0L-1!jM?by2p^b)c6U;$fq(UCdG40p2_-G}bhQ zbf#h$-5xrfp_+7mjeH4Epe$!hr9hKrVc0|Uy6b)Vur)yi2k`k?ajMP>WzMDkB{FX| ziO;Kl6#nZ~>$J$}+Pik_jNNO>?B?wm%V}!wP&>6Q+>S;TU-Dp|kl$V<&&FAZaIh+RbC;qNECioR(MVFgpZIo8H4XA zmZffSK9*!;;kwGH8ZmVPiW(r_eElLy;p|eb{0JAsu3?nK8ikQ3fezREJO>^|7@d*T zqkrScVKvK*HNF+>(JzJE0_T2I_yqezNfCtiL%ns*M6&Kq6yv`cVQBF`x7K5*dYMM2l6RIUl`U{}EXq~`6@SaB|MQ1)iij|D2qtttv-V zoc(}?5`4fzj`*#0;m-Z;m0%J}Ky4t6P)+oAoa5U~V0zz}v*>vQMKlYXrbP$cj^EE} zE=Bwmig-@+R`(fv=$KpWtsL~=q*^xldU<7Nkj+8vM-1d30u}W=E$VE#)Pw0AelMdv z-L?wt7JS@_XI&ertP4238=lWFb`IcIT7~m}wuA~Esdr~Od^r)Tsrisc@{Z#2cdm( zdap}Si;1Num+ao>I$4V%^*34;fcK-(2wOc3-n|N9%Vq$UbVHD8)ZRQ-)7<;Z8+$?b z!XY<_lZCanQT^0WBDwS|OIPl;jy2|5nXWb+KRugwh1By7CM#Gp_uy_Q^~FAeK7z^c zb~@Gi=Y>jHT}b5R;o2=X5PLBs3-se(Apo2+Q}4*(C@>*nK!SRP2ShLkj;#iA9zxw~ zWu@hu{~hb|4%V`~dYI3ENF*vDy;8uVA_3;)yyk}mlz!!Cl6~M^+P=F7@KL_FwaSx3 zdDJ%;oW*sT1@ECxTe#Ah+FbzA&CB}ZEnS;0Prh{=TF=n3az>JwQCLr@Gnl@g(El4j zyA23%)u87=!!Qv#p2oKc6BpJDe#mpB99B>v;ZN6%m*cbpo$&G=$#n4iTCwfF8?%m6 z6~YZci_uLZ$tLhY68or)H7aqjfvT0*=-oZ@!%guEu#MPTt5c^s(EMZWBnwO0d*nQm z9B~dkjN4A2l%I-&js+d$#|?|@BCB)HzIm|k<^DFPtMl-40%2;pWUsdq@?UgzbaS}A z2>KaJ5{mrPx(bE&J5~veRz`f;XqmOgED_rr5KBt-wd?8rn|L)@b$` zCc!o#5?Dg4)VdFq-QdO^gR;n8@M>|-KcA_cs?)AdTCf?M-`zE zc%UV8e_Xz%%6XKTAOfEV2_`4k>qk6RNFv*_{~hy^_KC!`qG zRm#;x{4@mJ`RVMfHq`Z8qljU6dn)m$Q+1f{$A>b3QPuSfPl z|0qU!o(u|+%sy%DWtdSi7KB z2i3KvQ*r$vQS)7ikqTuv;s;tQSkKaQMM^yQCV=q9`BGkYkURbFZ^}IkYN6UFL(jx1 z$%HRP+k`JVH!U@F1-0rv+fr~I>Tb@dyVp+OUuw-ffXR;j@Jy-r5G83p;1vua0*?jq zmoRKcKY8JG`Am`bk7QZ-3!|#DI*}>Vr-ohFl((Ejt^hUk=V+R3BOu(sxMZ_GT6@fP@VA ze&-ke-VH^I^9`18aO_kHXSmSrc!NSfyaopDq7eEw>%$jt8Gm%Biq2dV}v!(W!Ihw7e{i54! zq!jLD6yz;_rbGBznRz;5SUS;oTTzSVCQhLia)JI0Ir$VPvDuu{*LI5*_SqV&ng$iS z+V>O`w8=-@Phr=4IodLRSd+Ba*1#_J{cg_=9F-o?D18y7mSL+7m>w8FA7~eH?6Kkp z(~|2H?P8E|y&^1EZ7-{g`wl%+&)qp=O9jc{hfA_8((M-JdI7f83yM`e&o$Fk-L z+=UF&afgn0&*^nHZ8qI~`QxScbY5B`_-Q|#LD9Xc-RENrsBTmrYV=f#SGUHOQT=Mx z)>P0+gG-9VZq=A>KS-}cjrWY)Z^)w?7%4u8WMn1py<#+gA|3G(Q~_l>23ewDq6J+4 z*4ZU0z?@t;bUj5tgZpIY>~e0Xy{0VZM_Jw1;?7c94G@X+5_CkdQ5(xs0#aO4=$Gyhr-E?9M*s44uv-hGEZmtuWGG z^m&sx4|(b*Bd4p6ZO^a91^j#yc&<}qmF1u*mTWQaLnYVkuG4rIK1X?7HPCUTBKm!2 z1Fti|<8;z?$vN9HGCSPdV@b$xHC|q2zqpyl`Bh5Q+fkD#_kO>qxK*?DDT}yMMI#4% zJuh(pLGN;9>cf;M!8!5)@`_@{&3TgSzWo!0)B7-5asVue*MU6m+59%>z6D00r_#ws z;abmj*VMHsm(E9BT$pD}*9Z@SDt)su(yX>-CO;_?eNXz0RuxYMoF70VtD?wrwhHD| zv13D+lUFnOm|CUuz_`FCO64ihn5vzKtLOHW>fU~Lyz(tS^4;O&4CxlWLUWqGZT6gC z!+D%A1nNo9UGC%e@iC!f-|f7DGm(!PmBp}~^$Pv`5~haX5wEH#FsRtS@wqK>%`ZL+t}itVzt2WgqtK z^B54diAQ$Ko0yE=veL3%D*4-T#<$Y8uU`{Z8TV{{A5*E*%xF&Ce)K_jl?;TBHAu*8 z{?$BFzhVT#*N#@~JG6_8?t0NBqS~6y#fb|jF%Syn)=#HbzBsi=R_IGKRp0_&Xf7+w zJ=R!x1MA}rlz7e14JlAp$WRf!Wz6F^QW}NwnN6sxnRhE^z(Dfo-)(FL7}(7l!7f=E zb?puPiy!N4H7*q`ZjzvMOtD(ng}kuAr;oOlSHAmb`6df$TRawZq>Eywp?R5n1D;vD zD%5AfD~>{f!T{NMDnh-j+eH;RS&KPVnu{HSkl7fMWHQCgA(kF+tbaJF1oq&PVytmK z&G+PrfWE6Z`5^asmdxp^+6T9Ik&lJrd5!+5b}Z|Wz!Z|WD+OwujXLZ?=v`dKW#QWt zJ!a%t5t{bdE`vsZ==Wd9*jVQS{>Bs*UoqM*FLd;q{A#fg1VzaVJyq~SXT((%`d%>? zx|{40bT?70%=dR0>kV1#)1zUhqal(W^zY~&GniXUSi9uaS-2hWwn#ZRIUt-*pJIPS z&wxdYtflc=Vc^*z2#V@zBGZCRP{51cLsiRk-veG8jN9uR-o~&mP&V48Rh4Uww8EYE zmr@4%1wUekr(j_VkvS*yw(nd2(wT?TnKNv64kW71dcvNt22L)uvwS0|`P^ju$zGFx zG;o@98LV?+x}Hx(Neo=;Yw;0Xj6S*|J!d$!UyJLnu@Rf^Iz0 z4Nrso!f%dPXUBF)rC}Sz-7j|MYEMGiqd~Ib(qx{;^Bi1Kl0&C+nM#=ss0fEXv zkj~jup3e`ft~jDEAx0gz-_}aI1EnL~Fy*=YeMhL|TE|rG>Z_WFbboc|DoJKJ`_el! z?Y^fnq0U0<=-1@t3NZ25o|(<4m6Jsr&Rl~#Za1#IUSF%!S~J`eC`(guH}$rPBsL;b zWa=bEMdz9fTRh-az-H-u>-dLO!m{V66D8HZW-I%6+Gwp5O@f?xXs?Gg^d$LfeY${5 zbeARQiLSje8lD4tGQE_kaypVWD(y@?B2}loZtXKWcpn%urr#)Wak9XqIeX`wOjE9z z*epEWG)VrSG^Htb=M~e+7f5_?j|HVgKB)TnigI4_YK^1pXG69PL`_S{FWICMGM3-B z7|#FKJ-3EoKSk?rC{au6Ysa96{XuW;^fi~RpJYU5O7x`pEMj)6%m(BKbQk3RTV|Zo zap`Bisf*N3r)k%~CaVyPI$|1x)tY~%ZP9$Ph z8v8HJfKfT*yQ(FqQVbYOV?qlmF!j(|0Q-Wgf^Z@9WL>!@b>f$9r zu{-Qf`Ott}ad#MB5y=aSFfS4obYM&T8jX<;XEF8I9SE`#ocTm{2nB{9k+O?dbytgH=$Daccw97w>&#uB zu2VC0r}C#7fltd(&VK5G{PR+Mor}hh3HAes6tk`uYcKa>@xN^O;8UlOz{Da@J!r3w?vl^1b6Z ze>;t=Yq~ezN2M^lL3c{@#X>|YYz^gN4PET)Xg<@q4_{i17$u?B#dZJWmX5~XoUx*y z`~$~Kjh5$Bl&xn{Tf{uPg98f~rOTh>hIyNuX@g#Ah0}>e)Y*YvjRjz4YCd55Famn? zok7~JVo)pXlUJ!m#|LNR9Jx>9K6ixguneVy?yAkT-ANX)&(EEfq>gMr&AjO7Ja6d( zuK51iI%^Hu+H&e;wfUjxiCcr3@?AL zifW5A_Y=REkESbt{q|M{<+I;_ye7xARdjiN(CAl7#c*X~14&n5%lB4bf493}!Q1)B zs42^-C!ImzkV-~dxb3-VFOOaHnC+UO@ruysd5To@>k~tbZ>h+lMPeg{Pvjnc+O${F z4*M6q9vyG-Td9?KDt0(>EJc{PFKRM-wZ@!MqI&&!_lul0t*Csb$gdqIassxw{nOKe z+|!&krO_VBb0wZLZ^0sIQvG?D?~i)icfqDKCV|Y~wZ){cLe*+Ir*9tgT6ogJ{8>R& zkMBu|D;^djmCHmAC`opCAbNY7e7UaccAgHqf8pTAr=Qh^!(w{AT%8?g`*KgQWP0(! z#)x5atN(B1-dB2ofP_kM`ahINAu5zH(4LnAK(^^L7VbhUONojGm-=3{E;OI9O`5ov zzGl=-Azf@!RUdaQXeN+B+5<#H<50Q;A00h}Uu&`@fKg)Sp_Xh#&adMV}q8Z{JR>KaX<ks5dBw(~A*w zuaBcYj@REq?yGEO>E_dY0j{Tn8(`(5tB3niiCMNMG&7!B@RnrW70>JL>^}G@wB;Qz z`YdQU0m;X*E^bQym;M%g*6bbEZ!|&`r^Mi-0r2%8{ZTh4=I_HQZJP2IOcG$;)BCAj zIqmvLVMjXSxpY0@dEMmVZ@h`zsIGXXt;l~mIKJdOX5TUxxAeE<(0-ubFDFnpPc zy>c%}P2kBrQIJDM{mqz(R!U2~`S$n2VGsR`ecCxW?M*=Tui{;EAC1vw{ag??4{e3j z%*eUP=z`@5i9+O>8$n*H5k=S^^__x(kO9X6~P`T_Vw*CqzloaS@ukm zy^f@e;6^ZuHXuFW1N^#)O&+#e%^wGLX$ZQfH+V^Ag=eHof;_IR52Pi`_1mW*rkT6fr!1n93tNb#W>mb1`qFOWc?>^vD7ITREwGJt=xAvucK95#;X37T=tI3UwSluk<1-aU+pkbfL5<@c4oG-J|Lnur&mmv_ zW!p6E*`>1-^^IzQX1s$CS`a|RbN(msivFZ!-Da6ie^O7|P!d?Ux(5e#aQr+kA6s{Qoh61tg|(Mslx}t>SnlKH1!Q#v!5bmnP!8RBd$g~t1wRL1ig&EjLKf`jV&G;6=&HRrrFTTleom5 zorMjamRK^iW}6GtF655D{M$&AkNPDJdl^Ym5{*kyY(V`m!Iahi672jd#M(B+C6>k7 zM7P&3RLGJQaM)$S+7`sz=l!#)J#aEYexDd_zekuH=9o+PuciCCc=qqjCfal z-uhd@3mAzFY!Dco06NB%BY=@%?~NxBAwl4!bdw9*@{((GzS)re7c+(!>FN#?=$CSB0F z4WTaZ2@|AqtBVWfY|mYQAZbE_kTHAHg|W2<`2nsG|J>ou|5rAV*rp3CSu#}7OPlvT zN|i3G5&%6*hEW^;9NXku31On1PK}EO)wl4aH~pTpN^gO~4%0I0}c`zqla*y+NpWG;+rc zsi1ZM%$6a^wGWuTPk1C~h!-`Fw z{7P^!+U%1ZzW3ADON$Ebx{(?S&zlK~r~4_IBUH>$Hg2F?#Z z%8|FANE)!KCpAvN*YOoxSwQ(dx+;6JvUQ3jP1($D6pg)k-mNUrTzK5zykXe(xL7sn zsG#ML4XJU{j$n&%fi;fcCk)xRS!O;T|Qo#YCV%w`artF`z=k|LdFC z&-6%!+BU{nE~o^3>C>QmenTNY+?XZji>S-hxPN9|AD&W46KxI{SZ%m6kbECsj9&W9 zDV+V}qL*|pV7(B;RsXzhNpbB;#cEduuYv7%bA{(_vTF2UHe0Paw1r5unPk*B4CG~l zwd42zNY7S@M&%=$e7@8fIyyEw`6NvDbS%}8reb;Gfh3p>oFv)_Yva&^SQ<{v7xcZc zNa_IZ%^&Je!KM9c%Nkr5c7&cJMu5;Ak)Ke69))b1dU0O~=M~nlgw_7&L7Wt9U zHiX<#*?IkAFUhD$%_hx0bLe(u!>gn~3hX%jyLS;Q&c{3>ki=8tliYpXx;(5MH+dua zN}TFf`Ip1U3P?tJj8|s*^1Y;e**+!55&us}+o`vY)`v;_dq>l89j1|sTWcXroIzXa z3eibDzTZzbl{aen$uXC1^h(@*aD_;1S2x9#s^2m$$6V;?w#{ZVlc$zk-Ei{f+uO7H z%~Pyq7|Q4sPew?|rTB z=`Z+4!-g74B%5m3-BbwE`1Hu8(u8%L%QlDZ`b(B{&P4GCp$meR*>cO5tg#ECSy$9E z0yVkzxbDr`=kqg2wV5Wf>CAsWmSJJc_P>5doJ9Y4j-&Ug+jF4bAw{-)I%7jW5O;SOa^&{w_JmvnvtlDTNjUBXY>y1O&+`Nqs8 zU5)8TX0oM3O}(K@@Q=62S7nXX_>7RB+N@5OY0txbBA#K-YR~q2%&~6SW0+dXq{Ydk z)bW-kOfy8HG(}|1aP=3FlmSO;&=jh;i9TqZ*YssQHJoaewi9hj(K3*MdhcbZvBtQg zdafJ(LFj<3v7sInQLR!x#RuEO51`txif#Yg7G~-PCHF_QhxfAbH`EmFr>M?UHE@mv zo|?UpG+>*6B(^?;HxTK{ok<_L&ASKq;&{A#r})SN)j?N|tiXsjr5aF| zo&n^y@VJczE4$wHIsXaSv8I2(nsl+Y+W92bQ(sL{+|EwJhWq=JZGA`^C-t;u^Yby0 zc#G3i=jr{CSCoXaZ6R~LDNVXw7~9b3H(CP;P;O|<#Kqn8UbhOGv*;AlUxzUhZVTHQ z6SBt*vg%20sdQ0vfVDt;)ex!s8gcSaKpml&l6je*!Sq@oqq`l>yed7zCt0oBK`1Yw zn0}EX#eo~$y-DoeY-&k2(@JAq3?P95N|+2&xq>O3rZyWlG`c?5FMna2#glFYEq{8d z2#;4m2>vvQNNwxs#HhNN%*B`Wq$mTNbOo&!Z5mjvRy%BjWM>Wu@hLs1iPb!(8Hqr2 zARe}aUG8@x^6W33WoP&{mE4j&@KG#fV#2bHI75jXP<8%#pWP7`#$ja3+litZt5MjX z)PK>R_J3uj0P8PK7YPvEb6@z0WF}4+{1Csk^iOnW9($YGE1KT022_VM=<|y8 zo*7rT0})hM3>w@Mxps;@JJPn8NomLf!<;-D3c%_#9`n9{_{2cTXo-H4jpBBNeJpri zE1^_1_R~|U4Jn98Og8IdIsm=ku=gA(jZ*bb(^LVVCZ<^&lu2JyYr}nvp!-PGiOIIO z_24P_xAW=m%#%7LchRWTPfnUwpO7d__-&?2#(>{n2U0n?+`4Jk-THl(b?c%VY-Un} z>W6fq8#@8h-*f657jyStoir`OjXc;s`Oq#&HdRx#z$?zXX2g6DE5dQh=kzXW5m%P@ z#2ydj{SpJTAL@0%125PDntN6vE+4ue*@}H0x@gaS4QU4s+-nX17=J50|8-_SgAz%aFch{Pf5m@>urtbB~Jq%Z2w;lsk#-3Y6roK*#CP zi(=7~E1d#o-pi>+$$2*@SzktMQqdPj$9{|%x@D=|Ea*M_EE~0RO>nxjeVRZQsry3_ zt-{&s`5({Ty<|8}X*1Y8+5!?bo5V6)`)@r<5^X4_bUG$Zu;`9|V@R43#Il;<*&@B! zlLKkd*t1%KznIRFEt6u?sXp zR%l~}LLeM+NTe`F`YxkVbjWyeBKEQU2!znElTr_;ac$2#;B6&m`^%zg1Nmb2GXbjk zuQOVsJZP=iLDq3-@?3H8%~unGPeCrx(z(B;ek6}G$qYqU*hHZn!gmNw4aOj@$jbIbU$t14no*?jNsnFCJO=9AmZgW;EgeA^c-8j z)?CxF_Oa*L`ed5H>w*49SZNLp9GAkm=4!@=sD2$e^1nUS%#ix-#MzP&V~V3TbIayT zZz@{clynLZp(k(`YWfJ0$4KEsz|)*E=pBdYP+hhLySQc}gY-(4Ba(`c!8lnX2sC17 zC!30LUl^Kgd*ywA05`Ho?+uPIq8-G59PBn<#VQ==K^eC^oQB1 z(!*p)Xtlqg4w1TySC5r)4pR3S$FH(Z_iH_ zYqEZUtWa>(bJ^{7`ALn9mg67ZFpo8YU7>!EOf2s)L0>CT`*fb?g~DuVn-onNJp_-|d{I^HQJCa#-MJvG-6v%GfsGpfep*Q)lxR>` zKDqmqDbC_^WU|k$c%eYnoc*VQZ}#73Db4FSq!9wYl5ZsO=o?`PSl-!E>)KlA+`0}_ zLK+|coBl$Kz(zEOi5CXe??%&Cg{7@Zg-F|yI3kR6GJBgnRP|a)i0mkIc;t*wrc5XO zXu!o%Q#)P%0Ua$PpsvmGxwv@gy@5pXy41(wWG3nm-B8iGLmcdmC+JnL#+R|iL$GYp z0~8S$KxM@VSFij%s#0L5`fla~M$kP)HGq8vUe(~8SWB}%>#mA#vidp~jETnGbh)$m z0&=}ye0u0Y7~_EbyXW1)RBxYCDMN+B%pJUye@;D~Xr9(r+YAqu;7q$w%#L{5F? zUPC|RO6}1HV-#wqRuB=b5x)-OU0G}BW{dG<*UIS;n0s^^wXVh+s7|^a@Rk3w2G5q* z;sb6Jzt98ynEKK#DEh8%16)z;o{A9|IQc{H$xu z;JQjz$63=dpCgf<%01;j);unVctCe&pZhK?KinbV6VmUR{KEAR`to-t6R<5o`A1Ib zqpZv8qxi8S1I?&p8GCpY?oa^gfmEmy8F@{8niDgg`UBhcD**Wbod(l1crP3h@U$vw8KpU6ykzSOT~7|*6}Ox}CQ$6u z1%0G|u=$hm|1vuOO_FF}y_;Cjpb&k!5`CJL^!EgRc4DC?XJ?(!+Y?h=N=S@~zp5*X zlccBX2JXoPYQ_BShFoxclJ|dB4d~cVmE9(#>1E<_Yb9$EaeB83rX{?h0bte&V7+t=oGRB4KcL zAl>`r1%-S%7P8UAH#9Ktt?k}b4O&sxlD$-I)@AhT`#{5Yw`Qhck&yx>_H#We;oU2C zkzJyzQdf*ir<=h(&99aXlJ>y&TLwI60&I5n+3q<|NtlkX<^C~I5lHk;jree_O~$Kg zAypn`NSEG!@3-Kzite-O8rc(s^lIb&t^%50{()i~f)5R|B56mCaz)tmuy=!ZHT83h zA4$&v{Jbbvc1)qCJ{v7$MnS+`n=a(+kM>EWtd_{4>U8=Jr}GZynT2yvobMNj|DDOg z>u$`a6U-+QLy{qzivHJIHZN4tZC4O*fk>7{H#nanW|E{AmC^QU4AR{w|8(mben&vj z_mk~jDDz_&;kKOiklwAYf3>g+VcI>Z-|TnzDJha$ z8$bs2c$#@edKC8`kQ_d4^P_z#K=RwOc0B}ZNwHNMV&%Xs<)6*4I$g~4?T6iQiz8fB znN5X9S?GE}VYc1FHa+h22#tKv5y}o@%sb_X#1=r`CBNzZow3 znQ!7PjC@C(E&O{fGtj~^@wV`hV9zuAi)d|Ny$GDkP1OIT^M7^&FX_xj4A{LmDxJ3A+FnTnh(oqPMS%SEdDA^{%b4lg&HZ`f0l7oN5 zW=D%E)yXS;wJvIOjv<{jAxRze7F-RibKA+TUCDfr2ZMZgz#iMyp6YVyrou|&n5Ock z=AXr-3~DJJg32welP+`8lzl=)nF032E=tq$nZJI$_!}%&Rt2ixJ`BZsrn=@Ff;*jz zA_3EC=6(LeF7`Yw5_joEl=|OL;g^G>5?R9!MZ?(Ug7!nCkmj(;7GXg)Zki<;Gc+h% ziLkc<>CNmKc=#PB{{@pU#{JJLEq#sv9?;kVGCiguras8sfyg>`C9P`;yA~{3Dy+Ga zBq!eaWqMx=zZlSeCCD7C9OWKW?cQlXrA5EoQ0%5g*62%N84F7M9lyCx_GJ>PFrO{5 zShi^TPQFRiZI*ZdmZ%h9*-30d;HwXMK6zs0(Q{pdV@g8koa6oV?LuU6^tJOd$fZ@c z-3w>Exy%GfQ8AH>bhEv1EIewg2NPE>9FFJfr+As)>X|X{sA;tvw3R>KV?9N%%HRLg zVXc~wY!z8?m0+&rM~EQG?H298tLo}QQ){tAPsvAv$plGv@;!3$JyfZdGB(e~39o^; zD&BFA%s6k7AC(=5F!SDME$m6nJ2z7oWQ$Xq3XW(GeBs}FH95|^$IgZ^BCUOD#luwK z%R;;@(aHTT!O5v)#FDB+q40e1Cg2xR*L=BeUNiB>x-nGh(}$)s)fsZUQ=Rw>u9NsL zNhAL|>|)&-1g#mr-u#8p0E=pNkD_mOR*L$3|{8y>%h|qpNNFd2^H6 z96Q|^v>4{c|MoQ4+0MAcs;WAP-6FP{{s++_QeCg7d+M+urkOY6HuPWQ{`gw@_RqP0 zX6i9J>qe1cR?g9lnvtyvM)iWurNW-0LW=_nr1+`Y<@ss+_k9_^$=U{$A(YRwj-lMQhqJNRCb}Dh z2J*1&;~!hq8m-g*pQe}yRr4LcAv*^^;e6)bz<%=JL@uDaJtjIHCcNn&$zz0J(Z11? zDTVCXH^c9laidB1&lT_dA;F^tDDOsV{ns0n;`b%K%+RW6;W~Czf;Z&O^D)o5I1#q)fN`;CpUyr-(FqQo_9 z$4w#ncYqe!v*vdx{uot%oP;is0sd^>TYpzk`mEt9%9`wSv0ecY+Bk->po9OZ2X z0hIdXknahDSNzOM#hO@kAWY!fJ{Q9cUN%F*)TCOCd%4e6CL`BkRbu~jtI@{6LOwR5dZiV=#*K^bVFHj&46(g;dgk0`(B z%hGg=bee}gxAg=Omj54D=fTzF{zPktK@$*3Km`P(gbvaPy`zA1QHoThDhY^4F9D1c zrAjwa6a@=4NKqsdG4v*ogbt!XrHeqQxv%H^&s}%j58zrX8Gi4~o;~}qp_O3%q!o6^ zwXb=E{eCbp()itmb_%4DVR1B7SqlFyNO?qXUIbxW7ePM)=>VAS zDABE$736RthX5 z*BnMB^slQ-JQ-AB<4z-HZTJwXZ55-(pVqMoPEjFc1TI9Ax>mw92HWVUS5CzD5$FD@ z_ot(7p?DUNisxJ-Q@7qDhY3CIE0%H%ZG*%na*y#}A&2epf1gz+AYw3H4f)tuXfj7! zaxlQQpb za5X+wDGh74f#y+HFNL-*0q+!)!6QY$YFM3V55gaprM;-3@V@X-OhI^4j$2uMkZXHx z%-e;!kS)UL_GB|yo2fqQe7}61LIPnygRmex)Gf(je^p1%vpp@m$4mGwq>;Icxr2S$ zW4lXQOM7xF2Yy=YH1phmH6?SrTsCQkqndwXTk!ANkd33Gu(%~=*_|A-L>t)q?d)!> zvjTiNv6mbSK=VjF%4t2TItdRsFD?3YfvBk0nafHGn8T0WY(2IdK4MNO#`t<3I)VYc z`2Z!qkW!_dgBD|mfKMey3BhNnScU}~QSO$x@3jO2uvKa9!|$>eooR&bt}kahbAxln zC3>B6=3nMVuXO_%Up$CN0XSvz;#SG~%!0{p?Swvls+!S+`c|AjmCmc;>mpD1Q!xUg zG_R>0cOf+gyqHdAJtEpGHdOm>mTw1P0(mpM?TC&E_A6cCJc1C*1I~Q`z`Q+H5HsLH z<*u{%+31z?tIloH;{1?*Ci=F^cF3VO0XcB!Jni+7hx0&SI8(fQa94~xKS(oN;`WuU z_bm8aN#O(R?+PJFk$@3ZEHZm5yPv%%@^|;G8G%N2*P=)L7>j@*BN3kp9;GB}puq2G~~;iMzrjzS8! zb5PXoJh*k?6A9oP@sW@Rc_S(w3yy0u&z*r!ZijizzYBtyjK8#;&j18?O^qoT%;~wP z3d$F+HONU2;FKQrCI z5obg2!ZSSRgFJCcb*ZU)!q+b)RMm5gt(0rhNPwPQ5EMS>e&9eI|&u zx^}dh=_;oK+eyAbNDu9irO4gXx{;Z)t*}EN-C~n%o4}@9&MCQr6mm!BB;h&ET>98y1Dp~q{!vU{}L0~MueZl>1FD^G5o z1(Gpev!?y}WgLowP(=7kRw&Pcm1eu78&Z|Xw=<`=fbl@+2=l*vq=r!OCYiqHssnwM zc~Q{bgz{KfjKgFoBhmOyI$V%v&hqfJP7t&0TKc@;54srr8?c+1hID~G0RQ)cS4CQ# zfC?LwIjxjqB2xQlE71bO`DA3y5sPn_w*o$-dp_mJdGD-AU~No|7UL?f0;)N8PW;~U?BtoPixjW>ND%F*{H5xeTl%&cG0g&v__W0S z=rISc7WvQoylX1354<72z>MgZ{Z5NtIIX)y;o5`Bw8zs?E*#v~4q}n;gWTcw9MOvx zrST3%$6q5=Z2g?qfy|pZUp?&IWJ0-Ny)IbEX#K*$tBvP;hb>{_2cKqVe492lz_LQ` z`*o2j>jhwI!svl1FCypneZ0~?2yM~D_%qK58xo&JFP$ai$^HoeHKbT~n7WS>l{XXn zH6umoRkQuF$N;s82#fRbGrPmnT50RO6G<4slQ^5Yx;lnufT+=5>)x?N#=i~Qt~PV@ zeYSY>Bw*KpQ6E|A9R3*%Ms+@MM=JCXsk38`*2DU}_q4Nt&^|lV`8!`zlxw%%{;oFg zg=lw{K5*U5c2z5|a4R6nKz17%H~v=6Ou>Jjz|a|7YhH;nQ~_(Lal|B@1USOu$_01? zLsGp(hhX+0uu>0iST>)H@iNdbq%)XBX2i~g;eoH==Pl0()p&c`^bfG+za=wEOPLL2 zf6jC?z?UnTck!bzds^u0sSakw8u$F%2?>_ ze?+}87%O^QJ+|#N%g&Q6)5LEY<%~2oU(mvrry61cp;sB;S+jDvJc?vDEcf zI{CN#4I~{9z3h7n*NuAd#qS`Mm5b`NWbdoQ(?AQXrvwZE{ddicfAV|`KO$0pWk)Ui za34ID3DvdQJzAq5*;HSlLfWph=Km0olSq_pz4U5Au==}?K|ZIp$0RmsbY zpxL8)?_RIf@GxQq=SFPfhB_Cov!CX3Hy+I$HV{8;&Wg}w}?t>9;7@Ffm z%f+e1%s+KHyO_c2Vn^!S3$&;1W$3)#kNz%*lY<9~87GmG>)saH8|5CG@Qmr}Z69K0 z5#<_T9w+E1cii&b&8qj?q{HO8>=6|03V{ffS%ywzby<8F&c+b8pgj5+d>s>Jr{-q*UQG+7_?YsvZ{74D{HvSN~=$!`Bks%5}?Q@C&w{PrA|p zVAf;yL}+AOHs08S8Bz?FgAz3$S3o$hj6R;BaxO!l>LgO1o6%~nh^EhbhH|8VSzL3v zcX(zey=G}Qp=nR+M4LsvqQd1YlU@1}=CG=)WZlCELV`;sRrZ)Rt~=?2wt=tF*VOv- zUE!sr_Yf*Objnr0dCp00tqw?B60xxf&OyTZMCX|2diT!EX^JuI+vEeoDrDuzysyyR zf=^4PxOpbmN?5gGh3O5G#dvzTsDq7y8T1wSB6kq#3WlK67%p?nzJ*0;$<*Ob+{@Lb zPXXB|*Xk%N8~UO#Nz_m~{|4UA<6xzdu`Nnpc0TNH)~i`{gGmhEZ~24!AI4wlQiK@J znRd*Y?sq9e_Z8Yuw!p8qEF}6Xq~%-ma*it^2WADlZss0J>>X(E&{-mOqdlaWW!u9H z25P39tC{j1e;+Q!FslOad9nz9XpCQ^u<&J$(zTAGS zgGA>9~lh1^e)R&w$YwfKmiwlSg27Lnd zmc%S0?iwk2U_Q$2<_qr^VSaBJD*D{GIX2Cd+DABBXrIMcTCuRs%N!TMQbmv4Dh1Ss zb#<+a$x*;_V##BP>wTV~C8Oa)Oqr|M3x)E=y)tQid`;nN)o=C&h|5GWZRu4TRGm5T zw#H4!4RSnoj0#5cy)~H%`lcG|QotnR+hwFMZ7NTt$IW@L)WkBl~MT_aln7Jct z-ZN=!-8uNh(O$AHLHn3}(H_P$3E<#^M^@Z3@S+*?euzs&=AVU6G3(Nu2>q4<+u9N&y& zfaf;zIFfDBoYJ599E0j~$*S_jx*7E;vPD5UD<}TAtqNaO--@jmTsYImN{rp@$oR~E zowUYWwD<=Wn5mqx(dvDh^D9j)wx2%!O3WZ{&X=Q~#*B2Y{4Pbws6hs9yv)l4nv|au zpAO4u8&}maV!RS=_}%C769>~DZyP*Nd)np4Fb)bcY{D>t%;Qg8$ zWn^8!$-B7Ka&pMu?DfR7C;xUF0Sl_4md8(JkZNN*AHdMOxIL~yWwFczU8B>8+pq?( zrl*?v_SN+-8(7fXU#a9Qf2_@Rmb7-8A~$POIIykeJRP`Px(vy`|4Uf>a?HJszf)1H ziGu|AF6eupU~yL{ychxNmd=g}1I#U5!d8+tQ#G|<76+q=n+guoAqr$LTOCut6}Rh` zq}wiA<;;n6y_&)@(9goMp(5hyLgIqgNJ-l^I!H0y+n-|Am@R7gpR? z*(I6xte*u{??XRGHSM#9jPIV>I{oL&!8MW^u)Uz9=+@CW`-(R3?q@!d$rm84pjDKk zX#U2H@?QoEiLd<4RDVsvR~71m7xv$GO%>UI4;))3E}gEA=o7_QCKmqVW&+r;wI^h8 z2ue9hxif+z_|NO;ZSLSzE+6;U;?}k1#lQ=L84Qu<%Y3=`EuPE`{!zxbDKaz(oa9DO zc{cw!SD$}O7e-CWee%Yiz$y1vSWgLR z^|>*qqq*SR8&^ zB<%jxkVYm9C#!26a@RFd$Ad2?1SK!q`PMdYxi&~ML?kCD%fwFYwdcLdxn>dE5ls_c za^?QfMwFYTWZ%wYQPX)pEq#1>!K0mHVdsu`fA)~pak?>jZA!9*K{};E!zy9r?)=$ zs;UCI@G%pepS5bGPW%HKBve-;ZMTTNYttI0LMVEa0y{YM%)qOW z@YsAH7;4oN{_%t%?~2)lWD`msxn$K`o(seR@UNOGOMK>FCu@i(bw6E;-dWv=6Bc`Dc+u|e;Lm7eP06A zw=e~94*C>0@eT&d#`Xi_A!q~d0mjm&TlPcB1Qa%0TF=Gh?PbkbP6c}W)NIsuinF+;~M6-80NR|?G&1Xu|}K%?uJI@v~cUn8tNfmx2+)YwttY_@iz4M zB2uPHNfh7mj&A_kicJP`GdR|IyC$AhjNVU4hDmo_hQNIQl`sAS5Y9%8^rvohv2 zc99B>>yFlr>km!IKPh}~=49{s>-qVfsx$~(&JQhg!w3x1$M%EvHn00=;Euhk+HaE0 zzz)q*t}djnG$*{8FI??E>nWzu?iA+vN}`HTd!voEF?G8wnEQ`H&se|rN1ArKT1`BC z{seD8bJJqPW8i5>gUf~dG!2w0BJ!`_vbeaeX(#5dO4>FEJtcF)t{~Y6DF@07=)v^% zeXB*I(nX{u$2Oh$z7v{en)QcrV{h}ORV@x~z2AySu?BF3PPYd_-o*9$r%tGZ{BD~V zoLb{TZ&oitH9U2ZRUE1`j=}TP2#@aD-b)%tWM1uVP#K}x()Ue6wUz@B^8+AV*br+L z+nQQN>`=Jsp-|dBWSUaJ%70stZ1oYJTfAOXYpaOwXO%JA^x#IX=#)$857R+QY7# zt&MrIaJ%Ty$+Mk&%pjKAAE?SqZm|x7JZJJk&}dn=s={AVxJ%BSY;a1V_1}Ry>`hhi zbA}^%V`H=IjQxfq(yaQ}>~N7`T6g3b6t6rb%ERabCu35vH%AOB<8nHhJ(90P5@&Je zacD8GLT*xy!Y5ZrT7d>Ayhm(5AF}3+efP=4N6Q(Qnv3g@m}&Xm(D7XvfLyFMC=o{HGJ zm|j5fk!I(Po?Y9In*2ZzUHv&@$O=mD^YQf3Ie3o$%^k`7jIx-hsz9S0{;6YSAjT|g zK{XVlIAYe)fZai0X+IpSanxr$j9&qQoW(}Tk)Qp%o!!dum_TNX*ZmB&HqBc$ob*G% z#91lqoig|Jq*`mDC>u|Ea?}!bddE$sZnc^u2-Z04m_ilIHz9rD3jG+@!!g&W36Jj^ ztP|GM(k+H(V>{4g@XVRO`XK&*!KoFWZw>1gR?!7|$#r49KV^uYp9W;_ZpB&S{%H->kBac^~bOUib)3>r+FQmOVWODMn@RM`g5c_be32T5B zA6lk^Uox?3H8@mfzmlz%g7jXZbe?;0rqxpi>n+3{VSW6jBBOOnM0~lsqSj*e+@I_1 zGk`{`XG*F%DngW@uii0SJmr4L4JSbTVY#3$M+q9uMRS;-lLhcVNHrPWDEj0d?F=6c zj8q2&VtO&@7E@x^Ulm2$VL3b(THNL3Z(!V*75U0&XnyLJ84+=L9UryP6m#w~j zqNC~`wr7%z0+W_v{soF$No8lfC!#P=^XPj{>VP?e_8 zslOjKycb7za@F>}uuzB;&Ch-JdbjPso3Bx7Kk)DK<2;^LmoFXQYlmZ}A+#NvezI() z(-o2ZHl+4{cIX{Oo&Pm5+Fp$I0zsfm1yiVep_G`eaW$+l5?B>gi!vBL6*|z&g-45t zze$_gxek)M5&udu^ymARSjWT40R_E8%T(}LO--+XF555hpc(u-KF(#ev<_JzNqD08 zi>ZzeP$hjHcHEeOsIZ`6tMw$u3$4NI7@ zMTfPR?bDi`oi-szgLNet(YJ@2Mf3xSUa!9*>h{h@!d4K_91rPNdl>Acs_G?rS7kbQ znl%;St7L(*1z{_WrLo)sRg!&9Ms%k2a+kGHJM&)e?ckLScx45e(x^V+vkvRX)_~*m2`##0Zt+#kp5gdM9ul` zP`OI2uX-do9pRE}{u$?elDtayL0ty%dVI?{`M}7h0jSFTFS3VUR+LkHSn@wi+)M2x zl)CLsgsw`*&VFdU#lE>bKHlfPd1{u%)3U)+7L*#$=3mW<8w#djzRI_(MMS3V>N?iS z9(hM?ygV9=O2kpse0hEOj>u5)CcI7p(B15EZo7ZV4NC2InYeL7GM5OJ2;PjwX-SJw+zy9Mx(+YsJ&XHRkax`B;n-wo4}K;TPU3j58)jY z+wTm5BrR6f>T>}^I;N!Tzr5MD+i@l3r@2GHO=@>(3DG|iER48VDBap)+MpDW2PmRL z%1D7eiP`tJ{8|(9gyF(`x8g5|mSHWQFY)un_b7VH{&^1qEXU(GME9O%BkgoX4Rg%hpP{lRK132!)GgRnElX+^&Pw$%oeOa zH2GI?wK0+lj)G?b=OpViJ_mE6(r`>vk;e7xbX^}&D|pGMgRZk$5@5>dcXM%_FqCtJ z<^QEku2+z~#lS!wseW#spU^r5>&wBM)X>35{#_2>O(0*S3Lo?)aFreOc=Y^MGz=Th zN;Tcl{8e|-KekmJ9;-EO_Vv{;TrJto{mBJ*)1M~qz;o`)L!und;Y}QO#J1U^Q_i55 zl{=~7t7VIROSQ8b8qu95yy5=xKS%%${h6~z6ZgW}g*O0pLHcolpC2D%p6)lT?N#oI z<#_{*A93(dgoyxtE{2RR!#nW ze&w^H!1Lm-SQg#Y`Rm-G0%q4>ytLy^TqQvzH?O7dLS$oIiCSz?wMo0CTeDBpLRJdj z(X6H$y1SBwX|Ie}&!*nqWSRAye#S<@?N40&5dprHrd?wlTe0$MgEtjat$eD;XP`lT z{V7BFbRUA0PQ4ST7QM4}G+nk+mCx<(ax~0;I6UI?CV3*!^@|r(28S%~2S6sb|KS?Y ze*Dk=qcQ-XWmDmj;M+{nOtBvN?EJwnZ>DK*otTXkEGbm*hlIgU5acB`1$ba-Q%*K> z$z6u3KxZ2Y=HX5TC4x^fns|zSg}C&x!(Z5?)};bh2iqPj91oMK4Np9OwSBtpGQ=Y_d|DHE2yJS@Os&l%GV2-W;eTU?L0UhAA?`M z&F!1{?ByV&_LqdXr4KTCEGkOkzOH)glL`nshX{Fz!yjD5=Pz~NiIm;XOC0wA-{#p7 z5@3Ir*xXs}GkcA{{<*Z_z1gu+B51zr66C8aJo3UPM}d-uFv$^fheURwB#xU=AHyTn z!SCM5HKH9EUq2F$WaT37O{y-Qpn=Ik;t-PWF(J8OO2*bff5bx%Ku)PuX-CW_p*gH( zHjU?XjymbITlaz7PVRN$DVQF`t{y*o6NADBEG2a31G%d*PMZ!-14$(7fUq4kO)?pT39Fsez19^&l z0Str+C5A3J;pxy%co=Y^QGcEKp#MfOQsBt)z{@hnq{o> zi$(Ws3It69^3>n(-0+FIrLrZ;zBd)=U3si65cHx1?Q{1;uce3gM^8T`jP(iey z&#PX^SDKjPnZq%Ek3jT%qMCCVq!q1-9g0KIj^Dki0-wG(x-nv?x_u$9!j-ubs0BjrJ|ng_QE+uBw$s-^R9FRWqsBn4c2Clx9Z+W7nCXf=zFYdNMzj? z)6OLS1cC@PpUMuB^8LvfJ~oJEWs$x6zZn{DSQgk7DZkjDWWf@$30AzR@ED zo~2b3fMP|8P=4s%+i^gbvF>sO2i@X!Irbg#J8CtsXul;twPWQL!qY<$)i1v>5gEeg z!w+h7uk-v;dvWDcu+yUpaEoN_!>^-^hdYI!ML?x;7n>l-Z&0CMp?cl&-`4V(%wR$X zlx4lEH(Cy2YyACc+w>iPFJ{ZeyBZ+$mW`1+K|vgOUYVNE0W)w zzFHY!`olNsb+n<<)-d@%0e%nP?D?QKecE}!Kv(n~0qMWKbnr|qSypLw+|37(USEAQ z<-DLqx#OmI{zhKRFGHxWN+36*twUDQt6T0}tLJ1r&%{(D0BNE3I(&Ha2GCvjXPwj& zn+v=_Xzd*cxa>jKc>+mw$cTD9zk4rXw%+AN?dq*hCA-pq)k{d|?0@57Ex=aM16iiV zi72Rl-DLrUHhSRcrH3)4az{fmq|}e=#)YwRlMi&9uv1 z11!*Xxl^x~CWQ6X`I;6j5?Wrh1CUlI;M<1;A$wD&GmQo1&a!PzLe;wUbZ@E7wMw&k zn&eUVZo|%Di?7f9>75hEXS|)c_(tNM0}mHPrb%)8-Frl72%4eIgZo8X8&-26wqN7i z6%u@SY%|i6lf|v73NXg4iqI}7X0`;J#@AG^QrPs2^P$J$b^ta1rO2Z`QC6hq$=8V4 zo6=l%zi59gf|C&hQKH&L_S{_95YnS>Gl^-q`QWE`#FkQF_NEgX-#f_b)gjThfQpNq-H*Vm-EvP@w%F91yIgZK-XaQj<#CNPWE5KQG{$>mm>j)AE==vA52fzA2ySbc6GTzYlR*F{g}meFXyuWn6!w>!h@Kf<)Xbu!}6yZrWB-}4!KfJzba zf8|c#0B-JDYhk0Vy`T)lo_S`K_N(gXS082;|EWd2cUO4n<27=By zHVPCj@y(0r%HZN*QNYo8y0gIb{H*?{#9ZI{^TU^{3f&f>e;MC%a0RR!UxkLR!>rc* z4DWDr#`%Gwu*{&rJ)u%|Tc|7cm_t6W8>&`-miEXU{B?jl#i}t{c5)If9xsl0y}*fC zU5s889_Y0gn~lR^QQU}SqI|NU(fC-Z^dBvxC{2>Z`|kr-KArdwkB6`sLG0i9EPY?g zOi7yFv8C=WDSs@y%i0%|TJ?Tl&jBPj91HQ5ok?eX%6)K5@X^}BvF0qBOLYh;(**SVBKW#q)Jh3kV*W%z(QsJ@II1!w@hy>m z_Q!-mFC@_r-*8sdUynibBixSi%3L(CLvB`TA-*!BwA=(RHt`)S{yKCWj?nYuu zLw+nDN2&I=a;qr%Wb~xJ#x4iaJ$2^?!)E+$f8Gt1gNOAujHuk(?f~4x=wNttq9M*4 zf_%iiLwp_n!__fITYJ{TLv^h8J6HPwiT^{l%e zd@LclO1f>{KS-&UpLHzhez;wR@s)DF=GeRl<@l?H+5DSqoXF#SCdP9f+SOCYUY-LL z@O@C+aNkPezAdpGat1&r+JQ}JMLd4!uu+>xVZI2 zYe}DHlzBPAMZD_n>$j*24#*6a5xDg>+awnx{MUY-aTpq`oHU-QDx7r+i`dF& zR*rkYAU%&pB4N8(IG-ATnrwA`=kd=bLRP1}`~9WG6g4B|-no$EH+|=C_ExgWT-2S8 zKRy`X;yMVAIl<`3W19FJ>r%!lt^+uKp$P}+HLor3EBKj68i;fEV~X6})=#6!U9`XZ77`YbiSzX~R-cSbLFT9E5Auow~H#uGPU(CTMe z>64*?fsZV!-(Sq(rf-}T%Je2b5lh@gS<*K$kYCpAET94p)!rNdk;UfBNVYEF+*_Sw z_Tcf|zbng;gNv&7{Og4$N&6ESvWpR}rr2l*h$Uiv1gg5($arL zer2P*9%G~Awc5c+!DQNy+yG@y(?YlCwO@ZtTVdRYQ55S%1dr>{( z;L{sd<46D2q0!BlKDnSEHa&GuQKjx7p@ggs+43q{YMLDlk)CIBakoz zxN^)ImQ(z41-kJ|y3us~ddvPfAK4v+91^Es`r)nptTf%-D^M7Ux-Ed~ zC2gkl-Lp8KtdSiQEbQ`7VevO@tlv&P;$oc!fA4W>*!;w2%DsDN50PSb(>LLNyHnntu-ST@3 zSvp;pILJ6azL7L^TM=3}>&v=8)gVXK7Yk?rR)*(ja4pp7m-0=u;n9r&@Y`u+0XGTb zRUbnfFaTF1PV=@ZC{ZH zw3Iv2KA?pSjgHd``EvqGS-Lg8_f5lC8M#pHs@1o2gQrlZ+*}X3_V63+d59fF2OLU8RjPHLecPFe$wfvT{6cU>4)Oos@IT)*BW65)yrYMwl_ZEkH z0$q^=)hE91Q~4gcERO1I_~nQm9OS7orK#+$YJTe_$oBUv zMsk>?eD>T+*Tj#8e4C(W>38~fCX-)SSVRdVo}**FR~=;A*f!X3MY>{oPI>L`UE2>W zZ9b}d9oHCc*~#LF$urR6AjL~_ohdZAjoTo_Y&puA{3xivy-QLc8bs z1W^!IM6+084dk1>rFB_Og&4B)PjnFCzeyy}7gUWXf>y?P$2|ZY0?r~?g?{j7Ez?}e z_byHSTr-I+${1VRTToeQ^tP76V+E*~V{#&*)eOttn3er45Y&J@A9On1Mg^3u+pG>u zY(vZ+d%p^Fb%&q*GjbjjHeusNp?Ck_;B7W!5G6=VHp-#)>a@8G?>hBdVD6EQ+Ad zdzpE8W#7=Zvilt4aP_3M}Ix zT(6$yc!u)Bx@Oe%!J9dUhDzU!z^y603y-E#AcmS8N@ALL!ROtp+GJhFbH|7uq(hN| zry!M)Z5~aMIC+zgfx`Hjx3Y-?RT zU$mP)vhz-UBP-F+u(4G4Rir|y4t;m9C{npa{reRFhPLDJRlPKv*snI6iWvT`BM!gQcZ7oXF81@W)>QahB#035>Gm;?Il`@oxR!Nd$`2? zJd$;`YDOWUu4p$V&#xpQ`kD^z-XGa#L$_c%S@LEy_e?`{C)Ss9p^qpVrMa1+18rBh zoPxpWzH9T=-psd~X86s8dc;r4C8?8+FV8snU1+uBSnms=KAl!>wVPbOQ44ZxV2rW4 z9bLr1=ak@IGykybM^^|TiC=`-adElw5ODvZT>?KOjIhv54?B$<+{2$9$GAmGws?n5 z_T7>Cj)5MW#8gxfMZFOBk=3c+O3){VkjU44!@EQseqwZaL-H{kOKFt)w%T70aQ=Ub zuyVk7o5k?9_zXNp95E+T-Qpg%K@jT_fyfSt#E4X1SU2hrdCs05Ojb=mISn3hxLv!% zXwdoeLymhs(=Oi$DPz%04?7*00+R`}EA9=}m$6}Myt3nVdtnUTeVeyU;!#?t-ZK27 zaJYFhL=RMlJ+Bw_{14^`h&2&*OW~?CA9WQ-yJH@cQx^y!did3p9q*Fu{FUMGE zSjO``b1F^2Lo}HQs}q0$p&dc#3;YR|U7VTFwf&m-Y{D%hB|;y!gg_ekD4x9pWZoHa zf4zTFNpBoTC}DY)ov!!dT(Y^)2}eg)l&P28FeaqJ_xBY>dt}*$(YFS*SPH_}qFO;T zSzZWg9m9ZH=%PJ7kBR=T5SON|8jKWwqEhCmSE7QtwUX`A2eH=j%>jof)Xzom7rUPN z=NOaL++~SBmDA!$mymPojFF5*rF0r(W#O~fgxQVC>Kh*T2G3(_>F~?C3IiVBIP{V} zM5cxhmhv^G1N0kmH!TLBjfW`HhGOmV!UpYIb+lX>LvnW-tHpoeBJrDtUOnm_xtK2T>Ub`XJW-;-~ z0?&_dxc1?nkxYAW#4Ymi!Pq-SkX(7KP9VHpJ7*>ICwyq9JpzE7jmG`1lt|Zs@q5O> zcgf^tNNYz~_n$K`l~a%mtZb(^M>JociG8-3cOREOkrhZi&Xdr%QYx(Bu|wpk@jyNd zwP@TBzaukQ$R;Sw#Q}cc%zdK$eofVMRBly(d5{tTyfF^49_XbkXk_K;%&|}@Xq;y7 zPN+=B1%koxWZeaf`^C zjqm;!m|fzKwbn5e@HSNG6-#tS<)tZ6$WNm`4_zO!wR$YRka$@iruXB07c-n9S`T^1eg-@M9s~D!Xs`4@ z^xxcN7G-&nYIVU%s#aZYhm zi*Z2*diq4B%p689hJhsp0e{jilf36>m(pFGxMH_o;j-U_PC|{VW}~2>_n_CQhG+Bc z@uL?Bpml`y+mikB`^$Bd?5%Sj0hxP0ORn=0UxFs=m&8dpq5*{L~?)J-qY6jrmw79o2DvLdoXv+Qw%~9=-E@Nvd?tJ?<&`;ac7KJlEYu~(;mnADkmyb{NessUk0H7sm zwCrlByPX+o626gF!wgQO;pDHF~o0XA0NYXxdr`Gjks+$=pyIT2I9^5$fpKN0ke;RHylw@phz#b{28a-wgH8#FT(h_D! zOE+K;v1d;2=?fg4waHMEt_5r}J>c_XP9?+uOfY-8CZb6}pLij_NWg)}^=vF8+phW! z$S*D^HFNB|f+u*vD33i|?5r;$-|L_6u1ySiGs&|}T_}e^WXXK}u@B&cjr~En_!YaD zv{xAO3U%T6#$GrOhSIKf-nyu~J*^%lH%jRFW;eUJo^@7JusF_q1gQm4h z{-~+iyGPn1Aw5k?WYb|;{5KD~flZLBl>MO#sQO5R)HM@08_PGI_3Y%*Bdx#rBQC$0 z@W+#OC)z@X(vX@kHxefg7b7KvX~Hx1Z9?=Hf4q-pA$vfS>mAGiHlQ64L5Pfkmg!ES zd8|wdoyWD~o#BDx4KL{>PO>0rFEdeBH&BO1+T$_4w-b2@XlF)XsL-K-gZvM8#_z%C z{Laj48b(q)MgD>e9AFQY=tDB*@b$`8nwhr45bDyd=tycBB7ReX$UaXQ?ybs(OKqZ4 z@7Hg1z6S4Q7b)=n@T~_Z4d$ANN=xL^U{Q!fQ@`jkwvpIyE)5A%J;Kq2bHdJ7Zil?v za_@|sm870%*K`cIr>wEa!n=W5_A&Shk2R+M2I77u$)yv<5x>u1kzdJA)i+4oHRL#1 zq4Q5h{?wS?qPn}gM2#oz)t+#7!sYW<0s9OX^C-03LL_T^6Cae3S=SmF# z8{7J>Q^BS==}?g38`aGZ$8J>xcxVE*{Eg8K$oaRIu12ChwK_7lQXhl?T49BAU&(|q zca|qngWr$i{#^(1_}s>6fQ^z!sD5VI%p24!MRshpTe9I17@KvPSDR6&t3d3^15o8J z;Ugx<9>CGOrnRF2G>v}A|22)OkL_~``z~}(L|j2H!)2Rw0Y*E*%tNly~z)Z-;YLZk&xh3pOm zFk`+9%aM!?!C!vYRQ&9B`3|7VuqTofo8J*G}^c=?g*!PjoWiC~r3!>z4zAUW%F+R~Gb z6O6ao!VkSq@=PxIo{5RFE5^l0@&FtZm4#$yt}@U8qV!GL536@A;uhpeWsW!mz` zl+I64!MH!&>(k5)Q5Z?_UimCrZN9@xcfXHK;cE(Kd&^)pB_fn8@Vc+kBrARV%}meb zr;q156ACqEww`po36>Qa)vU5_`f(!KbT{!qBqv5+Iz*}VuDVHUh^y%o+G5KDc4gzC$=o>Yb+Vjjm#D-lQp9HXW^Dlv2(AyanYmB8dH;- zes=G01c#NUt>R5rdGM}CZwtIc2Sq_<*KQk7zLe31;&nF`We;Dr{Ar=D^B;Zk_sS*5 z7i@M?l>+x?51TMM!h0G4`asR<{1Z<3?QOXM?OQ`vD9H$4&$qE(qO(^b=31`vhskkF z7TF(~S_fPVFC^}<@6#TSok~XBBq%cpQa*k=kF{`jYMBJL((^fKlG;m8AqP2tI?5dh z(((NG#E~W(sDZh?BIgTT;6JKNwtTQA7LU`Y%QQD2Yp2pB>@}7~Hbx?=5e0na=u-=w zniKce>Z$dmqdTY=zD<^f(8wsjavu5a|Gu&5*Di5yWE$(QH~pcgF-m=ni#h-7qQDiH zg`BIErJRM^m1=9}gJ}^>32j)tv-ID8zvS z#!MI-oq>&>2}Cd%;#H(Ea2*2`V3y%9@N^>BrrTIuKb`{IV@@DIRiMnfOG{97{(WcX zw8OpAkVO29ht5w~2kX7Nb~Cx{$30LQ+Szlcg*KErto-b|vvRpFjTk7vI`xMQ&uPlb z?MTRXxw8;=uuc7krkOxkxhPi{wHBF^{enO&-v4DMTYsDP*Q6`$fvYOIaDDn3L$H&Q zykUNJ2>wGd!od<{Oq7&Q^SQMQ`{S|B?bwm#%&qq=GfXT-rgwD5xs!V8X1Y0I@1g%4 z9r`xP1ScF!=1CTGAEyMFKUa!z3V-`8dsvyRt)ZyR|`mUQc7ml-@~3^V&!h37yWu=3q8b!hmdTIty@^pT0r%E`ZUt7p1a#&}cs|>#^M0Y5De~g2V_SBv z$eWt#o~;MI%jeSk1%WZy^W!)J(G}nOlf^x)r6$8{7On%hTTlB+Zx)!j3pECOJCAIA z)e^m<8Pu**gg)tz#%;rPBYF2@zdy+$a^ZcZOC?hTDGjMyeeJsnTb^ur9jdxE^;<~A zTDcf-c&URt=74JyjR+e&IhP;+!F{61qy49MuV^FzQ%vZw|3n}IE?DHRXI_a1k6-nD!QAcNl7A3=Wa%!Ehiqz(PMmSOmd8=`0Wmcka zau8Q3l`|VlXkMzlYkHGq+D@yyEasTkWp6mJHe!lnpJm35KT=&c8 zZWFM&zt0H|vO=%pIDS{xe7e0h^s2BHfM;UVRDUuyrMpBP=k83(dhG_Kl)O0*Yne_x ztkkBf)oh7b8E+U)GqCO03Hc;RY~-&$Iapr4@_OrE$97e2S!%c7^z$<`hz#Ds^RJ%5 z-L=c(yte{E&^OPJfrNRB#hHs$3jQ<}C~tX28p#Q+LP85}i zkE~(MD9OOp|V=l%2IDC)v7-e5(=i}Bo2Tbp_MZfW8H4Sh{P((LPS8ESk1!rM1=U&uIFlnmv&g2OMvHH^I z=gSP&?7Do&UXeC>J+(}vnlbf)1e(4#kFWeZEZDAbV`bmAJeS}v<@E;GW|Hx{LumU3 z7iOrj^Il10TZRWc*ah!J2T*O7^CmY(5ZMJAKY~35CRjBylk_{T9(cS2gQV}9sj)^B zn^i4(Vq@8<;2%kz66~Rc@!aKOE8bZht*xio3(~4?cZF$6RH2yFo!j$)gEcABSI(_= zBnjy%Yt)89jEow+W^s0?k88`ax}oSW%M7P+phegwAg9?&ytc*3#%zr(9Gu^#m}V)8 zcy{fq%v=bZJp8iU=coHVQIL6iyRo#?8O>U77!GAbZ8phq;rJ}wOStDo^><87&R3(m z57J6xb^^+;>+S=-nu9$Bc_3O2wo2N2QYgY_1)o*4*t8s>+%lnY$_J)!&-^{{Obh5M z=U{PTWkVO}fu}mTwU((hR!t5Y169|AS63Ovl;Ybog0^%%CDJY~G5Owrr>j|sx@`Xo z=HFh-(Rv5lyyB)qIBD-)IQRNvUu7f`J+?J*`}l6a6@`eZ{G8s-eO6fN?e}rSPlSV6186TqjJ49eD^~Ugb$^mOV;9QXqGN~cqA~T8 zICt@KI@~yg9!&<2mhly4MM?kgTrQ--CW&0N1E>nd4|+@OCC zTQq8=;6>WJPXLuN1A{FePu(A57<$aZy{<69B0O6q9|x|cFzG}&pL#6rRzyPx2EErO z2v3bHTK|^pn*sQ{5~%N@Or5M6AC6jyIx+|e%}kZ#ib>9{x6oyb!htw+iZQ5m6VhSZQY3(Fo%?jTdv>ppO%P90cee*nUpmLRu&e)_ue2rZU%H*2QpL?`(BqO7Yf(=a8Y6K7brtI&@%c83 zj(}5vK_!U!+|KkHOSnzPl+0V$&T7h0(yP(WiK}|#l`mL_T~v26`tJN`INq-Y_DV~y zvmESVm4=&=1k@P{)aO5r4hz)F=+QRdBCqw z7JC|(z3Ip!f(&M<+u2+%2or F{{l{RZ_EGy literal 0 HcmV?d00001 diff --git a/img/iidx13/6.png b/img/iidx13/firstlaunch/2.png similarity index 100% rename from img/iidx13/6.png rename to img/iidx13/firstlaunch/2.png diff --git a/img/iidx13/7.png b/img/iidx13/firstlaunch/3.png similarity index 100% rename from img/iidx13/7.png rename to img/iidx13/firstlaunch/3.png diff --git a/img/iidx13/8.png b/img/iidx13/firstlaunch/4.png similarity index 100% rename from img/iidx13/8.png rename to img/iidx13/firstlaunch/4.png diff --git a/img/iidx13/9.png b/img/iidx13/firstlaunch/5.png similarity index 100% rename from img/iidx13/9.png rename to img/iidx13/firstlaunch/5.png diff --git a/img/iidx13/firstlaunch/6.png b/img/iidx13/firstlaunch/6.png new file mode 100644 index 0000000000000000000000000000000000000000..00963f74bfcd00ed0b8b80012b317337ddf3b0d0 GIT binary patch literal 127633 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%0A(&hMcVI=Y9Bpe;%61^F7bS^mm4n9!`59Zo{(aa9 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 EUq-&;KL7v# literal 0 HcmV?d00001 diff --git a/img/iidx13/11.png b/img/iidx13/firstlaunch/7.png similarity index 100% rename from img/iidx13/11.png rename to img/iidx13/firstlaunch/7.png diff --git a/img/iidx13/12.png b/img/iidx13/firstlaunch/8.png similarity index 100% rename from img/iidx13/12.png rename to img/iidx13/firstlaunch/8.png diff --git a/img/iidx13/firstlaunch/9.png b/img/iidx13/firstlaunch/9.png new file mode 100644 index 0000000000000000000000000000000000000000..4baad60858c233350de935dcaec924740bee9999 GIT binary patch literal 103451 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 YCj|GdlO|D3-1J31Wy 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 F|34bCaF751 literal 0 HcmV?d00001 diff --git a/img/iidx13/1.png b/img/iidx13/setup/1.png similarity index 100% rename from img/iidx13/1.png rename to img/iidx13/setup/1.png diff --git a/img/iidx13/setup/2.png b/img/iidx13/setup/2.png new file mode 100644 index 0000000000000000000000000000000000000000..95abe25fdf9bd478a6732805f2f8f5d6a005fd47 GIT binary patch literal 12611 zcmb_?2UJtrx^A+w4Hgg;-E%d7t}l7E#f>yPD>f;xw(Zq*oo}nOK3K>yu7gkNepI*WE>5uj zSg+^48HI7vZCU-L*aD{Q=L5V`I;hS*M& zU#`i>HK8W;*I4cp>zRm&>|pg0;!P2iJNvX1nSLIh&>f(P1hb-+YSl~sre#&`Jk(q7 zR_^TthV#Ci!?bjtgFD-bHs^g;O{nRZde%f=o{F^<#QPG~p5n0v5whG}ovl=cg`2eP zGKS?ftEzkQbz9J1K}g~RqrS;CFvtvTh6jOO;gMj_aj`E*_!!nP)o0-v^?jsY6TO!l z#Q*|@cH80u)>s3~6?eZyCTXOmCe13+#)vrDD<#ohjeV^5B+h$uFSPm~b!R$fAMZE8 zl2aTOa|DF^{)|bVQP&!iMx!fDIU zP5|M19roF>&txlcv=NSi2T z`e6^4xMbcvUpTPBVBrXQ)(b5ChHc4o zryxMc_LH%%ovvVckWI4j=}wRM|h-o%G|q~AoKN1g~j{55^d(t%bO3`S1;0y zf};BKpOHb-%rFmj>N%jhMa;nhC8y6z3AXINx=q;M9Fy|IexIC?H#s2Byi)oR<2@gF z({_KB=OAP!T8Tb3b40|qdZ%uTdY&2>k8Q92@xrsV);9gcWw>pn_K!qEdX+3&LW!$* zd-Qdfxcnw9zW2+`JY_@yUsa^bXWT2N-fxJv47Ed^2u{0vEs=!)J@Udp7yZm9?A~T8 z|JxLg`$~qh1}OL95{fj;Hb3C{%rvKrj)_ijr72u5)~LO^31>@y?UhBsTZsVV)bQe(SA{KOL`YrIru+{(+DkrhPSUi_@0UmXHEle@(=fqZ?3839S{ZhcL#Hp<@THRAkst0~tS?~bG2iFB6z{Sn z7Rk9_40w{izV@(s$82&h_J*AQq3y}Oo8l3`T| zb+ap*Eq*bg?8h3YP+fG?im3O6W3_>KMBKN}>)n}W&^?)vRbQZc%q)kLGyRjQyyQW7h?@3=QwZM;m)a8ynb#h_M9x%UJPb-H0*Q~ z)Y9ng?w~s0+l_Epkql;1fje!c4GmWZ*;jo7=Gm!CBJ?{{8QkJAsuWELj$K}tC(2;= zMrPWSBhp0gx<_``yIt$eph_CMnteA8a&mY_42 zswvJYg2BvNE4Z%k7(bIf_Tg4pB!b}AuB0FyFj*V`-`_P>vfu9u9Rp&~XC6`9+7x=` zGj6MH=DdCV7=ki6bEV`U6GMA(@XTZ#-#t^Ey072S-??G9XCqqEn6W;RyTEzd2X}s{ zczL=_Cxe7kaN&twEII?L$?N4&?p@=!bh`e%obHyF4p-uI?|f}wdO=!Iz0p|E4%WIo zA6umqWItOOc_|{X&i~BC9*toZRc>bdb2oO1IA5})*{yxeW}<08i{D6AnzX5Fe@6mq z{l+YTGhj)N2vejRQ1dht;LF~0wDkc)nuI4Ezmh0l;@{>s{<$L&CV#*Stw_w}y`jP= z@;j(o*<`Mc@yU87;c+>XYyaB%YyVAlDpBO%8kN~(O&IMt#y~{C_tmIviyA1^5(LSw zwIEf-vtc262EpS)ik(ioDDp{?X@K}7dW8{mfzKWv$d*qCO52%3&%nm0ncftXe`Ed9 zIASJ?d04Wv;~FbX$Zv6Wmmydur(ilt0b<07 zPaInxlPqK>xHF4cWIRBC1ogdV%dnQFY$;?vY5{`l2JStaA3EKj$ZXVVV zNeI&t@AdMV26AQG%|~r%9(Cm{V@*+RdDS8!P`XDLIHODo3l5mh#*7X{W-^%(txr{y zg14{f!I~%MdB!_XtrYn%)bogVM;LL|uM|usMvIS}W6-F3dN=k733NO&+!a8nG< z-08a4=bVL{Y9B&p%DC859gFUHB7x>BvFy$_J4g22?YaD|yN0%=9oSP=EOvb&$%$#I z)o@(NSfQojLCwR(gww(fc)6lpezJ+HgG*WymkOqKxpV)>=1FJU?OnAxA;%r7H_uG{ zc2FMKOIHEUnEf<-x88XNc{B+(cdF{M#2i+=KN#txKWN zRTGA8OYfG42CHe(Sl1PEGrWyMI1ZZ3G568P(nJE15Sz#JDC|*NU8At|)YrSWDR zBW|f~5386Lx1Ww8$q2hHSA<Wz`9jspLPXMCFM7{>Cv*UeD& z(xs=D3JblV(GGEE&uXR&Ianp$>at@|Dt8%@FxMF9pZ~~>s~78eDF%2=OB(n!-FiHK zBMzKf;U%w!)h(7jp7_x?U@u!}mdf&U2GjQv4b6o07}+tJ&e z#e6gM4)6d5X2FGtoEG{l_Y-q6iYKk>%lQ{;&5LB3?hDLKHT9;$6TUj!+kydmK z*f-jNQPa9&|Hx;=QT`Bql8z@wMwoSR`EP|eWmVw@VPW(6iWNgEAjn-ydxV79L7bGI z@xo3Id82Q<7^d$E51D1Wu;lyFWvzkTozSK=ukNz<?6!aLbtP5XUtk zxpVh+zR226z@Cq!B`JAjSPU4X2?UEjT&*HF)4&Yo7Izm%MybSAZ-GTMpDN?lhX~Pl z>4YI2WwNnp`+}4iPsV$x_-wTlcz4~{R&^xI<{+?kH&L>_v-+87`j$4Ln(R6&-?X}! zWEn9jMB^Pk0zI_Z9fAdM6s(AcmcT;h_jKLQcdVtihW(5I&XH3*iZzKJP)wxJt`e2m zX|9sz1U6CS&#%B~m(}_t16;&UFiMZx_Xfl8 z%d$rMvnNybAm^mk^%Emt?kU{5Xf~P_ZsmnIdwOfPBwJ+I_`fE`y3bYd+o;MX1qxgH-En}sqQ!Fkl zl#1Ov3qtCs{ew!8si8;BE{+BJ4`o3$j{)Na`dcK%MFMu(4W!;QO7dle(^$C8uL|i;-k#7L$Lu}9s3+|v-jna}fj8KU;iuOtOQ?!E~vu|oXgWk-vH27>+ zmI)^BJ+w{;xAjpu;Xbj8@p7G3Pd1R2uyZ7+kKT7Qfzgx)I+|re+8}t0g)h@UUt0-S zm0QZS=Pv6|D4Dc*C01BM&&BMk>Xzg0v_N%J_c&${CoGgnKfm8Tmngq6V|dCv#f-GB zTe-t-Q^7TEN!+|L*xJd@W7+pk1ZArflV&f$0_)rXBefhV!6%AVz=qV6M6zJRPN{&C z#+FK=ozh7BGoIchL&9iMj=gD-IX}5XqRTORf>BNh^!RP4BS6Sl+5UFv|6?Ed^TsAg zCa>k!Ul#fAF10XxtA*!V-e<3ah(NsQ2hz1k)N{5?hslUazZIH+=?c) z#>py;XPdOq4IXV>u3 zdSf{a$9|14N_;d%$sV3FH!hynh+dg|^_Cc&MqLAOEst_rauH32eOpy)OyyhOL<*rk z60`jS-{rJ7O{3_y9rVl;9t|MrOz9#YRJTh4!xx?}_dX?6#K74T_?Kq8=pI&Z0-uKw zw!rCv-rfDGU7_{XfgVkWN`EN%RP6-#=<<1k?i=gml*v19wz(@Gw4ZoM@TVAE93(xr z6g%x34h#hqZJ730MkQurSRe^!uAV>8bJJWYe%VCU(fFV(MKG5uiTMMMLVmak~>$i7n7n^7tG^geJLKI?Kxae>04rvu9tMEvn@)eVhizu5d52JWA zE3sic@5D2W{leS^w&kpm)}!$ENgKOG?S=JeViiO8dwS_^Q*CaW4Z{4307VH(+N(*$ z$;x*eL0-Y~KMSaEiD4Jn3Ye#vvMieq#;sdaY4Z5ATIjT3oqN1P2CxLVfs>FbNmi49 z3+E84nf+SEjJ~{EsPgNnL{xJ^R{N`yaAFcO^8~i01{;QW6;7M~5<5TVI|q->CiiYS zBs#l#wm{yj7`JOpeu;S1IGIJ7TU@ky%Sgdetu>;3z)i1ZtK>K|`E7$@wk=+j zSEk2j%n9@;&4%mBBQ9$*d|;uW<9P2$v#!jR)6n5#e~F`fw)kqN5#^&yr(&$ip?_ED%eA1bI+bLk*VZ+~zZOGCU)D(k8S z|Ge@LI=sv3v~bV9<>A;F0A^O{2(XtP41UEAuYi2x)PI)orSqrxi6;s_oG!A!ud7<@ z%J6*J*PkbU%7yxEH+b?NMswxGZdUB-5o&FJ1L@{k6N{^N6rZ=&-5g8&G`lBsFPj#f zcoFDu^Sae1S?W1+ptK)p5cqp;ZpAUr#1flx5EC!8c&YKrKuavzqThw7=Zc=;{Z3e% z1#IHGDmMB@!EacGdO6@0!+c$)fwDQAgP|m1;^!3H6*JR6b~vJQP^0sIb4>lpA*!5f z`Z(?Z2atX4fc}Gg^=B;lYhnYa0qkC^@0YO%n}9JLepN;1{LP*xuhioyopIXOhFx&b z!Z$MJ2T0T#SUT9fzNx}Isq(I z41J`LU||##WY~C_siwPAy{9Y4@Or5&=~n@5%rsbDrIHq#()chDVLu~| zN)62km#|H@t6F?V?{pdoE?{XsMp+)%58Jx<3urcqB4HLTeaj%-+5R_})6Rv$@2Li# zO-RTq>XIxPy|!KH>t7Q;ss3TZ*j-^c8YdoFD>OyzJcN6bhzo&iM$Nq zH8DVI5f3<={h0;=*jN=)Le(DUV19}7QtH&bH>Y}nybE_20EyZHBi@1E>Opt?Og9+z zQaarJ*r(RxA33zF7sLhk4NnpEh`;2?sU^WZ`!F7lKnYyYl4c(_70kBH4IQoI8g`J5 zq~9t2SG6fQ;g9<@rzf|bHn~q!O&Y#(?Sz1+?5$3)GL{-Wc(ufY5O#Mx~`>ajwT0hgI$fS4HnabsE~$LjpY z!EW5C8c(y68Z6VoHKOCcvWfn#v?wzUapl^Ir0kD=lxXbiot4!90 zqM`DS7A{JdJs6W0Wnl2NzPC=v$v! z09xpUW5@<}XvWQx^S(2y`j4nRTu(pWbS97LFh?M2g)TvT{Kgk#+(*QN#iv^ebyMD9 zUtD4SXZJ9?xhbcmLzLaYj}Ou#mh#$)H!J2X2z_DO!w%Kb%iQ)g46j=~o^Vgte=boA z7(tu;vm(3<^;3ex%YCD#$xpCq{6vux|U)qGk_|lo6 zsjuRnBhuFTB)(gR4@|!rbkz4*E$i`dZXfQy{Et?5nQ9uiI!#(rVo?a^Y$k~W^jLi5 zcuR6~A%$_U^(3E=#KgvHXFKAJx`yO`Osu`sxX|gpuEYPZV6a?phEvg}XH0CoJt9}z zFEg=$#xEidJ>@?^tbZQ?enQ)1`$L+ZR}gs-2-u)Q$Sd|2$ooGu@TUv_U}H~D&!2G; zWajeIfB&t4q!Mr%cOpH78{KUKL>|SC=UNmQZ`wVWVkL1t2E*6Ifd4jFcHu_LfKCSH@oy@|1=qyF-f z`e)+{I@!-vIs1TT*J|=#u_@jrr&r^gWowI*$tf+$35>M1ixD{=r*#q}eD)6Gjm^Ei z4^Xj$mdu#7+d)~uPvRtUg3Pmz{u4z9=JlU$(m_KDX>&9Ky-@4#7)7ahjI@NyQ+mpK zxtyaP#TPOXz}rz0g0BpH<|Hc_rEyX0)|N@5oysXS{=%b17#3I@G3+TPI$A~x)jx5Tb^TV)A-wMlK9f%4OxGKNB@^T?#u$f&}GuKZFdVkG&0j8XgQ#i*j z%nX`+JI~=viaC22*?6LkxW<*_6FYv-m_{ZK^3&K9gQ#NGOgrU?TPiz;#zi?o@ZRP? zrq*hPf9)PS;)GxxNLnEbTh9|;8@u?H^R(%N3cBYGRwpz_Y4l^CepatCg=LZ-HP7Dw zz;x>WH!v-h4>lbdQL}z~=#|nL9IKUYf$)fbd{=7R75%H&w#w8d%Ox$PFR4~6O4f>* zO#V9D55-z;JdF(*J1{iIFVC|T!Md2uSXlkSVDZy|;pd6Tqq*RsXw=-)(FG%@$;mAgR$?@ zZ(G33+6t{@^bowW-It!0eZDl4QTyC-5ruy*5ItWv62qxb*e*r4T}RYEF7sY@1tjLr zBXyQx8H1s|D_+O8?PuB6%B&vVAKE_#!yR~t|ZGK<3RMVK$ z@U%TKZe0jM4Wb*>jukJ34>m=#d-gI-wS5_Tg1fWNhLW>0oAYtuRMxu*Y8<&_&vDPc z&b9vN8a6}P*4zBuU`dMVWwL>jAfH9ad%*WxpD(g3Sigx%^#!D6!h>_Dq(ksNB9K$G zXo`uRM!TQGh_B1g?6|`8dV4n~q=QIapt!yUiS-*C;wC{}rj}zw?!2r91I+1`^ax6H zU*m6VrFXVQ1l$lT#Lmh*DIFm`*}N};II#buAV}6SAxJN%tmuce z4X{SYiJT_K8!(W~@o_Vs7MU~CnNv5O=7*Y#H2G^kX-0da+0bs7&hJGA)bF>3Sy}tz z%SuXJl(;eC+z4j6W0zZ9ZK@E9(=sriwFY|wJFdYpQLp+Q_6EyL-TumRif;;Fh4TY0 z?5O3ofqmUZq;^?c4X@V5%PiKT7Jk@d+v4c({4^ zXLxS9%=DwL$nfY#aA5hPzQZlW@KXz?{svC=UWNL3@ExSV3O7Ptf-hBMJ?%wKGk8v= zt+gqUM?7&Wk0qY$N+W+>`HD0=_@qX+A?nW?{sIl_jI+A}*;0~cPoQy|b#(nvc6(zg zT7$3qPF}q(qrU%xM+Y-113Ur~o>+Rxl^$TBs{qiy`aWe%*sAJU zoS2z;tR!gQIDk`Af<4mX_=dG!sJZg#C$|olLAhpr^Z5mrXM1b5@4u$O7Y3j z-gn~K@#bq|fi_sX-|hpL-meZ#s?uYE#-Nvv$E3l{$oW-}-Nr=3qypr3f*%P_Mlskt1u=*KR~^9gLk)(6Kk%-mSw zA=4XFT=Ux>{Z9A;4LkH8;XJ69efyF@e*pDs;*hwF28gS3Da_;Y*fP%&G47ht&J$zD zVKk*%B~N5?i_rMpwmUnbGUQ*lc$aAaWiHw_`3?&^8QCnULHsC1fK*e|Hpd5Y$l?|s zS{aJ{wfluEuWCCHp7tJ_=lmBKcW{GpZB>f3@a1hqGTU`4R7p&KRzV53I1s%$h#vNn zqh-Oq&R!0%US6#9-q1$B!ikoD+5MSOH-N3*9A7!u78STeW-p=p+Q7az@eRi)Nx!zc zmN7DF{m(HeLP)~5?xzY$Ed5}IE3i2Ay)iaP7zxf|;887Ns3suPKK+XuklVo&_hAFf zAOmbj^rb8fVQ|8UU_clmy+bUSb%|e64>+3B7ltOcAA_g^Ab11)1TuQ&KcYMT1!f0x zh%WS92fXF9G93t(U4YjJ|MIt9^KVh?-=gFuj5M&@l~lWX6#$^1pEw=zFQ)#67rLi5 zwxMC?DZ41pvUi*c20aRIg!*lE#XifnVTYLf3iOrz#SG%VG~_Kl&Z14x*}^61JOv-Vrx6cN zkigZQwQQQRWO3A2&u_Pe!CH0Njo9WhiUc<8jZ>Sy(LJYyQJlMGeJ*~SaYr8mIfYp=&jkdh&$J31}KFYW6nKDdJ)Q^O{B7|KJ32&qd|1>EdUK-sLZ2fZCbLl8uq4wJ3cQQO zQQFbVExCp%L6Ajq+^2I%KRVZGKmijya^W##@Im6o5AeN@FE5RUM{uPHYPgi)`{@~ zl}4xEOiIxpq_k5jClFS8YOfziG$HQ=2+|jzg6Bnj?XT8Uzb1kA%$^%G<^r-otNO@P zQH5Emf61nY_xPFH15S^s3z#h|{QJ(WM^T>bPDdETZ^L5^9WO6Pd#7U8iDeIc<%wba zh+e@$N4wxA``8e+BpJQpWz+Q^QL|F6`%4GVG;|HK9O6D|Jw5I%B-;87c+91hd$t2f z5n8maS#Nx!Emdc01$tFYBa$tu`8Y>SNKSj~9xY4j4etkDh;F}l!^!254NPA;xQC;H z8}W`c#=z97bJr@YCPfElR4!*tz8BBBnH90vUgMgx9&~$WqYP@fUPlZyZ35}NiemS57<9FPJ^;^xN1~Ul7GdWYD(rlv15^sUv0y?DS|I58C%_gKaZnKjggv`?YZBLFSjfHjkadNQR?gSyH!PeO%B_$m3=AA_3ST|MctF)>j~NId1=_fG}1W9B-izP zq@!*vi6|~9*0a+cHe$lM7>2W1a^JA(7VGy`JjdFFoK0oWd&^{;c^OmX?vqcrZp)hD z&aEw6tZur!V+7l~V_A|RvZxp!#%Z^r%;CHeQpOM8I?8r1$K$C?sR}62$8nd0dd8L* zdCS+?3VHXyrx)+F0-G9XI>~Hw{fiBkMOjVT?jjzq8AcMn)ySdu326mhReZFMBehI= z{BNV>iu*3PYcX*4qKKsu{k)wEDzy&f6dff*SpNFFa0%_lZ;P{5?jsxC;meW5UYfKn zxTjx!*C<{=SqN=klpwO^GSzsF4Tpp^Fkz>C9KhZeG*N zXs=-t7UOPR>Fbf95=5K!&Y*Xm@%R~!@ob;!!ufFJJxh(PJC zVvv*kgp}XmU&5#O-l)%=nHKQ1uRnhJ1c|D`QB>;*5oRughhpp+kYz{n16) zVjtwv7or2)u8z#-BpciAi%fU1 z=I3>il|>jc(dg$J^V{Btw>$Oh1eQ zPJC*JW#;e0xgXQxOa6k1=H7Z86aND(C9oYHiV;t|v6;#*JPB9a_B8Vg=v=0JH}VTD zX4$^wB+B}Eg+a?bsbbjW6}IlSA>Vn%ko||BT@i1$USSly#{JH#amG;Q<((Dgt0FRYZQxrk?m5~JmqgC--;FP0 zMR>ftGLf^()%Ha#lln{1WKwJ-+5U8Y2${sCSJ097vQo@?GyO*~^2#Wy76RB`ET@bv z<`&1RSCccg(7fHLAGYO}Q9dKj70XpDf?PkWFrXAY58X0z;qEpjor+Ddhv5-DVM6im z6%|#ty%XU%bmeE%X6INKVN7Gk@_h6OdpxN7Uf8n+sIyoi$s6!dz2b0teCTnrf_LsD zYiTGGi@eAk>;D_B{r!sof70&%g3vP9MU{_!Y>r*mDKY_MRo;s8=J=z$I`;v-di2~G zXxJ&`R{*~add&N8iZhCONg8{n7c>{@ZAT8p{j2Vyfud#=l@HlZ+6lOiRy3J80gPT8 zc%iE8YQiJCafdq5aTlPu7(h>Eh2D$+C@*l4`U%;38XEQ(5VK9#RsogZbX#r=z)E-$ z8UVrd(vZC9>zwNc8=XrO?xgPQy*$}rvY7Ad9JDy+V}Ok+^vuEl#U4IBFiWESQTYw9 zjXp9cE85!VW;MRDM0|8ZJa7_XuguVj-sRM~2GkiwXZz-oI?7}_XJN)bheL(ZaJ)E5 zEg>Y~xu}8FuZ>|X(yw^0TjCR`=ws)^#~GG^H@D*KCZS8#bsk&f*z;i*2r-l8oLZ+L z%M!O5+$>?u46V|{URlxC3|q|)b5y+(6;|fg{jYuQv+eqP=CLVR70>{c+0TiMPhE(w z9&AIVh%I4o;fW6Vvt7taWdl!a4Cd{FI=0QBom=|y@Hp{wgQ^IL3d)hg+0r}>IWG?J zxNBZ*^;w}~2X-L)6C13n# zjP#yvg%(uM?of2K)*tJg_bosBUR=E)jebf!i^|KTY^BqN6bXFDu^RKAc)-;J#E}JkKgdoU7*v;ASC>ADpsChNu4Dj`^p*lK#;5fmi(ca;%{@?-)0@eKjiT^0txR z?5oCBe#?kdT-b=Ku5Yg2A;LX;rrzHpd}da1IPWvZtF0T0S;5kVFWj - + - Common Problems/Tips + Troubleshooting diff --git a/resources/index.html b/resources/index.html index e144ec45..1e6c2560 100644 --- a/resources/index.html +++ b/resources/index.html @@ -782,11 +782,11 @@

  • - + - Common Problems/Tips + Troubleshooting diff --git a/search/search_index.json b/search/search_index.json index 4c2ed459..21fbcbcd 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Home","text":"

    A compendium of information and guides about arcade games. By the community, for the community.

    Join our Discord server!

    There are troubleshooting sections available if you need direct help!

    This site is by no means all-encompassing

    We're only a group of volunteers aiming to bring you the most up-to-date information.

    But we're only humans, we make mistakes, and therefore:

    • Please use a certain degree of caution while manipulating your game files and make backups.
    • Don't tamper with things if you don't know what you're doing.

    If you can do that, these guides will probably be of use to you. If not, don't tell us we didn't warn you!

    How to use the site?

    On the left side is a navigation bar containing every guide:

    • Games category for game-specific guides on how to setup data, troubleshoot issues, etc..
    • Error Codes for a listing of known errors and what to do about them.
    • Game Patching category for ways to patch/modify your game.
    • Extras for anything that doesn't fit in the above categories.
    • Other Resources for links to useful sites such as patchers, external guides, etc..

    Do you want to help us out?

    Please check out our GitHub Repo by clicking the link at the top of right of the page. Information on how to contribute is available there.

    "},{"location":"resources/","title":"Other Resources","text":""},{"location":"resources/#spice2x-patchers","title":"Spice2x Patchers","text":"

    See Spice2x Patching.

    • TWO-TORIAL - https://sp2x.two-torial.xyz/ - Our open-source patcher for Spice2x compatible games.
    • DJTrackers - https://djtrackers.com/bemanipatcher/2x - Recommended for anything we don't yet support. Our IIDX patches are based off of theirs for the most part.
    "},{"location":"resources/#web-patchers","title":"Web Patchers","text":"

    See Web Patching.

    • TWO-TORIAL - Our open-source web patcher (based on mon's) for games incompatible with Spice2x. Also integrates Scribbler's patches for chunithm.
    • mon's - The longest lasting web patcher, supports a variety of n-1 and older games.
    • Scribbler's Chuni Only Patcher - Has every version of Chunithm available.
    "},{"location":"resources/#general","title":"General","text":"
    • Spice2x Wiki - The best resource for Spice2x
    • Bemaniwiki - A bemani wiki written in japanese
    • RemyWiki - Bemani arcade games wiki with lots of useful info
    • SilentBlue - By RemyWiki's creators, but for SEGA games
    "},{"location":"resources/#cons-cabs","title":"Cons & Cabs","text":"
    • GameRepair.info - Repository of arcade part repair & misc information
    • Cons&Stuff - Community resource for DIY controllers
    • Rhythm Game Cabs - Discord server for arcade cabs
    "},{"location":"resources/#iidx","title":"IIDX","text":"
    • iidx.org - The go to guide for mechanics and skill related things
    • sp12 - IIDX SP\u260612 reference site/difficulty tier list
    • iidx.insane.pe.kr - IIDX difficulty tier list
    • Statistik - IIDX difficulty tier list
    • atwiki - IIDX wiki in JP (includes tier lists)
    • textage.cc - Chart viewing resource
    • DJ DAO IIDX troubleshooting guide - Step-by-step guide for FPS, FP7, PEE, RES, RED controllers.
    "},{"location":"resources/#sdvx","title":"SDVX","text":"
    • SDVX Index - SDVX chart viewer and reference
    • sdvx.in - worse alternative to SDVX Index (but can be used for Chunithm and Ongeki too)
    • SDVX Progress Chart - Functions as a generalized tier list
    • SDVX Unlock Guide - Translated guide for unlocks
    "},{"location":"resources/#gitadora","title":"GITADORA","text":"
    • 573Controller - DIY guitar solution for converting official cab guitars to USB home-use
    • Drummania English Menu Translation - Handy for beginners, lots of options!
    "},{"location":"resources/#chunithm","title":"CHUNITHM","text":"
    • sdvx.in - Chart viewer for CHUNITHM
    • CHUNITHM Humen - Screen captures of all CHUNITHM charts
    • Codex's English Chunithm Guide - Handy CHUNITHM resource for players of all skill levels
    "},{"location":"errorcodes/bemani/","title":"BEMANI Error Codes","text":"

    Before reading

    This section contains various gamecode errors that a user may run across. There is an innumerable amount of these and I sometimes wonder if it's truly possible to have them all listed. Nonetheless, dozens, if not hundreds are currently missing. This list is a massive work in progress and will be updated with time.

    Furthermore, not every solution listed can be the definitive solution to your error, sometimes various odd software and hardware nuances occur to create yet unseen issues.

    "},{"location":"errorcodes/bemani/#universal-error-codes","title":"Universal Error Codes","text":""},{"location":"errorcodes/bemani/#5-0000-0000","title":"5-0000-0000","text":"

    This error can appear across any game, it's a generic critical error with several possible solutions.

    It is usually caused by network adapters that are enabled, other than the primary one used for network service. Try to disable some network adapters in Windows Device Manager, including hidden adapters.

    It can also be caused by game files being set to read only, especially the dev folder. Uncheck read only property in file explorer for all game files.

    "},{"location":"errorcodes/bemani/#5-2000-0000","title":"5-2000-0000","text":"

    This error can appear across any game, it's a standard network error with several possible solutions.

    First, make sure you have correctly entered your network service's URL properly with the -url parameter, that your internet connection is fine, and that the service is not down. Also make sure you have correctly entered your PCBID with the -p parameter.

    One other thing to check is that the data is supported by the service, and that the datecode used by the game is not invalid. Don't modify things if you don't need to! If the data is from a clean, trusted source, then this is extremely unlikely to be the cause.

    "},{"location":"errorcodes/bemani/#5-2002-0915","title":"5-2002-0915","text":"

    This error can appear across any game, it's a standard network error with several possible solutions.

    First, make sure you have correctly entered your network service's URL properly with the -url parameter, that your internet connection is fine, and that the service is not down. Also make sure you have correctly entered your PCBID with the -p parameter.

    One other thing to check is that the data is supported by the service, and that the datecode used by the game is not invalid. Don't modify things if you don't need to! If the data is from a clean, trusted source, then this is extremely unlikely to be the cause.

    "},{"location":"errorcodes/bemani/#5-2600-0000","title":"5-2600-0000","text":"

    This error can appear across any game, it's a standard network error with several possible solutions.

    First, make sure you have correctly entered your network service's URL properly with the -url parameter, that your internet connection is fine, and that the service is not down. Also make sure you have correctly entered your PCBID with the -p parameter.

    One other thing to check is that the data is supported by the service, and that the datecode used by the game is not invalid. Don't modify things if you don't need to! If the data is from a clean, trusted source, then this is extremely unlikely to be the cause.

    "},{"location":"errorcodes/bemani/#iidx-error-codes","title":"IIDX Error Codes","text":""},{"location":"errorcodes/bemani/#5-1500-0002","title":"5-1500-0002","text":"

    SOUND DATA CREATE ERROR

    This error occured from a corrupted installation. If your data came from a trusted source and you're having this issue, consider redownloading the files and making sure your installation was done properly. Or, perhaps your hard drive is failing.

    "},{"location":"errorcodes/bemani/#5-1503-0004","title":"5-1503-0004","text":"

    USBIO ERROR (NO ANSWER...)

    This error occurs when the game times out trying to communicate with the I/O board.

    When using tools, this typically happens because I/O emulation in tools takes too long, which can be caused by long-running background services on your computer. Usual offenders are: file-syncing software (GDrive, OneDrive, back up service, etc), anti-virus / malware scans, Windows Updates, or possibly bad hardware. Try to see if you can run tools at elevated process priority (SpiceTools already does this, but you can also try -realtime as last resort).

    On a real cabinet this would typically be a hardware error with the I/O board. Check cable connection and the power supply to the I/O board.

    "},{"location":"errorcodes/bemani/#5-1505-0001","title":"5-1505-0001","text":"

    SSD DATA ERROR

    This error occurs when the data is horribly corrupt, incomplete, or modified incorrectly. Please redownload your data from a reliable source.

    "},{"location":"errorcodes/bemani/#5-1503-0042","title":"5-1503-0042","text":"

    CAMERA DEVICE ERROR

    This error occurs when camera devices are missing/not functional. To resolve either have two cameras connected to your machine or apply a patch for your game's specific version and date code to simply not have this error occur on startup. It can be bypassed by hitting the Test button so it is not a critical error.

    "},{"location":"errorcodes/bemani/#5-1506-0001","title":"5-1506-0001","text":"

    CLOCK ERROR

    This error occurs when the clock is not set. To resolve, set the CLOCK in the service menu by hitting SAVE AND EXIT inside of the menu.

    "},{"location":"errorcodes/bemani/#sound-voltex-error-codes","title":"Sound Voltex Error Codes","text":""},{"location":"errorcodes/bemani/#5-1506-0000","title":"5-1506-0000","text":"

    ACIO ERROR

    A user had this error when they downloaded the game from an unreliable source, they redownloaded libacio.dll from a clean, trusted source and had no issues. If the error persists, consider redownloading the data from a reliable source entirely.

    "},{"location":"errorcodes/bemani/#5-2009-0000","title":"5-2009-0000","text":"

    This error was seen on Sound Voltex Booth, a user had messed up their dll files. Thus, the solution would be to leave files unmodified and do not needlessly tamper. If your data came from a trusted source and you're having this issue, consider redownloading the files and making sure your installation was done properly.

    "},{"location":"errorcodes/bemani/#popn-error-codes","title":"Pop'n Error Codes","text":""},{"location":"errorcodes/bemani/#5-1509-0000","title":"5-1509-0000","text":"

    A user experienced this error every few minutes or so during play. If this issue occurs, make sure you have correctly inputted your chosen network's service URL and your PCBID correctly.

    "},{"location":"errorcodes/bemani/#5-2002-2400","title":"5-2002-2400","text":"

    This error was seen on Pop'n Usaneko due to improper setup and bad parameter usage in SpiceTools, make sure to follow the first time setup and utilize the -url and -p parameters in SpiceTools so that you're not needlessly risking making mistakes in modifying the game's files.

    "},{"location":"errorcodes/bemani/#jubeat-error-codes","title":"Jubeat Error Codes","text":""},{"location":"errorcodes/bemani/#5-2500-0000","title":"5-2500-0000","text":"

    BACKUP DATA ERROR

    Follow the steps listed here

    "},{"location":"errorcodes/bemani/#gitadora-error-codes","title":"GITADORA Error Codes","text":""},{"location":"errorcodes/bemani/#5-1698-0000","title":"5-1698-0000","text":"

    This was seen in GITADORA Tri-Boost Re:EVOLVE. To resolve, uncheck the Read Only attribute on the following contents folders.

    - \\contents\\data\\product\\aep_x64\\\n- \\contents\\data\\product\\aep\\\n

    Also, remove the following files from these folders.

    - battle_matching_3.bin\n- beargarden_3.bin\n- common_3.bin\n- custom_3.bin\n- entry_3.bin\n- game_combo_3.bin\n- game_common_3.bin\n- game_dm_3.bin\n- game_gf_3.bin\n- game_session.bin\n- home.bin\n- mission_result.bin\n- record_3.bin\n- select_music_3.bin\n- tab_3.bin\n- title_3.bin\n- warning_3.bin\n
    "},{"location":"errorcodes/bemani/#5-1506-0000_1","title":"5-1506-0000","text":"

    Disable all the unused network adapters inside device manager (make sure to view the hidden ones as well and disable those too!)

    "},{"location":"errorcodes/bemani/#5-2500-0001","title":"5-2500-0001","text":"

    BACKUP DATA ERROR

    Follow the steps listed here

    "},{"location":"errorcodes/bemani/#5-2501-0000","title":"5-2501-0000","text":"

    The Group ID Error is caused when it finds another cab of the same kind (GF or DM) with the same Group ID on the network. In most cases for users, this means the computer is connected to BOTH Ethernet and Wi-fi so the game sees 2 instances of itself. Thus to resolve, make sure you do not have 2 devices on the same subnet like this by checking your connections accordingly.

    "},{"location":"errorcodes/bemani/#nostalgia-error-codes","title":"NOSTALGIA Error Codes","text":""},{"location":"errorcodes/bemani/#5-1501-0000","title":"5-1501-0000","text":"

    This error was seen in NOSTALGIA Op. 2 when a user had a bad AVS config, make sure your data is from a reliable source and consider redownloading or replacing the file.

    "},{"location":"errorcodes/sega/","title":"SEGA Error Codes","text":"

    Before reading

    This section contains various gamecode errors that a user may run across. There is an innumerable amount of these and I sometimes wonder if it's truly possible to have them all listed. Nonetheless, dozens, if not hundreds are currently missing. This list is a massive work in progress and will be updated with time.

    Furthermore, not every solution listed can be the definitive solution to your error, sometimes various odd software and hardware nuances occur to create yet unseen issues.

    "},{"location":"errorcodes/sega/#universal-game-error-codes","title":"Universal Game Error Codes","text":""},{"location":"errorcodes/sega/#0000","title":"0000","text":"

    Unexpected Error Occured

    This error occurs when the data is horribly corrupt, incomplete, or modified incorrectly. Please redownload your data from a reliable source.

    "},{"location":"errorcodes/sega/#0032","title":"0032","text":"

    Unexpected Error Occured

    Generic network error with multiple symptoms, the most typical of which being enabling DHCP in Windows while the game expects a static IP. Try adding this to config_hook.json:

    {\n    \"network\": {\n        \"property\": {\n            \"dhcp\": true\n        }\n    }\n}\n

    Tip

    If you're copying into an existing config_hook.json, remove the outer braces and add a comma to the previous item, like so:

    {\n    \"emoney\": {\n        \"enable\": false\n    },// (1)!\n    \"network\": {\n        \"property\": {\n            \"dhcp\": true\n        }\n    }\n}\n
    1. Notice the comma here.

    Tip

    If your game files does not include config_hook.json, it is OK to create a new file, then edit the launch script (usually start.bat) to tell the game about it:

    amdaemon.exe -f -c config_common.json config_server.json config_client.json config_hook.json\n
    "},{"location":"errorcodes/sega/#0800","title":"0800","text":"

    Unknown Error

    Generic network error usually thrown because the game is not able to connect to a server.

    Make sure that you have correctly entered your network's address in segatools.ini under the [dns] section:

    [dns]\n; Can also be an IP address:\n; default=192.168.34.23\ndefault=example.com\n

    "},{"location":"errorcodes/sega/#0919","title":"0919","text":"

    DVD Drive Remain Error

    This error occurs if the game detects an enabled DVD drive on the system. To resolve, either disable your computer's DVD drive, or enable DVD drive emulation in segatools.ini:

    [dvd]\nenable=1\n
    "},{"location":"errorcodes/sega/#0949","title":"0949","text":"

    Keychip Not Found

    Enable keychip emulation in segatools.ini:

    [keychip]\nenable=1\n

    If on a real cabinet using a real keychip, confirm that the keychip is connected properly and working.

    "},{"location":"errorcodes/sega/#4104","title":"4104","text":"

    Unexpected Error Occured

    Make sure that the game files are not on the E: or Y: drive. If that is already the case, check if the config files passed to AM Daemon exists and are valid JSON files:

    Runtime exception occurred.\nFile: D:\\Jenkins\\workspace\\amdaemon_all_build\\libs\\amdproc\\src\\ConfigFileLoader.cpp\nLine: 79\nFunction: enum amdaemon::process::ConfigFileLoader::Result __cdecl `anonymous-namespace'::parse(const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,class picojson::value &)\nMessage: Cannot open \"config_nonexistent.json\".\n
    Runtime exception occurred.\nFile: D:\\Jenkins\\workspace\\amdaemon_all_build\\libs\\amdproc\\src\\ConfigFileLoader.cpp\nLine: 89\nFunction: enum amdaemon::process::ConfigFileLoader::Result __cdecl `anonymous-namespace'::parse(const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,class picojson::value &)\nMessage: Cannot parse \".\\config_hook.json\".\nsyntax error at line 6 near: }\n
    "},{"location":"errorcodes/sega/#4105","title":"4105","text":"

    Unexpected Error Occured

    Check the AM Daemon window for any \"runtime exception\" messages, such as

    amsGfetcherThreadContextInit: Line1345  Error: load Icf failed.\nRuntime exception occurred.\nFile: D:\\Jenkins\\workspace\\amdaemon_all_build\\libs\\libamw\\src\\amw_netdeliver_context.cpp\nLine: 91\nFunction: enum am::util::ModuleContext<3>::Status __cdecl am::netdeliver::Context::initialize(void)\nMessage: amGfetcherInit(). ErrCode -1.\n

    Then continue by checking AMDaemon error codes.

    "},{"location":"errorcodes/sega/#6401","title":"6401","text":"

    I/O board is not connected to main board

    This error occurs when the game times out trying to communicate with the I/O board.

    When using segatools, this happens because I/O emulation took too long, which is usually caused by long-running background tasks (e.g. Windows Defender, Windows Update, file-syncing software). Try to see if this can be fixed by setting the game process and/or amdaemon.exe to high/realtime priority.

    "},{"location":"errorcodes/sega/#6501","title":"6501","text":"

    Aime Card Reader Not Found

    This error occurs when an Aime card reader is not found. Make sure you enabled Aime card reader emulation in segatools.ini if you don't have a physical reader connected:

    [aime]\nenable=1\n
    "},{"location":"errorcodes/sega/#6503","title":"6503","text":"

    Failed to read Aime card

    This error occurs when the Aime card cannot be read. Make sure your connection to the ALL.Net server is good (the network icon in the bottom corner is green).

    "},{"location":"errorcodes/sega/#8114","title":"8114","text":"

    ALL.Net System error (RTC)

    Make sure you're connected to an ALL.Net server for the first boot, or disable accounting by editing config_hook.json:

    {\n    \"allnet_accounting\": {\n        \"enable\": false\n    }\n}\n

    Tip

    If you're copying into an existing config_hook.json, remove the outer braces and add a comma to the previous item, like so:

    {\n    \"emoney\": {\n        \"enable\": false\n    },// (1)!\n    \"allnet_accounting\": {\n        \"enable\": false\n    }\n}\n
    1. Notice the comma here.

    Tip

    If your game files does not include config_hook.json, it is OK to create a new file, then edit the launch script (usually start.bat) to tell the game about it:

    amdaemon.exe -f -c config_common.json config_server.json config_client.json config_hook.json\n
    "},{"location":"errorcodes/sega/#chunithm-error-codes","title":"CHUNITHM Error Codes","text":""},{"location":"errorcodes/sega/#3101","title":"3101","text":"

    An unexpected error has occurred with the main device

    This error occurs when the game fails to communicate with the controller. Check if your controller is connected properly and if ChuniIO DLLs are working.

    "},{"location":"errorcodes/sega/#3102","title":"3102","text":"

    Initialization failure with the main device

    This error occurs when the game fails to communicate with the controller. Check if your controller is connected properly and if IO DLLs are working.

    "},{"location":"errorcodes/sega/#3201-3202-3203-3204-3205-3206","title":"3201, 3202, 3203, 3204, 3205, 3206","text":"

    Cannot confirm the connection with the side device sensor 1/2/3/4/5/6

    This error occurs if the air sensors are not functional or blocked during system test. To resolve this, enter and exit Test mode by pressing the F1 key (or 1 on older segatools) then stay clear of your controller. If the error still happens, your air sensors may be faulty.

    "},{"location":"errorcodes/sega/#3300","title":"3300","text":"

    Duplicate servers in the same network

    If multiple CHUNITHM machines are on the same LAN network, only one of them can be the server (dip switch 1 ON). Set all other machines to dip switch 1 OFF:

    [gpio]\ndipsw1=0\n
    "},{"location":"errorcodes/sega/#3301","title":"3301","text":"

    Duplicate STANDARD in the same group

    If multiple CHUNITHM machines are on the same LAN network and cabinet group (A/B/C/D), one of them should set reference machine settings to STANDARD and the rest to FOLLOW THE STANDARD. Change this by going to Test menu -> Game Settings (4th option) -> Reference machine settings (2nd option).

    "},{"location":"errorcodes/sega/#3400","title":"3400","text":"

    Monitor Not Supported 120fps

    This error occurs if you're running the game in SP mode but the monitor is not 1920x1080@120Hz in 32-bit color mode. Adjust display settings and try again.

    "},{"location":"errorcodes/sega/#3401","title":"3401","text":"

    Machine Not Supported 120fps

    This error occurs if you're running the game in CVT mode at 120fps. Use SP mode (dip switch 3 OFF) to run the game in 120fps. In segatools.ini this would be:

    [gpio]\ndipsw3=0\n
    "},{"location":"errorcodes/sega/#amdaemon-error-codes","title":"AMDaemon Error Codes","text":""},{"location":"errorcodes/sega/#ampdgd1232a01ainit-errcode-4","title":"ampdGd1232a01aInit(). ErrCode -4","text":"

    This error occurs because of a VFD port number mismatch. Update segatools, or if you're using a real VFD, confirm that the VFD uses the same port as specified in config_common.json or config_sp.json (CHUNITHM) under emoney.display_port:

    \"emoney\" :\n{        \n    \"display_port\" : 2 // (1)!\n}\n
    1. This should match the COM port that your real VFD is connected to.
    "},{"location":"errorcodes/sega/#amappimageinit-errcode-5","title":"amAppImageInit(). ErrCode -5","text":"

    Path to the configured AMFS directory is too long. Ensure that the path is shorter than 16 characters (32 bytes).

    "},{"location":"errorcodes/sega/#regcreatekeyexw-errorcode-5","title":"RegCreateKeyExW(). ErrorCode -5","text":"

    This error occurs because the Windows registry cannot be written to as a normal user. Start the game as administrator once, or update segatools.

    "},{"location":"errorcodes/sega/#amsysfileinitex-errcode-5","title":"amSysFileInitEx(). ErrCode -5","text":"

    The AMFS folder is read only. Uncheck the read only property in File Explorer for the AMFS folder.

    "},{"location":"errorcodes/sega/#amgfetcherinit-errcode-1","title":"amGfetcherInit(). ErrCode -1","text":"

    ICF1 is missing in the configured AMFS directory. Get the correct ICF for your game (the game ID in the ICF must be correct).

    "},{"location":"extras/ascs/","title":"Notes on the Most Common ASCs and Vendors","text":"

    Before proceeding, please read:

    This section is a compilation of several of the most popular ASCs (arcade-style controllers) along with their respective vendors. Alongside this, this guide includes any aspects worth noting from usage over the years to help potential buyers make an educated purchase. For the most part, this section aims to inform buyers more of negatives and problems above all else, so expect the focus to be more negative as it's important to note all the potential problems one may come across with ownership over the years.

    Lastly, certain bits will repeat across controller categories. Please treat each controller's section as its own individual list of noteworthy elements.

    "},{"location":"extras/ascs/#iidx","title":"IIDX","text":""},{"location":"extras/ascs/#dj-dao-fp7-emp","title":"DJ DAO FP7 EMP","text":"

    This controller works really well, the spacing is accurate to the arcade between buttons and the turntable, obviously the turntable size is reduced which is often noticed as a minor nuisance to players that play both at home and on cabs.

    One minor aspect that's appreciated are the feet of the controller, which hold up really well on all kinds of surfaces with a stable grip, alongside the fairly hefty weight of the controller it's rather unlikely it's going to budge even a little bit during play.

    This controller is not without fault though, one of the first things to go is the turntable sticker in the middle, it starts to peel pretty much instantly for several people. While some people have kept it on despite the peeling, some have ended up scratching their pinky fairly significantly on it, so it's worth considering its removal or finding a better adhesive.

    The rubberized turntable grip itself is also susceptible to peeling, but it's far more reliable, perhaps miscare or improper installations from Dao lead to problems sooner, but for many it will last several years without a problem.

    Another concern is in only in having a START and EFFECT at the top of the controller. IIDX utilizes 3 buttons in menu navigation, namely START, EFFECT, and VEFX so the limited option is a bit troublesome. However, the solution to this problem DJ DAO utilizes is the ability for the EFFECT button to take multiple inputs as separate bindings. To simplify this further, enabling this option allows single, double, and triple taps of the EFFECT button in rapid succession to be 3 different bindings, alleviating the need for another button.

    Unfortunately though, this does add latency to the button, it also doesn't feel too natural, and many owners use more responsive custom firmware over DJ DAO's firmware that, at the time of writing, doesn't support this multiselect feature anyways, meaning the problem is still present. Many users choose to upgrade from the default USB board to a custom one (Arduino, Arcin) since the button lights can't be controlled via software and it's only polling at the default 250hz. Of course that also means you can't use the original board's PS2 connector anymore.

    One thing to note with the rubberized turntable grip, this controller gets gross. Dead skin will build up around the edges of the turntable itself on the metal and along the edges of the rubber grip. Regular cleaning is required.

    All in all, this controller has a few minor problems but is often regarded as the best balance between price and performance, as it matches arcade play at a great price.

    "},{"location":"extras/ascs/#phoenixwan","title":"PHOENIXWAN","text":"

    The Phoenixwan, sometimes jokingly referred to as the wang, or phoenixwang, is a rather odd controller. It fills a niche that wasn't needed (Gamo2's site was already selling 6 different IIDX controllers) but still manages to be the smallest full-sized beatmania controller offered on the site.

    As expected, the spacing between the buttons and turntable is arcade accurate, and the turntable is full sized unlike the FP7. Moreover, 4 buttons are present for menu navigation this time around.

    The controller is also very flashy, with a customizable turntable LED that emits 16 million different colors, turntable sensitivity adjustment, and an audio light mode that tries its best to \"dance with the music\" in fanciful fashion, it's a neat gimmick. Lastly for maximum portability, this controller is very light and even features wire storage at the bottom.

    However, with the flashy style this controller brings it unfortunately takes a few steps backwards in other areas. One of the most perplexing areas are the feet, there's no other way to put it, some surfaces it's great and some it sucks. With the reduced weight, this controller will slide across some surfaces with ease leading to a really unpleasant experience. It would not be surprising if with improper play that the controller could be moved very easily by accident.

    Onto one of the more defining features though, the turntable grip. Gamo2's site says it's made of liquid silicone and space aluminum. The grip is fantastic, it's incredibly grippy and a lot of fun to stop on a dime back and forth on your hand. But this material doesn't come without some faults unfortunately, it gets turned into a fingerprint magnet right out of the box, and some users have reported the grip wears off and becomes flat after heavy usage. One could also argue that making a controller trying to replicate an arcade experience (hence arcade-style) that it's a bit backwards to deviate away from the arcade experience as well, but that's more semantics than anything.

    Lastly and most critically, a fair batch of buyers reported PCB problems where the board seemed to flat out die after just a few months. Apparently a firmware update can be pushed to work around some issues, but there's not much that's definitive as a solution in regards to this issue at the time of writing.

    Overall, the Phoenixwan is probably the best option in terms of portability and style, it's a very flashy device and great to take over to a friend's for some fun. But, with it comes a heftier price tag that might not be worth it for people looking to simply enjoy the game. With some critical issues, this controller might just be style over substance.

    "},{"location":"extras/ascs/#yuancon-iidx","title":"YuanCon IIDX","text":"

    YuanCon's IIDX controller looks rather plain, doesn't it? But the controller works really well, the spacing is of course accurate to arcade, and the turntable is full size as well. Obviously, it features 4 buttons for menu navigation too, which is incredibly convenient.

    The cost is very reasonable too, by default it comes with dubious microswitches labeled \"Chinese\" on the site, it's important to note that if a buyer upgrades to Omron switches on the site, it's a bit cheaper than buying Omrons separately later down the line. The \"Chinese\" switches are definitely not recommended and feel bad.

    This controller oddly uses an acrylic turntable as well, while it's a nice attempt it's somewhat disappointing overall. At the very least, it's fairly easy to modify the turntable and place something more proper such as an EMP mat on it for a better experience. Just note that the screws are not countersunk around the center of the turntable.

    Some people may be dissatisfied that the turntable has no lights too, an obvious cost cutting decision.

    The default buttons are typical cheap Chinese ones, these risk occasionally getting stuck around the enclosure's corners but it's less common than Chinese buttons for use on other games such as Pop'n and some users don't end up with any problems at all. Depending on a buyer's level of tolerance they may find these buttons fine or desperately yearn for an upgrade.

    One big positive for many is the detachable USB cable, it uses just one USB port which is quite handy. This comes at some costs though. The biggest issue is the lack of PS2 support, the lights are also dimmer than Dao's offerings which utilize 2 USB ports.

    Yuan's IIDX attempt is solid, but it's not without fault. Regardless, just about any buyer would be more than satisfied playing and enjoying the game on this controller regardless of the few minor faults it has.

    "},{"location":"extras/ascs/#iidx-arcade-parts-to-consider","title":"IIDX Arcade Parts to Consider","text":"

    IIDX controllers have a lot of options to choose from and it can be daunting, especially if you've never played before. I'll try to cover springs, microswitches, and buttons to the best of my ability.

    I've also documented many of the parts that I talk about and where to buy them here

    • Buttons/Keys

      The most commonly used buttons are Sanwa, Gersung, and DJ DAO/Yuan Chinese buttons.

      I can't really speak for every arcade in Japan, but both in Japan and US almost all arcades use Sanwa buttons. The Samduck buttons are a Korean variant that can be found in Korean arcades, but are still superceded by Sanwa buttons. The DJ Dao/Yuancon buttons are cheap Chinese clones that feel less satisfying both in physical feedback and audio feedback. Some players find them servicable, but I ultimately recommend upgrading when possible. The travel distance is different on Dao buttons for example due to the inaccurate construction having a different height than official parts like Sanwa, so the feeling will be significantly different in using them.

    • Microswitches and Springs

      If you buy the keys sepearately it's worth noting what spring and microswitch setups they come with:

      • Sanwa keys come with 100g springs and 100g Omron switches.
      • Samduck keys come with 20g springs and 65g Gersung switches.
      • DJ DAO keys come with 40g springs and 20g Honeywell switches.

      There are also many other cheap Chinese variants that I won't bother listing because I insist you do not play on them. Please stick to Omron or Gersung microswitches for an enjoyable play experience! The Honeywell microswitches for example are an incredibly cheap feeling switch that often breaks easily.

      With this in mind, the most common switch and spring setups are 50g/20g, 50g/60g, and 50g/100g setups (microswitch listed first, then springs in this case). However, you will find arcades around the world using a myriad of setups.

      By default for a new or inexperienced player, I would recommend a 50g/60g setup as it's a safe setup that won't require frequent maintenance, has a nice weighted feeling that will help build stamina, and isn't too light for charts with heavy amounts of jacks. That said, it ultimately comes down to user preference, with lighter setups running the risk of more maintenance, but being easier on one's hands especially for dense charts, and heavier setups being more sturdy, but easily tiring out one's hands, 100g/100g for example however, is too extreme for the grand majority of players and simply exhausting and painful to play on.

      One thing worth noting is many tournaments in Japan have utilized a 25g/60g setup as well, with the heavy springs being beneficial for jacks, just as one example.

      Your springs will also naturally lose resistance over time, so if you played at an arcade with a heavily worn setup I'm sure you'll find it feels very different to your brand new home setup even if you have the same weight ratings.

      Experimentation is strongly recommended regardless as you become a more developed and experienced player. If you love the game, don't be afraid of traveling to try out different setups or dropping some more cash on parts to experiment.

    "},{"location":"extras/ascs/#sound-voltex","title":"Sound Voltex","text":""},{"location":"extras/ascs/#dj-dao-svse5","title":"DJ DAO SVSE5","text":"

    The SVSE5 is a pretty straightforward controller without much to worry about, the sizing is very compact while retaining proper arcade spacing between the knobs and buttons at a very reasonable price, most of the gripes with this controller will come based on what parts are used. It uses the same firmware/board as the SVRE9 and also lacks HID-controlled lights.

    Dao's SDVX buttons are especially prone to sticking and getting stuck under their holders, notably more than their IIDX counterparts. Thankfully, this problem can be alleviated by sanding down the corners of the buttons but they still obviously do not feel as nice as Sanwa buttons and it requires taking apart the controller, which while simple, is a minor inconvenience.

    The default encoders (listed as Knobs Structure on the site) are horrendous, there's no nice way to put it. Please avoid these at all costs if you wish to enjoy the game or upgrade to Copals ASAP. But, it's worth noting that paying the upgrade cost when buying your controller ($30 at the time of writing) is cheaper than buying a set of Copal encoders separately (around $60+).

    Dao's SVSE5 is honestly somewhat odd to write on solely because there's not much to say, it's about as standard as it gets. The SVSE5 functions well and when avoiding the default encoders buyers will end up with a controller that's able to be enjoyed just as well as any other with minimal problems.

    "},{"location":"extras/ascs/#yuancon-sdvx","title":"YuanCon SDVX","text":"

    YuanCon's SDVX controller has quickly become the most popular option for Sound Voltex players and is inarguably their best controller yet. The controller feels great in your hands thanks to its light weight and good sizing. Like the SVSE5, it matches arcade dimensions perfectly as well, so anyone can transfer their skills from home to the arcade 1 to 1. One other noteworthy convenience is the detachable USB cable, making transportation and storage a little more enjoyable.

    One of aspects people comment on a fair bit is the metal casing, after years of Dao's tacky glossy acrylic designs a lot of buyers have welcomed this addition with open arms. Yuan's SDVX controller is as durable and sturdy as any other out there.

    Yuan's stock SDVX buttons suffer the same problems as Dao's and are especially prone to sticking and getting stuck under their holders. While some people don't end up with any issues at all, others do, it's a mixed bag presumably based on luck on how the plastic mold came out. Thankfully, this problem can be alleviated by sanding down the corners of the buttons but they still obviously do not feel as nice as Sanwa buttons and it requires taking apart the controller, which while simple, is a minor inconvenience.

    The stock encoders on this controller are interesting to note too, they're a surprisingly decent option to use, they feel very smooth and function well during play, but it's worth noting not everyone likes how they feel. Of course they don't feel like the arcade experience, but they're more than suitable for enjoyment.

    Overall, YuanCon's SDVX is a very enticing option for many, it's a great controller with minimal issues. There's little negative outside of some minor gripes to say, and at this price range, buyers would be hard pressed to find a controller that's definitively superior.

    "},{"location":"extras/ascs/#dj-dao-svre9","title":"DJ DAO SVRE9","text":"

    The crown jewel for many Sound Voltex players, the SVRE9 is designed to match the dimensions of an arcade cab as best as possible, providing both maximum luxury and performance. This controller includes arcade knobs out of the box, offering no alternative and is no doubt a part of the heftier price tag.

    This controller is a monster, both in size and weight, it is probably one of the most inconvenient Sound Voltex controllers to transport but even still it's not honestly not that bad, make sure you have enough space to safely place the controller on any surface before playing. One positive about the greater size and weight is that there's almost no risk of it moving around when accidentally bumped.

    Dao uses a custom harness for the arcade knobs to connect with the encoders, it's an odd contraption but it works well enough. However, it is worth noting that the encoders themselves have a plastic shaft, if tightening the inner screws holding them in place make sure to not tighten them too much as the screws will end up actually drilling into the plastic and destroying the encoder beyond repair.

    The knobs unfortunately risk shipping damage wherein the knob will have a grinding feeling when being rotated, it's extremely unpleasant but thankfully solution is simple, it requires lubricating the inner parts of the knobs by taking apart a bit of the controller, a minor inconvenience.

    Dao's SDVX buttons are especially prone to sticking and getting stuck under their holders, notably more than their IIDX counterparts. Thankfully, this problem can be alleviated by sanding down the corners of the buttons but they still obviously do not feel as nice as Sanwa buttons and it requires taking apart the controller, which while simple, is a minor inconvenience. One could argue that in choosing to purchase a luxury product like this, it's questionable to skimp on button quality however.

    Another thing to note is that the default firmware registers itself as keyboard (buttons) and mouse (x/y for knob movement. This, the fact that it doesn't support HID-controlled lights and that it polls at 250hz is enough for many to replace it's internal control board with a custom one like the Arcin or Arduino.

    Overall, this controller is widely considered the \"best\" option solely based on the luxury factor alone. However, the cheaper options provide the same arcade-exact dimensions, parts, and experience. It's a fantastic controller, but not for those with tighter wallets as the vastly increased cost ultimately provides nothing different in terms of play experience.

    "},{"location":"extras/ascs/#sdvx-arcade-parts-to-consider","title":"SDVX Arcade Parts to Consider","text":"

    Sound Voltex controllers have a lot of options to choose from and it can be daunting, especially if you've never played before. I'll try to cover springs, microswitches, and encoders to the best of my ability.

    I've also documented many of the parts that I talk about and where to buy them here

    • Springs and Microswitches

      For springs and microswitches, most vendor options consist of 20g, 60g, and 100g springs. Alongside 25g, 50g, and 100g microswitches. Cabs around the world use a variety of setups but two of the most common setups are 20g springs with 100g microswitches, and 100g springs with 100g microswitches. Commonly referenced as 20g/100g and 100g/100g, though sometimes interchangably used as 100g/20g for example. (there's really no definitive order and people put the spring weight or switch weight first on a whim constantly.)

      There are also various manufacturers of these parts, arcades use Sanwa parts. Some Korean arcades use Gersung Samduck parts however, a good Korean-made alternative. There are also various Chinese parts of equally garbage quality. If you order a controller with the stock Chinese buttons, they are including the cheap Chinese springs. These are fine, it's only a spring after all! But for the microswitches, please never use Chinese microswitches, they are of garbage quality and make playing the game horrendously unfun, I am adamant you do not believe the lies of those who say otherwise.

      An incredibly light setup such as 20g/25g can result in an extremely dissatisfying feedback on button press, making it hard to get the feeling of actuation on button press. Not many people go for this setup.

      Lots of home users default to 50g/60g setups for their first time around, it's a nice balance until they become more comfortable with the game and begin to branch out a bit more and figure out their preferences.

      Furthermore, lots of Round1 arcade locations in the US use 20g spring 100g microswitch setups, so if you played at one of those, you probably felt this setting. Just keep in mind that as the springs/switches wear down the feeling will be a little different than a fresh set!

    • Encoders

      As for the encoders, they're the things that turn with the knob internally, they dictate the feeling of the rotation. The default encoders on most of the Dao controllers is the Alps 801 set, the Chinese default ones. These are beyond unplayable, with a clicky angle-snapping experience over a smooth twist. The grand majority of players opt for copal encoders, which are both incredibly smooth and sensitive. However, they are prone to breaking within about a year of moderate player.

      The YuanCon controllers use encoders that many feel are superior to copals both in feeling and durability, so they're a very worthwhile option as well.

      Lastly, the arcade encoders are extremely durable, reliable, and stiffer to turn than the other options, they're also more expensive as well.

      I've documented many of the parts and where to buy them here

    "},{"location":"extras/ascs/#popn-music","title":"Pop'n Music","text":""},{"location":"extras/ascs/#dj-dao-pop-asc","title":"DJ DAO POP ASC","text":"

    Gamo2's Pop'n offering is a controller that results in a project for a lot of players. While it is a playable experience, for many, it will be dissatisfying out of the box. However, with a bit of knowledge one can turn it into a fantastic controller.

    One of the biggest issues with Pop'n controllers are the buttons. The Chinese default buttons are simply unacceptable, these things stick like crazy and getting Samduck buttons, a Korean alternative, is considered almost mandatory for a lot of players. It is possible to sand down the stock Chinese Dao buttons or get lucky and only have a few with problems, but the odds are heavily stacked against the buyer's favor here. The primary problem here and why Sanwas are not offered are their extreme cost, at around $40 a button it's simply out of reach for many. At the very least, one nice addition is that by default the controller comes with Omron microswitches.

    Dao's controller design here also isn't the best, it's big and bulky which has its pros and cons depending on preferences, but unlike Gamo2's other options providing magnetic bottoms that are easy to remove, the Pop'n ASC has 20 screws to gain access to the internals. While buyers hopefully won't need to be digging inside all that often, it's still a tedious process.

    This controller is notably loud too, any form of play is going to generate substantial noise that will annoy others in your household. Pop'n is naturally a loud game, but many attempts can be made to alleviate some of the noise. Some people play with a towel over the controller which is called toweling, but in the more desperate cases some people have filled the internals to brim with cotton balls and other various materials.

    Many users choose to upgrade from the default USB board to a custom one (Arduino, Arcin) since the button lights can't be controlled via software and it's only polling at the default 250hz. Of course that also means you can't use the original board's PS2 connector anymore.

    The pricing on this controller is a bit rough for many, due to the size and weight the shipping charges can be a significant problem notably more than other game's options as well, at least US buyers benefit from free shipping when it's in stock at the US storehouse. This controller is a good option, but it requires a bit of time, work, and funds to be truly great.

    "},{"location":"extras/ascs/#yuancon-popn","title":"YuanCon Pop'n","text":"

    YuanCon's Pop'n controller arrived on the scene many years after Dao's controller and seemingly has managed to address some of the more notable difficulties of its competitor at an expected competitive price point and with a sleek design.

    Right away it should be noted that this controller is a significantly smaller size than the Dao while retaining the expected arcade spacing between buttons. It's also in a metal shell for added durability yet it has notably less weight than the Dao.

    One big positive for many is the detachable USB cable, it uses just one USB port which is quite handy. This comes at some costs though. The biggest issue is the lack of PS2 support, the lights are also dimmer than Dao's offerings which utilize 2 USB ports. Like it's competitor, it also doesn't seem to support HID-controlled button lights currently.

    One of the biggest issues with Pop'n controllers are the buttons. Yuan's stock Chinese buttons are notably better than Dao's, but Samduck buttons, a Korean alternative, are still preferred as the stock Chinese buttons don't always feel satisfying depending on preferences. Sanwa buttons are incredibly expensive at around $40 a pop for Pop'n controllers, so they're simply out of the question for many players.

    It's also worth noting that this controller comes with Chinese microswitches, which is a disappointment. Many players vastly prefer Omron microswitches over the Chinese clones.

    This controller is notably loud too, any form of play is going to generate substantial noise that will annoy others in your household. Pop'n is naturally a loud game and this applies to any controller, but many attempts can be made to alleviate some of the noise. Some people play with a towel over the controller which is called toweling, but in the more desperate cases some people have filled the internals to brim with cotton balls and other various materials.

    Yuan's Pop'n controller and its pricing is very good, perhaps due to the known dissatisfaction with Chinese Pop'n buttons, the controller is offered to come with no buttons and switches to save further on cost, making it an extremely enticing option for anyone that would rather buy their buttons and switches separately. Compared to alternatives, the pricing on this Pop'n ASC is best in class by a significant margin and it functions just as well as any other out there.

    "},{"location":"extras/ascs/#jubeat","title":"jubeat","text":""},{"location":"extras/ascs/#dj-dao-fb9","title":"DJ DAO FB9","text":"

    Gamo2's jubeat controller is a very fun contraption, buyers actually slide their own monitor under it in order to play. While neat, the pricing on this thing isn't for the faint of heart and unfortunately it doesn't come without some problems.

    Right away the need to buy your own monitor separately should be addressed, as it adds to the already high cost and the requirements for the monitor are somewhat specific as well, further complicating things.

    Dao's jubeat board is also laughably bad and skilled players notice difficulties with timing and accuracy issues compared to a cab, many FB9 owners actually swap out the board for a P4IO alternative that matches arcade play far better for a more accurate and enjoyable experience. The biggest difference is in how multiple buttons are pressed so the issue is less prominent and earlier stages in the game.

    The rubbers for the buttons are also less than desirable, with a gummy and dissatisfying feeling that's prompted many to switch. Zhousensor provides better replacements and official ones can be bought on sites like Yahoo Auctions Japan for a reasonable price.

    The controller can also slide around a bit on some less than desirable surfaces and with inexperienced play, creating a need to readjust it fairly often after songs.

    Dao's buttons also have a slight rainbow effect going on around the edges inside the plastic on certain screens, some people may find it moderately distracting to see.

    Gamo2's jubeat offering isn't terrible, but it's not great either. The controller is for many people essentially a project that has a far greater pricetag than the notable one their site already lists. Buyers can end up going a few hundred over the controller's individual price just to get the controller to feel like a truly enjoyable experience. With the problems listed above, it's hard to fully recommend it. But ultimately, options are scarce for jubeat players.

    "},{"location":"extras/ascs/#ddr","title":"DDR","text":""},{"location":"extras/ascs/#stepmaniax-stage","title":"StepManiaX Stage","text":"

    Dance games have the luxury of many pads functioning the same across a wide variety of games so while it's not specifically for DDR, this is simply the apex beyond buying your own arcade cab. At an extreme price tag, Kyle Ward spares no expense to create the ultimate controller. It's even hard to label this thing as a true ASC, as it's not styled like an arcade controller, it IS one!

    Getting into the important details though, a couple of changes on the latest model feature a new sleek design, superior FSR sensors that help to minimalize maintenance, and a fleet of sleek LED customization to really help a buyer individual their product and make it look and feel like theirs.

    There's really only two \"problems\" present. Firstly, the cost, it's a premium and then some. However, the experience is also the best of any option short of owning a cab or official arcade pads. Yet even then, there's a strong argument to be had that the newer technology present trumps some of the dated arcade parts and design.

    Second, the weight. While the pad is on wheels for easy movement the listed weight on the side is 220 pounds, getting the pad up and down staircases won't be fun.

    Purists might argue using the StepManiaX Stage on DDR isn't an authentic experience without brackets and no doubt the feeling is slightly different as well with the different sensors. But many prominent players prefer bracketless pads anyways and consider the design outdated. FSRs are undoubtedly superior technology as well.

    Overall, it's borderline impossible to find fault with the StepManiaX Stage beyond purist nitpicking, the controller is is simply the best. An entire separate page could be written on the difficulties DDR ASCs over the years have had with numerous disasters in regards of shipping challenges and historically bad controllers to the point that this is the best option short of building your own pad, buying a cab, or buying pads off a cab. Yet even then, the experience might be found superior here.

    "},{"location":"extras/ascs/#l-tek-pads-aka-polish-dance-pads","title":"L-Tek pads (AKA Polish Dance Pads)","text":"

    In terms of functionality, these pads are totally fine for beginner to intermediate play. Compared to the pads listed above they are obviously more \"home grown\" feeling, but they are perfectly functional and with regular maintenance will carry you well into the DDR 15/ITG 12 range before needing to think about modifications.

    Pads are availble in an array of configurations (4 panel or 5 panel variants are available) and prices, they have recently added a pad that has a bar pre installed and also offer it seperate if you would like to add it to an exsisting pad.

    In terms of pricing, they are relatively affordable coming in at 184.58USD+shipping.

    All in all, I'd say they are a totally acceptable pad for someone wanting to get back into the game or starting out and wanting something that will last with little upkeep.

    "},{"location":"extras/ascs/#vendors","title":"Vendors","text":""},{"location":"extras/ascs/#gamo2","title":"Gamo2","text":"
    • Website: https://www.gamo2.com
    • Social Media: https://twitter.com/gamotwo

    Gamo2 has been around for a rather long time and is still one of, if not the most popular choice for people looking to buy an ASC. Dao sells a wide variety of controllers and occasionally squeezes out a new one here and there.

    Buyers can expect their controllers to arrive in secure and snug packaging, shipping time varies but is often prompt. Alongside this, Gamo2's shipping is incredibly expensive, they only ship with EMS and charge a premium for it, it's not fun. However, Gamo2 provides a US storehouse for buyers in the US to enjoy free shipping and get packages sooner as well. Keep an eye on their social media as the US storehouse offerings only happen a few times a year and sell out quick!

    Some buyers have noted lengthy delays when buying from Gamo2 so it's not all good news, seemingly randomly as well without any communication too. It's worth checking if there's any Chinese holidays going on or coming up before making a purchase, as they will certainly add to the wait. Most people might be surprised how many of those holidays seem to arise at just the worst time.

    Gamo2's in-house buttons flat out suck across every controller, these buttons are cheapo Chinese knock offs of Sanwa buttons and it shows. Depending on a buyer's level of tolerance they may find these buttons fine or desperately yearn for an upgrade. Sanwa buttons may seem overpriced, but they are well worth the investment for those looking for arcade accuracy. Sound Voltex and Pop'n Music Dao buttons are especially prone to getting stuck within the controller.

    Gamo2 also provides Honeywell switches by default while charging additional for Omron switches. Sadly, Honeywell switches are laughably bad compared to Omron and the almost unanimous consensus is to not even bother with Honeywell switches, they are far too sensitive and break far too easily. Upgrading to Omron switches should be an immediate decision for anyone unable to buy them right away alongside their controller, or simply holding out until the upgrade can be included with the purchase, it's that extreme of a difference.

    Finally, Gamo2's tech support is good. Dao's English isn't the best, but he is very patient and understanding, willing to work with buyers on almost any issue or question they could have.

    "},{"location":"extras/ascs/#yuancon","title":"YuanCon","text":"
    • Website: https://yuancon.store
    • Social Media: https://twitter.com/yuancontop

    YuanCon has grown immensely in popularity in just a short amount of time, if Gamo2 is no longer on top, then look to YuanCon as they self-report they're currently ranked first in Chinese sales! YuanCon's approach so far has been fantastic communication and utilizing their Discord server and Twitter to get their name out there as much as possible, even partnering with prominent rhythm game players.

    Buyers can expect their controllers to arrive within a moderate timeframe and in fancy Yuan-branded packaging that's more than suitable. On top of this, the pricing is extremely competitive and shipping prices are more fair than Gamo2. With this however, comes a lack of availability. Controllers often go out of stock so it's important to keep up with when pre-orders and restocks are going up.

    Default Yuan buttons are the typical cheap Chinese buttons that are not ideal for play, some users report less trouble with the buttons than Dao's default buttons, but Sanwas are always preferable. Yuan thankfully doesn't even bother with Honeywell switches, only offering Omron microswitches instead, a welcomed decision.

    Perhaps due to inexperience or quality control issues, there has been a notable minority of people with issues that have to be acknowledged below.

    Shipping times have varied widely, the grand majority of buyers get their packages promptly within 1-2 weeks, but there have been reports of some extreme cases well over 4+ weeks. This situation however was met promptly with an official statement from Yuan and his team. However, at the time of writing, I am aware of someone that has been waiting for their controller to ship for over 3 months.

    Some controllers have also arrived damaged or with missing elements. One prominent example was a large number of broken panels prompting refunds and a manufacturing change.

    Also worth noting that again at the time of writing, YuanCon's RGB offerings literally have LEDs that brown out and their engineer \"does not want to add HID lighting.\" Both a comical and egregious negative.

    It's worth noting that despite these negatives, Yuan and his team have made great efforts to stay very communicative and ensure that nobody ends up with a faulty product they're dissatisfied with, as shown in the above links. YuanCon's support and communication is top notch, and the future remains promising. Even if there's a small risk of initial hassle through slow shipping or quality control, buyers will ultimately end up with a fully functioning product that they can be satisfied with one way or another.

    "},{"location":"extras/ascs/#steprevolution-stepmaniax","title":"StepRevolution (StepManiaX)","text":"
    • Website: https://shop.steprevolution.com/
    • Social Media: https://twitter.com/smxgame

    Premium pads, spare parts and full cabinets that are designed to either play StepmaniaX or have other games run on them are for sale, there is official support for setting up a normal computer for use with stepmania or if you have the right configuration you can use Pump it up simulators with the cabinet aswell, and Kyle Ward is always very helpful for anyone who has questions!

    Only downside is the pads/cabs sell out usually within minutes of them going on sale and the shipping time can be multiple months some times as they are done made to order. Buyers can expect their pads to arrive in secure pallet packaging and the few times things have arrived either damaged or non working, customer support has been excellent and issues are always resolved quickly.

    American based company and every person who has purchased a pad or cabinet has been nothing short of ecstatic with it, if you have the money and don't mind waiting, this is the best option on the market, in or out of the arcade!

    "},{"location":"extras/ascs/#l-tek","title":"L-Tek","text":"
    • Website: https://maty-taneczne.pl/
    • Social Media: https://www.facebook.com/maty-tanecznepl-106162192775436/

    Pads are good starting points and most customers who've purchased them have been happy with them. Shipping is usually reasonably quick (upto a month depending on where in the world you are).

    They offer a range of products, both 4-panel and 5-panel pads, acecssories (replacement panels, sensors, bar attachment) to suit most people's dance pad needs.

    I have heard of cases of panels cracking under heavy use, but every case of this (I can recall one) has been resolved quickly and at no extra cost to the customer who had the pad.

    If you're in the market for a dance pad, and don't want to spend SMX money or hunt down an old arcade cabinet, I'd say they're worth the money.

    "},{"location":"extras/asphyxia/","title":"How to setup Asphyxia CORE","text":"

    If this isn't your first time setting up Asphyxia, make sure to backup your savedata folder and place it somewhere safe.

    "},{"location":"extras/asphyxia/#what-is-asphyxia-core","title":"What is Asphyxia CORE?","text":"

    Asphyxia CORE is a local e-amuse emulator which includes score saving and customization. The software itself does not support any game out of the box. For this, you need plugins.

    "},{"location":"extras/asphyxia/#configuring-asphyxia","title":"Configuring Asphyxia","text":"

    First, grab the latest release here. In almost all cases, you will use the asphyxia-core-win-x64.zip. Next, open the .zip file and extract the plugins folder and asphyxia-core-x64.exe into the contents folder of your desired game. We will use SDVX EG for this example.

    Your contents folder should look like this then:

    For Asphyxia to run properly, you will need a plugin for each game you want to use it with.

    • Join our Discord server.
    • Look for your game's channel, then the pinned Resources post.
    • Download the plugin archive and open it.
    • It should contain a folder such as sdvx@asphyxia or iidx@asphyxia.
    • Put that folder in your Asphyxia plugins folder, typically contents\\plugins\\ and overwrite files if needed.

    Run asphyxia-core-x64.exe to start the server. It will automatically open a browser tab. This is your WebUI.

    "},{"location":"extras/asphyxia/#changing-service-url","title":"Changing Service URL","text":"

    Run spicecfg.exe, head over to the Options tab and look for EA Service URL. In there, you need to input what is displayed on the Asphyxia WebUI on the Dashboard at the right side.

    For me, it's localhost:8083 and should look like this:

    "},{"location":"extras/asphyxia/#setting-up-sdvx","title":"Setting up SDVX","text":"

    On the WebUI, click on SDVX on the left-hand bar and click on Import Assets. In here, paste the path of your contents folder.

    In my case, it's D:\\BEMANI\\SDVX\\guide\\KFC-2021083100\\contents. Make sure you're using the correct path as it won't work otherwise. When you've done that, click on Submit. After a few seconds, a pop-up should appear saying Imported successfully!

    Go to SDVX on the left-hand bar, then Profiles and click on the green Detail button on your preferred profile. Click on Setting on the top bar and try changing some customization settings at the bottom. If they are working, head over to Changing Service URL. If they appear broken, completely close Asphyxia and continue reading.

    Head to the contents folder of your game again. If you have inserted the correct path when Importing and everything worked without any errors, you will have a folder called webui. Copy this folder and paste it into plugins\\sdvx@asphyxia. Overwrite any files if prompted to. Now close then re-run asphyxia-core-x64.exe and everything should function as intended.

    "},{"location":"extras/asphyxia/#setting-up-iidx","title":"Setting up IIDX","text":"

    You have already done all the step required to have it working. Simply create a profile and it will be visible on the WebUI.

    You're all done! Enjoy your game!

    "},{"location":"extras/audio/","title":"What is WASAPI & ASIO?","text":"

    WASAPI and ASIO are audio systems that manage how your applications like games, music, and others interact with your audio hardware. Without these core systems you would not be able to hear anything. This is a basic explanation on what they are and will not go into detail on how they function. There are 3 types that I'll cover here with pros and cons for each one.

    I would personally recommend using WASAPI Shared as this has in most cases the highest chance of working and requires the least amount of work. You can enable it by using a patch.

    If you would like to use WASAPI Exclusive, you can read more about it here.

    "},{"location":"extras/audio/#wasapi-shared","title":"WASAPI Shared","text":"

    WASAPI Shared mode is the standard mode that Windows uses. This allows you to hear multiple audio sources at once and allows programs to capture audio with programs like OBS and Discord. While this is nice for using windows and playing most games, this has a negative side effect of increasing audio latency.

    Pros:

    • Multiple audio sources can be sent to one audio device.
    • Can capture audio using OBS or Discord.
    • Supports almost all audio hardware as this is the standard for Windows.
    • Easy to set up.

    Cons:

    • Higher Latency.
    • Poor/Hard to configure for low latency.
    • USB audio devices are not supported (DAC).
    "},{"location":"extras/audio/#wasapi-exclusive","title":"WASAPI Exclusive","text":"

    WASAPI Exclusive mode is a secondary mode which allows one program to take complete control over an audio device. This allows an application to do anything to your audio device including changing settings like change volume, sample rates, and buffer size. With this in mind, this also bypasses a lot of latency that is introduced with multiple applications playing their own audio.

    The main downside is that you can only hear one audio source (the program that has control). In this case for example, beatmaniaIIDX would take complete control and you would not be able to hear applications like Discord. You cannot capture audio while running this mode without special software.

    Pros:

    • Low Latency (Real Time Latency)
    • Supports almost all audio hardware as this is the standard for Windows.

    Cons:

    • Application controls the hardware.
    • Not easily configurable.
    • Can not capture audio with OBS or Discord (Can be done, but requires a lot of configuration and can introduce latency. Switching to WASAPI Shared mode is recommended for this use case).
    • USB audio devices are not supported (DAC).
    "},{"location":"extras/audio/#asio","title":"ASIO","text":"

    ASIO stands for Audio Stream Input/Output. This is an audio driver designed for Audio Interfaces on Windows that is very similar to WASAPI Exclusive.

    The biggest difference between ASIO and WASAPI Exclusive is software/hardware support and age. In order to use ASIO, both your hardware and the application you are using must support ASIO. For example, Sound Voltex supports ASIO natively but it does take a bit to set up compared to WASAPI Exclusive. ASIO also has higher configurability.

    Pros:

    • Low Latency (Real Time Latency)
    • Highly Configurable
    • Industry standard for musicians means tons of support documentation.

    Cons:

    • Limited Hardware Support
    • Application controls hardware.
    • Can not capture audio with OBS or Discord (Can be done, but requires a lot of configuration and can introduce latency. Switching to WASAPI Shared mode is recommended for this use case).
    • Requires a powerful CPU.
    "},{"location":"extras/hexguide/","title":"Manual DLL Hex Editing","text":"

    Before proceeding

    This guide should ONLY be used as a last resort if all other methods fail. It has a high chance of breaking your game, make backups.

    "},{"location":"extras/hexguide/#preamble","title":"Preamble","text":"

    We're going to patch Beatmania IIDX 25 CANNON BALLERS, however the process is similar for other BEMANI games.

    Here's what you'll need:

    • Your favorite hex editor, here we'll be using HxD.
    • A clean copy of your desired BEMANI game.
    • A backup of your original .dll before editing.
    "},{"location":"extras/hexguide/#getting-started","title":"Getting Started","text":"

    Decide on what hex edits you want to apply, you may find that information from the community or our Resources.

    It's time to open our hex editor. If you're using HxD, you'll be greeted with the screen below.

    Open your game's .dll file in the hex editor.

    For the grand majority of hex edits, this is the main game file, such as bm2dx.dll, soundvoltex.dll, etc..

    Pictured below, we've opened up bm2dx.dll inside HxD.

    Attention

    The edit we'll be applying is EXCLUSIVE to this version of the game and serves as an example.

    This means it will not work on any other version of the game, nor any other game! Hex edits modify specific memory addresses that only apply to very specific game versions.

    We'll be editing our game to Unlock All Songs and its edit is:

    • Offset: 0xB60B2
    • Original: 74 10
    • Modified: 90 90

    In HxD we're going to hit Ctrl+G to open the Goto window.

    From here, we'll input the offset B60B2 in the Offset section as shown below, and hit OK.

    Our cursor should be taken to the offset at the exact location you want to edit.

    As you can see, the numbers in front of the cursor are 74 and 10 which corresponds to what we need to replace.

    If there's a mismatch, it's likely the offset you've put in was wrong, so be sure to double check!

    Now all we need to do is select 74 10 and replace it with 90 90.

    You can do this by either manually typing 90 90 or by copy and pasting.

    It should now look as shown below.

    Lastly, simply save your file and repeat these steps for any other edits you want to apply!

    If at any point your game has issues due to your edits, restore your backup.

    "},{"location":"extras/parts/","title":"Arcade Part Documentation","text":"

    Before proceeding, please read:

    This section is a list of various arcade part manufacturers with part model numbers and misc documentation concerning said parts as needed, alongside links on where to purchase parts from the most trusted locations (not every link to purchase will be included, there's too many parts sellers, only ones I've personally found reliable are listed.)

    I'm not confident this will be all-encompassing of every part ever, but it will be sufficient for those purchasing arcade style controllers (ASCs) and those in need of maintenance for said controllers. I'm omitting things like 400g springs, or 10g microswitches because no one really uses these products for regular play, but they exist nonetheless!

    One last thing, if there's for example, multiple model numbers of say, 25g microswitches, you can assume they have different internals and thus provide different feedback. I'm not aware of anyone qualified and experienced enough to give exact logistics on how these parts may feel different, so I've omitted any details and will simply specify what the most common vendors provide alongside these variants.

    7/26/2020 IMPORTANT Notice:

    Rakuten has switched to separate services, namely Rakuten Ichiba and Rakuten Global Express, they have provided an FAQ here. Essentially, some vendors will continue to offer international shipping, but the proxy service now exists for those that do not. If Sanwa Denshi does not ship to your region, simply sign up for their proxy service, or another of your choosing that is willing to provide for you.

    Alongside this, Sanwa Denshi seemingly no longer provides the typical lamps in many of the old-model button types that has been custom for many years. Given I am unfamiliar with anyone currently using these new lamps in their controllers, at the time of writing, I will provide links to buttons with the lamp and lamp-less buttons. On some listings, they allow the option to select the LED voltage and on others, they do not.

    • Just for reference:
      • DJ DAO boards: 5V
      • YuanCon boards: 12V
      • Arcin: 5V (or 12V if you only hook up the negative side)

    So, if you're overly concerned as a new buyer, you can choose to buy lamps at a later date. I apologize for the inconvenience and current inability to provide more detailed information, and will be working to update this ASAP.

    Lastly, I have to remove IST Mall (Korean seller) from many of the listings at this time because their Sanwa options seemingly have now begun to use the new-style connectors that are not compatible with provided connectors from existing ASC vendors. I apologize for this inconvenience, but feel free to buy this new style if you understand JST connectors and can wire things up with basic electronics skills.

    "},{"location":"extras/parts/#iidx-buttons","title":"IIDX Buttons","text":""},{"location":"extras/parts/#sanwa","title":"Sanwa","text":"

    Rectangular Gameplay Keys

    • Both OBSA-45UK-W and OBSA-45UK-B come with 100N springs and 100g switches (Omron V-10-1A4).
    • OBSA-45UK-W (White keys)
      • Where to buy:
        • Sanwa Rakuten (Official JP Store) - With Lamp
        • Sanwa Rakuten (Official JP Store) - Lamp-less
        • Buyee (Rakuten Proxy) - Old Lamp Holder With Lamp
        • Buyee (Rakuten Proxy) - Old Lamp Holder Lamp-less
        • IST MALL (KR Seller)
    • OBSA-45UK-B (Black keys)
      • Where to buy:
        • Sanwa Rakuten (Official JP Store) - With Lamp
        • Sanwa Rakuten (Official JP Store) - Lamp-less
        • Buyee (Rakuten Proxy) - Old Lamp Holder With Lamp
        • Buyee (Rakuten Proxy) - Old Lamp Holder Lamp-less
        • IST MALL (KR Seller)

    Square Menu/Option Buttons

    • OBSA-30UK
      • Where to buy:
        • Sanwa Rakuten (Official JP Store - With Lamp)
        • Sanwa Rakuten (Official JP Store - Lamp-less)
    "},{"location":"extras/parts/#samduck","title":"Samduck","text":"

    Rectangular Gameplay Keys

    • CWB 405
      • Comes with Gersung switches (45g) and springs (20-30N)
      • Does not come with lights but compatible with Dao lamps and ISTMall lamps.
      • Can use the same switches and springs as Sanwa OBSA-45UK buttons.
      • Where to buy:
        • IST MALL (KR Seller)

    Square Menu/Option Buttons

    • CWB 406
      • Does not come with lights but compatible with Dao lamps and ISTMall lamps.
      • Where to buy:
        • IST MALL (KR Seller)

    "},{"location":"extras/parts/#sdvx-buttons","title":"SDVX Buttons","text":""},{"location":"extras/parts/#sanwa_1","title":"Sanwa","text":"

    Square BT Gameplay Buttons

    • Sanwa OBSA-60UK
      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • Buyee (Rakuten Proxy) - Old Lamp Holder With Lamp
        • Buyee (Rakuten Proxy) - Old Lamp Holder Without Lamp

    Rectangular FX Gameplay Buttons

    • OBSA-45UK-B (Black FX keys)
      • Where to buy:
        • Sanwa Rakuten (Official JP Store - With Lamp)
        • Sanwa Rakuten (Official JP Store - Lamp-less)
        • Buyee (Rakuten Proxy) - Old Lamp Holder With Lamp
        • Buyee (Rakuten Proxy) - Old Lamp Holder Lamp-less

    Start Button

    • OBSA-30UK
      • Where to buy:
        • Sanwa Rakuten (Official JP Store - With Lamp)
        • Sanwa Rakuten (Official JP Store - Lamp-less)
    "},{"location":"extras/parts/#samduck_1","title":"Samduck","text":"

    Rectangular FX Gameplay Buttons

    • CWB 405
      • Where to buy:
        • IST MALL (KR Seller)

    Start Button

    • CWB 406
      • Where to buy:
        • IST MALL (KR Seller)

    "},{"location":"extras/parts/#sdvx-encoders","title":"SDVX Encoders","text":""},{"location":"extras/parts/#options","title":"Options","text":"

    Copal Encoders

    • RES20D-50-201-1
      • Where to buy:
        • Octopart (Lists Multiple Sellers)
        • GAMO2 (Upgrade set from stock Chinese, CN seller)

    YuanCon's Encoders

    • Where to buy:
      • Tabobao (CN Seller)

    Sensatec Encoders (Arcade)

    • ELV-24Y36A-K (GAMO2 Arcade Encoders)
      • Where to buy:
        • Sensatec (JP Seller)
        • Metro Electric (JP Seller)
    • ELV-24M36A-K
      • Where to buy:
        • Sensatec (JP Seller)

    "},{"location":"extras/parts/#popn-buttons","title":"Pop'n Buttons","text":""},{"location":"extras/parts/#sanwa_2","title":"Sanwa","text":"

    Circular Dome Gameplay Buttons

    • OBSA-100UMQ
      • Comes with 200N springs and 200g Omron switches.
      • Where to buy:
        • Sanwa Rakuten (Official JP Store) - With Lamp
        • Sanwa Rakuten (Official JP Store) - Lamp-less
        • Buyee (Rakuten Proxy) - Old Lamp Holder With Lamp
        • Buyee (Rakuten Proxy) - Old Lamp Holder Lamp-less
    "},{"location":"extras/parts/#samduck_2","title":"Samduck","text":"

    Circular Dome Gameplay Buttons

    • CWB 401
      • IST Mall incorrectly claims to ship these with 40N springs and 45g Gersung switches, but in reality the springs are much, much heavier (suspected to be 200-300N springs). Recommended to separately purchase springs and switches.
      • Where to buy:
        • IST MALL (KR Seller)

    "},{"location":"extras/parts/#jubeat-rubbers","title":"Jubeat Rubbers","text":""},{"location":"extras/parts/#options_1","title":"Options","text":"

    ZhouSensor

    • Where to buy:
      • ZhouSensor Taobao Store(CN)

    "},{"location":"extras/parts/#microswitches","title":"Microswitches","text":""},{"location":"extras/parts/#omron","title":"Omron","text":"

    25g Microswitches

    - D2MV-01-1C2 (GAMO2 and YuanCon provided)\n    - Where to buy:\n        - [Digikey (US Seller)](https://www.digikey.com/product-detail/en/omron-electronics-inc-emc-div/D2MV-01-1C2/Z4707-ND/5236583)\n        - [Sanwa Rakuten (Official JP Store)](https://item.rakuten.co.jp/sanwadenshi/ilumb_222/)\n        - [IST MALL (KR Seller)](http://istmall.co.kr/us/goods/goods_view.php?goodsNo=1009992803)\n        - [Buyee (Rakuten Proxy)](https://buyee.jp/rakuten/detail/sanwadenshi%3A10000320)\n\n- VX-01-1C22\n    - Where to buy:\n        - [Digikey (US Seller)](https://www.digikey.com/product-detail/en/omron-electronics-inc-emc-div/VX-01-1C22/Z4644-ND/369961)\n        - [Mouser (US Seller)](https://www.mouser.com/ProductDetail/Omron-Electronics/VX-01-1C22?qs=1tDaWCEHQQ6vTHtQABSaag%3D%3D)\n

    50g Microswitches

    - D2MV-01-1C3 (GAMO2 provided)\n    - Where to buy:\n        - [Digikey (US Seller)](https://www.digikey.com/product-detail/en/omron-electronics-inc-emc-div/D2MV-01-1C3/Z4708-ND/5236584)\n        - [Sanwa Rakuten (Official JP Store)](https://item.rakuten.co.jp/sanwadenshi/ilumb_223/)\n        - [IST MALL (KR Seller)](http://istmall.co.kr/us/goods/goods_view.php?goodsNo=1009992804)\n        - [Buyee (Rakuten Proxy)](https://buyee.jp/rakuten/detail/sanwadenshi%3A10000321)\n- VX-01-1C23\n    - Where to buy:\n        - [Digikey (US Seller)](https://www.digikey.com/product-detail/en/omron-electronics-inc-emc-div/D2MV-01-1C3/Z4708-ND/5236584)\n        - [Mouser (US Seller)](https://www.mouser.com/ProductDetail/Omron-Electronics/D2MV-01-1C3?qs=HDDQUw%2F3Phqm1Y5wA%2Fdz9w%3D%3D)\n

    100g Microswitches

    - V-10-1A4 (Arcade default, GAMO2 provided)\n    - Where to buy:\n        - [Digikey (US Seller)](https://www.digikey.com/product-detail/en/omron-electronics-inc-emc-div/V-10-1A4/Z4588-ND/1828942)\n        - [IST MALL (KR Seller)](http://istmall.co.kr/us/goods/goods_view.php?goodsNo=1009992411)\n        - [Buyee (Rakuten Proxy)](https://buyee.jp/rakuten/detail/sanwadenshi%3A10000283)\n
    "},{"location":"extras/parts/#gersung","title":"Gersung","text":"

    60g Microswitches

    • GSM-V0303A06
      • Advertised as \"between 50g and 100g\".
      • Where to buy:
        • IST MALL (KR Seller)

    "},{"location":"extras/parts/#springs","title":"Springs","text":""},{"location":"extras/parts/#options_2","title":"Options","text":"

    20g Springs

    • OBSA-SP-20
      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • IST MALL (KR Seller)
        • Buyee (Rakuten Proxy)
    • IST Spring
      • Where to buy:
        • IST MALL (KR Seller)

    40g Springs

    • OBSA-SP-40
      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • IST MALL (KR Seller)
        • Buyee (Rakuten Proxy)

    50g Springs

    • OBSA-SP-50
      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • Buyee (Rakuten Proxy)

    60g Springs

    • OBSA-SP-60-K
      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • IST MALL (KR Seller)
        • Buyee (Rakuten Proxy)
    • IST Spring
      • Where to buy:
        • IST MALL (KR Seller)

    100g Springs

    • OBSA-SP-100

      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • IST MALL (KR Seller)
    • IST Spring

      • Where to buy:
        • IST MALL (KR Seller)
    "},{"location":"extras/parts/#led-lamps","title":"LED Lamps","text":""},{"location":"extras/parts/#options_3","title":"Options","text":"

    ISTMall lamps

    - Where to buy:\n    - [IST MALL (KR Seller)](https://istmall.co.kr/us/goods/goods_view.php?goodsNo=1009992273)\n
    "},{"location":"extras/patchsp2x/","title":"Spice2x DLL Patching","text":"

    TWO-TORIAL Patcher

    URL: https://sp2x.two-torial.xyz GitHub Repo Supported Games Contributing

    Known spice2x patchers

    Compatibility

    This patching method only is for spice2x supported games.

    Please make sure you're using the latest release for spice2x as the feature is fairly new.

    Before proceeding

    It is highly recommended to use an unpatched DLL as your base!

    If you've already patched your game through other methods (web patching or hex editing), Please replace your game's DLL with the original.

    "},{"location":"extras/patchsp2x/#getting-started","title":"Getting Started","text":"

    The following guide works the same regardless of which spice2x compatible game you're using.

    In this case we will be using a clean SDVX installation as a reference, with the following folder structure.

    "},{"location":"extras/patchsp2x/#importing-patches-from-url","title":"Importing Patches from URL","text":"

    Open spicecfg.exe and head to the Patches tab.

    By default no patches will be available, we need to import some.

    • Click on Import from URL.
    • Paste your preferred patcher's URL.

    Note: Check the Resources page for a list of recommended patchers.

    • Click on Import.

    If patching fails, it most likely is because the URL you provided doesn't support your game's version.

    "},{"location":"extras/patchsp2x/#picking-patches","title":"Picking Patches","text":"

    Important

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone.

    After a successful import, your patches should now show up inside spice2x.

    A new Patches folder has also been created, containing a .json file with your available patches for offline use.

    Now you may pick and choose desired patches!

    For game-specific instructions, refer to their respective dedicated pages.

    "},{"location":"extras/patchsp2x/#auto-apply-overwrite-game-files","title":"Auto apply / Overwrite game files","text":"

    Auto apply (recommended)

    After picking your patches, it is strongly recommended to tick the Auto apply patches on game start box.

    Doing so will keep your game files intact until you start it, at which point your selected patches will apply. Upon closing the game your game's files will be restored.

    Overwrite game files

    You also have the option to Overwrite game files, which will permanently modify your game files.

    This is NOT recommended unless you have a good reason to do so. A backup of your original dll will be created, however it is recommended to make your own!

    "},{"location":"extras/patchweb/","title":"Website DLL Patching","text":"

    Known web patchers: Resources

    For BEMANI games consider Spice2x Patching

    This patching method is outdated for BEMANI games.

    However spice2x patching is still very new and might not support your game yet, in this case follow this guide.

    Before proceeding

    It is highly recommended to use an unpatched DLL as your base!

    If you've already patched your game through other methods (spice2x patching or hex editing), Please replace your game's DLL with the original.

    "},{"location":"extras/patchweb/#getting-started","title":"Getting started","text":"

    We'll be using mon's BemaniPatcher. Almost every other patcher is based off of this and functions exactly the same.

    If your game is recent, please check Resources and use another web patcher.

    Go to your chosen patcher's website, you'll get something similar to this:

    Click on any game you'd like the patches for. In this case, we'll use Beatmania IIDX 30 Resident.

    Here, either:

    • Drag and drop the .dll file the site prompts you to use.
    • OR click on Choose a file and select it that way.

    If you've used the correct file and the site is compatible, it will tell you.

    X of X patches matched (100%) means the patcher is compatible with your game. If this shows any less than 100%, DO NOT use it. Your .dll file might not be clean. Only proceed with a clean one.

    Please keep in mind that some patchers may not support the most recent versions of your game right away.

    Now, you can select the patches you'd like to apply.

    If you're unsure on what to do, refer to your specific game's guide as it might have more information there. Otherwise feel free to join our Discord server, the link is at the top of the home page, and ask the community!

    When you're done selecting patches, click on Save Patched File and your new .dll file will start downloading.

    Backup your original .dll file first!

    Now you may replace your data's .dll file with the patched one you just downloaded.

    Once you've done that, you're done. Enjoy!

    "},{"location":"extras/pollingrates/","title":"List of Touchscreen Monitors and their Polling Rates","text":"

    Before reading

    This section contains a few touchscreen monitors tested by community members over the years and their respective polling rates. Please note that a polling rate is NOT THE REFRESH RATE of a monitor, but is the critical factor in determining how responsive a touchscreen is and is unfortunately something every major retailer omits from their product listings due to lack of consumer awareness.

    At higher levels of gameplay, rapid button presses may fail to be acknowledged by touchscreen monitors with a low polling rate, making good scores impossible and creating a frustrating experience.

    Every BEMANI game with a touchscreen polls at 250hz, and some use an IR grid to achieve this. Thus, I am defining viable as 180hz or more, but I will include some monitors and manufacturer dates under this to help curious buyers be aware, as sometimes different manufacturer dates result in different polling rates and it's always good to document cruddy monitors to save people money.

    One thing to note is, this is not to say that monitors with low polling rates are unusable, they can still provide enjoyment and are often cheap enough to be a great option to see how far one may want to get into a certain touchscreen based game. But, the goal is to provide a potential buyer information to make an educated choice, and monitors with low polling rates will run the risk of needing to be replaced as higher levels of play, potentially causing frustration and wasted money.

    If you want to check your touch screen monitor's polling rate simply download Mouse Rate Checker and move your finger across the window at a reasonable pace, but not too fast!

    "},{"location":"extras/pollingrates/#dell-s2240t","title":"Dell S2240T","text":"
    • 2013 Manufacturing Date:
      • 200hz GREAT!
    • 2014 Manufacturing Date:
      • May: 200hz GREAT!
      • September: 180hz
    • 2015 Manufacturing Date:
      • March: 200hz GREAT!
      • September: 200hz GREAT!
    • Late 2016 Manufacturing Date:
      • 140hz AVOID
    • Early 2017 Manufacturing Date:
      • 180hz
    • Mid 2017 Manufacturing Date:
      • 140hz AVOID
    • February 2018 Manufacturing Date:
      • 180hz
    "},{"location":"extras/pollingrates/#dell-p2314t","title":"Dell P2314T","text":"
    • November 2015 Manufacturing Date:
      • 60hz DO NOT BUY!
    "},{"location":"extras/pollingrates/#dell-p2418ht","title":"Dell P2418HT","text":"
    • May 2018 Manufacturing Date:
      • 60hz DO NOT BUY!
    "},{"location":"extras/pollingrates/#iiyama-t2336msc","title":"Iiyama T2336MSC","text":"
    • Revision B1:
      • 180hz
    "},{"location":"extras/softether/","title":"Setting Up SoftEther VPN for Cabinet-to-Cabinet Play","text":""},{"location":"extras/softether/#what-is-softether-vpn","title":"What is SoftEther VPN?","text":"

    SoftEther VPN is a free tool we use to create Virtual Hubs and connect multiple machines to the same virtual network, allowing the ability to perform Cabinet-to-Cabinet link even when the machines are on physically different networks.

    "},{"location":"extras/softether/#configuring-softether-server","title":"Configuring SoftEther Server","text":"

    This part of the guide is for hosting a hub! If you only wish to connect to a hub, refer to Connecting to a SoftEther Hub.

    While this guide is mainly focused on setting up link-play for arcade games, theoretically this should also work with other PC games that supports link-playing over LAN.

    "},{"location":"extras/softether/#setting-up-the-server-and-creating-a-hub","title":"Setting up the Server, and Creating a Hub","text":"

    First, go to the SoftEther VPN Download Center. In the Select Component section, choose SoftEther VPN Server. Choose the Operating System and CPU based on your own machine, and grab the latest rtm build. This guide will be using Windows as an example, the layout for other OS might vary.

    Run the installer and choose to install SoftEther VPN Server. Press Next to finish the installation, and start the Server Manager.

    When running the Server Manager for the first time, you should be greeted with the window below. Click on the Connect button.

    If prompted to setup a root password, set a password that you will remember. If prompted with the Easy Setup wizard, click Close on the bottom right of the window.

    Click on Create a Virtual Hub on the window below.

    Give your hub a name, and set an admin password. In this example, we will use Two-Torial.

    If you wish to limit the maximum amount of sessions that can be connected to your hub at a time, you can enable Limit Max VPN Sessions. Most arcade games support up to 4-way link, so we will set the limit to 4 in this example.

    Your hub is now created! You should see the hub show up on your Virtual Hub list. Click on the hub to highlight it, and click Manage Virtual Hub.

    "},{"location":"extras/softether/#adding-users-to-your-virtual-hub","title":"Adding Users to your Virtual Hub","text":"

    You will need to add User Accounts into the Virtual Hub before anyone can connect. Click on Manage Users, then click New at the bottom left of the window.

    Set a Username and Password for the user account, then check the Set Security Policy box on the top right, and click Security Policy.

    Scroll down and find Unlimited Number of Broadcasts and Filter all IPv6 Packets, then enable the 2 options. Leave everything else as defaults and click OK.

    Click on OK, and your user account should be created. Click on Exit to go back to the Hub Management page.

    You can either create one user account and give everyone the same credentials to connect to your hub under the same user, or you can also create individual user accounts for all the players that wish to connect to your hub. I recommend creating an user account for each player so you can have an easier time to manage the hub if needed.

    "},{"location":"extras/softether/#configuring-securenat","title":"Configuring SecureNAT","text":"

    We will use the SecureNAT option to assign a custom subnet to each connected machines. Some games like Chunithm requires you to be on a specific subnet or cab-to-cab link will not work. Click on Virtual NAT and Virtual DHCP Server (SecureNAT), then enable SecureNAT, and click on SecureNAT Configuration.

    • In the SecureNAT Configration window, set the IP Address under Virtual Host Network Interface Settings to the subnet you wish to use. In this exmaple, we will be using 192.168.139.x as this is the subnet required by Chunithm for cab-to-cab play.
    • Under Virtual DHCP Server Settings, set the IP Address range you wish to distribute to the connected machines. We will use a suffix of 11 to 14 in this example.
    • IMPORTANT: LEAVE THE Options Applied to Clients SECTION BLANK!!! Once everything is set, click on OK and Exit.

    "},{"location":"extras/softether/#setting-a-dynamic-dns-for-your-softether-server","title":"Setting a Dynamic DNS for your SoftEther Server","text":"

    You can set a custom DDNS Hostname for your SoftEther Server to allow people to remember your Server Hostname more easily. You can also just leave the hostname as default if you wish.

    Click Dynamic DNS Setting on the bottom left.

    • Under Change the Dynamic DNS Hostname section, set your preferred hostname. In this example, we will use twotorial.
    • Click Set to Above Hostname when done, and click Exit.

    If a prompt shows up and ask if you want to regenerate a new Server Certificate, click on No.

    If done correctly, the bottom left of your Virtual Hub management window should show your updated Hostname.

    The server setup is done! User(s) should be able to connect to your hub now.

    "},{"location":"extras/softether/#connecting-to-a-softether-hub","title":"Connecting to a SoftEther Hub","text":""},{"location":"extras/softether/#setting-up-the-vpn-client","title":"Setting up the VPN Client","text":"

    If you already have a hub created / you have a hub ready to connect, keep reading.

    Go to the SoftEther VPN Download Center. In the Select Component section, choose SoftEther VPN Client. Choose the Operating System and CPU based on your own machine, and grab the latest rtm build. This guide will be using Windows as an example, the layout for other OS might vary.

    Run the installer and choose to install SoftEther VPN Client. Press Next to finish the installation, and start the VPN Client.

    In the VPN Client window, click on Add VPN Connection.

    If a prompt shows up saying that you need to create a Virtual Network Adapter first, click Yes.

    Leave the adapter name as default, and press OK. Wait for the creation process to finish.

    "},{"location":"extras/softether/#connecting-to-a-virtual-hub","title":"Connecting to a Virtual Hub","text":"

    After you have created a Virtual Network Adapter, you should be able to add a VPN Hub. Click on Add VPN Connection again.

    • Name the Hub whatever you prefer. In this example, we will use Twotorial.
    • In the Destination VPN Server section, input the server Hostname and port. The hostname should usually be [your_hostname].softether.net
    • If the Hostname is correct and the client is able to establish a connection, the Virtual Hub Name should auto-fill when you click on the dropdown box.

    If the Virtual Hub Name shows a blank list even after clicking the dropdown box multiple times, it usually means your client is unable to establish a connection. Double check if the hostname, and your hub config is correct.

    • Under User Authentication Setting, input your username and password.
    • If you are connecting to another person's hub, ask the person for your login credentials.

    • Under Advanced Setting of Communication, UNCHECK THE RECONNECTS AUTOMATICALLY AFTER DISCONNECTED BOX. If this option is enabled, your VPN Client will always try to reconnect to the hub when it is running, taking up a spot in the hub. Please do not do this, it's just annoying when you're AFK in someone's hub and hogging up a spot.
    • Click Advanced Settings....

    • In the Advanced Settings window, you can set the Number of TCP Connections you wish to use. The higher you set, the more connections will be used, resulting in a potentially better link-play experience especially for real-time PVP games like Wangan Midnight Maximum Tune or Initial D: The Arcade.

    If you set this to a very high value and your connection speed is unable to keep up with the requests, your connection quality may be negatively impacted. I recommend setting this to 8 for a good balance.

    • If you find yourself desyncing a lot when in game, you can also enable Use Data Compression to improve the connection stability.
    • Click on OK once everything is set.

    Double click on the VPN hub to connect. If it shows you your assigned IP address, congratulations! You are now connected to the Virtual Hub and is ready for some cab-to-cab action!

    "},{"location":"extras/softether/#tips","title":"Tips","text":"
    • If you need to fetch your assigned IP address because the notification window disappeared too fast or if you forgot your IP, you can do so with the ipconfig command in CMD.
    • The Virtual Adapter name will usually be Unknown adapter VPN - VPN Client.
    • If you already have your hub setup and want to share the config with other users, you can Export your VPN profile and send it to them. Right click on the VPN Hub you wish to share and click Export VPN Connection Setting....
    • If you wish to include your username and password in the exported config, click on No. If the hub you are connecting to have different accounts setup for individual users, click on Yes to remove all sensitive information from the config.
    "},{"location":"extras/streamaudio/","title":"Workarounds for exclusive audio","text":"

    Before reading

    This section describes various workarounds and tips for dealing with games that use exclusive mode audio.

    In the recent years, BEMANI games started using WASAPI exclusive mode and ASIO to output game audio. While these provide great benefit when it comes to audio latency perceived by the player, they present additional challenges when trying to use other audio applications at the same time (e.g. a Discord voice call) or when capturing game audio for recording and streaming. This page explains how you can work around these issues. Read on carefully, as there are many things that can go wrong when dealing with audio.

    Remember, don't stream or upload recordings to public places! Privately among friends only!

    "},{"location":"extras/streamaudio/#setting-up-audio","title":"Setting up audio","text":"

    There are advantages and disadvantages to each of the methods, so read carefully.

    "},{"location":"extras/streamaudio/#option-1-force-shared-audio","title":"Option 1 - force shared audio","text":"
    • Enables: audio device sharing (voice calls while playing), recording, streaming
    • Advantage: very easy to set up, as seen below.
    • Disadvantages: may add significant audio latency to your game, depending on the game and your hardware, to a point where it becomes unplayable.

    Sound Voltex

    • Enable Shared mode WASAPI patch.
    • If you run into any issues, change the audio playback device to output at 44.1khz and 16 bit.

    IIDX

    • For TDJ mode, ensure that the sound output device is set to WASAPI.
      • In SpiceTools, set -iidxsounddevice to wasapi.
    • Enable Force shared audio patch.
    • If you run into any issues, change the audio playback device to output at 44.1khz and 16 bit.
    • That's really all there is. If you use OBS or Discord to capture the game, you will not have any issues recording audio with this configuration.
    "},{"location":"extras/streamaudio/#option-2-stereo-mix","title":"Option 2 - Stereo Mix","text":"
    • Enables: recording, streaming
    • Does NOT enable: audio device sharing (voice calls while playing)
    • Advantages: nothing to set up, no added latency to audio playback
    • Disadvantages: only works with some audio cards (most Realtek devices should work), recorded audio may be delayed or off-sync

    Some sound cards have a thing called Stereo Mix, which presents itself as a recording device that mirrors everything that is being outputted from the sound card. Conveniently this can be captured even when a game has exclusive control of the audio device.

    Enabling stereo mix

    1. Ensure that you have the latest audio drivers.
      • For example, if you have a Realtek audio device, use a Realtek driver and not the generic Windows HD Audio driver.
    2. Go to Windows Sound device settings. In the Playback tab, make sure the default audio device is set to the sound card output (speakers or headphones).
    3. Go to Recording devices tab.
    4. Look for Stereo Mix. If you don't see it, right click and check \"Show Disabled Devices\" and try again.

    Capturing audio in OBS with Stereo Mix

    1. Add a new Audio Input Capture source.
    2. Set the device as Stereo Mix.
    3. You can now capture audio.
    4. You'll probably want to set to \"Monitor Off\" so you don't get duplicated audio.
    "},{"location":"extras/streamaudio/#option-3-audio-splitter-cable-lo-tech-method","title":"Option 3 - audio splitter cable (lo-tech method)","text":"
    • Enables: recording, streaming
    • Does NOT enable: audio device sharing (voice calls while playing)
    • Advantages: easy one-time set up, no added latency to audio playback
    • Disadvantages: costs money, recorded audio may be delayed or off-sync, audio may become quieter

    Equipment

    1. Buy an audio splitter cable, and a headphone extension cable.
    2. Split the audio coming out of your computer into two: one into speakers/headphones, another into the extension cable, which then goes into the \"line in\" port of your PC.

    Capturing audio in OBS

    • Add \"Line In\" as an audio input source.
    "},{"location":"extras/streamaudio/#option-4-flexasio","title":"Option 4 - FlexASIO","text":"
    • Enables: audio device sharing (voice calls while playing), recording, streaming
    • Advantages: one-time set up, does not affect other audio configuration
    • Disadvantages: not as flexible as Voicemeeter when it comes to recording, adds a small latency

    FlexASIO is a virtual ASIO service that can redirect output to various backends, including shared mode WASAPI.

    FlexASIO set up

    1. Install FlexASIO
    2. Create a FlexASIO.toml configuration file in your user folder (C:\\Users\\Your Name)
    3. Insert these lines inside your configuration file:

      backend = \"Windows WASAPI\"\nbufferSizeSamples = 386\nchannels = 2\nwasapiExclusiveMode = false\n\n[output]\nsuggestedLatencySeconds = 0.0\n

    Try to lower bufferSizeSamples for minimal latency - recommended value is 128. If you hear audio crackling, increase bufferSizeSamples.

    Sound Voltex

    • Disable Shared mode WASAPI patch. You want the game to output in exclusive mode for lower overall latency.

    IIDX

    • For TDJ mode, ensure that the sound output device is set to WASAPI.
      • In SpiceTools, set -iidxsounddevice to wasapi.
    • Disable Force shared audio patch. You want the game to output in exclusive mode for lower overall latency.

    SpiceTools set up to use ASIO

    1. Under the options tab, make sure that IIDX Sound Output Device is set to default.
    2. Directly below it is an option called IIDX ASIO Driver. Type FlexASIO into it.

    Taiko no Tatsujin Nijiiro

    1. Disable wasapi_shared in config.toml.
    2. Enable asio in config.toml.
    3. Set asio_driver to FlexASIO.
    • To capture audio, you can capture desktop audio as you normally would in OBS.
    "},{"location":"extras/streamaudio/#option-5-voicemeeter","title":"Option 5 - Voicemeeter","text":"
    • Enables: audio device sharing (voice calls while playing), recording, streaming
    • Advantages: highly configurable, adds very little latency
    • Disadvantages: can be a challenge to set up, difficult to troubleshoot when things go wrong, need to run Voicemeeter every time

    Voicemeeter is free virtual audio mixer for Windows. It allows you to \"mux\" audio input streams into audio output streams; here, we take advantage of this application to redirect the game audio so that you enable audio capture & simultaneously enable other audio streams like voice calls.

    Initial Voicemeeter set up

    1. Download Voicemeeter Potato.
      • Potato comes with all three versions - regular Voicemeeter, Banana, and Potato.
      • Regular Voicemeeter is not good enough if you are following this guide. Banana is good enough if you want to mux two audio sources (say, game audio and Discord). Potato is recommended if you want to stream to Discord via OBS using instructions in the next section.
    2. Install and REBOOT YOUR COMPUTER when prompted.
    3. Launch Voicemeeter Banana or Potato, whichever one you prefer.
    4. On the right hand side, you will see flashing red text that says \"Select Main Output Device (A1). Look immediately to the left, click on A1 with a down arrow, and choose your output device. Typically you want the one that starts with \"WDM:\", but if your audio device supports it, \"ASIO:\" option will provide lower latency.
    5. In Windows sound settings, set your default audio playback device to Voicemeeter Input (and not Voicemeeter AUX Input!)

    Discord or other voice applications

    • Configure the output device to Voicemeeter AUX Input.

    Sound Voltex

    • Disable Shared mode WASAPI patch. You want the game to output in exclusive mode for lower overall latency.

    IIDX

    • Disable Force shared audio patch. You want the game to output in exclusive mode for lower overall latency.
    • For TDJ mode, ensure that the sound output device is set to WASAPI.
      • In SpiceTools, set -iidxsounddevice to wasapi.
    • (Optionally, you can output the game audio using SpiceTools -audiobackend asio and outputting to Voicemeeter ASIO instead of doing it over WASAPI, but probably provides negligible benefit to latency)

    At this point, you may want to look up various tutorials on YouTube to learn the basics of Voicemeeter. It may be daunting at first, but once you understand the concepts, it can be a very powerful tool. Plus, you can go beyond what I demonstrate below and instead do more complicated things on your own!

    Muxing with Voicemeeter

    1. Launch the game.
    2. In Voicemeeter, you'll notice that the VU meter under Voicemeeter VAIO is showing that it is receiving game audio. You'll want to ensure \"A1\" box is green so that you route the game audio to your main output device, so you can hear the game in your ears.
    3. (Similarly, audio from the voice chat would come through Voicemeeter AUX column.)
    4. At this point, you are able to hear both the game & listen to voice chat - success!

    Capturing audio in OBS with Voicemeeter

    1. Now, how do you capture this audio for recording? The basic idea is to route game audio to Voicemeeter's virtual output device, and capturing that output device in OBS.
    2. In the Voicemeeter VAIO column, click on B1 to make it turn green. This connects game audio to B1 channel, which is Voicemeeter Output virtual audio device.
    3. In OBS, create a new Audio Input Capture source.
    4. Double click on the new source and select VoiceMeeter Output (VB-Audio VoiceMeeter VAIO) from the drop-down.
    5. Click on the gear icon on the audio source, click on Advanced Audio Properties. In the \"Audio Monitoring\" column, set it to Monitor Off. This way, you can avoid double audio in your headphones when recording.
      • (Note that if you want to stream to Discord, you'll be doing something else instead; see the steps below.)
    6. You are done. You should see the game audio come through to OBS.
    "},{"location":"extras/streamaudio/#streaming-to-discord","title":"Streaming to Discord","text":"

    Important

    To reiterate, do NOT stream in public places! Privately among friends only!

    If you followed Option 1 (force shared mode audio), as previously mentioned, all you need is to capture the game window and stream to Discord.

    If you followed other options, a bit more work is involved to stream both video and audio at the same time. One method is to capture audio and video in OBS, and screen sharing OBS to Discord. Follow these instructions:

    "},{"location":"extras/streamaudio/#setting-up-virtual-audio-monitor-in-obs","title":"Setting up Virtual Audio Monitor in OBS","text":"

    We are going to make OBS capture audio and redirect the result to a virtual monitor device. In other words, OBS will be \"outputting\" audio to a fake speaker. Since it's still outputting audio, Discord is able to capture it, but you can avoid duplicated game audio this way.

    Option 1 - Using Virtual Audio Cable

    1. Download and install Virtual Audio Cable.
    2. Go to OBS Settings, Audio, Advanced, Monitoring Device - set to CABLE Input.
    3. Go to Edit, Advanced Audio Properties. For any audio channels you want to stream, turn on monitor to \"Monitor and Output\".

    Option 2 - Using Voicemeeter Potato

    1. We are going to make use of an unused virtual input device which is only available in Potato. In Banana this feature is not present.
    2. Go to OBS Settings, Audio, Advanced, Monitoring Device - set to VoiceMeeter VAIO3 Input.
    3. Go to Edit, Advanced Audio Properties. For any audio channels you want to stream, turn on monitor to \"Monitor and Output\".
    4. In VoiceMeeter Potato, prevent VAIO3 output so that you don't hear the OBS monitor audio in your ears. You can do this by disabling A1, B1, and so on in the VAIO3 column.
    "},{"location":"extras/streamaudio/#streaming-obs-windowed-preview-to-discord","title":"Streaming OBS Windowed Preview to Discord","text":"
    1. Add the game window capture as a scene, as you normally would in OBS.
    2. Right click on OBS stage and click on Windows Projector (Preview).
    3. Resize the new window as needed.
    4. Use Discord to screen share this Windowed Projector.
    5. You're done! The screen share should include both the OBS scene and the audio.
    "},{"location":"extras/streamaudio/#troubleshooting","title":"Troubleshooting","text":"

    General

    • Game is too quiet!
      • IIDX in TDJ mode is especially quiet. Try LDJ mode if you don't have a way to amplify things.

    Voicemeeter

    • Use the right version - Banana or Potato is recommended. Regular Voicemeeter lacks features so you can't follow the steps in this guide.
    • If you hear crackling, or if you feel the latency is too high, you'll need to adjust the buffer size. This is highly dependent on your set up; it's recommended that you search \"how to fix crackling audio voicemeeter\" or \"how to reduce latency in voicemeeter\" and you'll get lots of helpful guides.

    Discord

    • If Discord fails to capture audio, go to Discord settings, Voice & Video, and enable \"Use an experimental method to capture audio from applications\". This should already be checked by default.
    "},{"location":"games/beatstreamfinal/problems/","title":"BeatStream \u30a2\u30cb\u30e0\u30c8\u30e9\u30a4\u30f4","text":""},{"location":"games/beatstreamfinal/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 6 (ADE-704A)

    Based on an AMD Embedded R Series SoC.

    CPU: Intel Celeron B810

    GPU: AMD Radeon E4690

    OS: Windows 7 Embedded

    "},{"location":"games/beatstreamfinal/problems/#my-game-doesnt-boot-after-following-the-guide","title":"My Game Doesn't Boot After Following the Guide!","text":"

    The most common problem present here is if you do not have an E:/ drive. To resolve this issue, you must modify your game with the E:/drive fix patch.

    "},{"location":"games/beatstreamfinal/problems/#my-touchscreen-monitor-isnt-working","title":"My Touchscreen Monitor Isn't Working","text":"

    Try adding the -wintouch parameter to your .bat file, if that doesn't work, check the log and make sure it works with windows. SpiceTools at this point works with the grand majority of touchscreen monitors but no doubt some outliers are out there!

    "},{"location":"games/beatstreamfinal/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/beatstreamfinal/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/beatstreamfinal/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/beatstreamfinal/setup/","title":"BeatStream \u30a2\u30cb\u30e0\u30c8\u30e9\u30a4\u30f4","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/beatstreamfinal/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done,, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/beatstreamfinal/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/beatstreamfinal/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/beatstreamfinal/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/beatstreamfinal/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    You're all done! If you have a touchscreen monitor make sure it's plugged in, it should work automatically, if it doesn't check out the advertised Common Problems/Tips section at the link below.

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/chunithmluminous/c2c/","title":"Setting Up Chunithm for Cabinet-to-Cabinet Play (Multiplayer) over the Internet","text":"

    You are most likely to have success with Multiplayer when all users are using the SAME data and options, from the same sources. Verify that each person can run the game normally before attempting to network them together.

    • Chunithm expects the cabinets to be using specific IP addresses, 192.168.139.11/12/13/14
    • To achieve this over the internet, we can use SoftEther VPN. Refer to the Setting Up SoftEther VPN Guide for more information.
    "},{"location":"games/chunithmluminous/c2c/#configuring-segatoolsini-game-assignments","title":"Configuring segatools.ini & Game Assignments","text":"

    segatools.ini

    [netnev]\nenable=1\naddrSuffix= last 2 digits of your SoftEther IP\n\n[keychip]\nenable=1\nsubnet=192.168.139.0\nid=(Everyone needs a seperate keychip. If you play on a remote network, chances are you already have your own keychip. If not, you can use the example keychips below.)\n;example keychips: A61E-01D02321145 ; A61E-01A30831145 ; A61E-01E38091145 ; A61E-01E46241145\n\n[system]\ndipsw1=1\n;This has changed since Luminous. Previously if you wish to perform cab-to-cab link, you need to set this to 1 on the Server machine, and 0 on all other client machines.\n;This change is no longer needed, just keep this set to 1 on all machines.\n

    GAME ASSIGNMENTS

    • After saving your segatools.ini, launch the game and go into the Service Menu > and go to GAME ASSIGNMENTS.

    • Enable CABINET-TO-CABINET PLAY, and make sure all machine are on the same group (Group A for example).

    • Set one machine to STANDARD, and all other machines to FOLLOW THE STANDARD .

    Exit the Service Menu and load into Attract Mode. If the game passes the Group Check then chances are you're good to go! You can now login to a credit and open a cab-to-cab link request to check if the connection is working properly!

    "},{"location":"games/chunithmluminous/c2c/#how-to-link","title":"How to Link?","text":"

    If you're new to Chunithm and have never tried link-play before and you have no idea how, keep reading.

    • Login to a credit.

    • If you're hosting a cab-to-cab session, choose a song first, then scroll to the far left and press Confirm. The cab-to-cab request is now open.

    • If you're connecting, navigate to the \"Cabinet-to-Cabinet Play\" tab and wait for other players to create a session.

    If you are able to see each other's session, congrats! You can now enjoy some cab-to-cab chain action!

    "},{"location":"games/chunithmluminous/c2c/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmluminous/controllers/","title":"CHUNITHM LUMINOUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    segatools, by default, only accepts keyboard input and does not recognize any controllers. However, it can be configured with IO DLLs to add support for controllers.

    The controller you plan on using should also be provided with these IO DLLs. If unsure, check the support section for your controller, or contact the vendor directly. Alternate options for the most common controllers are listed below.

    These IO DLLs should be copied to your game's App\\bin\\ folder and referenced in segatools.ini under the [chuniio] section.

    If you have a single DLL, uncomment the path= line by removing the leading semicolon (;), then add your DLL's file name after the =:

    [chuniio]\n; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.\n; (will use chu2to3 engine internally)\n;(1)!\npath=controller.dll\n
    1. Note that there is no leading semicolon.

    If you have two DLLs, ending in _x86.dll and _x64.dll (or _chusan.dll and _amdaemon.dll), uncomment the path32= and path64= lines by removing the leading semicolon (;), then add your DLLs after the =:

    [chuniio]\n; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.\n; x86 chuniio to path32, x64 to path64. Both are necessary.\n;(1)!\npath32=controller_x86.dll\npath64=controller_x64.dll\n
    1. Note that there is no leading semicolon.
    "},{"location":"games/chunithmluminous/controllers/#keyboard","title":"Keyboard","text":"

    Keyboard is the default input method, and while not recommended for playing the game, it is useful for testing purposes.

    The default layout uses SDFGHJKL for slider input, and Space Bar for the AIRs.

    If you wish to change the default keybinds, an explanation on how to set these is included above the [io3] section in your segatools.ini.

    "},{"location":"games/chunithmluminous/controllers/#brokenithm","title":"Brokenithm","text":"

    Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom half of the screen as the ground slider, and sliding into the upper half activates the air sensors.

    "},{"location":"games/chunithmluminous/controllers/#android","title":"Android","text":"

    Warning

    Your computer and your Android device must be on the same local network.

    • Download the latest version of Brokenithm-Android and install it on your Android device.
    • Download the latest version of Brokenithm-Android-Server and extract only brokenithm_server.exe to your App\\bin\\ folder.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run brokenithm_server.exe. A command prompt window should open, saying that it is waiting for a device on port 52468.
    • Open the Brokenithm app on your Android device. Enter your computer's IP address in the Address box on the top right, then tap Start.
    • Run the game as normal.
    Getting your computer's IP address

    Open Settings -> Network and Internet and select Properties. Scroll down to the bottom and check the address under the IPv4 address field:

    That is your computer's IP address.

    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted brokenithm_server.exe to App\\bin\\ as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    Improving latency

    You can improve latency by running Brokenithm with your Android device tethered to your computer. However, this requires a little extra setup:

    • Connect your Android device to your computer with a USB cable.
    • If you haven't enabled Developer options on your device, do it by navigating to the \"About\" page in your phone's settings, then tap \"Build number\" seven times. This varies by device, so if unsure, look up the instructions for your specific one.
    • Navigate to Developer options and enable USB debugging.
    • On your computer, download and extract Android SDK Platform Tools to your App\\bin\\ folder.
    • Navigate to the App\\bin\\platform-tools folder in File Explorer, click on the address bar, type cmd, and hit Enter to open a command prompt.
    • In the command prompt, type the following command:
    adb reverse tcp:52468 tcp:52468\n
    • Start brokenithm_server.exe.
    • On your Android device, open Brokenithm, and change the address to 0.0.0.0.
      • If the text box to the left of the \"SETTINGS\" button say \"UDP\", tap on it once to switch to \"TCP\" mode.
    • Tap on \"START\", and you will now be connected via the USB cable.
    • You can now start the game as normal.

    The next time you play the game, you only need to run the adb reverse ... command again. To do this automatically when the game starts, add a line to the start.bat script before the brokenithm_server line:

    @echo off\n\npushd %~dp0\n\nstart /min platform-tools\\adb reverse tcp:52468 tcp:52468\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmluminous/controllers/#iosipados","title":"iOS/iPadOS","text":"
    • Install Brokenithm on your iOS/iPadOS device by joining the Brokenithm TestFlight (iOS 18 only).
      • If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different IPA with Sideloadly.
    • If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, uninstall it.
    • Install the non-Microsoft Store version of iTunes from the website.
    • Download the latest version of Brokenithm-Evolved-iOS server and extract it to App\\bin\\Brokenithm-Server.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run App\\bin\\Brokenithm-Server\\Brokenithm-Evolved-iOS.exe. A command prompt window should open, saying that it is waiting for a device.
    • On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a USB cable.
    • Run the game as normal.
    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted the server to App\\bin\\Brokenithm-Server as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min Brokenithm-Server\\Brokenithm-Evolved-iOS.exe\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmluminous/controllers/#tasoller","title":"TASOLLER","text":"

    Warning

    This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the controller after January 2022, the update should have already been applied.

    If you've purchased the controller before then, you will need to update the touch firmware by following the instructions on DJ-DAO's support page.

    • Install the custom Host and LED firmware to your controller. Instructions on how to do so is provided in the linked archive.
    • Pick one of these two TASOLLER IO DLLs to download and extract to your App\\bin folder. They should be functionally the same, but if one doesn't work, you can try the other:
      • chuniio-tasoller (download lib.zip)
      • chuniio-rs (download chusan.zip)
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_tasoller.dll;(1)!\npath64=chuniio_tasoller_x64.dll;(2)!\n
    1. Or chuniio_tasoller_v2_chusan.dll if you downloaded chuniio-rs.
    2. Or chuniio_tasoller_v2_amdaemon.dll if you downloaded chuniio-rs.

    3. Connect the controller to your computer, and then start the game.

    "},{"location":"games/chunithmluminous/controllers/#yubideck","title":"YubiDeck","text":"
    • Switch your YubiDeck to HID output mode. Instructions on how to do so are provided in the YubiDeck manual.
    • Download the latest version of YubiDeck IO DLLs and extract it to your App\\bin folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_yubideck_chusan.dll\npath64=chuniio_yubideck_amdaemon.dll\n
    • Optionally, reference the included AimeIO DLL to use the controller's built-in card reader:
    [aimeio]\npath=aimeio_yubideck.dll\n
    • Connect the controller to your computer, and then start the game.
    "},{"location":"games/chunithmluminous/controllers/#arcade-hardware-and-other-controllers","title":"Arcade hardware and other controllers","text":"

    If you're interested in using a cabinet slider and air sensors, or possibly even making your own controller, the Cons&Stuff website and Discord community is a great place to start!

    "},{"location":"games/chunithmluminous/setup/","title":"CHUNITHM LUMINOUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of CHUNITHM

    You'll want to create a new folder for the game and start from scratch. CHUNITHM DOES NOT like being extracted over old data!

    "},{"location":"games/chunithmluminous/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create another empty folder named AppData next to them. It should now look like below.

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/chunithmluminous/setup/#updating-the-base-game","title":"Updating the base game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    "},{"location":"games/chunithmluminous/setup/#installing-option-data","title":"Installing option data","text":"

    CHUNITHM content updates are distributed through option folders instead of patching the base game. They are named A???, with each ? being a number. Custom options distributed by the community might use letters instead, to distinguish them from official ones.

    Extract any options you've downloaded into the Option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    "},{"location":"games/chunithmluminous/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has a file named ICF1, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions.

    Showing file extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/chunithmluminous/setup/#installing-unprotected-executables","title":"Installing unprotected executables","text":"

    CHUNITHM executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of chusanApp.exe and amdaemon.exe for your game version. If these weren't provided with your data, join the Discord for assistance.

    Copy chusanApp.exe and amdaemon.exe to the bin folder of your game data. Agree to overwrite when asked.

    "},{"location":"games/chunithmluminous/setup/#patching-the-game","title":"Patching the game","text":"

    Go through the Web Patching guide to learn how to use a web patcher.

    There are many patches for CHUNITHM.

    We will only bring up the ones we think could be genuinely useful.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    Patch Recommendation Description Force shared audio mode Either Force the game to use shared mode audio output, letting you listen to other audio sources while the game is running at the cost of audio latency. Force 2 channel audio output Either Try enabling this patch if you don't get audio output at all. Disable song select timer Either Disables the song select timer. No encryption ON Disable encrypting network requests. Required if you plan to run a local server. No TLS ON Disable checking if the server is HTTPS or not. Required if you plan to run a local server. Bypass 1080p monitor check Either Disable checking if the monitor is 1080p when enabling 120FPS. Enable if you cannot set your monitor to 1080p. Bypass 120Hz monitor check Either Disable checking if the monitor is exactly 120Hz when enabling 120FPS. Enable if you cannot set your monitor to 120Hz."},{"location":"games/chunithmluminous/setup/#installing-segatools","title":"Installing segatools","text":"
    • Head over to segatools releases and download segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find chusan.zip and extract it to the App\\bin folder in your game data.

    You should now have a few more files inside the folder, as highlighted:

    "},{"location":"games/chunithmluminous/setup/#configuring-segatools","title":"Configuring segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App\\bin\\segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key.

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/chunithmluminous/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../Option\nappdata=../../AppData\n
    "},{"location":"games/chunithmluminous/setup/#system-formerly-gpio","title":"[system] (formerly [gpio])","text":"

    Warning

    As of 2024-08-20, the [gpio] section in segatools has been renamed to [system].

    • If you have a 120Hz monitor, set dipsw2 and dipsw3 to 0:
    [system]\ndipsw2=0\ndipsw3=0\n
    • If you have a 60Hz monitor, set dipsw2 and dipsw3 to 1:
    [system]\ndipsw2=1\ndipsw3=1\n
    "},{"location":"games/chunithmluminous/setup/#gfx","title":"[gfx]","text":"
    • Set windowed to 0 to run in fullscreen mode and 1 to run in windowed mode.
    • If you have multiple monitors and you're running in fullscreen mode (windowed=0), set monitor to the index of the monitor you want to run the game on.
    Getting the monitor index

    Navigate to Windows display settings. Each monitor should be assigned a number. The monitor index is that number minus one. For example, monitor 2 means monitor index 1.

    "},{"location":"games/chunithmluminous/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App\\bin\\DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/chunithmluminous/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/chunithmluminous/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/chunithmluminous/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/chunithmluminous/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App\\bin\\start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/chunithmluminous/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/chunithmluminous/setup/#game-assignments","title":"GAME ASSIGNMENTS","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    Start the game by running App\\bin\\start.bat. Let the game load until it reaches the screen below.

    Press your Test button (default F1) to enter the service menu. Use the Service button (default F2) to navigate the menu, and Test button to select an option.

    Navigate to \u30b2\u30fc\u30e0\u8a2d\u5b9a (GAME ASSIGNMENTS, the 4th option).

    Select \u30b0\u30eb\u30fc\u30d7\u5185\u57fa\u6e96\u6a5f\u8a2d\u5b9a (SET STANDARD IN GROUP, the second option) and toggle this setting to \u57fa\u6e96\u6a5f (STANDARD).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu.

    "},{"location":"games/chunithmluminous/setup/#close-setting","title":"CLOSE SETTING","text":"

    Navigate to \u9589\u5e97\u8a2d\u5b9a (CLOSE SETTING, the 10th option).

    Navigate to \u6642 (HOUR, the 2nd option) and use the Service button to toggle the setting until it says \u5168\u6642\u523b (ALL TIME).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu, then select \u7d42\u4e86 (also the last option) in the main menu to exit the service menu.

    "},{"location":"games/chunithmluminous/setup/#waiting-for-distribution-server","title":"Waiting for Distribution Server","text":"

    If you're stuck at the Waiting for Distribution Server screen below, close the game and relaunch.

    You're all done! The game should load up properly now.

    You can add coins using the Coin key (default F3) and card in by holding the Enter key.

    "},{"location":"games/chunithmluminous/setup/#further-configuration","title":"Further configuration","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmluminous/troubleshooting/","title":"CHUNITHM LUMINOUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/chunithmluminous/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things, the most common of which are:

    • amdaemon crashing in the background. Make sure that the config_*.json files have valid syntax, your ICF files are correct, and the OpenSSL fix is applied on Intel Core 10th Gen CPUs and newer.
    • Using the incorrect dipswitch settings for your refresh rate (e.g. dipsw3=0 on a 60Hz screen). Refer to the setup guide to fix it.
    • Enabling 120FPS on a monitor that is not exactly 120Hz or exactly 1080p. If you cannot set your monitor's refresh rate to 120Hz, apply the \"Bypass 120Hz monitor check\"/\"Bypass 1080p monitor check\" on a CHUNITHM web patcher (see Resources).
    Capturing logs from amdaemon for troubleshooting

    To assist with troubleshooting, a script can be used to capture logs from amdaemon. Create a file named amdaemontest.bat in App\\bin, then paste the code block below into the file.

    @echo off\ncls\necho Attempting to run AM Daemon ...\necho Window should close after 30 seconds\necho Log will be generated at amdaemontest.txt\ncall :sub >amdaemontest.txt\nexit /b\n\n:sub\nset OPENSSL_ia32cap=:~0x20000000\npushd %~dp0\nstart /b \"AM Daemon\" /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\nping 127.0.0.1 -n 31 > nul && taskkill /im amdaemon.exe\n

    Double-click it to run. The script should run for 30 seconds, and you will get a file named amdaemontest.txt in App\\bin, which you can send to help people troubleshoot your issue.

    "},{"location":"games/chunithmluminous/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot!","text":"

    CHUNITHM game files consist of thousands of small XML files, which Windows Defender takes a long time to scan through. Add your game folder to the Windows Defender exclusion list.

    Danger

    Doing this will prevent Windows Defender from scanning your game folder for viruses. Only do this if you trust the source of the data.

    "},{"location":"games/chunithmluminous/troubleshooting/#my-game-is-running-too-slowfast","title":"My game is running too slow/fast","text":"

    The game could be running under or over its required refresh rate.

    • Make sure V-Sync isn't disabled in your graphics settings (called \"Vertical sync\" in NVIDIA Control Panel and \"Wait for Vertical Refresh\" in AMD Control Panel.)
    • Make sure your monitor's refresh rate is set to 60Hz or 120Hz.

    It could also be that your computer's performance isn't good enough to keep a steady framerate.

    "},{"location":"games/chunithmluminous/troubleshooting/#my-game-is-stuttering","title":"My game is stuttering","text":"

    For NVIDIA users, create an override for chusanApp.exe in NVIDIA Control Panel and change \"Power management mode\" to \"Prefer maximum performance\".

    "},{"location":"games/chunithmluminous/troubleshooting/#my-game-crashes-when-i-tab-out-of-fullscreen","title":"My game crashes when I tab out of fullscreen!","text":"

    As the game is intended to run on arcade hardware, it doesn't like being minimized.

    One workaround for this is to use DXVK. Download the latest version from releases. This will be a dxvk-x.y.z.tar.gz file, which you can open using 7zip. Navigate to the x32 folder, and copy the d3d9.dll file to your game's App\\bin folder, agreeing to overwrite when asked.

    You should now be able to tab out of fullscreen without crashing the game.

    Warning

    The game will not ignore inputs when out of focus.

    This means any controller inputs will still be accepted, so try not to lean onto your slider whilst tabbed out!

    This also means that you can accidentally enter the service menu by hitting your Test key even if the game is minimised. If you were in the middle of a credit, your scores will be lost.

    "},{"location":"games/chunithmluminous/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    CHUNITHM uses WASAPI exclusive mode for audio to get better latency.

    You can apply the \"Shared Audio\" patch on a CHUNITHM web patcher (see Resources) to hear audio outside of the game at the cost of audio latency.

    "},{"location":"games/chunithmluminous/troubleshooting/#cabinet-to-cabinetc2c-fixes","title":"Cabinet-to-Cabinet(c2c) Fixes","text":"

    c2c can have many problems but you can fix most of them by applying the \"Patch for head-to-head play\" and disabling \"Set all timers to 999\" on a CHUNITHM web patcher (see Resources).

    If the above does not work then please ensure both machines have the exact same data and can communicate with each other if they cannot then you can try disabling firewalls or changing the c2c group.

    "},{"location":"games/chunithmnew/c2c/","title":"Setting Up Chunithm for Cabinet-to-Cabinet Play (Multiplayer) over the Internet","text":"

    You are most likely to have success with Multiplayer when all users are using the SAME data and options, from the same sources. Verify that each person can run the game normally before attempting to network them together.

    • Chunithm expects the cabinets to be using specific IP addresses, 192.168.139.11/12/13/14
    • To achieve this over the internet, we can use SoftEther VPN. Refer to the Setting Up SoftEther VPN Guide for more information.
    "},{"location":"games/chunithmnew/c2c/#configuring-segatoolsini-game-assignments","title":"Configuring segatools.ini & Game Assignments","text":"

    segatools.ini

    [netnev]\nenable=1\naddrSuffix= last 2 digits of your SoftEther IP\n\n[keychip]\nenable=1\nsubnet=192.168.139.0\nid=(Everyone needs a seperate keychip. If you play on a remote network, chances are you already have your own keychip. If not, you can use the example keychips below.)\n;example keychips: A61E-01D02321145 ; A61E-01A30831145 ; A61E-01E38091145 ; A61E-01E46241145\n\n[system]\ndipsw1=1\n;Set this to 1 on the Server machine, and 0 on all other client machines.\n;If your game gets stuck on \"Checking for Dist Server\", try setting this to 1 on all machines and continue following the steps.\n

    GAME ASSIGNMENTS

    • After saving your segatools.ini, launch the game and go into the Service Menu > and go to GAME ASSIGNMENTS.

    • Enable CABINET-TO-CABINET PLAY, and make sure all machine are on the same group (Group A for example).

    • Set one machine to STANDARD, and all other machines to FOLLOW THE STANDARD .

    Exit the Service Menu and load into Attract Mode. If the game passes the Group Check then chances are you're good to go! You can now login to a credit and open a cab-to-cab link request to check if the connection is working properly!

    "},{"location":"games/chunithmnew/c2c/#how-to-link","title":"How to Link?","text":"

    If you're new to Chunithm and have never tried link-play before and you have no idea how, keep reading.

    • Login to a credit.

    • If you're hosting a cab-to-cab session, choose a song first, then scroll to the far left and press Confirm. The cab-to-cab request is now open.

    • If you're connecting, navigate to the \"Cabinet-to-Cabinet Play\" tab and wait for other players to create a session.

    If you are able to see each other's session, congrats! You can now enjoy some cab-to-cab chain action!

    "},{"location":"games/chunithmnew/c2c/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmnew/controllers/","title":"CHUNITHM NEW","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    segatools, by default, only accepts keyboard input and does not recognize any controllers. However, it can be configured with IO DLLs to add support for controllers.

    The controller you plan on using should also be provided with these IO DLLs. If unsure, check the support section for your controller, or contact the vendor directly. Alternate options for the most common controllers are listed below.

    These IO DLLs should be copied to your game's App\\bin\\ folder and referenced in segatools.ini under the [chuniio] section.

    If you have a single DLL, uncomment the path= line by removing the leading semicolon (;), then add your DLL's file name after the =:

    [chuniio]\n; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.\n; (will use chu2to3 engine internally)\n;(1)!\npath=controller.dll\n
    1. Note that there is no leading semicolon.

    If you have two DLLs, ending in _x86.dll and _x64.dll (or _chusan.dll and _amdaemon.dll), uncomment the path32= and path64= lines by removing the leading semicolon (;), then add your DLLs after the =:

    [chuniio]\n; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.\n; x86 chuniio to path32, x64 to path64. Both are necessary.\n;(1)!\npath32=controller_x86.dll\npath64=controller_x64.dll\n
    1. Note that there is no leading semicolon.
    "},{"location":"games/chunithmnew/controllers/#keyboard","title":"Keyboard","text":"

    Keyboard is the default input method, and while not recommended for playing the game, it is useful for testing purposes.

    The default layout uses SDFGHJKL for slider input, and Space Bar for the AIRs.

    If you wish to change the default keybinds, an explanation on how to set these is included above the [io3] section in your segatools.ini.

    "},{"location":"games/chunithmnew/controllers/#brokenithm","title":"Brokenithm","text":"

    Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom half of the screen as the ground slider, and sliding into the upper half activates the air sensors.

    "},{"location":"games/chunithmnew/controllers/#android","title":"Android","text":"

    Warning

    Your computer and your Android device must be on the same local network.

    • Download the latest version of Brokenithm-Android and install it on your Android device.
    • Download the latest version of Brokenithm-Android-Server and extract only brokenithm_server.exe to your App\\bin\\ folder.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run brokenithm_server.exe. A command prompt window should open, saying that it is waiting for a device on port 52468.
    • Open the Brokenithm app on your Android device. Enter your computer's IP address in the Address box on the top right, then tap Start.
    • Run the game as normal.
    Getting your computer's IP address

    Open Settings -> Network and Internet and select Properties. Scroll down to the bottom and check the address under the IPv4 address field:

    That is your computer's IP address.

    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted brokenithm_server.exe to App\\bin\\ as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    Improving latency

    You can improve latency by running Brokenithm with your Android device tethered to your computer. However, this requires a little extra setup:

    • Connect your Android device to your computer with a USB cable.
    • If you haven't enabled Developer options on your device, do it by navigating to the \"About\" page in your phone's settings, then tap \"Build number\" seven times. This varies by device, so if unsure, look up the instructions for your specific one.
    • Navigate to Developer options and enable USB debugging.
    • On your computer, download and extract Android SDK Platform Tools to your App\\bin\\ folder.
    • Navigate to the App\\bin\\platform-tools folder in File Explorer, click on the address bar, type cmd, and hit Enter to open a command prompt.
    • In the command prompt, type the following command:
    adb reverse tcp:52468 tcp:52468\n
    • Start brokenithm_server.exe.
    • On your Android device, open Brokenithm, and change the address to 0.0.0.0.
      • If the text box to the left of the \"SETTINGS\" button say \"UDP\", tap on it once to switch to \"TCP\" mode.
    • Tap on \"START\", and you will now be connected via the USB cable.
    • You can now start the game as normal.

    The next time you play the game, you only need to run the adb reverse ... command again. To do this automatically when the game starts, add a line to the start.bat script before the brokenithm_server line:

    @echo off\n\npushd %~dp0\n\nstart /min platform-tools\\adb reverse tcp:52468 tcp:52468\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmnew/controllers/#iosipados","title":"iOS/iPadOS","text":"
    • Install Brokenithm on your iOS/iPadOS device by joining the Brokenithm TestFlight (iOS 18 only).
      • If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different IPA with Sideloadly.
    • If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, uninstall it.
    • Install the non-Microsoft Store version of iTunes from the website.
    • Download the latest version of Brokenithm-Evolved-iOS server and extract it to App\\bin\\Brokenithm-Server.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run App\\bin\\Brokenithm-Server\\Brokenithm-Evolved-iOS.exe. A command prompt window should open, saying that it is waiting for a device.
    • On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a USB cable.
    • Run the game as normal.
    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted the server to App\\bin\\Brokenithm-Server as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min Brokenithm-Server\\Brokenithm-Evolved-iOS.exe\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmnew/controllers/#tasoller","title":"TASOLLER","text":"

    Warning

    This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the controller after January 2022, the update should have already been applied.

    If you've purchased the controller before then, you will need to update the touch firmware by following the instructions on DJ-DAO's support page.

    • Install the custom Host and LED firmware to your controller. Instructions on how to do so is provided in the linked archive.
    • Pick one of these two TASOLLER IO DLLs to download and extract to your App\\bin folder. They should be functionally the same, but if one doesn't work, you can try the other:
      • chuniio-tasoller (download lib.zip)
      • chuniio-rs (download chusan.zip)
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_tasoller.dll;(1)!\npath64=chuniio_tasoller_x64.dll;(2)!\n
    1. Or chuniio_tasoller_v2_chusan.dll if you downloaded chuniio-rs.
    2. Or chuniio_tasoller_v2_amdaemon.dll if you downloaded chuniio-rs.

    3. Connect the controller to your computer, and then start the game.

    "},{"location":"games/chunithmnew/controllers/#yubideck","title":"YubiDeck","text":"
    • Switch your YubiDeck to HID output mode. Instructions on how to do so are provided in the YubiDeck manual.
    • Download the latest version of YubiDeck IO DLLs and extract it to your App\\bin folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_yubideck_chusan.dll\npath64=chuniio_yubideck_amdaemon.dll\n
    • Optionally, reference the included AimeIO DLL to use the controller's built-in card reader:
    [aimeio]\npath=aimeio_yubideck.dll\n
    • Connect the controller to your computer, and then start the game.
    "},{"location":"games/chunithmnew/controllers/#arcade-hardware-and-other-controllers","title":"Arcade hardware and other controllers","text":"

    If you're interested in using a cabinet slider and air sensors, or possibly even making your own controller, the Cons&Stuff website and Discord community is a great place to start!

    "},{"location":"games/chunithmnew/setup/","title":"CHUNITHM NEW","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of CHUNITHM

    You'll want to create a new folder for the game and start from scratch. CHUNITHM DOES NOT like being extracted over old data!

    "},{"location":"games/chunithmnew/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create another empty folder named AppData next to them. It should now look like below.

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/chunithmnew/setup/#updating-the-base-game","title":"Updating the base game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    "},{"location":"games/chunithmnew/setup/#installing-option-data","title":"Installing option data","text":"

    CHUNITHM content updates are distributed through option folders instead of patching the base game. They are named A???, with each ? being a number. Custom options distributed by the community might use letters instead, to distinguish them from official ones.

    Extract any options you've downloaded into the Option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    "},{"location":"games/chunithmnew/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has a file named ICF1, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions.

    Showing file extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/chunithmnew/setup/#installing-unprotected-executables","title":"Installing unprotected executables","text":"

    CHUNITHM executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of chusanApp.exe and amdaemon.exe for your game version. If these weren't provided with your data, join the Discord for assistance.

    Copy chusanApp.exe and amdaemon.exe to the bin folder of your game data. Agree to overwrite when asked.

    "},{"location":"games/chunithmnew/setup/#patching-the-game","title":"Patching the game","text":"

    Go through the Web Patching guide to learn how to use a web patcher.

    There are many patches for CHUNITHM.

    We will only bring up the ones we think could be genuinely useful.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    Patch Recommendation Description Force shared audio mode Either Force the game to use shared mode audio output, letting you listen to other audio sources while the game is running at the cost of audio latency. Force 2 channel audio output Either Try enabling this patch if you don't get audio output at all. Disable song select timer Either Disables the song select timer. No encryption ON Disable encrypting network requests. Required if you plan to run a local server. No TLS ON Disable checking if the server is HTTPS or not. Required if you plan to run a local server. Bypass 1080p monitor check Either Disable checking if the monitor is 1080p when enabling 120FPS. Enable if you cannot set your monitor to 1080p. Bypass 120Hz monitor check Either Disable checking if the monitor is exactly 120Hz when enabling 120FPS. Enable if you cannot set your monitor to 120Hz."},{"location":"games/chunithmnew/setup/#installing-segatools","title":"Installing segatools","text":"
    • Head over to segatools releases and download segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find chusan.zip and extract it to the App\\bin folder in your game data.

    You should now have a few more files inside the folder, as highlighted:

    "},{"location":"games/chunithmnew/setup/#configuring-segatools","title":"Configuring segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App\\bin\\segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key.

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/chunithmnew/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../Option\nappdata=../../AppData\n
    "},{"location":"games/chunithmnew/setup/#system-formerly-gpio","title":"[system] (formerly [gpio])","text":"

    Warning

    As of 2024-08-20, the [gpio] section in segatools has been renamed to [system].

    • If you have a 120Hz monitor, set dipsw2 and dipsw3 to 0:
    [system]\ndipsw2=0\ndipsw3=0\n
    • If you have a 60Hz monitor, set dipsw2 and dipsw3 to 1:
    [system]\ndipsw2=1\ndipsw3=1\n
    "},{"location":"games/chunithmnew/setup/#gfx","title":"[gfx]","text":"
    • Set windowed to 0 to run in fullscreen mode and 1 to run in windowed mode.
    • If you have multiple monitors and you're running in fullscreen mode (windowed=0), set monitor to the index of the monitor you want to run the game on.
    Getting the monitor index

    Navigate to Windows display settings. Each monitor should be assigned a number. The monitor index is that number minus one. For example, monitor 2 means monitor index 1.

    "},{"location":"games/chunithmnew/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App\\bin\\DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/chunithmnew/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/chunithmnew/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/chunithmnew/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/chunithmnew/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App\\bin\\start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/chunithmnew/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/chunithmnew/setup/#game-assignments","title":"GAME ASSIGNMENTS","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    Start the game by running App\\bin\\start.bat. Let the game load until it reaches the screen below.

    Press your Test button (default F1) to enter the service menu. Use the Service button (default F2) to navigate the menu, and Test button to select an option.

    Navigate to \u30b2\u30fc\u30e0\u8a2d\u5b9a (GAME ASSIGNMENTS, the 4th option).

    Select \u30b0\u30eb\u30fc\u30d7\u5185\u57fa\u6e96\u6a5f\u8a2d\u5b9a (SET STANDARD IN GROUP, the second option) and toggle this setting to \u57fa\u6e96\u6a5f (STANDARD).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu.

    "},{"location":"games/chunithmnew/setup/#close-setting","title":"CLOSE SETTING","text":"

    Navigate to \u9589\u5e97\u8a2d\u5b9a (CLOSE SETTING, the 10th option).

    Navigate to \u6642 (HOUR, the 2nd option) and use the Service button to toggle the setting until it says \u5168\u6642\u523b (ALL TIME).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu, then select \u7d42\u4e86 (also the last option) in the main menu to exit the service menu.

    "},{"location":"games/chunithmnew/setup/#waiting-for-distribution-server","title":"Waiting for Distribution Server","text":"

    If you're stuck at the Waiting for Distribution Server screen below, close the game and relaunch.

    You're all done! The game should load up properly now.

    You can add coins using the Coin key (default F3) and card in by holding the Enter key.

    "},{"location":"games/chunithmnew/setup/#further-configuration","title":"Further configuration","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmnew/troubleshooting/","title":"CHUNITHM NEW","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/chunithmnew/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things, the most common of which are:

    • amdaemon crashing in the background. Make sure that the config_*.json files have valid syntax, your ICF files are correct, and the OpenSSL fix is applied on Intel Core 10th Gen CPUs and newer.
    • Using the incorrect dipswitch settings for your refresh rate (e.g. dipsw3=0 on a 60Hz screen). Refer to the setup guide to fix it.
    • Enabling 120FPS on a monitor that is not exactly 120Hz or exactly 1080p. If you cannot set your monitor's refresh rate to 120Hz, apply the \"Bypass 120Hz monitor check\"/\"Bypass 1080p monitor check\" on a CHUNITHM web patcher (see Resources).
    Capturing logs from amdaemon for troubleshooting

    To assist with troubleshooting, a script can be used to capture logs from amdaemon. Create a file named amdaemontest.bat in App\\bin, then paste the code block below into the file.

    @echo off\ncls\necho Attempting to run AM Daemon ...\necho Window should close after 30 seconds\necho Log will be generated at amdaemontest.txt\ncall :sub >amdaemontest.txt\nexit /b\n\n:sub\nset OPENSSL_ia32cap=:~0x20000000\npushd %~dp0\nstart /b \"AM Daemon\" /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\nping 127.0.0.1 -n 31 > nul && taskkill /im amdaemon.exe\n

    Double-click it to run. The script should run for 30 seconds, and you will get a file named amdaemontest.txt in App\\bin, which you can send to help people troubleshoot your issue.

    "},{"location":"games/chunithmnew/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot!","text":"

    CHUNITHM game files consist of thousands of small XML files, which Windows Defender takes a long time to scan through. Add your game folder to the Windows Defender exclusion list.

    Danger

    Doing this will prevent Windows Defender from scanning your game folder for viruses. Only do this if you trust the source of the data.

    "},{"location":"games/chunithmnew/troubleshooting/#my-game-is-running-too-slowfast","title":"My game is running too slow/fast","text":"

    The game could be running under or over its required refresh rate.

    • Make sure V-Sync isn't disabled in your graphics settings (called \"Vertical sync\" in NVIDIA Control Panel and \"Wait for Vertical Refresh\" in AMD Control Panel.)
    • Make sure your monitor's refresh rate is set to 60Hz or 120Hz.

    It could also be that your computer's performance isn't good enough to keep a steady framerate.

    "},{"location":"games/chunithmnew/troubleshooting/#my-game-is-stuttering","title":"My game is stuttering","text":"

    For NVIDIA users, create an override for chusanApp.exe in NVIDIA Control Panel and change \"Power management mode\" to \"Prefer maximum performance\".

    "},{"location":"games/chunithmnew/troubleshooting/#my-game-crashes-when-i-tab-out-of-fullscreen","title":"My game crashes when I tab out of fullscreen!","text":"

    As the game is intended to run on arcade hardware, it doesn't like being minimized.

    One workaround for this is to use DXVK. Download the latest version from releases. This will be a dxvk-x.y.z.tar.gz file, which you can open using 7zip. Navigate to the x32 folder, and copy the d3d9.dll file to your game's App\\bin folder, agreeing to overwrite when asked.

    You should now be able to tab out of fullscreen without crashing the game.

    Warning

    The game will not ignore inputs when out of focus.

    This means any controller inputs will still be accepted, so try not to lean onto your slider whilst tabbed out!

    This also means that you can accidentally enter the service menu by hitting your Test key even if the game is minimised. If you were in the middle of a credit, your scores will be lost.

    "},{"location":"games/chunithmnew/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    CHUNITHM uses WASAPI exclusive mode for audio to get better latency.

    You can apply the \"Shared Audio\" patch on a CHUNITHM web patcher (see Resources) to hear audio outside of the game at the cost of audio latency.

    "},{"location":"games/chunithmnew/troubleshooting/#cabinet-to-cabinetc2c-fixes","title":"Cabinet-to-Cabinet(c2c) Fixes","text":"

    c2c can have many problems but you can fix most of them by applying the \"Patch for head-to-head play\" and disabling \"Set all timers to 999\" on a CHUNITHM web patcher (see Resources).

    If the above does not work then please ensure both machines have the exact same data and can communicate with each other if they cannot then you can try disabling firewalls or changing the c2c group.

    "},{"location":"games/chunithmnewplus/c2c/","title":"Setting Up Chunithm for Cabinet-to-Cabinet Play (Multiplayer) over the Internet","text":"

    You are most likely to have success with Multiplayer when all users are using the SAME data and options, from the same sources. Verify that each person can run the game normally before attempting to network them together.

    • Chunithm expects the cabinets to be using specific IP addresses, 192.168.139.11/12/13/14
    • To achieve this over the internet, we can use SoftEther VPN. Refer to the Setting Up SoftEther VPN Guide for more information.
    "},{"location":"games/chunithmnewplus/c2c/#configuring-segatoolsini-game-assignments","title":"Configuring segatools.ini & Game Assignments","text":"

    segatools.ini

    [netnev]\nenable=1\naddrSuffix= last 2 digits of your SoftEther IP\n\n[keychip]\nenable=1\nsubnet=192.168.139.0\nid=(Everyone needs a seperate keychip. If you play on a remote network, chances are you already have your own keychip. If not, you can use the example keychips below.)\n;example keychips: A61E-01D02321145 ; A61E-01A30831145 ; A61E-01E38091145 ; A61E-01E46241145\n\n[system]\ndipsw1=1\n;Set this to 1 on the Server machine, and 0 on all other client machines.\n;If your game gets stuck on \"Checking for Dist Server\", try setting this to 1 on all machines and continue following the steps.\n

    GAME ASSIGNMENTS

    • After saving your segatools.ini, launch the game and go into the Service Menu > and go to GAME ASSIGNMENTS.

    • Enable CABINET-TO-CABINET PLAY, and make sure all machine are on the same group (Group A for example).

    • Set one machine to STANDARD, and all other machines to FOLLOW THE STANDARD .

    Exit the Service Menu and load into Attract Mode. If the game passes the Group Check then chances are you're good to go! You can now login to a credit and open a cab-to-cab link request to check if the connection is working properly!

    "},{"location":"games/chunithmnewplus/c2c/#how-to-link","title":"How to Link?","text":"

    If you're new to Chunithm and have never tried link-play before and you have no idea how, keep reading.

    • Login to a credit.

    • If you're hosting a cab-to-cab session, choose a song first, then scroll to the far left and press Confirm. The cab-to-cab request is now open.

    • If you're connecting, navigate to the \"Cabinet-to-Cabinet Play\" tab and wait for other players to create a session.

    If you are able to see each other's session, congrats! You can now enjoy some cab-to-cab chain action!

    "},{"location":"games/chunithmnewplus/c2c/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmnewplus/controllers/","title":"CHUNITHM NEW PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    segatools, by default, only accepts keyboard input and does not recognize any controllers. However, it can be configured with IO DLLs to add support for controllers.

    The controller you plan on using should also be provided with these IO DLLs. If unsure, check the support section for your controller, or contact the vendor directly. Alternate options for the most common controllers are listed below.

    These IO DLLs should be copied to your game's App\\bin\\ folder and referenced in segatools.ini under the [chuniio] section.

    If you have a single DLL, uncomment the path= line by removing the leading semicolon (;), then add your DLL's file name after the =:

    [chuniio]\n; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.\n; (will use chu2to3 engine internally)\n;(1)!\npath=controller.dll\n
    1. Note that there is no leading semicolon.

    If you have two DLLs, ending in _x86.dll and _x64.dll (or _chusan.dll and _amdaemon.dll), uncomment the path32= and path64= lines by removing the leading semicolon (;), then add your DLLs after the =:

    [chuniio]\n; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.\n; x86 chuniio to path32, x64 to path64. Both are necessary.\n;(1)!\npath32=controller_x86.dll\npath64=controller_x64.dll\n
    1. Note that there is no leading semicolon.
    "},{"location":"games/chunithmnewplus/controllers/#keyboard","title":"Keyboard","text":"

    Keyboard is the default input method, and while not recommended for playing the game, it is useful for testing purposes.

    The default layout uses SDFGHJKL for slider input, and Space Bar for the AIRs.

    If you wish to change the default keybinds, an explanation on how to set these is included above the [io3] section in your segatools.ini.

    "},{"location":"games/chunithmnewplus/controllers/#brokenithm","title":"Brokenithm","text":"

    Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom half of the screen as the ground slider, and sliding into the upper half activates the air sensors.

    "},{"location":"games/chunithmnewplus/controllers/#android","title":"Android","text":"

    Warning

    Your computer and your Android device must be on the same local network.

    • Download the latest version of Brokenithm-Android and install it on your Android device.
    • Download the latest version of Brokenithm-Android-Server and extract only brokenithm_server.exe to your App\\bin\\ folder.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run brokenithm_server.exe. A command prompt window should open, saying that it is waiting for a device on port 52468.
    • Open the Brokenithm app on your Android device. Enter your computer's IP address in the Address box on the top right, then tap Start.
    • Run the game as normal.
    Getting your computer's IP address

    Open Settings -> Network and Internet and select Properties. Scroll down to the bottom and check the address under the IPv4 address field:

    That is your computer's IP address.

    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted brokenithm_server.exe to App\\bin\\ as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    Improving latency

    You can improve latency by running Brokenithm with your Android device tethered to your computer. However, this requires a little extra setup:

    • Connect your Android device to your computer with a USB cable.
    • If you haven't enabled Developer options on your device, do it by navigating to the \"About\" page in your phone's settings, then tap \"Build number\" seven times. This varies by device, so if unsure, look up the instructions for your specific one.
    • Navigate to Developer options and enable USB debugging.
    • On your computer, download and extract Android SDK Platform Tools to your App\\bin\\ folder.
    • Navigate to the App\\bin\\platform-tools folder in File Explorer, click on the address bar, type cmd, and hit Enter to open a command prompt.
    • In the command prompt, type the following command:
    adb reverse tcp:52468 tcp:52468\n
    • Start brokenithm_server.exe.
    • On your Android device, open Brokenithm, and change the address to 0.0.0.0.
      • If the text box to the left of the \"SETTINGS\" button say \"UDP\", tap on it once to switch to \"TCP\" mode.
    • Tap on \"START\", and you will now be connected via the USB cable.
    • You can now start the game as normal.

    The next time you play the game, you only need to run the adb reverse ... command again. To do this automatically when the game starts, add a line to the start.bat script before the brokenithm_server line:

    @echo off\n\npushd %~dp0\n\nstart /min platform-tools\\adb reverse tcp:52468 tcp:52468\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmnewplus/controllers/#iosipados","title":"iOS/iPadOS","text":"
    • Install Brokenithm on your iOS/iPadOS device by joining the Brokenithm TestFlight (iOS 18 only).
      • If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different IPA with Sideloadly.
    • If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, uninstall it.
    • Install the non-Microsoft Store version of iTunes from the website.
    • Download the latest version of Brokenithm-Evolved-iOS server and extract it to App\\bin\\Brokenithm-Server.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run App\\bin\\Brokenithm-Server\\Brokenithm-Evolved-iOS.exe. A command prompt window should open, saying that it is waiting for a device.
    • On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a USB cable.
    • Run the game as normal.
    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted the server to App\\bin\\Brokenithm-Server as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min Brokenithm-Server\\Brokenithm-Evolved-iOS.exe\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmnewplus/controllers/#tasoller","title":"TASOLLER","text":"

    Warning

    This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the controller after January 2022, the update should have already been applied.

    If you've purchased the controller before then, you will need to update the touch firmware by following the instructions on DJ-DAO's support page.

    • Install the custom Host and LED firmware to your controller. Instructions on how to do so is provided in the linked archive.
    • Pick one of these two TASOLLER IO DLLs to download and extract to your App\\bin folder. They should be functionally the same, but if one doesn't work, you can try the other:
      • chuniio-tasoller (download lib.zip)
      • chuniio-rs (download chusan.zip)
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_tasoller.dll;(1)!\npath64=chuniio_tasoller_x64.dll;(2)!\n
    1. Or chuniio_tasoller_v2_chusan.dll if you downloaded chuniio-rs.
    2. Or chuniio_tasoller_v2_amdaemon.dll if you downloaded chuniio-rs.

    3. Connect the controller to your computer, and then start the game.

    "},{"location":"games/chunithmnewplus/controllers/#yubideck","title":"YubiDeck","text":"
    • Switch your YubiDeck to HID output mode. Instructions on how to do so are provided in the YubiDeck manual.
    • Download the latest version of YubiDeck IO DLLs and extract it to your App\\bin folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_yubideck_chusan.dll\npath64=chuniio_yubideck_amdaemon.dll\n
    • Optionally, reference the included AimeIO DLL to use the controller's built-in card reader:
    [aimeio]\npath=aimeio_yubideck.dll\n
    • Connect the controller to your computer, and then start the game.
    "},{"location":"games/chunithmnewplus/controllers/#arcade-hardware-and-other-controllers","title":"Arcade hardware and other controllers","text":"

    If you're interested in using a cabinet slider and air sensors, or possibly even making your own controller, the Cons&Stuff website and Discord community is a great place to start!

    "},{"location":"games/chunithmnewplus/setup/","title":"CHUNITHM NEW PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of CHUNITHM

    You'll want to create a new folder for the game and start from scratch. CHUNITHM DOES NOT like being extracted over old data!

    "},{"location":"games/chunithmnewplus/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create another empty folder named AppData next to them. It should now look like below.

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/chunithmnewplus/setup/#updating-the-base-game","title":"Updating the base game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    "},{"location":"games/chunithmnewplus/setup/#installing-option-data","title":"Installing option data","text":"

    CHUNITHM content updates are distributed through option folders instead of patching the base game. They are named A???, with each ? being a number. Custom options distributed by the community might use letters instead, to distinguish them from official ones.

    Extract any options you've downloaded into the Option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    "},{"location":"games/chunithmnewplus/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has a file named ICF1, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions.

    Showing file extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/chunithmnewplus/setup/#installing-unprotected-executables","title":"Installing unprotected executables","text":"

    CHUNITHM executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of chusanApp.exe and amdaemon.exe for your game version. If these weren't provided with your data, join the Discord for assistance.

    Copy chusanApp.exe and amdaemon.exe to the bin folder of your game data. Agree to overwrite when asked.

    "},{"location":"games/chunithmnewplus/setup/#patching-the-game","title":"Patching the game","text":"

    Go through the Web Patching guide to learn how to use a web patcher.

    There are many patches for CHUNITHM.

    We will only bring up the ones we think could be genuinely useful.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    Patch Recommendation Description Force shared audio mode Either Force the game to use shared mode audio output, letting you listen to other audio sources while the game is running at the cost of audio latency. Force 2 channel audio output Either Try enabling this patch if you don't get audio output at all. Disable song select timer Either Disables the song select timer. No encryption ON Disable encrypting network requests. Required if you plan to run a local server. No TLS ON Disable checking if the server is HTTPS or not. Required if you plan to run a local server. Bypass 1080p monitor check Either Disable checking if the monitor is 1080p when enabling 120FPS. Enable if you cannot set your monitor to 1080p. Bypass 120Hz monitor check Either Disable checking if the monitor is exactly 120Hz when enabling 120FPS. Enable if you cannot set your monitor to 120Hz."},{"location":"games/chunithmnewplus/setup/#installing-segatools","title":"Installing segatools","text":"
    • Head over to segatools releases and download segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find chusan.zip and extract it to the App\\bin folder in your game data.

    You should now have a few more files inside the folder, as highlighted:

    "},{"location":"games/chunithmnewplus/setup/#configuring-segatools","title":"Configuring segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App\\bin\\segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key.

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/chunithmnewplus/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../Option\nappdata=../../AppData\n
    "},{"location":"games/chunithmnewplus/setup/#system-formerly-gpio","title":"[system] (formerly [gpio])","text":"

    Warning

    As of 2024-08-20, the [gpio] section in segatools has been renamed to [system].

    • If you have a 120Hz monitor, set dipsw2 and dipsw3 to 0:
    [system]\ndipsw2=0\ndipsw3=0\n
    • If you have a 60Hz monitor, set dipsw2 and dipsw3 to 1:
    [system]\ndipsw2=1\ndipsw3=1\n
    "},{"location":"games/chunithmnewplus/setup/#gfx","title":"[gfx]","text":"
    • Set windowed to 0 to run in fullscreen mode and 1 to run in windowed mode.
    • If you have multiple monitors and you're running in fullscreen mode (windowed=0), set monitor to the index of the monitor you want to run the game on.
    Getting the monitor index

    Navigate to Windows display settings. Each monitor should be assigned a number. The monitor index is that number minus one. For example, monitor 2 means monitor index 1.

    "},{"location":"games/chunithmnewplus/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App\\bin\\DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/chunithmnewplus/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/chunithmnewplus/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/chunithmnewplus/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/chunithmnewplus/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App\\bin\\start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/chunithmnewplus/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/chunithmnewplus/setup/#game-assignments","title":"GAME ASSIGNMENTS","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    Start the game by running App\\bin\\start.bat. Let the game load until it reaches the screen below.

    Press your Test button (default F1) to enter the service menu. Use the Service button (default F2) to navigate the menu, and Test button to select an option.

    Navigate to \u30b2\u30fc\u30e0\u8a2d\u5b9a (GAME ASSIGNMENTS, the 4th option).

    Select \u30b0\u30eb\u30fc\u30d7\u5185\u57fa\u6e96\u6a5f\u8a2d\u5b9a (SET STANDARD IN GROUP, the second option) and toggle this setting to \u57fa\u6e96\u6a5f (STANDARD).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu.

    "},{"location":"games/chunithmnewplus/setup/#close-setting","title":"CLOSE SETTING","text":"

    Navigate to \u9589\u5e97\u8a2d\u5b9a (CLOSE SETTING, the 10th option).

    Navigate to \u6642 (HOUR, the 2nd option) and use the Service button to toggle the setting until it says \u5168\u6642\u523b (ALL TIME).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu, then select \u7d42\u4e86 (also the last option) in the main menu to exit the service menu.

    "},{"location":"games/chunithmnewplus/setup/#waiting-for-distribution-server","title":"Waiting for Distribution Server","text":"

    If you're stuck at the Waiting for Distribution Server screen below, close the game and relaunch.

    You're all done! The game should load up properly now.

    You can add coins using the Coin key (default F3) and card in by holding the Enter key.

    "},{"location":"games/chunithmnewplus/setup/#further-configuration","title":"Further configuration","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmnewplus/troubleshooting/","title":"CHUNITHM NEW PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/chunithmnewplus/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things, the most common of which are:

    • amdaemon crashing in the background. Make sure that the config_*.json files have valid syntax, your ICF files are correct, and the OpenSSL fix is applied on Intel Core 10th Gen CPUs and newer.
    • Using the incorrect dipswitch settings for your refresh rate (e.g. dipsw3=0 on a 60Hz screen). Refer to the setup guide to fix it.
    • Enabling 120FPS on a monitor that is not exactly 120Hz or exactly 1080p. If you cannot set your monitor's refresh rate to 120Hz, apply the \"Bypass 120Hz monitor check\"/\"Bypass 1080p monitor check\" on a CHUNITHM web patcher (see Resources).
    Capturing logs from amdaemon for troubleshooting

    To assist with troubleshooting, a script can be used to capture logs from amdaemon. Create a file named amdaemontest.bat in App\\bin, then paste the code block below into the file.

    @echo off\ncls\necho Attempting to run AM Daemon ...\necho Window should close after 30 seconds\necho Log will be generated at amdaemontest.txt\ncall :sub >amdaemontest.txt\nexit /b\n\n:sub\nset OPENSSL_ia32cap=:~0x20000000\npushd %~dp0\nstart /b \"AM Daemon\" /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\nping 127.0.0.1 -n 31 > nul && taskkill /im amdaemon.exe\n

    Double-click it to run. The script should run for 30 seconds, and you will get a file named amdaemontest.txt in App\\bin, which you can send to help people troubleshoot your issue.

    "},{"location":"games/chunithmnewplus/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot!","text":"

    CHUNITHM game files consist of thousands of small XML files, which Windows Defender takes a long time to scan through. Add your game folder to the Windows Defender exclusion list.

    Danger

    Doing this will prevent Windows Defender from scanning your game folder for viruses. Only do this if you trust the source of the data.

    "},{"location":"games/chunithmnewplus/troubleshooting/#my-game-is-running-too-slowfast","title":"My game is running too slow/fast","text":"

    The game could be running under or over its required refresh rate.

    • Make sure V-Sync isn't disabled in your graphics settings (called \"Vertical sync\" in NVIDIA Control Panel and \"Wait for Vertical Refresh\" in AMD Control Panel.)
    • Make sure your monitor's refresh rate is set to 60Hz or 120Hz.

    It could also be that your computer's performance isn't good enough to keep a steady framerate.

    "},{"location":"games/chunithmnewplus/troubleshooting/#my-game-is-stuttering","title":"My game is stuttering","text":"

    For NVIDIA users, create an override for chusanApp.exe in NVIDIA Control Panel and change \"Power management mode\" to \"Prefer maximum performance\".

    "},{"location":"games/chunithmnewplus/troubleshooting/#my-game-crashes-when-i-tab-out-of-fullscreen","title":"My game crashes when I tab out of fullscreen!","text":"

    As the game is intended to run on arcade hardware, it doesn't like being minimized.

    One workaround for this is to use DXVK. Download the latest version from releases. This will be a dxvk-x.y.z.tar.gz file, which you can open using 7zip. Navigate to the x32 folder, and copy the d3d9.dll file to your game's App\\bin folder, agreeing to overwrite when asked.

    You should now be able to tab out of fullscreen without crashing the game.

    Warning

    The game will not ignore inputs when out of focus.

    This means any controller inputs will still be accepted, so try not to lean onto your slider whilst tabbed out!

    This also means that you can accidentally enter the service menu by hitting your Test key even if the game is minimised. If you were in the middle of a credit, your scores will be lost.

    "},{"location":"games/chunithmnewplus/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    CHUNITHM uses WASAPI exclusive mode for audio to get better latency.

    You can apply the \"Shared Audio\" patch on a CHUNITHM web patcher (see Resources) to hear audio outside of the game at the cost of audio latency.

    "},{"location":"games/chunithmnewplus/troubleshooting/#cabinet-to-cabinetc2c-fixes","title":"Cabinet-to-Cabinet(c2c) Fixes","text":"

    c2c can have many problems but you can fix most of them by applying the \"Patch for head-to-head play\" and disabling \"Set all timers to 999\" on a CHUNITHM web patcher (see Resources).

    If the above does not work then please ensure both machines have the exact same data and can communicate with each other if they cannot then you can try disabling firewalls or changing the c2c group.

    "},{"location":"games/chunithmsun/c2c/","title":"Setting Up Chunithm for Cabinet-to-Cabinet Play (Multiplayer) over the Internet","text":"

    You are most likely to have success with Multiplayer when all users are using the SAME data and options, from the same sources. Verify that each person can run the game normally before attempting to network them together.

    • Chunithm expects the cabinets to be using specific IP addresses, 192.168.139.11/12/13/14
    • To achieve this over the internet, we can use SoftEther VPN. Refer to the Setting Up SoftEther VPN Guide for more information.
    "},{"location":"games/chunithmsun/c2c/#configuring-segatoolsini-game-assignments","title":"Configuring segatools.ini & Game Assignments","text":"

    segatools.ini

    [netnev]\nenable=1\naddrSuffix= last 2 digits of your SoftEther IP\n\n[keychip]\nenable=1\nsubnet=192.168.139.0\nid=(Everyone needs a seperate keychip. If you play on a remote network, chances are you already have your own keychip. If not, you can use the example keychips below.)\n;example keychips: A61E-01D02321145 ; A61E-01A30831145 ; A61E-01E38091145 ; A61E-01E46241145\n\n[system]\ndipsw1=1\n;Set this to 1 on the Server machine, and 0 on all other client machines.\n;If your game gets stuck on \"Checking for Dist Server\", try setting this to 1 on all machines and continue following the steps.\n

    GAME ASSIGNMENTS

    • After saving your segatools.ini, launch the game and go into the Service Menu > and go to GAME ASSIGNMENTS.

    • Enable CABINET-TO-CABINET PLAY, and make sure all machine are on the same group (Group A for example).

    • Set one machine to STANDARD, and all other machines to FOLLOW THE STANDARD .

    Exit the Service Menu and load into Attract Mode. If the game passes the Group Check then chances are you're good to go! You can now login to a credit and open a cab-to-cab link request to check if the connection is working properly!

    "},{"location":"games/chunithmsun/c2c/#how-to-link","title":"How to Link?","text":"

    If you're new to Chunithm and have never tried link-play before and you have no idea how, keep reading.

    • Login to a credit.

    • If you're hosting a cab-to-cab session, choose a song first, then scroll to the far left and press Confirm. The cab-to-cab request is now open.

    • If you're connecting, navigate to the \"Cabinet-to-Cabinet Play\" tab and wait for other players to create a session.

    If you are able to see each other's session, congrats! You can now enjoy some cab-to-cab chain action!

    "},{"location":"games/chunithmsun/c2c/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmsun/controllers/","title":"CHUNITHM SUN","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    segatools, by default, only accepts keyboard input and does not recognize any controllers. However, it can be configured with IO DLLs to add support for controllers.

    The controller you plan on using should also be provided with these IO DLLs. If unsure, check the support section for your controller, or contact the vendor directly. Alternate options for the most common controllers are listed below.

    These IO DLLs should be copied to your game's App\\bin\\ folder and referenced in segatools.ini under the [chuniio] section.

    If you have a single DLL, uncomment the path= line by removing the leading semicolon (;), then add your DLL's file name after the =:

    [chuniio]\n; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.\n; (will use chu2to3 engine internally)\n;(1)!\npath=controller.dll\n
    1. Note that there is no leading semicolon.

    If you have two DLLs, ending in _x86.dll and _x64.dll (or _chusan.dll and _amdaemon.dll), uncomment the path32= and path64= lines by removing the leading semicolon (;), then add your DLLs after the =:

    [chuniio]\n; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.\n; x86 chuniio to path32, x64 to path64. Both are necessary.\n;(1)!\npath32=controller_x86.dll\npath64=controller_x64.dll\n
    1. Note that there is no leading semicolon.
    "},{"location":"games/chunithmsun/controllers/#keyboard","title":"Keyboard","text":"

    Keyboard is the default input method, and while not recommended for playing the game, it is useful for testing purposes.

    The default layout uses SDFGHJKL for slider input, and Space Bar for the AIRs.

    If you wish to change the default keybinds, an explanation on how to set these is included above the [io3] section in your segatools.ini.

    "},{"location":"games/chunithmsun/controllers/#brokenithm","title":"Brokenithm","text":"

    Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom half of the screen as the ground slider, and sliding into the upper half activates the air sensors.

    "},{"location":"games/chunithmsun/controllers/#android","title":"Android","text":"

    Warning

    Your computer and your Android device must be on the same local network.

    • Download the latest version of Brokenithm-Android and install it on your Android device.
    • Download the latest version of Brokenithm-Android-Server and extract only brokenithm_server.exe to your App\\bin\\ folder.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run brokenithm_server.exe. A command prompt window should open, saying that it is waiting for a device on port 52468.
    • Open the Brokenithm app on your Android device. Enter your computer's IP address in the Address box on the top right, then tap Start.
    • Run the game as normal.
    Getting your computer's IP address

    Open Settings -> Network and Internet and select Properties. Scroll down to the bottom and check the address under the IPv4 address field:

    That is your computer's IP address.

    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted brokenithm_server.exe to App\\bin\\ as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    Improving latency

    You can improve latency by running Brokenithm with your Android device tethered to your computer. However, this requires a little extra setup:

    • Connect your Android device to your computer with a USB cable.
    • If you haven't enabled Developer options on your device, do it by navigating to the \"About\" page in your phone's settings, then tap \"Build number\" seven times. This varies by device, so if unsure, look up the instructions for your specific one.
    • Navigate to Developer options and enable USB debugging.
    • On your computer, download and extract Android SDK Platform Tools to your App\\bin\\ folder.
    • Navigate to the App\\bin\\platform-tools folder in File Explorer, click on the address bar, type cmd, and hit Enter to open a command prompt.
    • In the command prompt, type the following command:
    adb reverse tcp:52468 tcp:52468\n
    • Start brokenithm_server.exe.
    • On your Android device, open Brokenithm, and change the address to 0.0.0.0.
      • If the text box to the left of the \"SETTINGS\" button say \"UDP\", tap on it once to switch to \"TCP\" mode.
    • Tap on \"START\", and you will now be connected via the USB cable.
    • You can now start the game as normal.

    The next time you play the game, you only need to run the adb reverse ... command again. To do this automatically when the game starts, add a line to the start.bat script before the brokenithm_server line:

    @echo off\n\npushd %~dp0\n\nstart /min platform-tools\\adb reverse tcp:52468 tcp:52468\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmsun/controllers/#iosipados","title":"iOS/iPadOS","text":"
    • Install Brokenithm on your iOS/iPadOS device by joining the Brokenithm TestFlight (iOS 18 only).
      • If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different IPA with Sideloadly.
    • If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, uninstall it.
    • Install the non-Microsoft Store version of iTunes from the website.
    • Download the latest version of Brokenithm-Evolved-iOS server and extract it to App\\bin\\Brokenithm-Server.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run App\\bin\\Brokenithm-Server\\Brokenithm-Evolved-iOS.exe. A command prompt window should open, saying that it is waiting for a device.
    • On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a USB cable.
    • Run the game as normal.
    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted the server to App\\bin\\Brokenithm-Server as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min Brokenithm-Server\\Brokenithm-Evolved-iOS.exe\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmsun/controllers/#tasoller","title":"TASOLLER","text":"

    Warning

    This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the controller after January 2022, the update should have already been applied.

    If you've purchased the controller before then, you will need to update the touch firmware by following the instructions on DJ-DAO's support page.

    • Install the custom Host and LED firmware to your controller. Instructions on how to do so is provided in the linked archive.
    • Pick one of these two TASOLLER IO DLLs to download and extract to your App\\bin folder. They should be functionally the same, but if one doesn't work, you can try the other:
      • chuniio-tasoller (download lib.zip)
      • chuniio-rs (download chusan.zip)
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_tasoller.dll;(1)!\npath64=chuniio_tasoller_x64.dll;(2)!\n
    1. Or chuniio_tasoller_v2_chusan.dll if you downloaded chuniio-rs.
    2. Or chuniio_tasoller_v2_amdaemon.dll if you downloaded chuniio-rs.

    3. Connect the controller to your computer, and then start the game.

    "},{"location":"games/chunithmsun/controllers/#yubideck","title":"YubiDeck","text":"
    • Switch your YubiDeck to HID output mode. Instructions on how to do so are provided in the YubiDeck manual.
    • Download the latest version of YubiDeck IO DLLs and extract it to your App\\bin folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_yubideck_chusan.dll\npath64=chuniio_yubideck_amdaemon.dll\n
    • Optionally, reference the included AimeIO DLL to use the controller's built-in card reader:
    [aimeio]\npath=aimeio_yubideck.dll\n
    • Connect the controller to your computer, and then start the game.
    "},{"location":"games/chunithmsun/controllers/#arcade-hardware-and-other-controllers","title":"Arcade hardware and other controllers","text":"

    If you're interested in using a cabinet slider and air sensors, or possibly even making your own controller, the Cons&Stuff website and Discord community is a great place to start!

    "},{"location":"games/chunithmsun/setup/","title":"CHUNITHM SUN","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of CHUNITHM

    You'll want to create a new folder for the game and start from scratch. CHUNITHM DOES NOT like being extracted over old data!

    "},{"location":"games/chunithmsun/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create another empty folder named AppData next to them. It should now look like below.

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/chunithmsun/setup/#updating-the-base-game","title":"Updating the base game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    "},{"location":"games/chunithmsun/setup/#installing-option-data","title":"Installing option data","text":"

    CHUNITHM content updates are distributed through option folders instead of patching the base game. They are named A???, with each ? being a number. Custom options distributed by the community might use letters instead, to distinguish them from official ones.

    Extract any options you've downloaded into the Option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    "},{"location":"games/chunithmsun/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has a file named ICF1, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions.

    Showing file extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/chunithmsun/setup/#installing-unprotected-executables","title":"Installing unprotected executables","text":"

    CHUNITHM executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of chusanApp.exe and amdaemon.exe for your game version. If these weren't provided with your data, join the Discord for assistance.

    Copy chusanApp.exe and amdaemon.exe to the bin folder of your game data. Agree to overwrite when asked.

    "},{"location":"games/chunithmsun/setup/#patching-the-game","title":"Patching the game","text":"

    Go through the Web Patching guide to learn how to use a web patcher.

    There are many patches for CHUNITHM.

    We will only bring up the ones we think could be genuinely useful.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    Patch Recommendation Description Force shared audio mode Either Force the game to use shared mode audio output, letting you listen to other audio sources while the game is running at the cost of audio latency. Force 2 channel audio output Either Try enabling this patch if you don't get audio output at all. Disable song select timer Either Disables the song select timer. No encryption ON Disable encrypting network requests. Required if you plan to run a local server. No TLS ON Disable checking if the server is HTTPS or not. Required if you plan to run a local server. Bypass 1080p monitor check Either Disable checking if the monitor is 1080p when enabling 120FPS. Enable if you cannot set your monitor to 1080p. Bypass 120Hz monitor check Either Disable checking if the monitor is exactly 120Hz when enabling 120FPS. Enable if you cannot set your monitor to 120Hz."},{"location":"games/chunithmsun/setup/#installing-segatools","title":"Installing segatools","text":"
    • Head over to segatools releases and download segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find chusan.zip and extract it to the App\\bin folder in your game data.

    You should now have a few more files inside the folder, as highlighted:

    "},{"location":"games/chunithmsun/setup/#configuring-segatools","title":"Configuring segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App\\bin\\segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key.

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/chunithmsun/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../Option\nappdata=../../AppData\n
    "},{"location":"games/chunithmsun/setup/#system-formerly-gpio","title":"[system] (formerly [gpio])","text":"

    Warning

    As of 2024-08-20, the [gpio] section in segatools has been renamed to [system].

    • If you have a 120Hz monitor, set dipsw2 and dipsw3 to 0:
    [system]\ndipsw2=0\ndipsw3=0\n
    • If you have a 60Hz monitor, set dipsw2 and dipsw3 to 1:
    [system]\ndipsw2=1\ndipsw3=1\n
    "},{"location":"games/chunithmsun/setup/#gfx","title":"[gfx]","text":"
    • Set windowed to 0 to run in fullscreen mode and 1 to run in windowed mode.
    • If you have multiple monitors and you're running in fullscreen mode (windowed=0), set monitor to the index of the monitor you want to run the game on.
    Getting the monitor index

    Navigate to Windows display settings. Each monitor should be assigned a number. The monitor index is that number minus one. For example, monitor 2 means monitor index 1.

    "},{"location":"games/chunithmsun/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App\\bin\\DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/chunithmsun/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/chunithmsun/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/chunithmsun/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/chunithmsun/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App\\bin\\start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/chunithmsun/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/chunithmsun/setup/#game-assignments","title":"GAME ASSIGNMENTS","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    Start the game by running App\\bin\\start.bat. Let the game load until it reaches the screen below.

    Press your Test button (default F1) to enter the service menu. Use the Service button (default F2) to navigate the menu, and Test button to select an option.

    Navigate to \u30b2\u30fc\u30e0\u8a2d\u5b9a (GAME ASSIGNMENTS, the 4th option).

    Select \u30b0\u30eb\u30fc\u30d7\u5185\u57fa\u6e96\u6a5f\u8a2d\u5b9a (SET STANDARD IN GROUP, the second option) and toggle this setting to \u57fa\u6e96\u6a5f (STANDARD).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu.

    "},{"location":"games/chunithmsun/setup/#close-setting","title":"CLOSE SETTING","text":"

    Navigate to \u9589\u5e97\u8a2d\u5b9a (CLOSE SETTING, the 10th option).

    Navigate to \u6642 (HOUR, the 2nd option) and use the Service button to toggle the setting until it says \u5168\u6642\u523b (ALL TIME).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu, then select \u7d42\u4e86 (also the last option) in the main menu to exit the service menu.

    "},{"location":"games/chunithmsun/setup/#waiting-for-distribution-server","title":"Waiting for Distribution Server","text":"

    If you're stuck at the Waiting for Distribution Server screen below, close the game and relaunch.

    You're all done! The game should load up properly now.

    You can add coins using the Coin key (default F3) and card in by holding the Enter key.

    "},{"location":"games/chunithmsun/setup/#further-configuration","title":"Further configuration","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmsun/troubleshooting/","title":"CHUNITHM SUN","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/chunithmsun/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things, the most common of which are:

    • amdaemon crashing in the background. Make sure that the config_*.json files have valid syntax, your ICF files are correct, and the OpenSSL fix is applied on Intel Core 10th Gen CPUs and newer.
    • Using the incorrect dipswitch settings for your refresh rate (e.g. dipsw3=0 on a 60Hz screen). Refer to the setup guide to fix it.
    • Enabling 120FPS on a monitor that is not exactly 120Hz or exactly 1080p. If you cannot set your monitor's refresh rate to 120Hz, apply the \"Bypass 120Hz monitor check\"/\"Bypass 1080p monitor check\" on a CHUNITHM web patcher (see Resources).
    Capturing logs from amdaemon for troubleshooting

    To assist with troubleshooting, a script can be used to capture logs from amdaemon. Create a file named amdaemontest.bat in App\\bin, then paste the code block below into the file.

    @echo off\ncls\necho Attempting to run AM Daemon ...\necho Window should close after 30 seconds\necho Log will be generated at amdaemontest.txt\ncall :sub >amdaemontest.txt\nexit /b\n\n:sub\nset OPENSSL_ia32cap=:~0x20000000\npushd %~dp0\nstart /b \"AM Daemon\" /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\nping 127.0.0.1 -n 31 > nul && taskkill /im amdaemon.exe\n

    Double-click it to run. The script should run for 30 seconds, and you will get a file named amdaemontest.txt in App\\bin, which you can send to help people troubleshoot your issue.

    "},{"location":"games/chunithmsun/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot!","text":"

    CHUNITHM game files consist of thousands of small XML files, which Windows Defender takes a long time to scan through. Add your game folder to the Windows Defender exclusion list.

    Danger

    Doing this will prevent Windows Defender from scanning your game folder for viruses. Only do this if you trust the source of the data.

    "},{"location":"games/chunithmsun/troubleshooting/#my-game-is-running-too-slowfast","title":"My game is running too slow/fast","text":"

    The game could be running under or over its required refresh rate.

    • Make sure V-Sync isn't disabled in your graphics settings (called \"Vertical sync\" in NVIDIA Control Panel and \"Wait for Vertical Refresh\" in AMD Control Panel.)
    • Make sure your monitor's refresh rate is set to 60Hz or 120Hz.

    It could also be that your computer's performance isn't good enough to keep a steady framerate.

    "},{"location":"games/chunithmsun/troubleshooting/#my-game-is-stuttering","title":"My game is stuttering","text":"

    For NVIDIA users, create an override for chusanApp.exe in NVIDIA Control Panel and change \"Power management mode\" to \"Prefer maximum performance\".

    "},{"location":"games/chunithmsun/troubleshooting/#my-game-crashes-when-i-tab-out-of-fullscreen","title":"My game crashes when I tab out of fullscreen!","text":"

    As the game is intended to run on arcade hardware, it doesn't like being minimized.

    One workaround for this is to use DXVK. Download the latest version from releases. This will be a dxvk-x.y.z.tar.gz file, which you can open using 7zip. Navigate to the x32 folder, and copy the d3d9.dll file to your game's App\\bin folder, agreeing to overwrite when asked.

    You should now be able to tab out of fullscreen without crashing the game.

    Warning

    The game will not ignore inputs when out of focus.

    This means any controller inputs will still be accepted, so try not to lean onto your slider whilst tabbed out!

    This also means that you can accidentally enter the service menu by hitting your Test key even if the game is minimised. If you were in the middle of a credit, your scores will be lost.

    "},{"location":"games/chunithmsun/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    CHUNITHM uses WASAPI exclusive mode for audio to get better latency.

    You can apply the \"Shared Audio\" patch on a CHUNITHM web patcher (see Resources) to hear audio outside of the game at the cost of audio latency.

    "},{"location":"games/chunithmsun/troubleshooting/#cabinet-to-cabinetc2c-fixes","title":"Cabinet-to-Cabinet(c2c) Fixes","text":"

    c2c can have many problems but you can fix most of them by applying the \"Patch for head-to-head play\" and disabling \"Set all timers to 999\" on a CHUNITHM web patcher (see Resources).

    If the above does not work then please ensure both machines have the exact same data and can communicate with each other if they cannot then you can try disabling firewalls or changing the c2c group.

    "},{"location":"games/chunithmsunplus/c2c/","title":"Setting Up Chunithm for Cabinet-to-Cabinet Play (Multiplayer) over the Internet","text":"

    You are most likely to have success with Multiplayer when all users are using the SAME data and options, from the same sources. Verify that each person can run the game normally before attempting to network them together.

    • Chunithm expects the cabinets to be using specific IP addresses, 192.168.139.11/12/13/14
    • To achieve this over the internet, we can use SoftEther VPN. Refer to the Setting Up SoftEther VPN Guide for more information.
    "},{"location":"games/chunithmsunplus/c2c/#configuring-segatoolsini-game-assignments","title":"Configuring segatools.ini & Game Assignments","text":"

    segatools.ini

    [netnev]\nenable=1\naddrSuffix= last 2 digits of your SoftEther IP\n\n[keychip]\nenable=1\nsubnet=192.168.139.0\nid=(Everyone needs a seperate keychip. If you play on a remote network, chances are you already have your own keychip. If not, you can use the example keychips below.)\n;example keychips: A61E-01D02321145 ; A61E-01A30831145 ; A61E-01E38091145 ; A61E-01E46241145\n\n[system]\ndipsw1=1\n;Set this to 1 on the Server machine, and 0 on all other client machines.\n;If your game gets stuck on \"Checking for Dist Server\", try setting this to 1 on all machines and continue following the steps.\n

    GAME ASSIGNMENTS

    • After saving your segatools.ini, launch the game and go into the Service Menu > and go to GAME ASSIGNMENTS.

    • Enable CABINET-TO-CABINET PLAY, and make sure all machine are on the same group (Group A for example).

    • Set one machine to STANDARD, and all other machines to FOLLOW THE STANDARD .

    Exit the Service Menu and load into Attract Mode. If the game passes the Group Check then chances are you're good to go! You can now login to a credit and open a cab-to-cab link request to check if the connection is working properly!

    "},{"location":"games/chunithmsunplus/c2c/#how-to-link","title":"How to Link?","text":"

    If you're new to Chunithm and have never tried link-play before and you have no idea how, keep reading.

    • Login to a credit.

    • If you're hosting a cab-to-cab session, choose a song first, then scroll to the far left and press Confirm. The cab-to-cab request is now open.

    • If you're connecting, navigate to the \"Cabinet-to-Cabinet Play\" tab and wait for other players to create a session.

    If you are able to see each other's session, congrats! You can now enjoy some cab-to-cab chain action!

    "},{"location":"games/chunithmsunplus/c2c/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmsunplus/controllers/","title":"CHUNITHM SUN PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    segatools, by default, only accepts keyboard input and does not recognize any controllers. However, it can be configured with IO DLLs to add support for controllers.

    The controller you plan on using should also be provided with these IO DLLs. If unsure, check the support section for your controller, or contact the vendor directly. Alternate options for the most common controllers are listed below.

    These IO DLLs should be copied to your game's App\\bin\\ folder and referenced in segatools.ini under the [chuniio] section.

    If you have a single DLL, uncomment the path= line by removing the leading semicolon (;), then add your DLL's file name after the =:

    [chuniio]\n; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.\n; (will use chu2to3 engine internally)\n;(1)!\npath=controller.dll\n
    1. Note that there is no leading semicolon.

    If you have two DLLs, ending in _x86.dll and _x64.dll (or _chusan.dll and _amdaemon.dll), uncomment the path32= and path64= lines by removing the leading semicolon (;), then add your DLLs after the =:

    [chuniio]\n; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.\n; x86 chuniio to path32, x64 to path64. Both are necessary.\n;(1)!\npath32=controller_x86.dll\npath64=controller_x64.dll\n
    1. Note that there is no leading semicolon.
    "},{"location":"games/chunithmsunplus/controllers/#keyboard","title":"Keyboard","text":"

    Keyboard is the default input method, and while not recommended for playing the game, it is useful for testing purposes.

    The default layout uses SDFGHJKL for slider input, and Space Bar for the AIRs.

    If you wish to change the default keybinds, an explanation on how to set these is included above the [io3] section in your segatools.ini.

    "},{"location":"games/chunithmsunplus/controllers/#brokenithm","title":"Brokenithm","text":"

    Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom half of the screen as the ground slider, and sliding into the upper half activates the air sensors.

    "},{"location":"games/chunithmsunplus/controllers/#android","title":"Android","text":"

    Warning

    Your computer and your Android device must be on the same local network.

    • Download the latest version of Brokenithm-Android and install it on your Android device.
    • Download the latest version of Brokenithm-Android-Server and extract only brokenithm_server.exe to your App\\bin\\ folder.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run brokenithm_server.exe. A command prompt window should open, saying that it is waiting for a device on port 52468.
    • Open the Brokenithm app on your Android device. Enter your computer's IP address in the Address box on the top right, then tap Start.
    • Run the game as normal.
    Getting your computer's IP address

    Open Settings -> Network and Internet and select Properties. Scroll down to the bottom and check the address under the IPv4 address field:

    That is your computer's IP address.

    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted brokenithm_server.exe to App\\bin\\ as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    Improving latency

    You can improve latency by running Brokenithm with your Android device tethered to your computer. However, this requires a little extra setup:

    • Connect your Android device to your computer with a USB cable.
    • If you haven't enabled Developer options on your device, do it by navigating to the \"About\" page in your phone's settings, then tap \"Build number\" seven times. This varies by device, so if unsure, look up the instructions for your specific one.
    • Navigate to Developer options and enable USB debugging.
    • On your computer, download and extract Android SDK Platform Tools to your App\\bin\\ folder.
    • Navigate to the App\\bin\\platform-tools folder in File Explorer, click on the address bar, type cmd, and hit Enter to open a command prompt.
    • In the command prompt, type the following command:
    adb reverse tcp:52468 tcp:52468\n
    • Start brokenithm_server.exe.
    • On your Android device, open Brokenithm, and change the address to 0.0.0.0.
      • If the text box to the left of the \"SETTINGS\" button say \"UDP\", tap on it once to switch to \"TCP\" mode.
    • Tap on \"START\", and you will now be connected via the USB cable.
    • You can now start the game as normal.

    The next time you play the game, you only need to run the adb reverse ... command again. To do this automatically when the game starts, add a line to the start.bat script before the brokenithm_server line:

    @echo off\n\npushd %~dp0\n\nstart /min platform-tools\\adb reverse tcp:52468 tcp:52468\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmsunplus/controllers/#iosipados","title":"iOS/iPadOS","text":"
    • Install Brokenithm on your iOS/iPadOS device by joining the Brokenithm TestFlight (iOS 18 only).
      • If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different IPA with Sideloadly.
    • If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, uninstall it.
    • Install the non-Microsoft Store version of iTunes from the website.
    • Download the latest version of Brokenithm-Evolved-iOS server and extract it to App\\bin\\Brokenithm-Server.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run App\\bin\\Brokenithm-Server\\Brokenithm-Evolved-iOS.exe. A command prompt window should open, saying that it is waiting for a device.
    • On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a USB cable.
    • Run the game as normal.
    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted the server to App\\bin\\Brokenithm-Server as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min Brokenithm-Server\\Brokenithm-Evolved-iOS.exe\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmsunplus/controllers/#tasoller","title":"TASOLLER","text":"

    Warning

    This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the controller after January 2022, the update should have already been applied.

    If you've purchased the controller before then, you will need to update the touch firmware by following the instructions on DJ-DAO's support page.

    • Install the custom Host and LED firmware to your controller. Instructions on how to do so is provided in the linked archive.
    • Pick one of these two TASOLLER IO DLLs to download and extract to your App\\bin folder. They should be functionally the same, but if one doesn't work, you can try the other:
      • chuniio-tasoller (download lib.zip)
      • chuniio-rs (download chusan.zip)
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_tasoller.dll;(1)!\npath64=chuniio_tasoller_x64.dll;(2)!\n
    1. Or chuniio_tasoller_v2_chusan.dll if you downloaded chuniio-rs.
    2. Or chuniio_tasoller_v2_amdaemon.dll if you downloaded chuniio-rs.

    3. Connect the controller to your computer, and then start the game.

    "},{"location":"games/chunithmsunplus/controllers/#yubideck","title":"YubiDeck","text":"
    • Switch your YubiDeck to HID output mode. Instructions on how to do so are provided in the YubiDeck manual.
    • Download the latest version of YubiDeck IO DLLs and extract it to your App\\bin folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_yubideck_chusan.dll\npath64=chuniio_yubideck_amdaemon.dll\n
    • Optionally, reference the included AimeIO DLL to use the controller's built-in card reader:
    [aimeio]\npath=aimeio_yubideck.dll\n
    • Connect the controller to your computer, and then start the game.
    "},{"location":"games/chunithmsunplus/controllers/#arcade-hardware-and-other-controllers","title":"Arcade hardware and other controllers","text":"

    If you're interested in using a cabinet slider and air sensors, or possibly even making your own controller, the Cons&Stuff website and Discord community is a great place to start!

    "},{"location":"games/chunithmsunplus/setup/","title":"CHUNITHM SUN PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of CHUNITHM

    You'll want to create a new folder for the game and start from scratch. CHUNITHM DOES NOT like being extracted over old data!

    "},{"location":"games/chunithmsunplus/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create another empty folder named AppData next to them. It should now look like below.

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/chunithmsunplus/setup/#updating-the-base-game","title":"Updating the base game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    "},{"location":"games/chunithmsunplus/setup/#installing-option-data","title":"Installing option data","text":"

    CHUNITHM content updates are distributed through option folders instead of patching the base game. They are named A???, with each ? being a number. Custom options distributed by the community might use letters instead, to distinguish them from official ones.

    Extract any options you've downloaded into the Option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    "},{"location":"games/chunithmsunplus/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has a file named ICF1, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions.

    Showing file extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/chunithmsunplus/setup/#installing-unprotected-executables","title":"Installing unprotected executables","text":"

    CHUNITHM executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of chusanApp.exe and amdaemon.exe for your game version. If these weren't provided with your data, join the Discord for assistance.

    Copy chusanApp.exe and amdaemon.exe to the bin folder of your game data. Agree to overwrite when asked.

    "},{"location":"games/chunithmsunplus/setup/#patching-the-game","title":"Patching the game","text":"

    Go through the Web Patching guide to learn how to use a web patcher.

    There are many patches for CHUNITHM.

    We will only bring up the ones we think could be genuinely useful.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    Patch Recommendation Description Force shared audio mode Either Force the game to use shared mode audio output, letting you listen to other audio sources while the game is running at the cost of audio latency. Force 2 channel audio output Either Try enabling this patch if you don't get audio output at all. Disable song select timer Either Disables the song select timer. No encryption ON Disable encrypting network requests. Required if you plan to run a local server. No TLS ON Disable checking if the server is HTTPS or not. Required if you plan to run a local server. Bypass 1080p monitor check Either Disable checking if the monitor is 1080p when enabling 120FPS. Enable if you cannot set your monitor to 1080p. Bypass 120Hz monitor check Either Disable checking if the monitor is exactly 120Hz when enabling 120FPS. Enable if you cannot set your monitor to 120Hz."},{"location":"games/chunithmsunplus/setup/#installing-segatools","title":"Installing segatools","text":"
    • Head over to segatools releases and download segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find chusan.zip and extract it to the App\\bin folder in your game data.

    You should now have a few more files inside the folder, as highlighted:

    "},{"location":"games/chunithmsunplus/setup/#configuring-segatools","title":"Configuring segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App\\bin\\segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key.

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/chunithmsunplus/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../Option\nappdata=../../AppData\n
    "},{"location":"games/chunithmsunplus/setup/#system-formerly-gpio","title":"[system] (formerly [gpio])","text":"

    Warning

    As of 2024-08-20, the [gpio] section in segatools has been renamed to [system].

    • If you have a 120Hz monitor, set dipsw2 and dipsw3 to 0:
    [system]\ndipsw2=0\ndipsw3=0\n
    • If you have a 60Hz monitor, set dipsw2 and dipsw3 to 1:
    [system]\ndipsw2=1\ndipsw3=1\n
    "},{"location":"games/chunithmsunplus/setup/#gfx","title":"[gfx]","text":"
    • Set windowed to 0 to run in fullscreen mode and 1 to run in windowed mode.
    • If you have multiple monitors and you're running in fullscreen mode (windowed=0), set monitor to the index of the monitor you want to run the game on.
    Getting the monitor index

    Navigate to Windows display settings. Each monitor should be assigned a number. The monitor index is that number minus one. For example, monitor 2 means monitor index 1.

    "},{"location":"games/chunithmsunplus/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App\\bin\\DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/chunithmsunplus/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/chunithmsunplus/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/chunithmsunplus/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/chunithmsunplus/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App\\bin\\start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/chunithmsunplus/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/chunithmsunplus/setup/#game-assignments","title":"GAME ASSIGNMENTS","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    Start the game by running App\\bin\\start.bat. Let the game load until it reaches the screen below.

    Press your Test button (default F1) to enter the service menu. Use the Service button (default F2) to navigate the menu, and Test button to select an option.

    Navigate to \u30b2\u30fc\u30e0\u8a2d\u5b9a (GAME ASSIGNMENTS, the 4th option).

    Select \u30b0\u30eb\u30fc\u30d7\u5185\u57fa\u6e96\u6a5f\u8a2d\u5b9a (SET STANDARD IN GROUP, the second option) and toggle this setting to \u57fa\u6e96\u6a5f (STANDARD).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu.

    "},{"location":"games/chunithmsunplus/setup/#close-setting","title":"CLOSE SETTING","text":"

    Navigate to \u9589\u5e97\u8a2d\u5b9a (CLOSE SETTING, the 10th option).

    Navigate to \u6642 (HOUR, the 2nd option) and use the Service button to toggle the setting until it says \u5168\u6642\u523b (ALL TIME).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu, then select \u7d42\u4e86 (also the last option) in the main menu to exit the service menu.

    "},{"location":"games/chunithmsunplus/setup/#waiting-for-distribution-server","title":"Waiting for Distribution Server","text":"

    If you're stuck at the Waiting for Distribution Server screen below, close the game and relaunch.

    You're all done! The game should load up properly now.

    You can add coins using the Coin key (default F3) and card in by holding the Enter key.

    "},{"location":"games/chunithmsunplus/setup/#further-configuration","title":"Further configuration","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmsunplus/troubleshooting/","title":"CHUNITHM SUN PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/chunithmsunplus/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things, the most common of which are:

    • amdaemon crashing in the background. Make sure that the config_*.json files have valid syntax, your ICF files are correct, and the OpenSSL fix is applied on Intel Core 10th Gen CPUs and newer.
    • Using the incorrect dipswitch settings for your refresh rate (e.g. dipsw3=0 on a 60Hz screen). Refer to the setup guide to fix it.
    • Enabling 120FPS on a monitor that is not exactly 120Hz or exactly 1080p. If you cannot set your monitor's refresh rate to 120Hz, apply the \"Bypass 120Hz monitor check\"/\"Bypass 1080p monitor check\" on a CHUNITHM web patcher (see Resources).
    Capturing logs from amdaemon for troubleshooting

    To assist with troubleshooting, a script can be used to capture logs from amdaemon. Create a file named amdaemontest.bat in App\\bin, then paste the code block below into the file.

    @echo off\ncls\necho Attempting to run AM Daemon ...\necho Window should close after 30 seconds\necho Log will be generated at amdaemontest.txt\ncall :sub >amdaemontest.txt\nexit /b\n\n:sub\nset OPENSSL_ia32cap=:~0x20000000\npushd %~dp0\nstart /b \"AM Daemon\" /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\nping 127.0.0.1 -n 31 > nul && taskkill /im amdaemon.exe\n

    Double-click it to run. The script should run for 30 seconds, and you will get a file named amdaemontest.txt in App\\bin, which you can send to help people troubleshoot your issue.

    "},{"location":"games/chunithmsunplus/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot!","text":"

    CHUNITHM game files consist of thousands of small XML files, which Windows Defender takes a long time to scan through. Add your game folder to the Windows Defender exclusion list.

    Danger

    Doing this will prevent Windows Defender from scanning your game folder for viruses. Only do this if you trust the source of the data.

    "},{"location":"games/chunithmsunplus/troubleshooting/#my-game-is-running-too-slowfast","title":"My game is running too slow/fast","text":"

    The game could be running under or over its required refresh rate.

    • Make sure V-Sync isn't disabled in your graphics settings (called \"Vertical sync\" in NVIDIA Control Panel and \"Wait for Vertical Refresh\" in AMD Control Panel.)
    • Make sure your monitor's refresh rate is set to 60Hz or 120Hz.

    It could also be that your computer's performance isn't good enough to keep a steady framerate.

    "},{"location":"games/chunithmsunplus/troubleshooting/#my-game-is-stuttering","title":"My game is stuttering","text":"

    For NVIDIA users, create an override for chusanApp.exe in NVIDIA Control Panel and change \"Power management mode\" to \"Prefer maximum performance\".

    "},{"location":"games/chunithmsunplus/troubleshooting/#my-game-crashes-when-i-tab-out-of-fullscreen","title":"My game crashes when I tab out of fullscreen!","text":"

    As the game is intended to run on arcade hardware, it doesn't like being minimized.

    One workaround for this is to use DXVK. Download the latest version from releases. This will be a dxvk-x.y.z.tar.gz file, which you can open using 7zip. Navigate to the x32 folder, and copy the d3d9.dll file to your game's App\\bin folder, agreeing to overwrite when asked.

    You should now be able to tab out of fullscreen without crashing the game.

    Warning

    The game will not ignore inputs when out of focus.

    This means any controller inputs will still be accepted, so try not to lean onto your slider whilst tabbed out!

    This also means that you can accidentally enter the service menu by hitting your Test key even if the game is minimised. If you were in the middle of a credit, your scores will be lost.

    "},{"location":"games/chunithmsunplus/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    CHUNITHM uses WASAPI exclusive mode for audio to get better latency.

    You can apply the \"Shared Audio\" patch on a CHUNITHM web patcher (see Resources) to hear audio outside of the game at the cost of audio latency.

    "},{"location":"games/chunithmsunplus/troubleshooting/#cabinet-to-cabinetc2c-fixes","title":"Cabinet-to-Cabinet(c2c) Fixes","text":"

    c2c can have many problems but you can fix most of them by applying the \"Patch for head-to-head play\" and disabling \"Set all timers to 999\" on a CHUNITHM web patcher (see Resources).

    If the above does not work then please ensure both machines have the exact same data and can communicate with each other if they cannot then you can try disabling firewalls or changing the c2c group.

    "},{"location":"games/ddrace/problems/","title":"DDR Ace Common Problems/Tips","text":""},{"location":"games/ddrace/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: Celeron M 440 1.86GHz

    GPU: ATI Radeon HD 2400

    RAM: 2 GB

    OS: Windows XP Embedded

    "},{"location":"games/ddrace/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/ddrace/problems/#ddr-as-video-background-are-missing-in-the-menus-andor-some-songs-soft-lock-the-game-on-the-nthfinalextra-stage-screen","title":"Ddr a's Video Background Are Missing in the Menus And/Or Some Songs Soft-Lock the Game on the Nth/Final/Extra Stage Screen","text":"

    DDR's Video backgrounds rely on two DLLs in the game's \"com\" folder. However, unlike most other Bemani AC Games, these DLLs must be registered (Windows must know that these files exist, and where to point to when they are called). Without these, the game will run, but songs that rely on FMV backgrounds will break and the menu's backgrounds will be blank.

    There are two ways to fix this: You can either install the K-lite Codec Pack (which gives the added bonus of enabling playback of weird esoteric video formats outside of the game) or register the DLLs for the game manually, if you wish to save space and aren't afraid of the command prompt.

    You can download the K-lite codec pack from here: https://www.codecguide.com/download_kl.htm The basic installer is all you need. Simply install the pack and then run DDR A.

    To register the DLLs with Windows:

    1. Open an elevated command prompt (Right click Command Prompt -> Run As Administrator)

    2. Navigate to your Windows directory (Typically C:/ Windows), then to SysWOW64 (Or System32 if on a 32-bit version of Windows) by typing cd C:/windows inside the command prompt

    3. Type regsvr32 [path to one of the two DLLs in your DDR A's \"content/com/\" folder]

      Ex: regsvsr32 D:\\MDX-2019042200\\contents\\com k-clvsd.dll

    4. Repeat the command for the other DLL in the folder, and then close command prompt

      Ex: regvsr32 D:\\MDX-2019042200\\contents\\com xactengine2_10.dll

    5. If everything went smoothly, run the game again with your desired tools and enjoy a properly working DDR A!

    "},{"location":"games/ddrace/problems/#i-want-to-play-in-43-sd-mode","title":"I Want to Play in 4:3 (SD) Mode!","text":"

    If you're using SpiceTools, you can add -ddrsd to your gamestart.bat file and the game will boot into 4:3 mode.

    "},{"location":"games/ddrace/problems/#where-is-the-option-for-dancersshadingmeasure-linesfast-slowlayering","title":"Where Is the Option For Dancers/Shading/Measure lines/Fast-Slow/Layering?","text":"

    These options are locked behind network requirements and they will not show unless connected to a network that has written support for these options. Patches exist to alleviate this.

    "},{"location":"games/ddrace/problems/#why-is-my-game-not-in-english","title":"Why Is My Game Not in English?","text":"

    English text is built in, change <dest>J</dest> in the eamuse-config.xml file inside contents/prop to <dest>A</dest>, then you can change language to English in the service menu's GAME OPTIONS (accessed via Spice's Test button). If English is not automatically set as pictured below. Make sure the code at the top left upon booting indicates A:A:A as desired.

    "},{"location":"games/ddrace/setup/","title":"DANCE DANCE REVOLUTION ACE","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/ddrace/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file anything you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/ddrace/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/ddrace/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/ddrace/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/ddrace/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    One last important note before booting the game is that you should install K-Lite Mega Codec (See Common Problems/Tips for a guide!) before booting, the game will run without it, but some songs will lock up and the game will crash and all background videos will be black on most setups.

    With that, you're all done! The final step you'll have to do with your chosen tools is simply setting up your desired keybinds! Once you've done that, Boot the game with your gamestart.bat and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/exchain/problems/","title":"GITADORA EXCHAIN Common Problems/Tips","text":""},{"location":"games/exchain/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: AMD Athlon 64 X2 4400

    GPU: ATI Radeon HD 2400

    RAM: 1 GB

    OS: Windows 7 Embedded

    "},{"location":"games/exchain/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/exchain/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/exchain/problems/#game-stuck-on-title-screen-amd-ryzen-3900x","title":"Game Stuck On Title Screen (AMD Ryzen 3900X)","text":"

    If you have AMD Ryzen 3900X-series processor and the game gets stuck on the title screen (or a black screen) you are running into a known processor bug for games using Media Foundation to play videos. The workaround is to disable simultaneous multithreading (SMT) in the system's BIOS settings. See this GitHub issue for Proton

    "},{"location":"games/exchain/problems/#occasional-graphical-stuttering-during-gameplay","title":"Occasional Graphical Stuttering During Gameplay","text":"

    Disable fullscreen optimizations for spice64.exe instance. Right click on spice64.exe, click on Properties. Click on Compatibility tab, \"Change settings for all users\", and check \"Disable fullscreen optimizations\".

    "},{"location":"games/exchain/problems/#i-get-an-ip-change-error","title":"I get an IP Change Error!","text":"

    Apply the Fix IP Change Error patch.

    "},{"location":"games/exchain/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-). Gitadora features BOTH a visual offset and an audio based one, so experiment accordingly.

    "},{"location":"games/exchain/problems/#why-are-my-videos-freezing-usually-towards-the-end-of-the-song","title":"Why Are My Videos Freezing (Usually Towards the End of the Song)?","text":"

    If you're using Windows 10, there is a bug that is caused by the difference between the ASF stream decoder between Windows 7 and Windows 10 wherein it fails to properly detect the end of file of the video stream which causes the video decoder to throw an exception, which is why the video freezes. At the time of writing, SpiceTools does not have a fix for this, but there are hooks available to resolve this issue.

    "},{"location":"games/exchain/problems/#i-tried-switching-to-spicetools-to-follow-the-guide-and-it-crashes","title":"I Tried Switching to SpiceTools to Follow the Guide and It Crashes!","text":"

    This is a known issue, make sure to replace all of the .dll files from the contents folder of the game with ones from a fresh install, other tools currently modify these files in a way that SpiceTools cannot deal with.

    "},{"location":"games/exchain/problems/#my-drum-pedal-isnt-working","title":"My Drum Pedal Isn't Working!","text":"

    Some drum kits utilize hi-hat control with the pedal resulting in different MIDI addresses that require additional bindings, make sure to follow your drum kit's manual to see these other bindings and bind them in your desired tool's accordingly. Gitadora does not do this, so the game utilizes just 1 binding for every level of sensitivity on the pedal and multiple bindings are typically required with most drum kits.

    "},{"location":"games/exchain/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    Gitadora is a 64-bit game that utilizes a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of BEMANI games which used DirectSound. Unfortunately, this cannot be changed.

    "},{"location":"games/exchain/problems/#note-on-2-channel-and-4-channel-audio","title":"Note on 2-channel and 4-channel Audio","text":"

    For most setups, the -2ch parameter will be mandatory to hear any functional audio. 4-channel setups aren't really working in general and there's buffer issues, please avoid using it.

    "},{"location":"games/exchain/setup/","title":"GITADORA EXCHAIN","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/exchain/setup/#getting-started","title":"Getting Started.","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, the first thing to do is put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    Why does this look different than the usual? This installation includes a modules folder that Spice automatically detects, keeping things clean and simple.

    "},{"location":"games/exchain/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below for both launching the guitar version and drum version using SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/exchain/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    FOR GUITAR

    For our guitar local network configuration example, on a single line in the .bat file we're going to type spice64.exe -e prop\\eamuse-config2.xml -2ch -ea -w and save the file.

    What do these different parameters do? - -e sets a custom path for the eamuse config to boot the proper one (in this case, guitar via prop\\eamuse-config2.xml) - -2ch enables 2-channel audio for GITADORA - -ea enables an integrated e-amusement server within SpiceTools. - -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    FOR DRUM

    For our drum local network configuration example, on a single line in the .bat file we're going to type spice64.exe -2ch -ea -w and save the file.

    What do these different parameters do? - -2ch enables 2-channel audio for GITADORA - -ea enables an integrated e-amusement server within SpiceTools. - -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/exchain/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    FOR GUITAR

    For our guitar online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -e prop\\eamuse-config2.xml -2ch -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -e sets a custom path for the eamuse config to boot the proper one (in this case, guitar via prop\\eamuse-config2.xml)
    • -2ch enables 2-channel audio for GITADORA
    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    FOR DRUM

    For our drum online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -2ch -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -2ch enables 2-channel audio for GITADORA
    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/exchain/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen, oh no!

    This is normal, simply hit your Test keybind and continue on to this.

    From here, we will need to set a shop name to play, so select the GAME OPTIONS option.

    Then, select SHOP SETTINGS.

    Once inside, select SHOP NAME SETTINGS and name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done, go down to PREFECTURE and set it to whatever you desire as well. Finally, go to SAVE AND EXIT to get back to the main menu.

    The last menu we'll go inside from the service menu is the clock menu. Go inside CLOCK and simply set the clock by hitting SAVE AND EXIT as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/gitamatixx/problems/","title":"GITADORA Matixx Common Problems/Tips","text":""},{"location":"games/gitamatixx/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: AMD Athlon 64 X2 4400

    GPU: ATI Radeon HD 2400

    RAM: 1 GB

    OS: Windows 7 Embedded

    "},{"location":"games/gitamatixx/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/gitamatixx/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/gitamatixx/problems/#game-stuck-on-title-screen-amd-ryzen-3900x","title":"Game Stuck On Title Screen (AMD Ryzen 3900X)","text":"

    If you have AMD Ryzen 3900X-series processor and the game gets stuck on the title screen (or a black screen) you are running into a known processor bug for games using Media Foundation to play videos. The workaround is to disable simultaneous multithreading (SMT) in the system's BIOS settings. See this GitHub issue for Proton

    "},{"location":"games/gitamatixx/problems/#occasional-graphical-stuttering-during-gameplay","title":"Occasional Graphical Stuttering During Gameplay","text":"

    Disable fullscreen optimizations for spice64.exe instance. Right click on spice64.exe, click on Properties. Click on Compatibility tab, \"Change settings for all users\", and check \"Disable fullscreen optimizations\".

    "},{"location":"games/gitamatixx/problems/#i-get-an-ip-change-error","title":"I get an IP Change Error!","text":"

    Apply the Fix IP Change Error patch.

    "},{"location":"games/gitamatixx/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-). Gitadora features BOTH a visual offset and an audio based one, so experiment accordingly.

    "},{"location":"games/gitamatixx/problems/#why-are-my-videos-freezing-usually-towards-the-end-of-the-song","title":"Why Are My Videos Freezing (Usually Towards the End of the Song)?","text":"

    If you're using Windows 10, there is a bug that is caused by the difference between the ASF stream decoder between Windows 7 and Windows 10 wherein it fails to properly detect the end of file of the video stream which causes the video decoder to throw an exception, which is why the video freezes. At the time of writing, SpiceTools does not have a fix for this, but there are hooks available to resolve this issue.

    "},{"location":"games/gitamatixx/problems/#i-tried-switching-to-spicetools-to-follow-the-guide-and-it-crashes","title":"I Tried Switching to SpiceTools to Follow the Guide and It Crashes!","text":"

    This is a known issue, make sure to replace all of the .dll files from the contents folder of the game with ones from a fresh install, other tools currently modify these files in a way that SpiceTools cannot deal with.

    "},{"location":"games/gitamatixx/problems/#my-drum-pedal-isnt-working","title":"My Drum Pedal Isn't Working!","text":"

    Some drum kits utilize hi-hat control with the pedal resulting in different MIDI addresses that require additional bindings, make sure to follow your drum kit's manual to see these other bindings and bind them in your desired tool's accordingly. Gitadora does not do this, so the game utilizes just 1 binding for every level of sensitivity on the pedal and multiple bindings are typically required with most drum kits.

    "},{"location":"games/gitamatixx/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    Gitadora is a 64-bit game that utilizes a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of BEMANI games which used DirectSound. Unfortunately, this cannot be changed.

    "},{"location":"games/gitamatixx/problems/#note-on-2-channel-and-4-channel-audio","title":"Note on 2-channel and 4-channel Audio","text":"

    For most setups, the -2ch parameter will be mandatory to hear any functional audio. 4-channel setups aren't really working in general and there's buffer issues, please avoid using it.

    "},{"location":"games/gitamatixx/setup/","title":"GITADORA Matixx","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/gitamatixx/setup/#getting-started","title":"Getting Started.","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, the first thing to do is put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/gitamatixx/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below for both launching the guitar version and drum version using SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/gitamatixx/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    FOR GUITAR

    For our guitar local network configuration example, on a single line in the .bat file we're going to type spice64.exe -e prop\\eamuse-config2.xml -2ch -ea -w and save the file.

    What do these different parameters do? - -e sets a custom path for the eamuse config to boot the proper one (in this case, guitar via prop\\eamuse-config2.xml) - -2ch enables 2-channel audio for GITADORA - -ea enables an integrated e-amusement server within SpiceTools. - -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    FOR DRUM

    For our drum local network configuration example, on a single line in the .bat file we're going to type spice64.exe -2ch -ea -w and save the file.

    What do these different parameters do? - -2ch enables 2-channel audio for GITADORA - -ea enables an integrated e-amusement server within SpiceTools. - -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/gitamatixx/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    FOR GUITAR

    For our guitar online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -e prop\\eamuse-config2.xml -2ch -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -e sets a custom path for the eamuse config to boot the proper one (in this case, guitar via prop\\eamuse-config2.xml)
    • -2ch enables 2-channel audio for GITADORA
    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    FOR DRUM

    For our drum online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -2ch -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -2ch enables 2-channel audio for GITADORA
    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/gitamatixx/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen, oh no!

    This is normal, simply hit your Test keybind and continue on to this.

    From here, we will need to set a shop name to play, so select the GAME OPTIONS option.

    Then, select SHOP SETTINGS.

    Once inside, select SHOP NAME SETTINGS and name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done, go down to PREFECTURE and set it to whatever you desire as well. Finally, go to SAVE AND EXIT to get back to the main menu.

    The last menu we'll go inside from the service menu is the clock menu. Go inside CLOCK and simply set the clock by hitting SAVE AND EXIT as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/hellopopn/problems/","title":"Common Problems/Tips","text":"

    HELLO Pop'n Common Problems/Tips

    "},{"location":"games/hellopopn/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Try to eliminate any unnecessary background processes during play.

    "},{"location":"games/hellopopn/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/hellopopn/problems/#the-game-crashes-fullscreen","title":"The game crashes fullscreen!","text":"

    Some monitors and display adapters may not support the odd resolution the game runs at, which is 1360x768 versus the occasionally seen 1366x768. To resolve, setup a custom resolution inside your appropriate graphics card settings, or enable GPU resolution scaling.

    "},{"location":"games/hellopopn/problems/#other-crashes","title":"Other Crashes","text":"

    This game may fail in the case of using HDMI audio. Even if you're not using HDMI audio however, some failures to boot have been noted. Please update to the latest SpiceTools which fixes this issue.

    "},{"location":"games/hellopopn/setup/","title":"HELLO Pop'n","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/hellopopn/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder. Pictured below is what your folder should look like.

    "},{"location":"games/hellopopn/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up spicecfg.exe and head to the Options tab. Here you can configure all of the various options that SpiceTools has, but for the purpose of this guide we'll demonstrate how to set up a local server and an online server. You can skip over the parts that you don't need, and feel free to set any other options that you might like.

    If you're not using SpiceTools:

    It's most likely that your toolkit doesn't have an options interface, so you'll have to create a .bat file. Consult the appropriate documentation for this as this isn't covered in this guide.

    "},{"location":"games/hellopopn/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, in the Options tab enable the following options: E-Amusement Emulation: -ea and Windowed Mode: -w.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to disable -w to run the game fullscreen once you're done setting up!

    Pictured below, the selected options in spicecfg.exe.

    "},{"location":"games/hellopopn/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different options!

    We're going to use the option PCBID: -pcbid for our PCBID, with XXXXXXXXXXXXXXXXXXXX as the value. For the network URL we're going to use the option Service URL: -url, with http://yoururlhere.com/ as the value. We'll also enable windowed mode by enabling the option Windowed Mode: -w.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to disable -w to run the game fullscreen once you're done setting up!

    Pictured below, the enabled options in spicecfg.exe.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/hellopopn/setup/#configuring-keybinds","title":"Configuring Keybinds","text":"

    While we're still in spicecfg.exe, why not set up the keybinds? To do this you'll have to head on over to the Buttons tab. Here you simply click Bind and press the button on your controller (or keyboard). Below are my keybinds for a keyboard. Notice that I've also bound the Service, Test and Coin Mech buttons to my keyboard. This might come in handy but shouldn't be necessary to play the game.

    "},{"location":"games/hellopopn/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    Boot the game by double-clicking spice.exe.

    The boot sequence may have a very light blue background. Press any overlay hotkey (F12, for example) to make it display normally.

    Simply follow the on-screen text in the bottom left corner to continue. On the first boot, the game may tell you to press Test, and then Service.

    HELLO Pop'n has the ability to run offline, so the network error can be safely ignored.

    You're all done! The game takes a couple of seconds to load all of the data.

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/iidx10/setup/","title":"beatmania IIDX 10th style","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx10/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.
    "},{"location":"games/iidx10/setup/#installing-bemanitools","title":"Installing Bemanitools","text":"
    • Download Bemanitools.

    • Inside bemanitools-5.48.zip locate iidx-09-to-12.zip.

    • Extract everything inside the folder that contains the bm2dx.exe which is located in \\D01\\JAE.

    Pictured below is what your folder should look like. We've removed any files not necessary for 10th style.

    "},{"location":"games/iidx10/setup/#using-iidxhook-10conf-rteffectdll","title":"Using iidxhook-10.conf & RtEffect.dll","text":"
    • Download the Bemanitools supplements

    • Open bemanitools-supplement-v1.6.zip and navigate inside misc.zip

    • Inside misc\\d3d8to9, extract d3d8.dll to \\D01\\JAE.

    This enables us to use the graphic options inside iidxhook-10.conf which we will take advantage of.

    • Open bemanitools-supplement-v1.6.zip and navigate inside iidx.zip

    • Inside iidx/misc, extract RtEffect_stub.dll to \\D01\\JAE.

    • Delete the already existing RtEffect.dll and rename RtEffect_stub.dll to RtEffect.dll.

    This will eliminate any immediate crashes relating to needing specific old hardware.

    "},{"location":"games/iidx10/setup/#replacing-bm2dxexe","title":"Replacing bm2dx.exe","text":"
    • Go to D01\\util and copy bm2dx_D01_JAE_no_checksum.exe to D01\\JAE

    • Delete the original bm2dx.exe

    • Rename bm2dx_D01_JAE_no_checksum.exe to bm2dx.exe

    If you don't do this, you will end up getting a HDD DATA ERROR (PROG CHKSUM) which will result in the game not being able to run.

    "},{"location":"games/iidx10/setup/#configuring-bemanitools","title":"Configuring Bemanitools","text":"

    To configure your keybinds, open your config.bat file.

    "},{"location":"games/iidx10/setup/#buttons","title":"Buttons","text":"

    Double click on the right on a button that you wish to bind, then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx10/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • Head to the Analogs tab at the top.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the preview turns along with it.
    • Click OK, leaving the rest of the settings alone.
    "},{"location":"games/iidx10/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through bemanitools.

    If it does, here's how you may link different actions to your lights:

    • In Device, pick your controller.
    • In Game Light, select the corresponding button that will be used for that light.
    • Repeat for your other lights.

    If you'd like to play offline, you can head straight to Game resolution and locking FPS

    "},{"location":"games/iidx10/setup/#configuring-bemanitools-for-a-network","title":"Configuring Bemanitools for a network","text":"

    Head over to the Network tab.

    Now we will set up our PIN pad and card.

    • Click on Keyboard device
    • You may or may not have more than one option. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.
    • Once you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed).
    • Grab your card, create a .txt and name it however you like. In this example it's called card.txt
    • Place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    "},{"location":"games/iidx10/setup/#connecting-to-a-network","title":"Connecting to a network","text":"
    • Locate your iidxhook-10.conf

    • Open it with your desired text editor (we're using Notepad++)

    • Replace the eamuse.server=localhost:80 with your desired network URL

    • Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n
    "},{"location":"games/iidx10/setup/#game-resolution-and-locking-fps","title":"Game resolution and locking FPS","text":"

    We'd like to mention that there are two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window and configure the proper resolution. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-10.conf. We want to find these lines:

    # Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, press CTRL + F and search for gfx.frame_rate_limit=0.0. This will bring you to the first line we want to edit.

    Listed below are the values we want to change them to.

    gfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false.

    Make sure to decide on whether you want Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n
    "},{"location":"games/iidx10/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx10/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run gamestart.bat.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    Press your Start key to confirm to get to the next error message.

    "},{"location":"games/iidx10/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Start key to confirm. This will bring you into it's service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Navigate to CLOCK. You do not need to manually change it. Navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx10/setup/#enabling-e-amusement-for-online-play","title":"Enabling e-AMUSEMENT for Online Play","text":"

    From the service menu, go to e-AMUSEMENT OPTIONS then e-AMUSEMENT SETTINGS.

    It'll bring you to this screen, change it so that e-AMUSEMENT switches to ON and it will look like this:

    We will need to set a SHOP NAME SETTING and change our PREFECTURE otherwise the game will throw errors at us.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Navigate to EXIT and select it.
    • Change your prefecture once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Select SAVE AND EXIT. The game will now give you a message, which translated means:

    e-AMUSEMENT settings have been changed. Please turn the power off and on again.

    So, close the game and open it again.

    "},{"location":"games/iidx10/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played. Make sure to insert two credits by pressing your SERVICE key. Have fun!

    Have any other errors?

    Check out the Troubleshooting section.

    "},{"location":"games/iidx10/troubleshooting/","title":"IIDX 10 Troubleshooting","text":""},{"location":"games/iidx10/troubleshooting/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx10/troubleshooting/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx10/troubleshooting/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx10/troubleshooting/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. These fixes shouldn't be needed for 10th style since we're addressing them in the guide. We'll add them anyway just in case.

    "},{"location":"games/iidx10/troubleshooting/#fix-1-wrong-data-structure","title":"Fix #1 (Wrong data structure)","text":"

    Make sure that your unpacked data looks like this:

    • JAx (Game binary revision folder where 'x' can be A, B, C, D, E, F, G)
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx10/troubleshooting/#fix-2-rteffectsdll-didnt-get-replaced","title":"Fix #2 (RtEffects.dll didn't get replaced)","text":"

    Refer to Using iidxhook-10.conf & RtEffect.dll again and check if you have followed all the instructions explained in it.

    "},{"location":"games/iidx11/setup/","title":"beatmania IIDX 11 IIDX RED","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx11/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.
    "},{"location":"games/iidx11/setup/#installing-bemanitools","title":"Installing Bemanitools","text":"
    • Download Bemanitools.

    • Inside bemanitools-5.48.zip locate iidx-09-to-12.zip.

    • Extract everything inside the folder that contains the bm2dx.exe which is located in \\E11\\JAA.

    Pictured below is what your folder should look like. We've removed any files not necessary for IIDX RED.

    "},{"location":"games/iidx11/setup/#using-iidxhook-11conf-rteffectdll","title":"Using iidxhook-11.conf & RtEffect.dll","text":"
    • Download the Bemanitools supplements

    • Open bemanitools-supplement-v1.6.zip and navigate inside misc.zip

    • Inside misc\\d3d8to9, extract d3d8.dll to \\E11\\JAA.

    This enables us to use the graphic options inside iidxhook-11.conf which we will take advantage of.

    • Open bemanitools-supplement-v1.6.zip and navigate inside iidx.zip

    • Inside iidx/misc, extract RtEffect_stub.dll to \\E11\\JAA.

    • Delete the already existing RtEffect.dll and rename RtEffect_stub.dll to RtEffect.dll.

    This will eliminate any immediate crashes relating to needing specific old hardware.

    "},{"location":"games/iidx11/setup/#configuring-bemanitools","title":"Configuring Bemanitools","text":"

    To configure your keybinds, open your config.bat file.

    "},{"location":"games/iidx11/setup/#buttons","title":"Buttons","text":"

    Double click on the right on a button that you wish to bind, then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx11/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • Head to the Analogs tab at the top.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the preview turns along with it.
    • Click OK, leaving the rest of the settings alone.
    "},{"location":"games/iidx11/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through bemanitools.

    If it does, here's how you may link different actions to your lights:

    • In Device, pick your controller.
    • In Game Light, select the corresponding button that will be used for that light.
    • Repeat for your other lights.

    If you'd like to play offline, you can head straight to Game resolution and locking FPS

    "},{"location":"games/iidx11/setup/#configuring-bemanitools-for-a-network","title":"Configuring Bemanitools for a network","text":"

    Head over to the Network tab.

    Now we will set up our PIN pad and card.

    • Click on Keyboard device
    • You may or may not have more than one option. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.
    • Once you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed).
    • Grab your card, create a .txt and name it however you like. In this example it's called card.txt
    • Place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    "},{"location":"games/iidx11/setup/#connecting-to-a-network","title":"Connecting to a network","text":"
    • Locate your iidxhook-11.conf

    • Open it with your desired text editor (we're using Notepad++)

    • Replace the eamuse.server=localhost:80 with your desired network URL

    • Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n
    "},{"location":"games/iidx11/setup/#game-resolution-and-locking-fps","title":"Game resolution and locking FPS","text":"

    We'd like to mention that there are two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window and configure the proper resolution. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-11.conf. We want to find these lines:

    # Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, press CTRL + F and search for gfx.frame_rate_limit=0.0. This will bring you to the first line we want to edit.

    Listed below are the values we want to change them to.

    gfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false.

    Make sure to decide on whether you want Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n
    "},{"location":"games/iidx11/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx11/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run gamestart.bat.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    Press your Start key to confirm to get to the next error message.

    "},{"location":"games/iidx11/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Start key to confirm. This will bring you into it's service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Navigate to CLOCK. You do not need to manually change it. Navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx11/setup/#enabling-e-amusement-for-online-play","title":"Enabling e-AMUSEMENT for Online Play","text":"

    From the service menu, go to NETWORK OPTIONS then e-AMUSEMENT SETTINGS.

    It'll bring you to this screen, change it so that e-AMUSEMENT switches to ON and it will look like this:

    We will need to set a SHOP NAME SETTING and change our PREFECTURE otherwise the game will throw errors at us.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Navigate to EXIT and select it.
    • Change your prefecture once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Select SAVE AND EXIT. The game will now give you a message, which translated means:

    e-AMUSEMENT settings have been changed. Please turn the power off and on again.

    So, close the game and open it again.

    "},{"location":"games/iidx11/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played. Make sure to insert two credits by pressing your SERVICE key. Have fun!

    Have any other errors?

    Check out the Troubleshooting section.

    "},{"location":"games/iidx11/troubleshooting/","title":"IIDX 11 Troubleshooting","text":""},{"location":"games/iidx11/troubleshooting/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx11/troubleshooting/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx11/troubleshooting/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx11/troubleshooting/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. These fixes shouldn't be needed for IIDX RED since we're addressing them in the guide. We'll add them anyway just in case.

    "},{"location":"games/iidx11/troubleshooting/#fix-1-wrong-data-structure","title":"Fix #1 (Wrong data structure)","text":"

    Make sure that your unpacked data looks like this:

    • JAx (Game binary revision folder where 'x' can be A, B, C, D, E, F, G)
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx11/troubleshooting/#fix-2-rteffectsdll-didnt-get-replaced","title":"Fix #2 (RtEffects.dll didn't get replaced)","text":"

    Refer to Using iidxhook-11.conf & RtEffect.dll again and check if you have followed all the instructions explained in it.

    "},{"location":"games/iidx12/setup/","title":"beatmania IIDX 12 HAPPY SKY","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx12/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.
    "},{"location":"games/iidx12/setup/#installing-bemanitools","title":"Installing Bemanitools","text":"
    • Download Bemanitools.

    • Inside bemanitools-5.48.zip locate iidx-09-to-12.zip.

    • Extract everything inside the folder that contains the bm2dx.exe which is located in \\ECO\\JAD.

    Pictured below is what your folder should look like. We've removed any files not necessary for HAPPY SKY.

    "},{"location":"games/iidx12/setup/#using-iidxhook-12conf-rteffectdll","title":"Using iidxhook-12.conf & RtEffect.dll","text":"
    • Download the Bemanitools supplements

    • Open bemanitools-supplement-v1.6.zip and navigate inside misc.zip

    • Inside misc\\d3d8to9, extract d3d8.dll to \\ECO\\JAD.

    This enables us to use the graphic options inside iidxhook-12.conf which we will take advantage of.

    • Open bemanitools-supplement-v1.6.zip and navigate inside iidx.zip

    • Inside iidx/misc, extract RtEffect_stub.dll to \\ECO\\JAD.

    • Delete the already existing RtEffect.dll and rename RtEffect_stub.dll to RtEffect.dll.

    This will eliminate any immediate crashes relating to needing specific old hardware.

    "},{"location":"games/iidx12/setup/#installing-clvsdax","title":"Installing CLVSD.ax","text":"

    We need to install a codec so that background videos will work and won't cause an error.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx12/setup/#configuring-bemanitools","title":"Configuring Bemanitools","text":"

    To configure your keybinds, open your config.bat file.

    "},{"location":"games/iidx12/setup/#buttons","title":"Buttons","text":"

    Double click on the right on a button that you wish to bind, then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx12/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • Head to the Analogs tab at the top.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the preview turns along with it.
    • Click OK, leaving the rest of the settings alone.
    "},{"location":"games/iidx12/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through bemanitools.

    If it does, here's how you may link different actions to your lights:

    • In Device, pick your controller.
    • In Game Light, select the corresponding button that will be used for that light.
    • Repeat for your other lights.

    If you'd like to play offline, you can head straight to Game resolution and locking FPS

    "},{"location":"games/iidx12/setup/#configuring-bemanitools-for-a-network","title":"Configuring Bemanitools for a network","text":"

    Head over to the Network tab.

    Now we will set up our PIN pad and card.

    • Click on Keyboard device
    • You may or may not have more than one option. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.
    • Once you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed).
    • Grab your card, create a .txt and name it however you like. In this example it's called card.txt
    • Place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    "},{"location":"games/iidx12/setup/#connecting-to-a-network","title":"Connecting to a network","text":"
    • Locate your iidxhook-12.conf

    • Open it with your desired text editor (we're using Notepad++)

    • Replace the eamuse.server=localhost:80 with your desired network URL

    • Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n
    "},{"location":"games/iidx12/setup/#game-resolution-and-locking-fps","title":"Game resolution and locking FPS","text":"

    We'd like to mention that there are two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window and configure the proper resolution. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-12.conf. We want to find these lines:

    # Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, press CTRL + F and search for gfx.frame_rate_limit=0.0. This will bring you to the first line we want to edit.

    Listed below are the values we want to change them to.

    gfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false.

    Make sure to decide on whether you want Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n
    "},{"location":"games/iidx12/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx12/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run gamestart.bat.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    Press your Start key to confirm to get to the next error message.

    "},{"location":"games/iidx12/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Start key to confirm. This will bring you into it's service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Navigate to CLOCK. You do not need to manually change it. Navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx12/setup/#enabling-e-amusement-for-online-play","title":"Enabling e-AMUSEMENT for Online Play","text":"

    From the service menu, go to NETWORK OPTIONS then e-AMUSEMENT SETTINGS.

    It'll bring you to this screen, change it so that e-AMUSEMENT switches to ON and it will look like this:

    We will need to set a SHOP NAME SETTING and change our PREFECTURE otherwise the game will throw errors at us.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Navigate to EXIT and select it.
    • Change your prefecture once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Select SAVE AND EXIT. The game will now give you a message, which translated means:

    e-AMUSEMENT settings have been changed. Please turn the power off and on again.

    So, close the game and open it again.

    "},{"location":"games/iidx12/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played. Make sure to insert two credits by pressing your SERVICE key. Have fun!

    Have any other errors?

    Check out the Troubleshooting section.

    "},{"location":"games/iidx12/troubleshooting/","title":"IIDX 12 Common Problems/Tips","text":""},{"location":"games/iidx12/troubleshooting/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx12/troubleshooting/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx12/troubleshooting/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx12/troubleshooting/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. These fixes shouldn't be needed for HAPPY SKY since we're addressing them in the guide. We'll add them anyway just in case.

    "},{"location":"games/iidx12/troubleshooting/#fix-1-wrong-data-structure","title":"Fix #1 (Wrong data structure)","text":"

    Make sure that your unpacked data looks like this:

    • JAx (Game binary revision folder where 'x' can be A, B, C, D, E, F, G)
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx12/troubleshooting/#fix-2-rteffectsdll-didnt-get-replaced","title":"Fix #2 (RtEffects.dll didn't get replaced)","text":"

    Refer to Using iidxhook-12.conf & RtEffect.dll again and check if you have followed all the instructions explained in it.

    "},{"location":"games/iidx13/problems/","title":"IIDX 13 Common Problems/Tips","text":""},{"location":"games/iidx13/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx13/problems/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx13/problems/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    Inside the Bemanitools Supplement archive, navigate to \\iidx.zip\\iidx\\misc\\ where you'll find CLVSD.ax.

    Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    Open up the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\" A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx13/problems/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. These fixes shouldn't be needed for DistorteD since we're addressing them in the guide. We'll add them anyway just in case.

    "},{"location":"games/iidx13/problems/#fix-1-wrong-data-structure","title":"Fix #1 (Wrong data structure)","text":"

    Make sure that your unpacked data looks like this:

    • JAx (Game binary revision folder where 'x' can be A, B, C, D, E, F, G)
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx13/problems/#fix-2-rteffectsdll-didnt-get-replaced","title":"Fix #2 (RtEffects.dll didn't get replaced)","text":"

    Refer to Getting Started again and check if you have followed all the instructions explained in it.

    "},{"location":"games/iidx13/setup/","title":"beatmania IIDX 13 DistorteD","text":"

    Before reading

    This game will require you to touch and edit files manually. This guide tries to make everything as clear as possible. Bemanitools & Bemanitools Supplement will be used in this guide.

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you encounter any issues or errors regarding this guide or come across issues that aren't listed, feel free to open up a GitHub Issue!

    "},{"location":"games/iidx13/setup/#getting-started","title":"Getting Started","text":"

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, locate iidx-13.zip inside the bemanitools-5.44.zip. Extract it inside the folder that contains the bm2dx.exe which should be located in \\FDD\\JAG. Pictured below is what your folder should look like, we've removed any files not necessary for DistorteD. Feel free to name your gamestart.bat file whatever you desire, for the sake of convenience we've kept it as it.

    Next up, open the bemanitools-supplement-v1.6.zip or any version higher than that and navigate inside the misc.zip. Now navigate into misc\\d3d8to9 and extract d3d8.dll into the same folder as we previously have done. This enables us to use the graphic options inside iidxhook-13.conf which we will take advantage of. It should look like this:

    Now, open up bemanitools-supplement-v1.6.zip again and navigate into iidx.zip. Next, navigate into iidx/misc and extract RtEffect_stub.dll into the same folder as we previously have done.

    Delete the already existing RtEffect.dll and rename RtEffect_stub.dll to RtEffect.dll. This will eliminate any immediate crashes relating to needing specific old hardware.

    Lastly, we need to install a codec so that background videos will work and won't cause an error.

    Inside the Bemanitools Supplement archive, navigate to \\iidx.zip\\iidx\\misc\\ where you'll find CLVSD.ax.

    Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    Open up the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\" A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just DistorteD.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx13/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    To configure your keybinds, open up your config.bat file. You'll be greeted by this screen:

    It works similarly to Spice but not entirely. Make sure to also bind Test and Service since we will need it later. Service will also be used to insert coins to start the game. When you're done setting up your keybinds and analogs, it should look something like this:

    If you'd like to play offline, you can head straight to Setting up the games resolution

    "},{"location":"games/iidx13/setup/#configuring-bemanitools-for-an-online-network","title":"Configuring Bemanitools for an Online Network","text":"

    After setting the keybinds and analogs, we can head over to the Network tab, which will look like this:

    Now we will set up our PIN pad and card. Click on Keyboard device, you may or may not have more than one option. This is normal. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    If you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed). It should look similiar to this:

    Next, grab your card, create a .txt, name it however you like, in this example it's called card.txt and place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder. It should look like this:

    "},{"location":"games/iidx13/setup/#configuring-the-game-for-an-online-network","title":"Configuring the game for an Online Network","text":"

    Locate your iidxhook-13.conf and edit it in your desired text editor (we're using Notepad++). It may seem overwhelming at first but it's actually fairly simple. All we really care about are these lines:

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n

    Replace the eamuse.server=localhost:80 with your desired network URL

    Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    "},{"location":"games/iidx13/setup/#setting-up-the-games-resolution-locking-fps-and-fixing-stretched-videos","title":"Setting up the game's resolution, locking FPS and fixing stretched videos","text":"

    Before we begin, we'd like to mention that you have two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window, configure the proper resolution and fix stretched background videos. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-13.conf. We want to find these lines:

    # Fix stretched BG videos on newer GPUs. Might appear on Red and newer\ngfx.bgvideo_uv_fix=false\n\n# Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, simply press CTRL + F and search for each argument. It will highlight them for you.

    Listed below are the values we want to change them to.

    gfx.bgvideo_uv_fix=true\ngfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false. Under normal circumstances there shouldn't be a need for you to fiddle with gfx.monitor_check=1.000000 so we are also going to ignore it.

    Make sure to adjust for if you want either Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n

    When you're done, it should look like this:

    "},{"location":"games/iidx13/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    We can now focus on starting the game and getting it running. Open gamestart.bat (if you kept the name as is)

    You will be greeted by the initialization screen and shortly after this screen:

    Hit your Start button to confirm to get to this screen:

    Hit your Start button again to confirm. This will bring you into the games settings menu. From there, navigate to CLOCK SETUP. You can leave the date, no need to manually change it. Simply navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx13/setup/#enabling-e-amusement-for-online-play","title":"Enabling e-AMUSEMENT for Online Play","text":"

    From the games settings menu, naviate to e-AMUSEMENT OPTIONS and select it. This will bring you to e-AMUSEMENT SETTINGS. Select it aswell.

    It'll bring you to this next screen, select it so that e-AMUSEMENT switches to ON and it will look like this:

    We now have to change our SHOP NAME SETTING and PREFECTURE otherwise the game will throw errors at us.

    Start with the shop name, select it and change them to what ever you like. When you're done editing your shop name, navigate to EXIT and select it.

    For the prefecture change it once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Once that is done, hit SAVE AND EXIT. The game will now give you a message, which translated means:

    e-AMUSEMENT settings have been changed. Please turn the power off and on again.

    So, close the game and open it up again.

    "},{"location":"games/iidx13/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played! Make sure to insert two credits by pressing your SERVICE key! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/iidx14/problems/","title":"IIDX 14 Common Problems/Tips","text":""},{"location":"games/iidx14/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx14/problems/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx14/problems/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    Inside the Bemanitools Supplement archive, navigate to \\iidx.zip\\iidx\\misc\\ where you'll find CLVSD.ax.

    Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    Open up the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\" A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx14/problems/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. This fix shouldn't be needed for GOLD since we're addressing them in the guide. We'll add it anyway just in case.

    "},{"location":"games/iidx14/problems/#wrong-data-structure","title":"Wrong data structure","text":"

    Make sure that your unpacked data looks like this:

    • yyyymmddrr (y = year digit, m = month digit, d = day digit, r = revision digit) revision folder containing game binary and libraries
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx14/setup/","title":"beatmania IIDX 14 GOLD","text":"

    Before reading

    This game will require you to touch and edit files manually. This guide tries to make everything as clear as possible. Bemanitools & Bemanitools Supplement will be used in this guide.

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you encounter any issues or errors regarding this guide or come across issues that aren't listed, feel free to open up a GitHub Issue!

    "},{"location":"games/iidx14/setup/#getting-started","title":"Getting Started","text":"

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, locate iidx-14-to-17.zip inside the bemanitools-5.44.zip. Extract it inside the folder that contains the bm2dx.exe which should be located in \\GLD\\2007072301. Pictured below is what your folder should look like, we've removed any files not necessary for GOLD. Feel free to name your gamestart.bat file whatever you desire, for the sake of convenience we've kept it as it.

    Next up, open the bemanitools-supplement-v1.6.zip or any version higher than that and navigate inside the misc.zip. Now navigate into misc\\d3d8to9 and extract d3d8.dll into the same folder as we previously have done. This enables us to use the graphic options inside iidxhook-14.conf which we will take advantage of. It should look like this:

    Lastly, we need to install a codec so that background videos will work and won't cause an error.

    Inside the Bemanitools Supplement archive, navigate to \\iidx.zip\\iidx\\misc\\ where you'll find CLVSD.ax.

    Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    Open up the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\" A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just DistorteD.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx14/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    To configure your keybinds, open up your config.bat file. You'll be greeted by this screen:

    It works similarly to Spice but not entirely. Make sure to also bind Test and Service since we will need it later. Service will also be used to insert coins to start the game. When you're done setting up your keybinds and analogs, it should look something like this:

    If you'd like to play offline, you can head straight to Setting up the games resolution

    "},{"location":"games/iidx14/setup/#configuring-bemanitools-for-an-online-network","title":"Configuring Bemanitools for an Online Network","text":"

    After setting the keybinds and analogs, we can head over to the Network tab, which will look like this:

    Now we will set up our PIN pad and card. Click on Keyboard device, you may or may not have more than one option. This is normal. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    If you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed). It should look similiar to this:

    Next, grab your card, create a .txt, name it however you like, in this example it's called card.txt and place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder. It should look like this:

    "},{"location":"games/iidx14/setup/#configuring-the-game-for-an-online-network","title":"Configuring the game for an Online Network","text":"

    Locate your iidxhook-14.conf and edit it in your desired text editor (we're using Notepad++). It may seem overwhelming at first but it's actually fairly simple. All we really care about are these lines:

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n

    Replace the eamuse.server=localhost:80 with your desired network URL

    Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    "},{"location":"games/iidx14/setup/#setting-up-the-games-resolution-locking-fps-and-fixing-stretched-videos","title":"Setting up the game's resolution, locking FPS and fixing stretched videos","text":"

    Before we begin, we'd like to mention that you have two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window, configure the proper resolution and fix stretched background videos. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-14.conf. We want to find these lines:

    # Fix stretched BG videos on newer GPUs. Might appear on Red and newer\ngfx.bgvideo_uv_fix=false\n\n# Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, simply press CTRL + F and search for each argument. It will highlight them for you.

    Listed below are the values we want to change them to.

    gfx.bgvideo_uv_fix=true\ngfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false. Under normal circumstances there shouldn't be a need for you to fiddle with gfx.monitor_check=1.000000 so we are also going to ignore it.

    Make sure to adjust for if you want either Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n

    When you're done, it should look like this:

    "},{"location":"games/iidx14/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    We can now focus on starting the game and getting it running. Open gamestart.bat (if you kept the name as is)

    You might come across an error that says:

    USB I/O ERROR ERROR(FM TRNS-OUT) or USB I/O ERROR ERROR(FM-DL TIMEOUT) simply reboot the game and it should work regardless.

    You will be greeted by the initialization screen and shortly after this screen:

    Hit your Test button to confirm to get to this screen:

    Hit your Test button again to confirm. The game will then perform a MONITOR CHECK.

    Once the MONITOR CHECK is done, the game puts us into the games settings menu. From there, navigate to CLOCK SETUP. You can leave the date, no need to manually change it. Simply navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx14/setup/#setting-shop-name-and-prefecture-for-online-play","title":"Setting Shop Name and Prefecture for Online Play","text":"

    From the games settings menu, naviate to e-AMUSEMENT OPTIONS and select it. This will bring you to e-AMUSEMENT SETTINGS. Select it aswell.

    It'll bring you to this next screen, if e-AMUSEMENT is OFF, select it so that e-AMUSEMENT switches to ON and it will look like this:

    We now have to change our SHOP NAME SETTING and PREFECTURE otherwise the game will throw errors at us.

    Start with the shop name, select it and change them to what ever you like. When you're done editing your shop name, navigate to EXIT and select it.

    For the prefecture change it once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Once that is done, hit SAVE AND EXIT. The game will say NOW SAVING.

    When it's done saving, you can exit out of the NETWORK OPTIONS.

    "},{"location":"games/iidx14/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played! Make sure to insert two credits by pressing your SERVICE key! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/iidx24/problems/","title":"IIDX 24 Common Problems/Tips","text":""},{"location":"games/iidx24/problems/#hardware-specs","title":"Hardware Specs","text":"

    Warning:

    The specs may not be correct. If something isn't correct or it's fine, let me know.

    Bemani PC (ADE-704A)

    Konami (2012-2017)

    This board has a E4690 Radeon MXM card.

    CPU: Intel Celeron B810

    GPU: AMD Radeon E4690

    NIC: Realtek RTL8168/8111

    Chipset: Intel HM65

    RAM: 4 GB

    OS: Windows XP Embedded with Service Pack 2

    "},{"location":"games/iidx24/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/iidx24/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/iidx24/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/iidx24/problems/#hd-and-hd","title":"HD and HD*","text":"

    This version of IIDX has two HD mode options, HD and HD* neither is inherently better than the other, the only difference is HD* is an additional + 1.0 offset in-game, the official reasoning is to account for a different set of monitors on arcade cabs. In beatmania IIDX 26 ROOTAGE this option is removed entirely and only HD is present.

    "},{"location":"games/iidx24/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/iidx24/setup/","title":"beatmania IIDX 24 SINOBUZ","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    Note:

    This game uses 32-bit tools!

    "},{"location":"games/iidx24/setup/#getting-started","title":"Getting Started","text":"

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/iidx24/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/iidx24/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/iidx24/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/iidx24/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    Hit the Test keybinding to initialize the backup data, a message will pop up stating it's been initialized.

    Lastly, you'll run into this error message as well, let's work on eliminating these messages. Let the game run for a bit until the monitor check is complete and you should be taken to the service menu pictured below.

    Start by navigating up to CLOCK and entering that menu.

    Simply hit save and exit and leave, the clock will be saved. Then, back in the service menu, go up to GAME OPTIONS

    Once inside that menu, navigate your way up to DEFINITION TYPE and choose either HD or HD* depending on your preferences, both run the game at 720p but have a timing difference addressed on the FAQ page. It might be worth noting that the HD* option is no longer present as of beatmania IIDX 26 ROOTAGE.

    The game will then count down asking you to confirm the selection before reverting, just hit YES assuming it loaded just fine on your computer. Then, exit out of that menu and head to NETWORK OPTIONS from back inside the service menu.

    From here, we will need to set a shop name to play, so select the SHOP NAME SETTING option. Once inside, name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done go to EXIT and then SAVE AND EXIT inside of NETWORK OPTIONS once you've chosen your desired name, as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/iidx25/problems/","title":"IIDX 25 Common Problems/Tips","text":""},{"location":"games/iidx25/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC (ADE-6291)

    Konami (2018)

    Based on an AMD Embedded R Series SoC.

    CPU: AMD RX-421BD

    GPU: Radeon R7

    RAM: 4 GB

    OS: Windows 7 Embedded

    "},{"location":"games/iidx25/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/iidx25/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/iidx25/problems/#camera-device-error-message","title":"Camera Device Error Message","text":"

    The game released with two USB cameras and naturally it's looking for them, if you do not have two cameras plugged into your computer then the game outputs this error, which can be ignored simply by hitting Test or waiting 60 seconds for it to be auto-dismissed.

    But if you're tired of this message every time you start up the game, the CAMERA DEVICE ERROR message can be removed via a patch.

    "},{"location":"games/iidx25/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/iidx25/problems/#hd-and-hd","title":"HD and HD*","text":"

    This version of IIDX has two HD mode options, HD and HD* neither is inherently better than the other, the only difference is HD* is an additional + 1.0 offset in-game, the official reasoning is to account for a different set of monitors on arcade cabs. In beatmania IIDX 26 ROOTAGE this option is removed entirely and only HD is present.

    "},{"location":"games/iidx25/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/iidx25/problems/#a-note-about-sse-42","title":"A Note About SSE 4.2","text":"

    In the rare case you are running this game on very old hardware, IIDX 25 requires a processor supporting the SSE 4.2 instruction set. But, in the event your processor does not have this, there is a patch available to bypass this.

    "},{"location":"games/iidx25/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    64-bit versions of IIDX are now utilizing a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of the games which used DirectSound. Unfortunately, this cannot be changed.

    "},{"location":"games/iidx25/problems/#im-not-getting-any-audiomy-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm Not Getting Any Audio/My Audio Is Completely Wrecked and I'm Using an External Dac!","text":"

    Several external DACs have issues with WASAPI exclusive mode and are unable to be used entirely, it's likely you'll be forced to use your motherboard's sound chip, or find a compatible DAC.

    "},{"location":"games/iidx25/setup/","title":"beatmania IIDX 25 CANNON BALLERS","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/iidx25/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential crashing on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/iidx25/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/iidx25/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/iidx25/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/iidx25/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen, oh no!

    Ignore this message, simply hit your Test keybind and continue onto this.

    Hit the Test keybinding again to initialize the backup data, a message will pop up stating it's been initialized.

    Lastly, you'll run into this error message as well, let's work on eliminating these messages. Let the game run for a bit until the monitor check is complete and you should be taken to the service menu pictured below.

    Start by navigating up to CLOCK and entering that menu.

    Simply hit save and exit and leave, the clock will be saved. Then, back in the service menu, go up to GAME OPTIONS

    Once inside that menu, navigate your way up to DEFINITION TYPE and choose either HD or HD* depending on your preferences, both run the game at 720p but have a timing difference addressed on the FAQ page. It might be worth noting that the HD* option is no longer present as of beatmania IIDX 26 ROOTAGE.

    The game will then count down asking you to confirm the selection before reverting, just hit YES assuming it loaded just fine on your computer. Then, exit out of that menu and head to NETWORK OPTIONS from back inside the service menu.

    From here, we will need to set a shop name to play, so select the SHOP NAME SETTING option. Once inside, name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done go to EXIT and then SAVE AND EXIT inside of NETWORK OPTIONS once you've chosen your desired name, as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/iidx26/problems/","title":"IIDX 26 Common Problems/Tips","text":""},{"location":"games/iidx26/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC (ADE-6291)

    Konami (2018)

    Based on an AMD Embedded R Series SoC.

    CPU: AMD RX-421BD

    GPU: Radeon R7

    RAM: 4 GB

    OS: Windows 7 Embedded

    "},{"location":"games/iidx26/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/iidx26/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/iidx26/problems/#camera-device-error-message","title":"Camera Device Error Message","text":"

    The game released with two USB cameras and naturally it's looking for them, if you do not have two cameras plugged into your computer then the game outputs this error, which can be ignored simply by hitting Test or waiting 60 seconds for it to be auto-dismissed.

    But if you're tired of this message every time you start up the game, the CAMERA DEVICE ERROR message can be removed via a patch.

    "},{"location":"games/iidx26/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/iidx26/problems/#hd-and-hd","title":"HD and HD*","text":"

    This version of IIDX has removed having two HD mode options, leaving only HD. HD and HD* neither is inherently better than the other, the only difference is HD* is an additional + 1.0 offset in-game, now applied to the lone HD mode. The official reasoning is to account for a different set of monitors on arcade cabs.

    "},{"location":"games/iidx26/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/iidx26/problems/#a-note-about-sse-42","title":"A Note About SSE 4.2","text":"

    In the rare case you are running this game on very old hardware, IIDX 26 requires a processor supporting the SSE 4.2 instruction set. But, in the event your processor does not have this, there is a patch available to bypass this.

    "},{"location":"games/iidx26/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    64-bit versions of IIDX are now utilizing a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of the games which used DirectSound. Unfortunately, this cannot be changed.

    "},{"location":"games/iidx26/problems/#im-not-getting-any-audiomy-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm Not Getting Any Audio/My Audio Is Completely Wrecked and I'm Using an External Dac!","text":"

    Several external DACs have issues with WASAPI exclusive mode and are unable to be used entirely, it's likely you'll be forced to use your motherboard's sound chip, or find a compatible DAC.

    "},{"location":"games/iidx26/setup/","title":"beatmania IIDX 26 Rootage","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/iidx26/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential crashing on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/iidx26/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/iidx26/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/iidx26/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/iidx26/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen, oh no!

    Ignore this message, simply hit your Test keybind and continue onto this.

    Hit the Test keybinding again to initialize the backup data, a message will pop up stating it's been initialized.

    Lastly, you'll run into this error message as well, let's work on eliminating these messages. Let the game run for a bit until the monitor check is complete and you should be taken to the service menu pictured below.

    Start by navigating up to CLOCK and entering that menu.

    Simply hit save and exit and leave, the clock will be saved. Then, back in the service menu, go up to GAME OPTIONS

    Once inside that menu, navigate your way up to DEFINITION TYPE and choose either SD or HD depending on your preferences.

    The game will then count down asking you to confirm the selection before reverting, just hit YES assuming it loaded just fine on your computer. Then, exit out of that menu and head to NETWORK OPTIONS from back inside the service menu.

    From here, we will need to set a shop name to play, so select the SHOP NAME SETTING option. Once inside, name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done go to EXIT and then SAVE AND EXIT inside of NETWORK OPTIONS once you've chosen your desired name, as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/iidx27/lightning/","title":"beatmania IIDX 27 Lighting Mode Information","text":""},{"location":"games/iidx27/lightning/#notes","title":"Notes","text":"

    Booting the game in Lightning Mode requires a few things. To start off with, you will need to enable the -iidxtdj option in SpiceTools and you will also need to enable the Enable Lightning Mode patch.

    In doing so, and subsequently every time you choose to switch between the two modes, you will want to delete everything inside your dev/nvram folder, and redo the setup process again with initializing the backup date, setting the clock, shop name, and the definition type.

    SpiceTools as of 10/26/2020 has some updated features to work with this as well. Namely, the ability to toggle the Lightning Model subscreen via the Toggle Subscreen option in the Buttons tab. You can use your mouse to navigate the touchscreen as desired. Enter your pin, toggle buttons, etc.

    SpiceCompanion has also as of 10/26/2020 added a brand new Screen feature as well. Using SpiceCompanion, you can receive the subscreen on your phone/tablet/etc and then use your device as a touch device for the subscreen. Do note that at this time it will not work while the game is running in windowed mode. If you run into performance issues, go to the settings tab to adjust things like the Screen Quality, Screen Threads, and Screen Divide, this feature is heavily dependent on connection and you will notice as you bump up the quality that the ping will increase as well. It may take some fiddling to find the most ideal settings for your setup.

    "},{"location":"games/iidx27/lightning/#lightning-specific-troubleshooting","title":"Lightning-specific Troubleshooting","text":"

    Below are the two main issues that have arisen for users utilizing this guide and general startup practices.

    "},{"location":"games/iidx27/lightning/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 11 (ARESPEAR C300)

    Konami (2019)

    Based on KONAMI ARESPEAR C300 gaming PC.

    CPU: Intel i5-9400F 2.9Ghz

    GPU: GIGABYTE GeForce GTX 1650 1530Mhz 4GB

    RAM: 8 GB DDR4

    STORAGE: Innodisk 2.5\" 3ME3 SATA SSD 256GB

    AUDIO: ASUS Xonar AE

    OS: Windows 10 IoT Enterprise

    "},{"location":"games/iidx27/lightning/#enabling-lighting-mode-patch","title":"Enabling Lighting Mode Patch","text":"

    If you get a stack trace in your log.txt with the following line...

    I:stackwalker: 00000001805FC970 (bm2dx): (unknown): dll_entry_main

    Please enable the lightning mode patch in SpiceTool's patch manager.

    "},{"location":"games/iidx27/lightning/#audio-related-crash","title":"Audio Related Crash","text":"

    If you get a stack trace in your log.txt that looks like this...

    exception raised: EXCEPTION_ACCESS_VIOLATION

    [2020/10/22 18:20:21] I:signal: printing callstack

    [2020/10/22 18:20:21] I:stackwalker: 000000018026E906 (bm2dx): (unknown): (unknown)

    For cab type 1 (LDJ), change your audio device to motherboard audio and/or use -audiobackend asio -asiodriverid ... -audiodummy

    For cab type 2 (TDJ, with -iidxtdj or another means), you have a few options:

    1) Use -iidxasio \"Driver Name Here\" to set the ASIO driver used by IIDX's own ASIO handler. (Does not work with all ASIO drivers, they designed it to work best with a specific revision of the XONAR SOUNCARD(64))

    2) Use -iidxsounddevice wasapi to set IIDX to use WASAPI instead of its own ASIO handler.

    3) Use -iidxsounddevice wasapi along with -audiobackend asio ... to have the game pipe audio through Spice's own ASIO handler which is more compatible with various ASIO drivers

    "},{"location":"games/iidx27/problems/","title":"IIDX 27 Common Problems/Tips","text":"

    Author Note:

    For lightning specific issues, see lightning cab notes

    "},{"location":"games/iidx27/problems/#hardware-specs","title":"Hardware Specs","text":"

    (These are the specs for non-lightning model cab running Heroic Verse)

    Bemani PC Type 9 (ADE-6291)

    Konami (2017)

    Based on an AMD Embedded R Series SoC.

    CPU: AMD RX-421BD 2.1/3.4GHz APU

    GPU: Radeon R7 800Mhz

    RAM: 4 GB

    STORAGE: innodisk 3ME2 mSATA SSD 256GB

    OS: Windows 7 Embedded

    "},{"location":"games/iidx27/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/iidx27/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz or 120hz framerate, depending on if you're in LDJ or TDJ mode. The game is hardcoded to run at these specific framerates and this cannot be changed. To solve this, set your monitor's refresh rate to match if you're in LDJ 60hz or TDJ 120hz mode. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard or around 120.00hz. If it's not around there and your monitor is indeed set correctly for the given mode, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/iidx27/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/iidx27/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/iidx27/problems/#a-note-about-sse-42","title":"A Note About SSE 4.2","text":"

    In the rare case you are running this game on very old hardware, IIDX 27 requires a processor supporting the SSE 4.2 instruction set. But, in the event your processor does not have this, there is a patch available to bypass this.

    "},{"location":"games/iidx27/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    64-bit versions of IIDX are now utilizing a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of the games which used DirectSound. Unfortunately, this cannot be changed.

    "},{"location":"games/iidx27/problems/#im-not-getting-any-audiomy-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm Not Getting Any Audio/My Audio Is Completely Wrecked and I'm Using an External Dac!","text":"

    Several external DACs have issues with WASAPI exclusive mode and are unable to be used entirely, it's likely you'll be forced to use your motherboard's sound chip, or find a compatible DAC.

    "},{"location":"games/iidx27/setup/","title":"beatmania IIDX 27 Heroic Verse","text":"

    Author Note:

    Lightning mode specifics: they are found here

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/iidx27/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential crashing on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, Pictured below is what your folder should look like.

    "},{"location":"games/iidx27/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up spicecfg.exe and head to the Options where we'll set our desired parameters. For the purpose of this guide, we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    You will have to likely generate a .bat file given your existing tool's documentation. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs and to consult appropriate support if you're unsure how to do this.

    "},{"location":"games/iidx27/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, inside Options tab we're going to click on the following: E-Amusement Emulation: -ea and Windowed Mode: -w to enable them.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the selected options inside the Options tab in spicecfg.exe.

    "},{"location":"games/iidx27/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On the Service URL: -url parameter, we're going to input our chosen network URL like so: http://yoururlhere.com/

    To go alongside this, we'll also be inputting into the PCBID: -p parameter, the PCBID given to us from our network, like so: XXXXXXXXXXXXXXXXXXXX

    Lastly, we'll click on the Windowed Mode: -w parameter.

    What do these different parameters do?

    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the selected options inside the Options tab in spicecfg.exe.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/iidx27/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds inside the Buttons and Analogs tabs! If you'd like an example, I've shown my keybindings below on a DJ DAO FP7 from the 1P side. Make sure you setup the Test keybind as it will be critical for setting up the game.

    Once you've done that, launch your game for the first time by double clicking the spice64.exe and the game should load with your chosen parameters from spicecfg.exe.

    If it's your first time running the game, you'll immediately be greeted with this screen, oh no!

    Ignore this message, simply hit your Test keybind and continue onto this.

    Hit the Test keybinding to initialize the backup data, a message will pop up stating it's been initialized.

    You'll also run into this error message as well, let's work on eliminating these messages. Let the game run for a bit until the monitor check is complete and you should be taken to the service menu pictured below.

    Start by navigating up to CLOCK and entering that menu.

    Simply hit save and exit and leave, the clock will be saved. Then, back in the service menu, go up to GAME OPTIONS

    Once inside that menu, navigate your way up to DEFINITION TYPE and choose either SD or HD depending on your preferences.

    The game will then count down asking you to confirm the selection before reverting, just hit YES assuming it loaded just fine on your computer. Then, exit out of that menu and head to NETWORK OPTIONS from back inside the service menu.

    If it doesn't transition to HD, after you've saved, you can simply reboot the game and all should be well.

    The final thing we need to set is here inside NETWORK OPTIONS, we will need to set a shop name to play, so select the SHOP NAME SETTING option. Once inside, name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done go to EXIT and then SAVE AND EXIT inside of NETWORK OPTIONS once you've chosen your desired name, as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    Lightning Mode specifics can be found: here

    "},{"location":"games/iidx30/extras/","title":"beatmania IIDX 30 RESIDENT","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx30/extras/#standard-lightning-modes","title":"Standard & Lightning modes","text":"

    Lightning mode requires a 120hz capable monitor.

    To make use of the Lightning Mode, which unlocks the subscreen and 120FPS, we need to go to the contents\\prop folder and edit the ea3-config.xml file.

    We're interested in these lines:

        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">A</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2023090500</ext>\n    </soft>\n

    This is the line that determines if the game will run in Standard (60 FPS) or Lightning (120 FPS) mode.

    <spec __type=\"str\">A</spec>\n
    • A for Standard (LDJ-003, LDJ, 60hz)
    • D for Lightning (LDJ-010, TDJ, 120hz)
    "},{"location":"games/iidx30/extras/#changing-the-games-language","title":"Changing the game's language","text":"

    This is done in-game before card-in by pressing your EFFECT key.

    "},{"location":"games/iidx30/extras/#more-about-ea3-configxml","title":"More about ea3-config.xml","text":"

    The ea3-config.xml file is located inside the prop folder.

    Below is an explanation on what different sections of this file do.

    The following lines change the PCBID and HARDID that your system reports to your e-amusement server. There is no need to manually change this as spice2x will do it for us.

    <pcbid __type=\"str\">00010203040506070809</pcbid>\n<hardid __type=\"str\">00010203040506070809</hardid>\n

    The following line determines what version of the game you are running. You should never change this. It should always say LDJ.

    <model __type=\"str\">LDJ</model>\n

    The following line determines the game's region. You should never change this. As you can change the language in-game.

    <dest __type=\"str\">J</dest>\n

    You should never change this. It should always say A for Resident.

    <rev __type=\"str\">A</rev>\n

    The following line determines your datecode. Always keep it up to date with your game's current version.

    <ext __type=\"str\">2024052100</ext>\n

    The following line determine what remote service URL spice2x is supposed to connect to. There is no need to manually change this as spice2x will do it for us.

    <services __type=\"str\">http://localhost:8083</services>\n
    "},{"location":"games/iidx30/setup/","title":"beatmania IIDX 30 RESIDENT","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx30/setup/#about-data","title":"About data","text":"

    Standard (LDJ) / Lightning (TDJ)

    Please keep the following in mind as you're going through this guide.

    IIDX's codename is LDJ. For IIDX 30 Resident it typically is LDJ-003.

    Two versions of the game exist:

    • TDJ expects a 120hz compatible monitor for its main screen, and a second 60hz touchscreen compatible monitor called a subscreen. The second monitor isn't mandatory, we can get around that using spice2x.
    • LDJ expects 60hz monitor for its main screen, and no subscreen.

    We'll be using the terms TDJ for Lightning, and LDJ for Standard throughout the guide.

    "},{"location":"games/iidx30/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure with a few folders only, as follows.

    If your data doesn't look like this

    If you're missing the modules folder and instead have bunch of .dll files next to your folders:

    • Create a modules folder.
    • Move all .dll files inside of it so you end up with a structure as shown above.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    If you don't need to update your data, you can skip over to the Installing Spice2x section.

    "},{"location":"games/iidx30/setup/#updating-data","title":"Updating data","text":"Please make sure you're using the right update for your current data.

    Patches re-uploaded by the community tend to be named LDJ-DATECODE-to-DATECODE.

    For example LDJ-2022120800-to-2023090500.

    • 2022120800 being your current data's version.
    • 2023090500 being the version you would arrive at.
    • Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.
    • Open prop\\ea3-config.xml in a text editor and find the following lines near the top.
        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">A</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2023090500</ext>\n    </soft>\n

    On the line with <ext __type=\"str\"> the datecode needs to match your new version.

    • If that's already the case then great! Don't touch anything.
    • If it instead corresponds to our pre-patch datecode, replace it with the new one.

    Now save the file.

    "},{"location":"games/iidx30/setup/#installing-spice2x","title":"Installing Spice2x","text":"
    • Head over to spice2x.github.io and download the latest release.
    • Extract the spice64.exe and spicecfg.exe files from the archive to your game's directory.
    "},{"location":"games/iidx30/setup/#configuring-spice2x","title":"Configuring Spice2x","text":"

    Open spicecfg.exe, each following sub-section corresponds to a tab at the top.

    "},{"location":"games/iidx30/setup/#buttons","title":"Buttons","text":"

    Click on Bind then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're using LDJ:

    • P1 Keypad: 1 to 9

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx30/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • For Turntable P1, click Bind.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the Preview turns along with it.
    • Click Close, leaving the rest of the settings alone.
    "},{"location":"games/iidx30/setup/#overlay","title":"Overlay","text":"

    Modifying buttons in this section is not required but you are free to change what you want.

    Click on Bind then press the key you want associated with the action.

    "},{"location":"games/iidx30/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through spice2x.

    If it does, here's how you may link different actions to your lights:

    • Click Bind.
    • In Device, pick your controller.
    • In Light Control, select the corresponding light.
    • Click Close.
    • Repeat for your other lights.
    "},{"location":"games/iidx30/setup/#cards","title":"Cards","text":"

    Covered in the Connecting to a network section.

    "},{"location":"games/iidx30/setup/#patches","title":"Patches","text":"

    As of writing, web patching is recommended for IIDX 30 Resident as opposed to spice2x patching.

    Spice2x patching is fairly new and the game's latest releases are prioritized for conversion.

    For now use Mon's BemaniPatcher, more info can be found in the web patching page.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    General patches Patch Recommendation Description Standard/Menu Timer Freeze Either Freezes the timer in all non-premium environments. Premium Free Timer Freeze Either Freezes the timer in Premium Free mode. Cursor Lock Either In song select, always returns to the previously selected song. CS-style Song Start Delay Either At the start of a song, holding Start will pause it until you release it. Increase Game Volume Either Ignores in-game settings and keeps the volume at a maximum, helpful for TDJ which tends to be quiet. Hide all bottom text Either Hides text at the bottom of the screen such as Credits or Paseli."},{"location":"games/iidx30/setup/#api","title":"API","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx30/setup/#options","title":"Options","text":"

    If you don't know what an option does, hover over the question mark at the very left.

    Be very careful changing options you don't understand as it may cause issues.

    Required

    Category Option Parameter Setting Game Options IIDX Disable Cameras -iidxdisablecams ON Network EA Service URL -url Covered in Connecting to a network

    Required For TDJ

    Category Option Parameter Setting Game Options IIDX TDJ Mode -iidxtdj ON

    If you only have a single 120hz monitor, and not another 60hz touchscreen:

    Category Option Parameter Setting Game Options IIDX TDJ Mode -graphics-force-single-adapter ON

    Highly Recommended for NVIDIA users ONLY

    Category Option Parameter Setting Graphics (common) NVIDIA profile optimization -nvprofile ON"},{"location":"games/iidx30/setup/#advanced-development","title":"Advanced & Development","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx30/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Open spicecfg.exe and head to the Options tab.

    In the Network category, set the following settings:

    • EA Service URL to the URL provided by your network.
    • PCBID to the PCBID provided by your network.

    Next you need a card number. If you don't already have one, generate one in the Cards tab. To keep your card number safe, create a new .txt file with ONLY it inside.

    Once that's done, head to the Cards tab, for Player 1 click Open... and point to your text file.

    Local e-amuse Emulator (Asphyxia)

    This is covered in the Asphyxia CORE page.

    "},{"location":"games/iidx30/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/iidx30/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/iidx30/setup/#audio","title":"Audio","text":"
    • Open spicecfg.exe.
    • At the very top, click on Shortcuts then Audio Playback Devices.
    • In the popup window, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick the 24 bit, 44100 Hz (CD Quality) option and click Apply then OK.
    "},{"location":"games/iidx30/setup/#standard-lightning-language-settings","title":"Standard / Lightning / Language settings","text":"

    Read through the Extra Information page and edit your prop\\ea3-config.xml file if necessary.

    "},{"location":"games/iidx30/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx30/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run spice64.exe, press Yes when it asks for elevated privileges.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    "},{"location":"games/iidx30/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Test key to initialize the backup data, a message will pop up stating it's been initialized.

    Next, you'll get another error.

    Let the game run for a bit until the monitor check is complete and you should be taken to the service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Start by going up to CLOCK.

    Here, simply select SAVE AND EXIT and the clock will be set.

    You'll be back in the service menu.

    "},{"location":"games/iidx30/setup/#network-options","title":"NETWORK OPTIONS","text":"

    Go to NETWORK OPTIONS then SHOP NAME SETTING.

    We will need to set a shop name.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Go to EXIT then SAVE AND EXIT.

    Select GAME MODE.

    You're all done! The game should load up properly now.

    "},{"location":"games/iidx30/setup/#carding-in","title":"Carding in","text":"

    Before carding in, you have the option of changing the game's language by pressing your EFFECT key.

    For LDJ (Standard)

    LDJ should accept keypad number binds:

    • Press your Keypad Insert Card button.
    • Enter your code using your keypad binds.
    For TDJ (Lightning)

    TDJ will ignore keypad number binds, you need to:

    • Press your Keypad Insert Card button.
    • Press your Toggle Sub Screen overlay button (PgUp by default) to bring up the sub screen.
    • Enter your code by clicking on the subscreen's keypad.
    • If your code is accepted, you may now close the overlay.
    "},{"location":"games/iidx30/setup/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issue?

    Check out the Troubleshooting and Error Codes pages.

    For any more game-specific information, check out Extra Information.

    "},{"location":"games/iidx30/troubleshooting/","title":"beatmania IIDX 30 RESIDENT","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx30/troubleshooting/#im-having-performance-issues","title":"I'm having performance issues!","text":"

    If you're having performance issues of some kind, spice2x's PC optimization guide is worth looking at.

    "},{"location":"games/iidx30/troubleshooting/#my-game-is-running-slowfast-after-finishing-a-song-the-game-gets-stuck-loading","title":"My game is running slow/fast, After finishing a song the game gets stuck loading!","text":"

    The most common reason for this is the game is running over its required refresh rate. To solve this, make sure v-sync isn't disabled in your graphics card's settings.

    For NVIDIA users, enable NVIDIA profile optimization (-nvprofile) in the Options tab.

    "},{"location":"games/iidx30/troubleshooting/#how-do-i-set-my-offset","title":"How do I set my offset?","text":"

    Play through a chart you're comfortable with.

    If you're getting too many Fast, increase your offset (+). If you're getting too many Slow, decrease your offset (-).

    "},{"location":"games/iidx30/troubleshooting/#my-inputs-arent-working-i-cant-get-past-error-messages","title":"My inputs aren't working / I can't get past error messages!","text":"

    If none of your inputs are working, try updating spice2x, you can also try using the beta versions if the stable releases don't work for you.

    "},{"location":"games/iidx30/troubleshooting/#my-game-audio-is-super-quiet","title":"My game audio is super quiet!","text":"

    When using TDJ mode the audio is very quiet by default. To mitigate this, you can use the Increase Game Volume patch.

    "},{"location":"games/iidx30/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    IIDX uses WASAPI exclusive mode for audio to get better audio latency. Unlike former versions of the games which used DirectSound.

    You can use the Shared Mode WASAPI patch to deal with some hardware issues, it can also be used to hear audio outside the game at the cost of audio latency.

    "},{"location":"games/iidx30/troubleshooting/#im-not-getting-any-audio-or-my-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm not getting any audio, or my audio is completely wrecked and I'm using an External Dac!","text":"

    Many setups have found some difficulty with audio due to various equipment being used. Consider using the Shared Mode WASAPI patch.

    "},{"location":"games/iidx31/extras/","title":"beatmania IIDX 31 EPOLIS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx31/extras/#standard-lightning-modes","title":"Standard & Lightning modes","text":"

    Lightning mode requires a 120hz capable monitor.

    To make use of the Lightning Mode, which unlocks the subscreen and 120FPS, we need to go to the contents\\prop folder and edit the ea3-config.xml file.

    We're interested in these lines:

        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">E</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024050700</ext>\n    </soft>\n

    This is the line that determines if the game will run in Standard (60 FPS) or Lightning (120 FPS) mode.

    <spec __type=\"str\">E</spec>\n
    • E for Standard (LDJ-012, LDJ, 60hz)
    • D for Lightning (LDJ-010, TDJ, 120hz)
    "},{"location":"games/iidx31/extras/#changing-the-games-language","title":"Changing the game's language","text":"

    This is done in-game before card-in by pressing your EFFECT key.

    "},{"location":"games/iidx31/extras/#more-about-ea3-configxml","title":"More about ea3-config.xml","text":"

    The ea3-config.xml file is located inside the prop folder.

    Below is an explanation on what different sections of this file do.

    The following lines change the PCBID and HARDID that your system reports to your e-amusement server. There is no need to manually change this as spice2x will do it for us.

    <pcbid __type=\"str\">00010203040506070809</pcbid>\n<hardid __type=\"str\">00010203040506070809</hardid>\n

    The following line determines what version of the game you are running. You should never change this. It should always say LDJ.

    <model __type=\"str\">LDJ</model>\n

    The following line determines the game's region. You should never change this. As you can change the language in-game.

    <dest __type=\"str\">J</dest>\n

    You should never change this. It should always say A for Epolis.

    <rev __type=\"str\">A</rev>\n

    The following line determines your datecode. Always keep it up to date with your game's current version.

    <ext __type=\"str\">2024052100</ext>\n

    The following line determine what remote service URL spice2x is supposed to connect to. There is no need to manually change this as spice2x will do it for us.

    <services __type=\"str\">http://localhost:8083</services>\n
    "},{"location":"games/iidx31/setup/","title":"beatmania IIDX 31 EPOLIS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx31/setup/#about-data","title":"About data","text":"

    The full game should be around 100gb while updates are only around 2-5gb in size.

    Standard (LDJ) / Lightning (TDJ)

    Please keep the following in mind as you're going through this guide.

    IIDX's codename is LDJ. For IIDX 31 Epolis this would be either:

    • LDJ-010 (TDJ, Lightning cab, 120 FPS)
    • LDJ-012 (LDJ, Standard cab, 60 FPS)

    The main difference between 010 and 012 is the game's main .dll file, bm2dx.dll.

    This changes which features the game offers, and which conditions the game expects to run under.

    • TDJ expects a 120hz compatible monitor for its main screen, and a second 60hz touchscreen compatible monitor called a subscreen. The second monitor isn't mandatory, we can get around that using spice2x.
    • LDJ expects 60hz monitor for its main screen, and no subscreen.

    We'll be using the terms TDJ for Lightning, and LDJ for Standard throughout the guide.

    If you're coming from IIDX 30 Resident

    You'll want to update your data from LDJ-003 to LDJ-010 or LDJ-012 FIRST then follow this guide as normal.

    "},{"location":"games/iidx31/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure with a few folders only, as follows.

    If your data doesn't look like this

    If you're missing the modules folder and instead have bunch of .dll files next to your folders:

    • Create a modules folder.
    • Move all .dll files inside of it so you end up with a structure as shown above.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    If you don't need to update your data, you can skip over to the Installing Spice2x section.

    "},{"location":"games/iidx31/setup/#updating-data","title":"Updating data","text":"Please make sure you're using the right update for your current data.

    As we've seen in the About data section, the main difference between LDJ and TDJ is the bm2dx.dll file. When updating from a previous version to the next, our current .dll will be overwritten.

    Knowing that, patches re-uploaded by the community tend to be named LDJ-DATECODE-to-LDJ-010/012-DATECODE. Note: If updating from IIDX 30 Resident, it will be LDJ-003-DATECODE-to-LDJ-010/012-DATECODE.

    For example LDJ-2024032500-to-LDJ-010-2024050700.

    • 2024032500 being your current data's version, no matter if it's using a TDJ or LDJ .dll file.
    • 2024050700 being the version you would arrive at.
    • 010 meaning you would end up with a TDJ (Lightning Cab) bm2dx.dll file.
    • Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.
    • Open prop\\ea3-config.xml in a text editor and find the following lines near the top.
        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">E</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024050700</ext>\n    </soft>\n

    On the line with <spec __type=\"str\"> the letter needs to match your data type:

    • E for Standard (LDJ-012, LDJ, 60hz)
    • D for Lightning (LDJ-010, TDJ, 120hz)

    Replace the letter accordingly if necessary.

    On the line with <ext __type=\"str\"> the datecode needs to match your new version.

    • If that's already the case then great! Don't touch anything.
    • If it instead corresponds to our pre-patch datecode, replace it with the new one.

    Now save the file.

    "},{"location":"games/iidx31/setup/#installing-spice2x","title":"Installing Spice2x","text":"
    • Head over to spice2x.github.io and download the latest release.
    • Extract the spice64.exe and spicecfg.exe files from the archive to your game's directory.
    "},{"location":"games/iidx31/setup/#configuring-spice2x","title":"Configuring Spice2x","text":"

    Open spicecfg.exe, each following sub-section corresponds to a tab at the top.

    "},{"location":"games/iidx31/setup/#buttons","title":"Buttons","text":"

    Click on Bind then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're using LDJ:

    • P1 Keypad: 1 to 9

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx31/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • For Turntable P1, click Bind.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the Preview turns along with it.
    • Click Close, leaving the rest of the settings alone.
    "},{"location":"games/iidx31/setup/#overlay","title":"Overlay","text":"

    Modifying buttons in this section is not required but you are free to change what you want.

    Click on Bind then press the key you want associated with the action.

    "},{"location":"games/iidx31/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through spice2x.

    If it does, here's how you may link different actions to your lights:

    • Click Bind.
    • In Device, pick your controller.
    • In Light Control, select the corresponding light.
    • Click Close.
    • Repeat for your other lights.
    "},{"location":"games/iidx31/setup/#cards","title":"Cards","text":"

    Covered in the Connecting to a network section.

    "},{"location":"games/iidx31/setup/#patches","title":"Patches","text":"

    First go through the Spice2x Patching page to import patches.

    If not using ASIO, you NEED to patch Force Audio Output Mode to WASAPI otherwise the game won't boot.

    Other patches that may be useful to you

    Note: As a general rule of thumb, the fewer patches the better. If you're unsure what something does, don't enable or change it.

    Patch Recommendation Description Force TDJ Mode Either Starts the game in TDJ (010) mode when using a LDJ (012) .dll file. Use this instead of forcing 120Hz using other patches. Standard/Menu Timer Freeze Either Freezes the timer in all non-premium environments. Premium Free Timer Freeze Either Freezes the timer in Premium Free mode. Cursor Lock Either In song select, always returns to the previously selected song. CS-style Song Start Delay Either At the start of a song, holding Start will pause it until you release it. Increase Game Volume Either Ignores in-game settings and keeps the volume at a maximum, helpful for TDJ which tends to be quiet. Hide all bottom text Either Hides text at the bottom of the screen such as Credits or Paseli."},{"location":"games/iidx31/setup/#api","title":"API","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx31/setup/#options","title":"Options","text":"

    If you don't know what an option does, hover over the question mark at the very left.

    Be very careful changing options you don't understand as it may cause issues.

    Required

    Category Option Parameter Setting Game Options IIDX Disable Cameras -iidxdisablecams ON Network EA Service URL -url Covered in Connecting to a network

    Required For TDJ

    Category Option Parameter Setting Game Options IIDX TDJ Mode -iidxtdj ON

    If you only have a single 120hz monitor, and not another 60hz touchscreen:

    Category Option Parameter Setting Graphics (common) Only Use One Monitor -graphics-force-single-adapter ON

    Highly Recommended for NVIDIA users ONLY

    Category Option Parameter Setting Graphics (common) NVIDIA profile optimization -nvprofile ON"},{"location":"games/iidx31/setup/#advanced-development","title":"Advanced & Development","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx31/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Open spicecfg.exe and head to the Options tab.

    In the Network category, set the following settings:

    • EA Service URL to the URL provided by your network.
    • PCBID to the PCBID provided by your network.

    Next you need a card number. If you don't already have one, generate one in the Cards tab. To keep your card number safe, create a new .txt file with ONLY it inside.

    Once that's done, head to the Cards tab, for Player 1 click Open... and point to your text file.

    Local e-amuse Emulator (Asphyxia)

    This is covered in the Asphyxia CORE page.

    "},{"location":"games/iidx31/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/iidx31/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/iidx31/setup/#audio","title":"Audio","text":"
    • Open spicecfg.exe.
    • At the very top, click on Shortcuts then Audio Playback Devices.
    • In the popup window, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick the 24 bit, 44100 Hz (CD Quality) option and click Apply then OK. 24 bit, 48000 Hz is also acceptable as spice2x will handle it.
    "},{"location":"games/iidx31/setup/#standard-lightning-language-settings","title":"Standard / Lightning / Language settings","text":"

    Read through the Extra Information page and edit your prop\\ea3-config.xml file if necessary.

    "},{"location":"games/iidx31/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx31/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run spice64.exe, press Yes when it asks for elevated privileges.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    "},{"location":"games/iidx31/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Test key to initialize the backup data, a message will pop up stating it's been initialized.

    Next, you'll get another error.

    Let the game run for a bit until the monitor check is complete and you should be taken to the service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Start by going up to CLOCK.

    Here, simply select SAVE AND EXIT and the clock will be set.

    You'll be back in the service menu.

    "},{"location":"games/iidx31/setup/#network-options","title":"NETWORK OPTIONS","text":"

    Go to NETWORK OPTIONS then SHOP NAME SETTING.

    We will need to set a shop name.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Go to EXIT then SAVE AND EXIT.

    Select GAME MODE.

    You're all done! The game should load up properly now.

    "},{"location":"games/iidx31/setup/#carding-in","title":"Carding in","text":"

    Before carding in, you have the option of changing the game's language by pressing your EFFECT key.

    For LDJ (Standard)

    LDJ should accept keypad number binds:

    • Press your Keypad Insert Card button.
    • Enter your code using your keypad binds.
    For TDJ (Lightning)

    TDJ will ignore keypad number binds, you need to:

    • Press your Keypad Insert Card button.
    • Press your Toggle Sub Screen overlay button (PgUp by default) to bring up the sub screen.
    • Enter your code by clicking on the subscreen's keypad.
    • If your code is accepted, you may now close the overlay.
    "},{"location":"games/iidx31/setup/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issue?

    Check out the Troubleshooting and Error Codes pages.

    For any more game-specific information, check out Extra Information.

    "},{"location":"games/iidx31/troubleshooting/","title":"beatmania IIDX 31 EPOLIS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx31/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things. The most common of which is you need to patch the DLL for your game with Force Audio Output Mode set to WASAPI or ASIO. Also see the audio section in the setup guide.

    "},{"location":"games/iidx31/troubleshooting/#my-game-is-running-too-slowfast-game-gets-stuck-monitor-error-at-boot-error-5-1503-0043","title":"My game is running too slow/fast / Game gets stuck / Monitor error at boot / Error 5-1503-0043","text":"

    Potential causes:

    1. The game could be running over/under its required refresh rate (60 for LDJ, 120 for TDJ) To solve this, make sure v-sync isn't disabled in your graphics card's settings. For NVIDIA users, enable NVIDIA profile optimization (-nvprofile) in the Options tab.
    2. It could be that your computer's performance isn't good enough to keep a steady framerate.
    "},{"location":"games/iidx31/troubleshooting/#im-having-performance-issues-my-fps-fluctates","title":"I'm having performance issues / my FPS fluctates!","text":"

    If you're having performance issues of some kind, spice2x's PC optimization guide is worth looking at. If none of that works, your PC probably isn't good enough to run the game, sorry.

    "},{"location":"games/iidx31/troubleshooting/#unable-to-login-eamuse-error-network-error","title":"Unable to login / Eamuse error / Network error","text":"

    Get the proper Asphyxia plugin from our Discord server in the #iidx channel > Resources post. Make sure you didn't enable -smartea in spicecfg's options.

    "},{"location":"games/iidx31/troubleshooting/#how-do-i-set-my-offset","title":"How do I set my offset?","text":"

    Play through a chart you're comfortable with.

    If you're getting too many Fast, increase your offset (+). If you're getting too many Slow, decrease your offset (-).

    "},{"location":"games/iidx31/troubleshooting/#my-inputs-arent-working-i-cant-get-past-error-messages","title":"My inputs aren't working / I can't get past error messages!","text":"

    If none of your inputs are working, try updating spice2x, you can also try using the beta versions if the stable releases don't work for you.

    "},{"location":"games/iidx31/troubleshooting/#my-game-audio-is-super-quiet","title":"My game audio is super quiet!","text":"

    When using TDJ mode the audio is very quiet by default. To mitigate this, you can use the Increase Game Volume patch.

    "},{"location":"games/iidx31/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    IIDX uses WASAPI exclusive mode for audio to get better audio latency. Unlike former versions of the games which used DirectSound.

    You can use the Shared Mode WASAPI patch to hear other apps while the game is running, at the cost of some audio latency.

    "},{"location":"games/iidx31/troubleshooting/#im-not-getting-any-audio-or-my-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm not getting any audio, or my audio is completely wrecked and I'm using an External Dac!","text":"

    Many setups have found some difficulty with audio due to various equipment being used. Consider using the Shared Mode WASAPI patch.

    "},{"location":"games/iidx31/troubleshooting/#my-audio-is-sloweddistorted-and-im-using-the-shared-mode-wasapi-patch","title":"My audio is slowed/distorted and I'm using the Shared Mode WASAPI patch.","text":"

    When using this patch, you must set your audio device's sample rate to 48000 Hz. See audio for more details

    "},{"location":"games/iidx32/extras/","title":"beatmania IIDX 32 Pinky Crush","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx32/extras/#standard-lightning-modes","title":"Standard & Lightning modes","text":"

    Lightning mode requires a 120hz capable monitor.

    To make use of the Lightning Mode, which unlocks the subscreen and 120FPS, we need to go to the contents\\prop folder and edit the ea3-config.xml file.

    We're interested in these lines:

        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">E</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024100900</ext>\n    </soft>\n

    This is the line that determines if the game will run in Standard (60 FPS) or Lightning (120 FPS) mode.

    <spec __type=\"str\">E</spec>\n
    • E for Standard (LDJ-012, LDJ, 60hz)
    • D for Lightning (LDJ-010, TDJ, 120hz)
    "},{"location":"games/iidx32/extras/#changing-the-games-language","title":"Changing the game's language","text":"

    This is done in-game before card-in by pressing your EFFECT key.

    "},{"location":"games/iidx32/extras/#more-about-ea3-configxml","title":"More about ea3-config.xml","text":"

    The ea3-config.xml file is located inside the prop folder.

    Below is an explanation on what different sections of this file do.

    The following lines change the PCBID and HARDID that your system reports to your e-amusement server. There is no need to manually change this as spice2x will do it for us.

    <pcbid __type=\"str\">00010203040506070809</pcbid>\n<hardid __type=\"str\">00010203040506070809</hardid>\n

    The following line determines what version of the game you are running. You should never change this. It should always say LDJ.

    <model __type=\"str\">LDJ</model>\n

    The following line determines the game's region. You should never change this. As you can change the language in-game.

    <dest __type=\"str\">J</dest>\n

    You should never change this. It should always say A for Pinky Crush.

    <rev __type=\"str\">A</rev>\n

    The following line determines your datecode. Always keep it up to date with your game's current version.

    <ext __type=\"str\">2024100900</ext>\n

    The following line determine what remote service URL spice2x is supposed to connect to. There is no need to manually change this as spice2x will do it for us.

    <services __type=\"str\">http://localhost:8083</services>\n
    "},{"location":"games/iidx32/setup/","title":"beatmania IIDX 32 Pinky Crush","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx32/setup/#about-data","title":"About data","text":"

    The full game should be around 100gb while updates are only around 2-5gb in size.

    Standard (LDJ) / Lightning (TDJ)

    Please keep the following in mind as you're going through this guide.

    IIDX's codename is LDJ. For IIDX 32 Pinky Crush this would be either:

    • LDJ-010 (TDJ, Lightning cab, 120 FPS)
    • LDJ-012 (LDJ, Standard cab, 60 FPS)

    The main difference between 010 and 012 is the game's main .dll file, bm2dx.dll.

    This changes which features the game offers, and which conditions the game expects to run under.

    • TDJ expects a 120hz compatible monitor for its main screen, and a second 60hz touchscreen compatible monitor called a subscreen. The second monitor isn't mandatory, we can get around that using spice2x.
    • LDJ expects 60hz monitor for its main screen, and no subscreen.

    We'll be using the terms TDJ for Lightning, and LDJ for Standard throughout the guide.

    If you're coming from IIDX 30 Resident

    You'll want to update your data from LDJ-003 to LDJ-010 or LDJ-012 FIRST then follow this guide as normal.

    "},{"location":"games/iidx32/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure with a few folders only, as follows.

    If your data doesn't look like this

    If you're missing the modules folder and instead have bunch of .dll files next to your folders:

    • Create a modules folder.
    • Move all .dll files inside of it so you end up with a structure as shown above.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    If you don't need to update your data, you can skip over to the Installing Spice2x section.

    "},{"location":"games/iidx32/setup/#updating-data","title":"Updating data","text":"Please make sure you're using the right update for your current data.

    As we've seen in the About data section, the main difference between LDJ and TDJ is the bm2dx.dll file. When updating from a previous version to the next, our current .dll will be overwritten.

    Knowing that, patches re-uploaded by the community tend to be named LDJ-DATECODE-to-LDJ-010/012-DATECODE. Note: If updating from IIDX 30 Resident, it will be LDJ-003-DATECODE-to-LDJ-010/012-DATECODE.

    For example LDJ-2024082600-to-LDJ-010-2024100900.

    • 2024082600 being your current data's version, no matter if it's using a TDJ or LDJ .dll file.
    • 2024100900 being the version you would arrive at.
    • 010 meaning you would end up with a TDJ (Lightning Cab) bm2dx.dll file.
    • Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.
    • Open prop\\ea3-config.xml in a text editor and find the following lines near the top.
        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">E</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024100900</ext>\n    </soft>\n

    On the line with <spec __type=\"str\"> the letter needs to match your data type:

    • E for Standard (LDJ-012, LDJ, 60hz)
    • D for Lightning (LDJ-010, TDJ, 120hz)

    Replace the letter accordingly if necessary.

    On the line with <ext __type=\"str\"> the datecode needs to match your new version.

    • If that's already the case then great! Don't touch anything.
    • If it instead corresponds to our pre-patch datecode, replace it with the new one.

    Now save the file.

    "},{"location":"games/iidx32/setup/#installing-spice2x","title":"Installing Spice2x","text":"
    • Head over to spice2x.github.io and download the latest release.
    • Extract the spice64.exe and spicecfg.exe files from the archive to your game's directory.
    "},{"location":"games/iidx32/setup/#configuring-spice2x","title":"Configuring Spice2x","text":"

    Open spicecfg.exe, each following sub-section corresponds to a tab at the top.

    "},{"location":"games/iidx32/setup/#buttons","title":"Buttons","text":"

    Click on Bind then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're using LDJ:

    • P1 Keypad: 1 to 9

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx32/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • For Turntable P1, click Bind.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the Preview turns along with it.
    • Click Close, leaving the rest of the settings alone.
    "},{"location":"games/iidx32/setup/#overlay","title":"Overlay","text":"

    Modifying buttons in this section is not required but you are free to change what you want.

    Click on Bind then press the key you want associated with the action.

    "},{"location":"games/iidx32/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through spice2x.

    If it does, here's how you may link different actions to your lights:

    • Click Bind.
    • In Device, pick your controller.
    • In Light Control, select the corresponding light.
    • Click Close.
    • Repeat for your other lights.
    "},{"location":"games/iidx32/setup/#cards","title":"Cards","text":"

    Covered in the Connecting to a network section.

    "},{"location":"games/iidx32/setup/#patches","title":"Patches","text":"

    First go through the Spice2x Patching page to import patches.

    If not using ASIO, you NEED to patch Force Audio Output Mode to WASAPI otherwise the game won't boot.

    Other patches that may be useful to you

    Note: As a general rule of thumb, the fewer patches the better. If you're unsure what something does, don't enable or change it.

    Patch Recommendation Description Force TDJ Mode Either Starts the game in TDJ (010) mode when using a LDJ (012) .dll file. Use this instead of forcing 120Hz using other patches. Standard/Menu Timer Freeze Either Freezes the timer in all non-premium environments. Premium Free Timer Freeze Either Freezes the timer in Premium Free mode. Cursor Lock Either In song select, always returns to the previously selected song. CS-style Song Start Delay Either At the start of a song, holding Start will pause it until you release it. Increase Game Volume Either Ignores in-game settings and keeps the volume at a maximum, helpful for TDJ which tends to be quiet. Hide all bottom text Either Hides text at the bottom of the screen such as Credits or Paseli."},{"location":"games/iidx32/setup/#api","title":"API","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx32/setup/#options","title":"Options","text":"

    If you don't know what an option does, hover over the question mark at the very left.

    Be very careful changing options you don't understand as it may cause issues.

    Required

    Category Option Parameter Setting Game Options IIDX Disable Cameras -iidxdisablecams ON Network EA Service URL -url Covered in Connecting to a network

    Required For TDJ

    Category Option Parameter Setting Game Options IIDX TDJ Mode -iidxtdj ON

    If you only have a single 120hz monitor, and not another 60hz touchscreen:

    Category Option Parameter Setting Graphics (common) Only Use One Monitor -graphics-force-single-adapter ON

    Highly Recommended for NVIDIA users ONLY

    Category Option Parameter Setting Graphics (common) NVIDIA profile optimization -nvprofile ON"},{"location":"games/iidx32/setup/#advanced-development","title":"Advanced & Development","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx32/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Open spicecfg.exe and head to the Options tab.

    In the Network category, set the following settings:

    • EA Service URL to the URL provided by your network.
    • PCBID to the PCBID provided by your network.

    Next you need a card number. If you don't already have one, generate one in the Cards tab. To keep your card number safe, create a new .txt file with ONLY it inside.

    Once that's done, head to the Cards tab, for Player 1 click Open... and point to your text file.

    Local e-amuse Emulator (Asphyxia)

    This is covered in the Asphyxia CORE page.

    "},{"location":"games/iidx32/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/iidx32/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/iidx32/setup/#audio","title":"Audio","text":"
    • Open spicecfg.exe.
    • At the very top, click on Shortcuts then Audio Playback Devices.
    • In the popup window, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick the 24 bit, 44100 Hz (CD Quality) option and click Apply then OK. 24 bit, 48000 Hz is also acceptable as spice2x will handle it.
    "},{"location":"games/iidx32/setup/#standard-lightning-language-settings","title":"Standard / Lightning / Language settings","text":"

    Read through the Extra Information page and edit your prop\\ea3-config.xml file if necessary.

    "},{"location":"games/iidx32/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx32/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run spice64.exe, press Yes when it asks for elevated privileges.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    "},{"location":"games/iidx32/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Test key to initialize the backup data, a message will pop up stating it's been initialized.

    Next, you'll get another error.

    Let the game run for a bit until the monitor check is complete and you should be taken to the service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Start by going up to CLOCK.

    Here, simply select SAVE AND EXIT and the clock will be set.

    You'll be back in the service menu.

    "},{"location":"games/iidx32/setup/#network-options","title":"NETWORK OPTIONS","text":"

    Go to NETWORK OPTIONS then SHOP NAME SETTING.

    We will need to set a shop name.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Go to EXIT then SAVE AND EXIT.

    Select GAME MODE.

    You're all done! The game should load up properly now.

    "},{"location":"games/iidx32/setup/#carding-in","title":"Carding in","text":"

    Before carding in, you have the option of changing the game's language by pressing your EFFECT key.

    For LDJ (Standard)

    LDJ should accept keypad number binds:

    • Press your Keypad Insert Card button.
    • Enter your code using your keypad binds.
    For TDJ (Lightning)

    TDJ will ignore keypad number binds, you need to:

    • Press your Keypad Insert Card button.
    • Press your Toggle Sub Screen overlay button (PgUp by default) to bring up the sub screen.
    • Enter your code by clicking on the subscreen's keypad.
    • If your code is accepted, you may now close the overlay.
    "},{"location":"games/iidx32/setup/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issue?

    Check out the Troubleshooting and Error Codes pages.

    For any more game-specific information, check out Extra Information.

    "},{"location":"games/iidx32/troubleshooting/","title":"beatmania IIDX 32 Pinky Crush","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx32/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things. The most common of which is you need to patch the DLL for your game with Force Audio Output Mode set to WASAPI or ASIO. Also see the audio section in the setup guide.

    "},{"location":"games/iidx32/troubleshooting/#my-game-is-running-too-slowfast-game-gets-stuck-monitor-error-at-boot-error-5-1503-0043","title":"My game is running too slow/fast / Game gets stuck / Monitor error at boot / Error 5-1503-0043","text":"

    Potential causes:

    1. The game could be running over/under its required refresh rate (60 for LDJ, 120 for TDJ) To solve this, make sure v-sync isn't disabled in your graphics card's settings. For NVIDIA users, enable NVIDIA profile optimization (-nvprofile) in the Options tab.
    2. It could be that your computer's performance isn't good enough to keep a steady framerate.
    "},{"location":"games/iidx32/troubleshooting/#im-having-performance-issues-my-fps-fluctates","title":"I'm having performance issues / my FPS fluctates!","text":"

    If you're having performance issues of some kind, spice2x's PC optimization guide is worth looking at. If none of that works, your PC probably isn't good enough to run the game, sorry.

    "},{"location":"games/iidx32/troubleshooting/#unable-to-login-eamuse-error-network-error","title":"Unable to login / Eamuse error / Network error","text":"

    Get the proper Asphyxia plugin from our Discord server in the #iidx channel > Resources post. Make sure you didn't enable -smartea in spicecfg's options.

    "},{"location":"games/iidx32/troubleshooting/#how-do-i-set-my-offset","title":"How do I set my offset?","text":"

    Play through a chart you're comfortable with.

    If you're getting too many Fast, increase your offset (+). If you're getting too many Slow, decrease your offset (-).

    "},{"location":"games/iidx32/troubleshooting/#my-inputs-arent-working-i-cant-get-past-error-messages","title":"My inputs aren't working / I can't get past error messages!","text":"

    If none of your inputs are working, try updating spice2x, you can also try using the beta versions if the stable releases don't work for you.

    "},{"location":"games/iidx32/troubleshooting/#my-game-audio-is-super-quiet","title":"My game audio is super quiet!","text":"

    When using TDJ mode the audio is very quiet by default. To mitigate this, you can use the Increase Game Volume patch.

    "},{"location":"games/iidx32/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    IIDX uses WASAPI exclusive mode for audio to get better audio latency. Unlike former versions of the games which used DirectSound.

    You can use the Shared Mode WASAPI patch to hear other apps while the game is running, at the cost of some audio latency.

    "},{"location":"games/iidx32/troubleshooting/#im-not-getting-any-audio-or-my-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm not getting any audio, or my audio is completely wrecked and I'm using an External Dac!","text":"

    Many setups have found some difficulty with audio due to various equipment being used. Consider using the Shared Mode WASAPI patch.

    "},{"location":"games/iidx32/troubleshooting/#my-audio-is-sloweddistorted-and-im-using-the-shared-mode-wasapi-patch","title":"My audio is slowed/distorted and I'm using the Shared Mode WASAPI patch.","text":"

    When using this patch, you must set your audio device's sample rate to 48000 Hz. See audio for more details

    "},{"location":"games/iidx9/setup/","title":"beatmania IIDX 9th style","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx9/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.
    "},{"location":"games/iidx9/setup/#installing-bemanitools","title":"Installing Bemanitools","text":"
    • Download Bemanitools.

    • Inside bemanitools-5.48.zip locate iidx-09-to-12.zip.

    • Extract everything inside the folder that contains the bm2dx.exe which is located in \\C02\\D\\C02\\JAG.

    Pictured below is what your folder should look like. We've removed any files not necessary for 9th style.

    "},{"location":"games/iidx9/setup/#using-iidxhook-09conf","title":"Using iidxhook-09.conf","text":"
    • Download the Bemanitools supplements

    • Open bemanitools-supplement-v1.6.zip and navigate inside misc.zip

    • Inside misc\\d3d8to9, extract d3d8.dll to \\C02\\D\\C02\\JAG.

    This enables us to use the graphic options inside iidxhook-09.conf which we will take advantage of.

    "},{"location":"games/iidx9/setup/#configuring-bemanitools","title":"Configuring Bemanitools","text":"

    To configure your keybinds, open your config.bat file.

    "},{"location":"games/iidx9/setup/#buttons","title":"Buttons","text":"

    Double click on the right on a button that you wish to bind, then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx9/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • Head to the Analogs tab at the top.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the preview turns along with it.
    • Click OK, leaving the rest of the settings alone.
    "},{"location":"games/iidx9/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through bemanitools.

    If it does, here's how you may link different actions to your lights:

    • In Device, pick your controller.
    • In Game Light, select the corresponding button that will be used for that light.
    • Repeat for your other lights.

    If you'd like to play offline, you can head straight to Game resolution and locking FPS

    "},{"location":"games/iidx9/setup/#configuring-bemanitools-for-a-network","title":"Configuring Bemanitools for a network","text":"

    Head over to the Network tab.

    Now we will set up our PIN pad and card.

    • Click on Keyboard device
    • You may or may not have more than one option. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.
    • Once you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed).
    • Grab your card, create a .txt and name it however you like. In this example it's called card.txt
    • Place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    "},{"location":"games/iidx9/setup/#connecting-to-a-network","title":"Connecting to a network","text":"
    • Locate your iidxhook-09.conf

    • Open it with your desired text editor (we're using Notepad++)

    • Replace the eamuse.server=localhost:80 with your desired network URL

    • Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n
    "},{"location":"games/iidx9/setup/#game-resolution-and-locking-fps","title":"Game resolution and locking FPS","text":"

    We'd like to mention that there are two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window and configure the proper resolution. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-09.conf. We want to find these lines:

    # Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, press CTRL + F and search for gfx.frame_rate_limit=0.0. This will bring you to the first line we want to edit.

    Listed below are the values we want to change them to.

    gfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false.

    Make sure to decide on whether you want Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n
    "},{"location":"games/iidx9/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx9/setup/#clock-error","title":"CLOCK ERROR","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run gamestart.bat.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    The game will automatically bring you into it's service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Navigate to CLOCK SETUP. You do not need to manually change it. Navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx9/setup/#enabling-e-amusement-for-online-play","title":"Enabling e-AMUSEMENT for Online Play","text":"

    From the service menu, go to e-AMUSEMENT OPTIONS then e-AMUSEMENT SETTINGS.

    It'll bring you to this screen, change it so that e-AMUSEMENT switches to ON and it will look like this:

    We will need to set a SHOP NAME SETTING and change our PREFECTURE otherwise the game will throw errors at us.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Navigate to EXIT and select it.
    • Change your prefecture once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Select SAVE AND EXIT. The game will now give you a message, which translated means:

    e-AMUSEMENT settings have been changed. Please turn the power off and on again.

    So, close the game and open it again.

    "},{"location":"games/iidx9/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played. Make sure to insert two credits by pressing your SERVICE key. Have fun!

    Have any other errors?

    Check out the Troubleshooting section.

    "},{"location":"games/iidx9/troubleshooting/","title":"IIDX 9 Troubleshooting","text":""},{"location":"games/iidx9/troubleshooting/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx9/troubleshooting/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx9/troubleshooting/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx9/troubleshooting/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. These fixes shouldn't be needed for 9th style since we're addressing them in the guide. We'll add them anyway just in case.

    "},{"location":"games/iidx9/troubleshooting/#fix-1-wrong-data-structure","title":"Fix #1 (Wrong data structure)","text":"

    Make sure that your unpacked data looks like this:

    • JAx (Game binary revision folder where 'x' can be A, B, C, D, E, F, G)
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx9/troubleshooting/#fix-2-rteffectsdll-didnt-get-replaced","title":"Fix #2 (RtEffects.dll didn't get replaced)","text":"

    Refer to Getting Started again and check if you have followed all the instructions explained in it.

    "},{"location":"games/jubeatclan/problems/","title":"jubeat clan Common Problems/Tips","text":""},{"location":"games/jubeatclan/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC (ADE-704A)

    This board has a E4690 Radeon MXM card.

    CPU: Intel Celeron B810

    GPU: AMD Radeon E4690

    Chipset: Intel HM65

    "},{"location":"games/jubeatclan/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/jubeatclan/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/jubeatclan/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/jubeatclan/problems/#my-touchscreen-isnt-working","title":"My Touchscreen Isn't Working!","text":"

    There's a myriad of reasons for this. With SpiceTools in most cases, try using the -wintouch parameter if rawinput is not working for your monitor.

    "},{"location":"games/jubeatclan/setup/","title":"jubeat clan","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/jubeatclan/setup/#getting-started","title":"Getting Started","text":"

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's main folder and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/jubeatclan/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/jubeatclan/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/jubeatclan/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/jubeatclan/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen (cropped to save your sanity with scrolling repeatedly on the page), oh no!

    This is okay, you can use your mouse or touchscreen to simply hit TEST to initialize the backup data, the game will prompt you to reboot, but let's save ourselves some time and instead go into the GAME OPTIONS menu instead, as shown below. If you rebooted, you will see a message telling you to set the \"Shop Settings\" which is what we're going to now do, as shown below.

    Enter the GAME OPTIONS menu and proceed to the SHOP SETTINGS menu.

    From here, we will need to set the SHOP NAME SETTINGS. This is a simple process, simply navigate using the controls in the menu to set any name you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Lastly, if you're not connected to an online network, you'll need to set the SHOP AREA as well, navigate to any option you prefer, they're all predefined so you can't get creative here, pictured below is what we set ours to.

    With that, you're all done! Simply exit the service menu or reboot then enjoy the game, have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/maimaidx/buddies/controllers/","title":"maimai DX BUDDiES","text":""},{"location":"games/maimaidx/buddies/controllers/#coming-soon","title":"Coming Soon","text":""},{"location":"games/maimaidx/buddies/setup/","title":"maimai DX BUDDiES","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of maimai DX

    Create a new folder for the game and start from scratch. maimai DX DOES NOT like being extracted over old data!

    "},{"location":"games/maimaidx/buddies/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files are not set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and filesand press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create two new empty folders named appdata and amfs (and the folder option if not present) next to them as shown below:

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/maimaidx/buddies/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has filesICF1 and ICF2, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions. ICF2 is a copy of ICF1.

    Showing File Extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/maimaidx/buddies/setup/#installing-unprotected-executables","title":"Installing Unprotected Executables","text":"

    maimai DX executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of the following files and the associated configuration file:

    • amdaemon.exe
    • Sinmai.exe
    • Sinmai_Data/Plugins/amdaemon_api.dll
    • Sinmai_Data/Plugins/Cake.dll
    • Sinmai_Data/Managed/AMDaemon.NET.dll
    • Sinmai_Data/Managed/Assembly-CSharp.dll
    • mai2.ini or maimaiDX.ini

    Copy the files and folders into the App/Package folder of your game data. Agree to overwrite when asked.

    Assembly-CSharp Notes

    Assembly-CSharp.dll must match your game version. All others can be reused from other game versions. If these were not provided with your data, join the Discord for assistance.

    Assembly-CSharp.dll must also contain mai2.ini or maimaiDX.ini. These configuration files are specific to the unprotected Assembly-CSharp.dll. If your package does not contain a configuration file, please create one with the following to bypass hardware checks on game startup:

    [AM]\nTarget=0\nIgnoreError=1\nDummyTouchPanel=1\nDummyLED=1\nDummyCodeCamera=1\nDummyPhotoCamera=1\n\n[Sound]\nSound8Ch=0\n\n[Patches]\nEnablePatchLog=1\n

    If the assembly supports it, App/Package/dpPatchLog.log lists supported patches after the first run. Otherwise see Custom Mods

    "},{"location":"games/maimaidx/buddies/setup/#installing-segatools","title":"Installing Segatools","text":"
    • Head over to segatools releases and download the latest segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find mai2.zip and extract it to the App/Package folder in your game data.

    You should now have a few more files inside the App/Package folder, as highlighted:

    "},{"location":"games/maimaidx/buddies/setup/#configuring-segatools","title":"Configuring Segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App/Package/segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key. Example:

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/maimaidx/buddies/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../option\nappdata=../../appdata\n
    "},{"location":"games/maimaidx/buddies/setup/#dns","title":"[dns]","text":"

    Game will not pass checks unless you modify the dns:

    [dns]\ndefault=YOUR_IPv4_ADDRESS\n
    Finding Your IPv4 Address

    Open a command promt. Type ipconfig and look for the IPv4 Address. Place those digits here otherwise you will get stuck on the DNS(LAN) check.

    "},{"location":"games/maimaidx/buddies/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/maimaidx/buddies/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/maimaidx/buddies/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/maimaidx/buddies/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App/Package/start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/maimaidx/buddies/setup/#test-launch","title":"Test Launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Please Disconnect any Hardware including Controllers or Card Readers at this time.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/maimaidx/buddies/setup/#game-settings","title":"Game Settings","text":"

    If you've followed all instructions correctly, you are ready to launch the game!

    Start the game by running App/Package/start.bat. You should see a terminal pop-up with the following:

    Another window titled Sinmai is the actual game. It should pause on Search for Distribution Servers:

    Use the following keyboard controls F1 = Test/Enter and c = down to do the following:

    • Press F1 to enter the service menu
    • Press c a few times to navigate to Game Settings or \u30b2\u30fc\u30e0\u8a2d\u5b9a as shown below:

    • Press F1 to enter the menu. Press c to navigate to the top option and toggle to OFF using F1. You should see the following:

    • Press ESC to exit. Close all associated windows including CMD, AMDaemon, and Sinmai. Relaunch with start.bat and the game should boot into guest mode.
    "},{"location":"games/maimaidx/buddies/setup/#connecting-to-a-network","title":"Connecting to a Network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App/Package/DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/maimaidx/buddies/setup/#further-configuration","title":"Further Configuration","text":""},{"location":"games/maimaidx/buddies/setup/#updating-the-base-game","title":"Updating the Base Game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    Only update if an unencrypted Assembly-CSharp.dll is available

    "},{"location":"games/maimaidx/buddies/setup/#installing-option-data","title":"Installing Option Data","text":"

    maimai DX content updates are distributed through option folders instead of patching the base game. They are named with a letter followed by three numbers. Each release increments the letter (ie. BUDDiES is H??? and BUDDiES+ is I???).

    Extract any options you've downloaded into the option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    Do not mix option data between versions

    "},{"location":"games/maimaidx/buddies/setup/#custom-mods","title":"Custom Mods","text":"

    Please use BepInEx to load all mods including MelonLoader and MonoMods

    Mods have historically been hardcoded into the unprotected Assembly-CSharp.dll which the user can enable/disable with the mai2.ini or maimaiDX.ini configuration. The modern approach is to use BepInEx to load custom mods without hardmodding the Assembly-CSharp file.

    To enable BepInEx, download the BepInEx stable release, extract the BepInEx folder to the App/Package folder, and modify segatools.ini with the following:

    [unity]\nenable=1\ntargetAssembly=BepInEx\\core\\BepInEx.Preloader.dll\n
    • BepInEx: place mods in BepInEx/Plugins
    • Melonloader: use BepInEx.MelonLoader.Loader UnityMono-BepInEx5. Place mods in MLLoader/Mods
    • MonoMods: use BepInEx.MonoMod.Loader. Place mods in BepInEx/monomod

    Some maimai DX mods are only compatible with BepInEx 5.4.22

    "},{"location":"games/maimaidx/buddies/setup/#controllers-and-troubleshooting","title":"Controllers and Troubleshooting","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/maimaidx/buddies/troubleshooting/","title":"maimai DX BUDDiES","text":""},{"location":"games/maimaidx/buddies/troubleshooting/#coming-soon","title":"Coming Soon","text":""},{"location":"games/musecafinal/problems/","title":"MUSECA 1+1/2 Common Problems/Tips","text":""},{"location":"games/musecafinal/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC (ADE-6291)

    Konami (2018)

    Based on an AMD Embedded R Series SoC.

    CPU: AMD RX-421BD

    GPU: Radeon R7

    RAM: 4 GB

    OS: Windows 7 Embedded

    "},{"location":"games/musecafinal/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/musecafinal/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/musecafinal/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/musecafinal/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/musecafinal/problems/#booting-the-game-in-offline-mode","title":"Booting the Game in Offline Mode","text":"

    If your game version is PIX-2018073002, this version supports turning off E-Amusement. In order to do that, change the game code to J:B:A (<spec>B</spec> in prop/ea3-config.xml), disable/disconnect all network adapters and turn set the E-Amusement setting in the game's operator menu to OFF.

    "},{"location":"games/musecafinal/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    Museca is a 64-bit game utilizing a feature in Windows called WASAPI exclusive mode to obtain less audio latency. Unfortunately, this cannot be changed.

    "},{"location":"games/musecafinal/problems/#im-not-getting-any-audiomy-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm Not Getting Any Audio/My Audio Is Completely Wrecked and I'm Using an External Dac!","text":"

    Several external DACs have issues with WASAPI exclusive mode and are unable to be used entirely, it's likely you'll be forced to use your motherboard's sound chip, or find a compatible DAC.

    "},{"location":"games/musecafinal/setup/","title":"MUSECA 1+1/2","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/musecafinal/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/musecafinal/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/musecafinal/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/musecafinal/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/musecafinal/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    It's important to note before booting the game that Museca uses portrait mode and attempting to boot the game fullscreen in most landscape environments will result in a crash. To alleviate this, we must set our main monitor to portrait mode and be ready to rotate it! To do so, right click on your desktop and go into Display Settings, then simply set the orientation to Portrait as pictured.

    In the event that you do not have the means to run the game in portrait mode and cannot rotate your monitor, it is recommended you boot the game in windowed mode. In SpiceTools, simply add the windowed mode parameter, this parameter is -w and can be placed right after any other desired parameters chosen in our gamestart.bat

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/nostforte/problems/","title":"NOSTALGIA FORTE Common Problems/Tips","text":""},{"location":"games/nostforte/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 6 (ADE-704A)

    Based on an AMD Embedded R Series SoC.

    CPU: Intel Celeron B810

    GPU: AMD Radeon E4690

    OS: Windows 7 Embedded

    "},{"location":"games/nostforte/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/nostforte/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/nostforte/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/nostforte/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/nostforte/problems/#no-matter-what-i-do-the-game-crashes-and-i-have-multiple-monitors","title":"No Matter What I Do, the Game Crashes and I Have Multiple Monitors!","text":"

    This problem is somewhat irregular, but sometimes Nostalgia has issues booting with multiple monitors present, particularly when trying to boot the game windowed. Make sure you're running the latest SpiceTools which has attempted to resolve all instances of this issue.

    "},{"location":"games/nostforte/setup/","title":"NOSTALGIA FORTE","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/nostforte/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's main folder and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/nostforte/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate ONLY a local network configuration with SpiceTools. Why only local? Because none of the most typical places currently support Nostalgia. Regardless, please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/nostforte/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/nostforte/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/nostforte/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you should be automatically forced into the service menu with lots of scary flashing notifications as pictured below, let's work through them.

    Interestingly, only the red flashing ones really take any effort to deal with. You can start by entering and exiting the following menus: SOUND OPTIONS, GAME OPTIONS, COIN OPTIONS, ECOMODE OPTIONS, and NETWORK OPTIONS.

    Once you've done that, enter CLOCK and set the clock by hitting SAVE AND EXIT as pictured below.

    The final menu we must deal with is VIRTUAL COIN, enter the menu and select OPERATION SETTINGS as seen below.

    Once inside this menu, we'll need to deal with all 4 blinking options, let's start by entering the TAX RATE SETTING menu, shown below.

    Set the tax rate by simply selecting SAVE AND EXIT while will take us back into the OPERATING SETTINGS. Pictured below is the TAX RATE SETTING menu.

    Once back inside the TAX RATE SETTING menu, we must deal with the three blinking PATTERN options. Doing so is effortless, simply enter all three menus one by one and hit SAVE AND EXIT just as we did for the TAX RATE SETTING in the previous step. Pictured below is the inside of PATTERN 1.

    After saving and exiting all three PATTERN options, you're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/nostop2/problems/","title":"NOSTALGIA OP.2 Common Problems/Tips","text":""},{"location":"games/nostop2/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 6 (ADE-704A)

    Based on an AMD Embedded R Series SoC.

    CPU: Intel Celeron B810

    GPU: AMD Radeon E4690

    OS: Windows 7 Embedded

    "},{"location":"games/nostop2/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/nostop2/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/nostop2/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/nostop2/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/nostop2/problems/#no-matter-what-i-do-the-game-crashes-and-i-have-multiple-monitors","title":"No Matter What I Do, the Game Crashes and I Have Multiple Monitors!","text":"

    This problem is somewhat irregular, but sometimes Nostalgia has issues booting with multiple monitors present, particularly when trying to boot the game windowed. Make sure you're running the latest SpiceTools which has attempted to resolve all instances of this issue.

    "},{"location":"games/nostop2/setup/","title":"NOSTALGIA OP.2","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/nostop2/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's main folder and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/nostop2/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate ONLY a local network configuration with SpiceTools. Why only local? Because none of the most typical places currently support Nostalgia. Regardless, please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/nostop2/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/nostop2/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/nostop2/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you should be automatically forced into the service menu with lots of scary flashing notifications as pictured below, let's work through them.

    Interestingly, only the red flashing ones really take any effort to deal with. You can start by entering and exiting the following menus: SOUND OPTIONS, GAME OPTIONS, COIN OPTIONS, ECOMODE OPTIONS, and NETWORK OPTIONS.

    Once you've done that, enter CLOCK and set the clock by hitting SAVE AND EXIT as pictured below.

    The final menu we must deal with is VIRTUAL COIN, enter the menu and select OPERATION SETTINGS as seen below.

    Once inside this menu, we'll need to deal with all 4 blinking options, let's start by entering the TAX RATE SETTING menu, shown below.

    Set the tax rate by simply selecting SAVE AND EXIT while will take us back into the OPERATING SETTINGS. Pictured below is the TAX RATE SETTING menu.

    Once back inside the TAX RATE SETTING menu, we must deal with the three blinking PATTERN options. Doing so is effortless, simply enter all three menus one by one and hit SAVE AND EXIT just as we did for the TAX RATE SETTING in the previous step. Pictured below is the inside of PATTERN 1.

    After saving and exiting all three PATTERN options, you're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/popnpeace/problems/","title":"Common Problems/Tips","text":"

    Pop'n Peace Common Problems/Tips

    "},{"location":"games/popnpeace/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: Intel Celeron B810 1.6GHz

    GPU: ATI Radeon E4690 MXM

    OS: Windows XP Embedded

    "},{"location":"games/popnpeace/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/popnpeace/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/popnpeace/problems/#why-is-the-in-game-text-garbled","title":"Why Is the In-Game Text Garbled?","text":"

    The in-game text requires a Japanese locale to display the Japanese characters correctly, look up a guide for your specific operating system on how to switch your operating system's locale to Japanese.

    "},{"location":"games/popnpeace/problems/#the-game-crashes-fullscreen","title":"The game crashes fullscreen!","text":"

    Some monitors and display adapters may not support the odd resolution the game runs at, which is 1360x768 versus the occasionally seen 1366x768. To resolve, setup a custom resolution inside your appropriate graphic's card settings, or enable GPU resolution scaling.

    "},{"location":"games/popnpeace/problems/#other-crashes","title":"Other Crashes","text":"

    This game requires an E: drive to be named by the computer. If you do not have one, make sure to apply the E: Drive fix patch.

    It may also fail to boot regardless of this, such as in the case of using HDMI audio. Even if you're not using HDMI audio however, some failures to boot have been noted. For safety, make sure to also apply the HDMI Audio Fix patch unless you're using the latest SpiceTools which fixes this issue.

    "},{"location":"games/popnpeace/setup/","title":"Pop'n Peace","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/popnpeace/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder. Pictured below is what your folder should look like.

    "},{"location":"games/popnpeace/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up spicecfg.exe and head to the Options tab. Here you can configure all of the various options that SpiceTools has, but for the purpose of this guide we'll demonstrate how to set up a local server and an online server. You can skip over the parts that you don't need, and feel free to set any other options that you might like.

    If you're not using SpiceTools:

    It's most likely that your toolkit doesn't have an options interface, so you'll have to create a .bat file. Consult the appropriate documentation for this as this isn't covered in this guide.

    "},{"location":"games/popnpeace/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, in the Options tab enable the following options: E-Amusement Emulation: -ea and Windowed Mode: -w.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to disable -w to run the game fullscreen once you're done setting up!

    Pictured below, the selected options in spicecfg.exe.

    "},{"location":"games/popnpeace/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different options!

    We're going to use the option PCBID: -pcbid for our PCBID, with XXXXXXXXXXXXXXXXXXXX as the value. For the network URL we're going to use the option Service URL: -url, with http://yoururlhere.com/ as the value. We'll also enable windowed mode by enabling the option Windowed Mode: -w.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to disable -w to run the game fullscreen once you're done setting up!

    Pictured below, the enabled options in spicecfg.exe.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/popnpeace/setup/#configuring-keybinds","title":"Configuring Keybinds","text":"

    While we're still in spicecfg.exe, why not set up the keybinds? To do this you'll have to head on over to the Buttons tab. Here you simply click Bind and press the button on your controller (or keyboard). Below are my keybinds of an arduino based controller. Notice that I've also bound the Service, Test and Coin Mech buttons to my keyboard. This might come in handy but shouldn't be necessary to play the game.

    "},{"location":"games/popnpeace/setup/#booting","title":"Booting","text":"

    With that, you're all done! Boot the game by double-clicking spice.exe and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/popnusaneko/problems/","title":"Common Problems/Tips","text":"

    Pop'n Usaneko Common Problems/Tips

    "},{"location":"games/popnusaneko/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: Intel Celeron B810 1.6GHz

    GPU: ATI Radeon E4690 MXM

    OS: Windows XP Embedded

    "},{"location":"games/popnusaneko/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/popnusaneko/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/popnusaneko/problems/#why-is-the-in-game-text-garbled","title":"Why Is the In-Game Text Garbled?","text":"

    The in-game text requires a Japanese locale to display the Japanese characters correctly, look up a guide for your specific operating system on how to switch your operating system's locale to Japanese.

    "},{"location":"games/popnusaneko/problems/#the-game-crashes-fullscreen","title":"The game crashes fullscreen!","text":"

    Some monitors and display adapters may not support the odd resolution the game runs at, which is 1360x768 versus the occasionally seen 1366x768. To resolve, setup a custom resolution inside your appropriate graphic's card settings, or enable GPU resolution scaling.

    "},{"location":"games/popnusaneko/problems/#other-crashes","title":"Other Crashes","text":"

    This game requires an E: drive to be named by the computer. If you do not have one, make sure to apply the E: Drive fix patch.

    It may also fail to boot regardless of this, such as in the case of using HDMI audio. Even if you're not using HDMI audio however, some failures to boot have been noted. For safety, make sure to also apply the HDMI Audio Fix patch unless you're using the latest SpiceTools which fixes this issue.

    "},{"location":"games/popnusaneko/problems/#how-to-unlock-songs","title":"How to Unlock Songs","text":"

    Without an appropriate patch, the game is missing song unlocks. To resolve this, I've provided an unlocked DLL with BOTH the HDMI audio fix and E: drive fix already applied. You can download from the Discord server here.

    Simply replace it with your existing one inside the contents folder of your game installation. When asked to replace, hit yes.

    "},{"location":"games/popnusaneko/setup/","title":"Pop'n Usaneko","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/popnusaneko/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file anything you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/popnusaneko/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/popnusaneko/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/popnusaneko/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/popnusaneko/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    With that, you're all done! The final step you'll have to do with your chosen tools is simply setting up your desired keybinds! Once you've done that, Boot the game with your gamestart.bat and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/reflesia/problems/","title":"REFLEC BEAT: Reflesia Common Problems/Tips","text":""},{"location":"games/reflesia/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC (ADE-704A)

    CPU: Intel Celeron B810 1.6GHz

    GPU: E4690 Radeon MXM

    OS: Windows XP Embedded

    "},{"location":"games/reflesia/problems/#my-game-doesnt-boot-after-following-the-guide","title":"My Game Doesn't Boot After Following the Guide!","text":"

    The most common problem present here is if you do not have an E:/ drive. To resolve this issue, you must apply the E:/drive fix patch.

    "},{"location":"games/reflesia/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/reflesia/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/reflesia/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/reflesia/problems/#failed-to-create-texture-error-in-spicetools","title":"Failed to Create Texture Error in SpiceTools","text":"

    If your error is along the lines of a failure to create a texture W:afputils: CTexture::create_texture \u30c6\u30af\u30b9\u30c1\u30e3\u306e\u4f5c\u6210\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 then boot the game without touching anything, even your mouse, maybe give it a few tries, it's admittedly a strange issue with no exact science behind it discovered.

    "},{"location":"games/reflesia/problems/#i-get-a-white-screen-that-silently-closes-after-a-few-seconds","title":"I Get a White Screen That Silently Closes After a Few Seconds","text":"

    Reflesia runs at 768x1360 opposed to more common resolutions. If your monitor doesn't have support for this, try making a custom resolution in your graphic's cards options. Also, make sure your monitor is in portrait mode as opposed to landscape.

    "},{"location":"games/reflesia/setup/","title":"REFLEC BEAT: The Reflesia of Eternity","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    One other thing, make sure your game folder isn't set to Read Only and that you don't have horribly wonky security permissions in Windows.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/reflesia/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is put your desired 32-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file anything you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/reflesia/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/reflesia/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/reflesia/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/reflesia/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    It's important to note before booting the game that Reflec Beat uses portrait mode and attempting to boot the game fullscreen in most landscape environments will result in a crash. To alleviate this, we must set our main monitor to portrait mode and be ready to rotate it! To do so, right click on your desktop and go into Display Settings, then simply set the orientation to Portrait as pictured.

    In the event that you do not have the means to run the game in portrait mode and cannot rotate your monitor, it is recommended you boot the game in windowed mode. In SpiceTools, simply add the windowed mode parameter, this parameter is -w and can be placed right after any other desired parameters chosen in our gamestart.bat

    As for the touch stuff, by default SpiceTools should detect your mouse just fine, you can use the -s parameter to have your cursor show at all times above the game window. For touchscreen monitors, it's a bit tricky to write something encompassing them all. Many should be detected automatically, however some may require adding the -wintouch parameter for support.

    You can check out some documented touchscreen monitors here.

    With that, you're all done! The final step you'll have to do with your chosen tools is simply setting up your desired keybinds! Once you've done that, Boot the game with your gamestart.bat and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/sdvx4/problems/","title":"SDVX IV Common Problems/Tips","text":""},{"location":"games/sdvx4/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: Celeron M 440 1.86GHz

    GPU: ATI Radeon HD 2400

    RAM: 2 GB

    OS: Windows XP Embedded

    "},{"location":"games/sdvx4/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/sdvx4/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/sdvx4/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-). Please note that Sound Voltex IV's offset is purely visual and the game does not have an audio-based offset adjustment. Sound Voltex V however, does.

    "},{"location":"games/sdvx4/problems/#running-the-game-windowed-and-borderless","title":"Running the Game Windowed and Borderless","text":"

    Some players utilizing windowed mode use 3rd party software called Borderless Gaming in order to achieve this, follow the program's instructions accordingly.

    "},{"location":"games/sdvx4/problems/#where-are-all-the-navigators","title":"Where Are All the Navigators?","text":"

    Many navigators are locked behind network requirements and they will not show unless connected to a network that has written support for the events that they're typically locked behind.

    "},{"location":"games/sdvx4/setup/","title":"SOUND VOLTEX IV HEAVENLY HAVEN","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/sdvx4/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file anything you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/sdvx4/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/sdvx4/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/sdvx4/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/sdvx4/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    It's important to note before booting the game that Sound Voltex uses portrait mode and attempting to boot the game fullscreen in most landscape environments will result in a crash. To alleviate this, we must set our main monitor to portrait mode and be ready to rotate it! To do so, right click on your desktop and go into Display Settings, then simply set the orientation to Portrait as pictured.

    In the event that you do not have the means to run the game in portrait mode and cannot rotate your monitor, it is recommended you boot the game in windowed mode. In SpiceTools, simply add the windowed mode parameter, this parameter is -w and can be placed right after any other desired parameters chosen in our gamestart.bat

    With that, you're all done! The final step you'll have to do with your chosen tools is simply setting up your desired keybinds! Once you've done that, Boot the game with your gamestart.bat and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/sdvx5/problems/","title":"SDVX VW Common Problems/Tips","text":""},{"location":"games/sdvx5/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: Intel i3-4300 3.5GHz

    GPU: Nvidia GeForce GTX 1050 2GB

    RAM: 8GB DDR3L PC3-12800 (4GB*2)

    OS: Windows 7 Embedded

    "},{"location":"games/sdvx5/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    At the time of writing, some individuals with more than capable PCs have had framerate issues, most notably with Ryzen CPUs. There's really no fix as the issues seem largely random, but it's worth noting regardless to consider trying different computers if you have them available.

    "},{"location":"games/sdvx5/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/sdvx5/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-). Sound Voltex V has two types of offset adjustments, visual and audio based, so be sure to fiddle with both to find desirable settings.

    "},{"location":"games/sdvx5/problems/#running-the-game-windowed-and-borderless","title":"Running the Game Windowed and Borderless","text":"

    Some players utilizing windowed mode use 3rd party software called Borderless Gaming in order to achieve this, follow the program's instructions accordingly.

    "},{"location":"games/sdvx5/problems/#where-are-all-the-navigators","title":"Where Are All the Navigators?","text":"

    Many navigators are locked behind network requirements and they will not show unless connected to a network that has written support for the events that they're typically locked behind.

    "},{"location":"games/sdvx5/problems/#a-note-about-sse-42","title":"A Note About SSE 4.2","text":"

    In the rare case you are running this game on very old hardware, SDVX V requires a processor supporting the SSE 4.2 instruction set. But, in the event your processor does not have this, there is a patch available to bypass this.

    "},{"location":"games/sdvx5/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    64-bit versions of SDVX are now utilizing a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of the games which used DirectSound. You can use the Shared Mode WASAPI patch to deal with some hardware issues, it can also be used to hear background audio outside the game so that the game does not take total control. Many have reported that this edit only works when the audio is set to either 16-bit 44100Hz or 24-bit 44100Hz.

    "},{"location":"games/sdvx5/problems/#im-not-getting-any-audiomy-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm Not Getting Any Audio/My Audio Is Completely Wrecked and I'm Using an External Dac!","text":"

    Several external DACs have issues with WASAPI exclusive mode and are unable to be used entirely, it's likely you'll be forced to use your motherboard's sound chip, or find a compatible DAC.

    Alongside this, many setups have found some difficulty with audio due to various equipment being used. Consider applying the Shared Mode WASAPI patch.

    "},{"location":"games/sdvx5/setup/","title":"SOUND VOLTEX VIVID WAVE","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/sdvx5/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential crashing on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file anything you desire, for the sake of convenience we've named ours gamestart.bat.

    Why does this look different than the usual? This installation includes a modules folder that Spice automatically detects, keeping things clean and simple. If your version of the game doesn't have this, it probably has the contents folder populated with many different dll files such as the main soundvoltex.dll. You should still place your tools here if so!

    "},{"location":"games/sdvx5/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/sdvx5/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/sdvx5/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/sdvx5/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    It's important to note before booting the game that Sound Voltex uses portrait mode and attempting to boot the game fullscreen in most landscape environments will result in a crash. To alleviate this, we must set our main monitor to portrait mode and be ready to rotate it! To do so, right click on your desktop and go into Display Settings, then simply set the orientation to Portrait as pictured.

    In the event that you do not have the means to run the game in portrait mode and cannot rotate your monitor, it is recommended you boot the game in windowed mode. In SpiceTools, simply add the windowed mode parameter, this parameter is -w and can be placed right after any other desired parameters chosen in our gamestart.bat

    With that, you're all done! The final step you'll have to do with your chosen tools is simply setting up your desired keybinds! Once you've done that, Boot the game with your gamestart.bat and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/sdvx6/extras/","title":"SOUND VOLTEX EXCEED GEAR","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/sdvx6/extras/#nemsys-valkyrie-modes","title":"Nemsys & Valkyrie modes","text":"

    Valkyrie mode requires a 120hz capable monitor, or to have patched your .dll with Valkyrie Mode 60hz.

    To make use of the Valkyrie Mode (Subscreen, 120FPS, S-CRITICAL..) you need to go to the contents\\prop folder and edit the ea3-config.xml file.

    We're interested in these lines:

        <soft>\n        <model __type=\"str\">KFC</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">G</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024052100</ext>\n    </soft>\n

    This is the line that determines if the game will run in Nemsys (60 FPS) or Valkyrie (120 FPS) mode.

    <spec __type=\"str\">G</spec>\n

    Use:

    • F for Nemsys
    • G for Valkyrie
    "},{"location":"games/sdvx6/extras/#changing-the-games-language","title":"Changing the game's language","text":"

    Go to the contents\\prop folder and edit the ea3-config.xml file.

    We're interested in these lines:

        <soft>\n        <model __type=\"str\">KFC</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">G</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024052100</ext>\n    </soft>\n

    This is the line that determines which region, and therefore which language the game will use.

    <dest __type=\"str\">J</dest>\n

    Use:

    • J for Japan (Japanese)
    • K for Korea (Korean + some censored jackets)
    • A for Asia/Australia (English)
    • U for America (English + some censoring in recent versions)
    • Y for Indonesia
    "},{"location":"games/sdvx6/extras/#more-about-ea3-configxml","title":"More about ea3-config.xml","text":"

    The ea3-config.xml file is located inside the prop folder.

    Below is an explanation on what different sections of this file do.

    The following lines change the PCBID and HARDID that your system reports to your e-amusement server. There is no need to manually change this as spice2x will do it for us.

    <pcbid __type=\"str\">00010203040506070809</pcbid>\n<hardid __type=\"str\">00010203040506070809</hardid>\n

    The following line determines what version of the game you are running. You should never change this. It should always say KFC.

    <model __type=\"str\">KFC</model>\n

    You should never change this. It should always say A for Exceed Gear.

    <rev __type=\"str\">A</rev>\n

    The following line determines your datecode. Always keep it up to date with your game's current version.

    <ext __type=\"str\">2024052100</ext>\n

    The following line determine what remote service URL spice2x is supposed to connect to. There is no need to manually change this as spice2x will do it for us.

    <services __type=\"str\">http://localhost:8083</services>\n
    "},{"location":"games/sdvx6/setup/","title":"SOUND VOLTEX EXCEED GEAR","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/sdvx6/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure with a few folders only, as follows.

    If your data doesn't look like this

    If you're missing the modules folder and instead have bunch of .dll files next to your folders:

    • Create a modules folder.
    • Move all .dll files inside of it so you end up with a structure as shown above.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    If you don't need to update your data, you can skip over to the Installing Spice2x section.

    "},{"location":"games/sdvx6/setup/#updating-data","title":"Updating data","text":"Please make sure you're using the right update for your current data.

    SDVX Patches re-uploaded by the community tend to be appropriately named KFC-DATECODE-to-DATECODE.

    For example KFC-2024043000-to-2024052100.

    • 2024043000 being your current data's version.
    • 2024052100 being the one you would arrive at.
    • Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.
    • Open prop\\ea3-config.xml in a text editor and find the following lines near the top.
        <soft>\n        <model __type=\"str\">KFC</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">G</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024052100</ext>\n    </soft>\n

    On the line with <ext __type=\"str\"> the datecode needs to match your new version.

    • If that's already the case then great! Don't touch anything.
    • If it instead corresponds to our pre-patch datecode, replace it with the new one and save the file.
    "},{"location":"games/sdvx6/setup/#installing-spice2x","title":"Installing Spice2x","text":"
    • Head over to spice2x.github.io and download the latest release.
    • Extract the spice64.exe and spicecfg.exe files from the archive to your game's directory.
    If you're using an AMD graphics card

    A few more files are required to make your game work with AMD as the game was built for NVIDIA.

    • From the spice2x archive, extract the .dll files found in spice2x\\stubs\\64\\ to your data's modules folder.

    "},{"location":"games/sdvx6/setup/#configuring-spice2x","title":"Configuring Spice2x","text":"

    Open spicecfg.exe, each following sub-section corresponds to a tab at the top.

    "},{"location":"games/sdvx6/setup/#buttons","title":"Buttons","text":"

    Click on Bind then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • Game buttons: BT-A, BT-B, BT-C, BT-D, FX-L, FX-R, Start
    • P1 Keypad: Keypad 0 to 9, Keypad Insert Card

    Only if you're playing using a keyboard:

    • Knobs: VOL-L Left, VOL-L Right, VOL-R Left, Vol-R Right
    "},{"location":"games/sdvx6/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to VOL-L and VOL-R, you need to:

    • Click Bind.
    • In Device, pick your controller.
    • In Control, pick X for VOL-L or Y for VOL-R.
    • Turn your knob ensuring that the Preview knob turns along with it.
    • Click Close, leaving the rest of the settings alone.
    • Repeat for your other knob.
    "},{"location":"games/sdvx6/setup/#overlay","title":"Overlay","text":"

    Modifying buttons in this section is not required but you are free to change what you want.

    Click on Bind then press the key you want associated with the action.

    "},{"location":"games/sdvx6/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through spice2x.

    If it does, here's how you may link different actions to your lights:

    • Click Bind.
    • In Device, pick your controller.
    • In Light Control, select the corresponding light.
    • Click Close.
    • Repeat for your other lights.
    "},{"location":"games/sdvx6/setup/#cards","title":"Cards","text":"

    Covered in the Connecting to a network section.

    "},{"location":"games/sdvx6/setup/#patches","title":"Patches","text":"

    Go through the Spice2x Patching page to import patches.

    If you don't absolutely need a patch or you're unsure what it does, leave it alone! Regardless of recommendations below.

    General patches Patch Recommendation Description Disable power change Either Prevents the game from changing Windows power settings. Disable monitor change Either Prevents the game from changing Windows monitor settings. Force BIO2 (KFC) IO in Valkyrie mode OFF Only useful for real cabs or Valkyrie at 60hz. Shared mode WASAPI Either For non-Valkyrie setups. Runs the game with non-exclusive WASAPI audio, allowing you to hear audio from other sources at the cost of audio latency. Shared mode WASAPI Valkyrie Either For Valkyrie setups. Same as above. ASIO 2 Channels Mode OFF For ASIO audio only. Uses 2 channels instead of 8, useful for some audio cards. Unlock All Songs OFF This might get you banned from remote servers. If using Asphyxia, you should unlock Songs using the WebUI instead. Unlock All Difficulties OFF This might get you banned from remote servers. If using Asphyxia, you should unlock Difficulties using the WebUI instead. Uncensor album jackets (for K region only) OFF Only useful for Korean region. The game is already \"uncensored\" otherwise. Hide all bottom text Either Hides text at the bottom of the screen such as Credits or Paseli. Disable subscreen in Valkyrie mode Either Disables the subscreen entirely. Note that this option is also available in the Options tab (-sdvxnosub). Timer freeze Either Freezes the timer in all non-premium environments. Premium timer freeze Either Freezes the timer in premium environments. Hide premium guide banner Either Hides the premium guide banner at the bottom of the screen during play. Premium Time Length Any Defines how long your premium time will be. If you've frozen premium time this is just vanity. Valkyrie Mode 60hz OFF Allows 60hz monitor users to use Valkyrie-exclusive features. To be used in conjunction with the Force BIO2 patch and G spec in ea3-config.xml. Fake Region Japan Unlocks region specific content regardless of the chosen region in ea3-config.xml. Japan unlocks the most content and is therefore recommended. If your monitor supports 120hz or more Patch Recommendation Game FPS Target 120 FPS (NOT higher) Note FPS Target 120 FPS (NOT higher)"},{"location":"games/sdvx6/setup/#api","title":"API","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/sdvx6/setup/#options","title":"Options","text":"

    If you don't know what an option does, hover over the question mark at the very left.

    Be very careful changing options you don't understand as it may cause issues.

    Required

    Category Option Parameter Setting Game Options SDVX Disable Cameras -sdvxdisablecams ON Network EA Service URL -url Covered in Connecting to a network

    Highly Recommended for NVIDIA users ONLY

    Category Option Parameter Setting Graphics (common) NVIDIA profile optimization -nvprofile ON"},{"location":"games/sdvx6/setup/#advanced-development","title":"Advanced & Development","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/sdvx6/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Open spicecfg.exe and head to the Options tab.

    In the Network category, set the following settings:

    • EA Service URL to the URL provided by your network.
    • PCBID to the PCBID provided by your network.

    Next you need a card number. If you don't already have one, generate one in the Cards tab. To keep your card number safe, create a new .txt file with ONLY it inside.

    Once that's done, head to the Cards tab, for Player 1 click Open... and point to your text file.

    Local e-amuse Emulator (Asphyxia)

    This is covered in the Asphyxia CORE page.

    "},{"location":"games/sdvx6/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/sdvx6/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/sdvx6/setup/#audio","title":"Audio","text":"
    • Open spicecfg.exe.
    • At the very top, click on Shortcuts then Audio Playback Devices.
    • In the popup window, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick the 16 bit, 44100 Hz (CD Quality) option and click Apply then OK.
    "},{"location":"games/sdvx6/setup/#monitor-orientation","title":"Monitor orientation","text":"

    Before each play session, you will have to make sure your monitor is in Portrait or Portrait (flipped) mode.

    To do so:

    • Right click on your desktop.
    • Click Display Options.
    • Look for Display orientation and set it to Portrait or Portrait (flipped).

    • Rotate your monitor vertically.
    "},{"location":"games/sdvx6/setup/#valkyrie-nemsys-language-settings","title":"Valkyrie / Nemsys / Language settings","text":"

    Read through the Extra Information page and edit your prop\\ea3-config.xml file if necessary.

    "},{"location":"games/sdvx6/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run spice64.exe, press Yes when it asks for elevated privileges.

    The game will go through a series of checks, let it run, if you've done everything properly they'll pass.

    "},{"location":"games/sdvx6/setup/#calibration","title":"Calibration","text":"

    If you're seeing this screen, it means you need to calibrate your knobs.

    Press your Test key. The game will instruct you where to navigate inside the menu.

    • Press BT-A to go up.
    • Press BT-B to go down.
    • Press Start to select.

    Select I/O CHECK and press Start.

    Select CALIBRATION SETTINGS and press Start.

    Select CALIBRATION and press Start.

    First, your left knob (VOL-L for keyboard players)

    1. Slowly turn your LEFT knob counterclockwise (VOL-L Left) until the first line says COUNT = OK.
    2. Press Start.
    3. Slowly turn your LEFT knob clockwise (VOL-L Right) until the first line says COUNT = OK.
    4. Press Start.

    Now same thing but for the right knob (VOL-R for keyboard players)

    1. Slowly turn your RIGHT knob counterclockwise (VOL-R Left) until the first line says COUNT = OK.
    2. Press Start.
    3. Slowly turn your RIGHT knob clockwise (VOL-R Right) until the first line says COUNT = OK.
    4. Press Start.

    Select SAVE AND EXIT and press Start.

    Select GAME MODE and press Start.

    You're all done! The game should load up properly now.

    "},{"location":"games/sdvx6/setup/#carding-in","title":"Carding in","text":"

    Once the game is done loading, you need to card in.

    • Press your Keypad Insert Card button.
    • Enter your code using your keypad binds.
    "},{"location":"games/sdvx6/setup/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issue?

    Check out the Troubleshooting and Error Codes pages.

    For any more game-specific information, check out Extra Information.

    "},{"location":"games/sdvx6/troubleshooting/","title":"SOUND VOLTEX EXCEED GEAR","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/sdvx6/troubleshooting/#im-having-performance-issues","title":"I'm having performance issues!","text":"

    If you're having performance issues of some kind, spice2x's PC optimization guide is worth looking at.

    "},{"location":"games/sdvx6/troubleshooting/#my-game-is-running-slowfast-after-finishing-a-song-the-game-gets-stuck-loading","title":"My game is running slow/fast, After finishing a song the game gets stuck loading!","text":"

    The most common reason for this is the game is running over its required refresh rate. To solve this, make sure v-sync isn't disabled in your graphics card's settings.

    For NVIDIA users, enable NVIDIA profile optimization (-nvprofile) in the Options tab.

    "},{"location":"games/sdvx6/troubleshooting/#how-do-i-set-my-offset","title":"How do I set my offset?","text":"

    Play through a chart you're comfortable with.

    If you're getting too many Late, decrease your offset (-). If you're getting too many Early, increase your offset (+).

    Sound Voltex Exceed Gear has two types of offset adjustments, visual and audio based, so be sure to fiddle with both to find desirable settings.

    "},{"location":"games/sdvx6/troubleshooting/#how-do-i-run-the-game-windowed-borderless","title":"How do I run the game windowed borderless?","text":"

    Some players utilize windowed mode and use 3rd party software called Borderless Gaming in order to achieve this, follow the program's instructions accordingly.

    "},{"location":"games/sdvx6/troubleshooting/#where-are-all-the-navigators","title":"Where are all the navigators?","text":"

    Many navigators are locked behind network requirements and they will not show unless connected to a network that has written support for the events they're typically locked behind.

    "},{"location":"games/sdvx6/troubleshooting/#my-game-audio-is-super-quiet","title":"My game audio is super quiet!","text":"

    Press your Test key to enter its menu, go to SOUND OPTIONS and change the volume from 20 to 30.

    "},{"location":"games/sdvx6/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    Sound Voltex Exceed Gear uses WASAPI exclusive mode for audio to get better audio latency. Unlike former versions of the games which used DirectSound.

    You can use the Shared Mode WASAPI patch to deal with some hardware issues, it can also be used to hear audio outside the game at the cost of audio latency.

    "},{"location":"games/sdvx6/troubleshooting/#im-not-getting-any-audio-my-game-crashes-due-to-audio","title":"I'm not getting any audio / My game crashes due to audio","text":"

    Many setups have found some difficulty with audio due to various equipment being used. Consider using the Shared Mode WASAPI patch.

    "},{"location":"games/taikonijiiro/setup/","title":"Taiko no Tatsujin Nijiiro","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/taikonijiiro/setup/#preparing-data","title":"Preparing data","text":"

    Taiko is generally distributed as a single folder. For Nijiiro, this will be SBWY 39.06. The game folder should contain an AMCUS, Data and Executable folder.

    Nijiiro is a rolling release so please verify your game version by opening AMCUS\\AMConfig.ini and verifying that it says cacfg-game_ver=39.06

    NAMCO data is also distributed as .VHDX and .VHD files. These files are useful for archival purposes, but are not required to run the game. Always download the unpacked data for home use.

    "},{"location":"games/taikonijiiro/setup/#installing-taikoarcadeloader-tal","title":"Installing TaikoArcadeLoader (TAL)","text":"

    TaikoArcadeLoader:

    TaikoArcadeLoader is a loader and hardware emulator for Nijiiro. It will allow us to launch the game, as well as configure inputs and network settings. More information can be found at the TAL github page.

    • Download the latest version of TAL from the actions tab of the TAL page. This will be a file named dist. You will need to be logged into github to download this file.

    • If github link is not working download TAL from our Discord in Taiko > Resources

    • Copy the files from dist.zip to your Executable/Release folder. When asked, choose to replace the existing files with the newly copied files.

    "},{"location":"games/taikonijiiro/setup/#configuring-taikoarcadeloader","title":"Configuring TaikoArcadeLoader","text":"

    The configuration information for TaikoArcadeLoader is stored within config.toml.

    Open up config.toml with a text editor of your choice. We'll be using Notepad++.

    config.toml is separated into several sections, indicated by the section name in [square brackets]

    Information for this can be found at the TAL github page.

    The [amauth] section contains network related config

    • server = can be left default if playing on a local server or offline but it is recommend to play on an online network.
    • port = do not change unless you know what you are doing.
    • chassis_id = do not change unless you know what you are doing.
    • shop_id = mostly visual. change if you want to.
    • game_ver = mostly visual. change if you want to.
    • country_code = do not change unless you know what you are doing.
    [amauth]\nserver = \"127.0.0.1\"\nport = \"54430\"\nchassis_id = \"284111080000\"\nshop_id = \"TWO-TORIAL\"\ngame_ver = \"39.06\"\ncountry_code = \"JPN\"\n

    The [patches] section contains patches

    • version = do not change unless you know what you are doing.
    • res = change to your display's resolution.
    • windowed = set to true if you want to run the game in windowed.
    • vsync = set to true if your display is set to 120hz.
    • unlock_songs = do not change unless you know what you are doing.
    [patches]\nversion = \"auto\"\nres = { x = 1920, y = 1080 }\nwindowed = false\nvsync = false\nunlock_songs = true\n

    The [keyboard] section contains keyboard related config

    • auto_ime = if set to true, changes your keyboard layout to Qwerty until the game is closed.
    • jp_layout = should be set to true for actual japanese keyboards.
    [keyboard]\nauto_ime = false\njp_layout = false\n
    "},{"location":"games/taikonijiiro/setup/#configuring-inputs","title":"Configuring Inputs","text":"

    Depending on the input method you choose, the configuration for them can change slightly. Below are all the input methods available and how to set them up.

    Keyboard

    Keyboard is the default input method.

    • The default layout uses DF JK for the drum input
    • P to Insert Card
    • Enter to add coins

    If you wish to view or change all the default keybinds, you can do so in keyconfig.toml.

    Controller

    The setup for both drum and normal controllers is the same.

    • In config.toml set wait_period = to 0
    • If you are using a controller that does not use keyboard inputs, you need to set SDL keybinds in keyconfig.toml
    • When you're using an analog input for the drums, you need to set analog_input = false to true in config.toml

    A list of valid SDL inputs can be found at the bottom of keyconfig.toml

    If you're using 2 controllers, use JoyToKey and remove SDL inputs from keyconfig.toml

    Physical Card Readers

    You can insert your card with physical card readers. If you happen to have one, you can set them up to use them for Taiko no Tatsujin Nijiiro.

    AIC Pico
    • In config.toml set [card_reader] to false.
    • Update to the latest firmware
    • Inside AMFWConfig.ini change COM4 to the port of your AIC Pico
    ACR122U
    • In config.toml set [card_reader] to true.
    • Use AkaiiKitsune's tal-cardreader plugin

    If you don't have a physical card reader, you can skip over to the Networks section

    "},{"location":"games/taikonijiiro/setup/#networks","title":"Networks","text":"

    Please choose one of the two solutions, not both!

    Online Hosted Servers (Recommended)

    There are a few online hosted servers that support Nijiiro, however most of them are currently invite only. Ask your friends where they play, and maybe they'll invite you!

    Elara Global Taiko Server

    EGTS is the only public Nijiiro server that also comes with an Omnimix verison that includes custom songs and songs from other Taiko games.

    Self Hosted Local Servers (Complex)

    If you wish to run the game locally, but with the ability to create and save a profile, you can run a server on the same computer you are playing the game on. This server will need to be running before you launch the game, however it can be shut down when you are no longer playing.

    Any provided setup instructions are likely to become outdated rather quickly.

    Please refer to the included setup instructions on each projects respective web page.

    • TLS - A network service emulator for Nijiiro. Setup can be complex as you are required to build TLS from source using VisualStudio and .sln files.
    "},{"location":"games/taikonijiiro/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/taikonijiiro/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/taikonijiiro/setup/#first-launch","title":"First Launch","text":"

    Run Taiko.exe to start the game.

    Enter the I/O setup screen by pressing F1 on the Attract screen then using the arrow keys and Enter, navigate to I/O TEST -> TAIKO TEST. For the best settings copy the image below. If you wish you can adjust these settings to your liking.

    You're all done! The game should load up properly now.

    "},{"location":"games/taikonijiiro/setup/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issue?

    Check out the Troubleshooting page.

    "},{"location":"games/taikonijiiro/troubleshooting/","title":"Taiko no Tatsujin Nijiiro Common Problems/Tips","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/taikonijiiro/troubleshooting/#changing-the-language","title":"Changing the Language","text":"

    Nijiiro supports changing the language from the test menu. The officially supported languages are:

    • Japanese (Default)
    • English
    • Chinese (zh-TW)
    • Korean

    An unofficial mod allows you to change the language to Chinese (simplified), this can be found on the Discord.

    Using F1, the arrow keys and Enter, navigate to OTHERS -> LANGUAGE

    "},{"location":"games/taikonijiiro/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot","text":"

    First boot after connecting to a network will be very long (>90s)

    The game files for Nijiiro consists of thousands of small .bin files and Windows Defender is known to spend a long time scanning through them during game boot up.

    One way to massively speed up boot times is to add the entire game folder as a Windows Defender Exception.

    Doing this will prevent Defender from scanning your game folder for viruses.

    Only do this if you trust the source of your data!

    • Open Virus & threat protection.
    • Under Virus & threat protection settings click the Manage Settings button.
    • Scroll down to Exclusions and click on Add or remove exclusions.
    • Click the Add an exclusion button, select the folder option, navigate to the root of your game installation and click Select Folder.

    "},{"location":"games/taikonijiiro/troubleshooting/#my-game-is-running-crazy-fastslow","title":"My game is running crazy fast/slow","text":"

    The game needs to be ran at 120 FPS or things will break.

    If you have a display that supports 120hz or higher
    • Set your display to 120hz. You may need to make a custom resolution.
    • In config.toml set vsync = to true.
    If you have a display that is less than 120hz
    • In config.toml set vsync = to false and windowed = to true.
    • Limit the FPS for Taiko.exe using your GPU settings or RTSS

    "},{"location":"games/taikonijiiro/troubleshooting/#my-game-is-not-connected-to-a-network-but-i-set-one-up","title":"My game is not connected to a network but I set one up","text":"

    Disable shop close time or you won't always be able to connect to the network

    Using F1 arrow keys and Enter navigate to GAME OPTIONS -> CLOCK/CLOSE TIME SETTING -> SCHEDULE TYPE.

    If you are still unable to connect that means you have incorrectly configured your config.toml or your server.

    "},{"location":"games/taikonijiiro/troubleshooting/#game-modes-are-missing","title":"Game modes are missing","text":"

    This will happen if you didn't correctly apply the unlock game modes mod or didn't card in.

    You can download the mod on the Discord.

    You can card in by pressing P by default.

    "},{"location":"games/taikonijiiro/troubleshooting/#my-game-is-still-too-bigsmall-after-setting-the-resolution-in-configtoml","title":"My game is still too big/small after setting the resolution in config.toml","text":"

    This will happen if you incorrectly set your resolution or scale.

    You can check your display resolution by right clicking your desktop and selecting Display settings.

    You can set your scale to 100% right above where it says your resolution.

    "},{"location":"games/taikonijiiro/troubleshooting/#my-controller-is-dropping-inputs-i-cant-hit-good-drumrolls","title":"My controller is dropping inputs / I can't hit good drumrolls","text":"

    This a common issue on some controllers.

    In config.toml increase wait_period = by 1, then test it in-game and repeat until it feels correct.

    "},{"location":"games/taikonijiiro/troubleshooting/#best-settings-for-nvidia-gpus","title":"Best settings for Nvidia GPUs","text":"

    This will help with latency and other issues

    In NVIDIA Control Panel set the following settings for Taiko.exe.

    • Low Latency Mode Ultra
    • Max Frame Rate 120 FPS
    • Power management mode Prefer maximum performance
    • Vertical sync Fast
    "},{"location":"games/taikonijiiro/troubleshooting/#audio","title":"Audio","text":"

    By default the game will use WASAPI Shared

    To use WASAPI exclusive:

    • Inside config.toml, set wasapi_shared = true to false

    To use ASIO in combination with FlexASIO:

    • Inside config.toml, set wasapi_shared = true to false and set asio = false to true.
    • Change asio_driver = \"\" to asio_driver = \"FlexASIO\"

    To change FlexASIO settings refer to this.

    "}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Home","text":"

    A compendium of information and guides about arcade games. By the community, for the community.

    Join our Discord server!

    There are troubleshooting sections available if you need direct help!

    This site is by no means all-encompassing

    We're only a group of volunteers aiming to bring you the most up-to-date information.

    But we're only humans, we make mistakes, and therefore:

    • Please use a certain degree of caution while manipulating your game files and make backups.
    • Don't tamper with things if you don't know what you're doing.

    If you can do that, these guides will probably be of use to you. If not, don't tell us we didn't warn you!

    How to use the site?

    On the left side is a navigation bar containing every guide:

    • Games category for game-specific guides on how to setup data, troubleshoot issues, etc..
    • Error Codes for a listing of known errors and what to do about them.
    • Game Patching category for ways to patch/modify your game.
    • Extras for anything that doesn't fit in the above categories.
    • Other Resources for links to useful sites such as patchers, external guides, etc..

    Do you want to help us out?

    Please check out our GitHub Repo by clicking the link at the top of right of the page. Information on how to contribute is available there.

    "},{"location":"resources/","title":"Other Resources","text":""},{"location":"resources/#spice2x-patchers","title":"Spice2x Patchers","text":"

    See Spice2x Patching.

    • TWO-TORIAL - https://sp2x.two-torial.xyz/ - Our open-source patcher for Spice2x compatible games.
    • DJTrackers - https://djtrackers.com/bemanipatcher/2x - Recommended for anything we don't yet support. Our IIDX patches are based off of theirs for the most part.
    "},{"location":"resources/#web-patchers","title":"Web Patchers","text":"

    See Web Patching.

    • TWO-TORIAL - Our open-source web patcher (based on mon's) for games incompatible with Spice2x. Also integrates Scribbler's patches for chunithm.
    • mon's - The longest lasting web patcher, supports a variety of n-1 and older games.
    • Scribbler's Chuni Only Patcher - Has every version of Chunithm available.
    "},{"location":"resources/#general","title":"General","text":"
    • Spice2x Wiki - The best resource for Spice2x
    • Bemaniwiki - A bemani wiki written in japanese
    • RemyWiki - Bemani arcade games wiki with lots of useful info
    • SilentBlue - By RemyWiki's creators, but for SEGA games
    "},{"location":"resources/#cons-cabs","title":"Cons & Cabs","text":"
    • GameRepair.info - Repository of arcade part repair & misc information
    • Cons&Stuff - Community resource for DIY controllers
    • Rhythm Game Cabs - Discord server for arcade cabs
    "},{"location":"resources/#iidx","title":"IIDX","text":"
    • iidx.org - The go to guide for mechanics and skill related things
    • sp12 - IIDX SP\u260612 reference site/difficulty tier list
    • iidx.insane.pe.kr - IIDX difficulty tier list
    • Statistik - IIDX difficulty tier list
    • atwiki - IIDX wiki in JP (includes tier lists)
    • textage.cc - Chart viewing resource
    • DJ DAO IIDX troubleshooting guide - Step-by-step guide for FPS, FP7, PEE, RES, RED controllers.
    "},{"location":"resources/#sdvx","title":"SDVX","text":"
    • SDVX Index - SDVX chart viewer and reference
    • sdvx.in - worse alternative to SDVX Index (but can be used for Chunithm and Ongeki too)
    • SDVX Progress Chart - Functions as a generalized tier list
    • SDVX Unlock Guide - Translated guide for unlocks
    "},{"location":"resources/#gitadora","title":"GITADORA","text":"
    • 573Controller - DIY guitar solution for converting official cab guitars to USB home-use
    • Drummania English Menu Translation - Handy for beginners, lots of options!
    "},{"location":"resources/#chunithm","title":"CHUNITHM","text":"
    • sdvx.in - Chart viewer for CHUNITHM
    • CHUNITHM Humen - Screen captures of all CHUNITHM charts
    • Codex's English Chunithm Guide - Handy CHUNITHM resource for players of all skill levels
    "},{"location":"errorcodes/bemani/","title":"BEMANI Error Codes","text":"

    Before reading

    This section contains various gamecode errors that a user may run across. There is an innumerable amount of these and I sometimes wonder if it's truly possible to have them all listed. Nonetheless, dozens, if not hundreds are currently missing. This list is a massive work in progress and will be updated with time.

    Furthermore, not every solution listed can be the definitive solution to your error, sometimes various odd software and hardware nuances occur to create yet unseen issues.

    "},{"location":"errorcodes/bemani/#universal-error-codes","title":"Universal Error Codes","text":""},{"location":"errorcodes/bemani/#5-0000-0000","title":"5-0000-0000","text":"

    This error can appear across any game, it's a generic critical error with several possible solutions.

    It is usually caused by network adapters that are enabled, other than the primary one used for network service. Try to disable some network adapters in Windows Device Manager, including hidden adapters.

    It can also be caused by game files being set to read only, especially the dev folder. Uncheck read only property in file explorer for all game files.

    "},{"location":"errorcodes/bemani/#5-2000-0000","title":"5-2000-0000","text":"

    This error can appear across any game, it's a standard network error with several possible solutions.

    First, make sure you have correctly entered your network service's URL properly with the -url parameter, that your internet connection is fine, and that the service is not down. Also make sure you have correctly entered your PCBID with the -p parameter.

    One other thing to check is that the data is supported by the service, and that the datecode used by the game is not invalid. Don't modify things if you don't need to! If the data is from a clean, trusted source, then this is extremely unlikely to be the cause.

    "},{"location":"errorcodes/bemani/#5-2002-0915","title":"5-2002-0915","text":"

    This error can appear across any game, it's a standard network error with several possible solutions.

    First, make sure you have correctly entered your network service's URL properly with the -url parameter, that your internet connection is fine, and that the service is not down. Also make sure you have correctly entered your PCBID with the -p parameter.

    One other thing to check is that the data is supported by the service, and that the datecode used by the game is not invalid. Don't modify things if you don't need to! If the data is from a clean, trusted source, then this is extremely unlikely to be the cause.

    "},{"location":"errorcodes/bemani/#5-2600-0000","title":"5-2600-0000","text":"

    This error can appear across any game, it's a standard network error with several possible solutions.

    First, make sure you have correctly entered your network service's URL properly with the -url parameter, that your internet connection is fine, and that the service is not down. Also make sure you have correctly entered your PCBID with the -p parameter.

    One other thing to check is that the data is supported by the service, and that the datecode used by the game is not invalid. Don't modify things if you don't need to! If the data is from a clean, trusted source, then this is extremely unlikely to be the cause.

    "},{"location":"errorcodes/bemani/#iidx-error-codes","title":"IIDX Error Codes","text":""},{"location":"errorcodes/bemani/#5-1500-0002","title":"5-1500-0002","text":"

    SOUND DATA CREATE ERROR

    This error occured from a corrupted installation. If your data came from a trusted source and you're having this issue, consider redownloading the files and making sure your installation was done properly. Or, perhaps your hard drive is failing.

    "},{"location":"errorcodes/bemani/#5-1503-0004","title":"5-1503-0004","text":"

    USBIO ERROR (NO ANSWER...)

    This error occurs when the game times out trying to communicate with the I/O board.

    When using tools, this typically happens because I/O emulation in tools takes too long, which can be caused by long-running background services on your computer. Usual offenders are: file-syncing software (GDrive, OneDrive, back up service, etc), anti-virus / malware scans, Windows Updates, or possibly bad hardware. Try to see if you can run tools at elevated process priority (SpiceTools already does this, but you can also try -realtime as last resort).

    On a real cabinet this would typically be a hardware error with the I/O board. Check cable connection and the power supply to the I/O board.

    "},{"location":"errorcodes/bemani/#5-1505-0001","title":"5-1505-0001","text":"

    SSD DATA ERROR

    This error occurs when the data is horribly corrupt, incomplete, or modified incorrectly. Please redownload your data from a reliable source.

    "},{"location":"errorcodes/bemani/#5-1503-0042","title":"5-1503-0042","text":"

    CAMERA DEVICE ERROR

    This error occurs when camera devices are missing/not functional. To resolve either have two cameras connected to your machine or apply a patch for your game's specific version and date code to simply not have this error occur on startup. It can be bypassed by hitting the Test button so it is not a critical error.

    "},{"location":"errorcodes/bemani/#5-1506-0001","title":"5-1506-0001","text":"

    CLOCK ERROR

    This error occurs when the clock is not set. To resolve, set the CLOCK in the service menu by hitting SAVE AND EXIT inside of the menu.

    "},{"location":"errorcodes/bemani/#sound-voltex-error-codes","title":"Sound Voltex Error Codes","text":""},{"location":"errorcodes/bemani/#5-1506-0000","title":"5-1506-0000","text":"

    ACIO ERROR

    A user had this error when they downloaded the game from an unreliable source, they redownloaded libacio.dll from a clean, trusted source and had no issues. If the error persists, consider redownloading the data from a reliable source entirely.

    "},{"location":"errorcodes/bemani/#5-2009-0000","title":"5-2009-0000","text":"

    This error was seen on Sound Voltex Booth, a user had messed up their dll files. Thus, the solution would be to leave files unmodified and do not needlessly tamper. If your data came from a trusted source and you're having this issue, consider redownloading the files and making sure your installation was done properly.

    "},{"location":"errorcodes/bemani/#popn-error-codes","title":"Pop'n Error Codes","text":""},{"location":"errorcodes/bemani/#5-1509-0000","title":"5-1509-0000","text":"

    A user experienced this error every few minutes or so during play. If this issue occurs, make sure you have correctly inputted your chosen network's service URL and your PCBID correctly.

    "},{"location":"errorcodes/bemani/#5-2002-2400","title":"5-2002-2400","text":"

    This error was seen on Pop'n Usaneko due to improper setup and bad parameter usage in SpiceTools, make sure to follow the first time setup and utilize the -url and -p parameters in SpiceTools so that you're not needlessly risking making mistakes in modifying the game's files.

    "},{"location":"errorcodes/bemani/#jubeat-error-codes","title":"Jubeat Error Codes","text":""},{"location":"errorcodes/bemani/#5-2500-0000","title":"5-2500-0000","text":"

    BACKUP DATA ERROR

    Follow the steps listed here

    "},{"location":"errorcodes/bemani/#gitadora-error-codes","title":"GITADORA Error Codes","text":""},{"location":"errorcodes/bemani/#5-1698-0000","title":"5-1698-0000","text":"

    This was seen in GITADORA Tri-Boost Re:EVOLVE. To resolve, uncheck the Read Only attribute on the following contents folders.

    - \\contents\\data\\product\\aep_x64\\\n- \\contents\\data\\product\\aep\\\n

    Also, remove the following files from these folders.

    - battle_matching_3.bin\n- beargarden_3.bin\n- common_3.bin\n- custom_3.bin\n- entry_3.bin\n- game_combo_3.bin\n- game_common_3.bin\n- game_dm_3.bin\n- game_gf_3.bin\n- game_session.bin\n- home.bin\n- mission_result.bin\n- record_3.bin\n- select_music_3.bin\n- tab_3.bin\n- title_3.bin\n- warning_3.bin\n
    "},{"location":"errorcodes/bemani/#5-1506-0000_1","title":"5-1506-0000","text":"

    Disable all the unused network adapters inside device manager (make sure to view the hidden ones as well and disable those too!)

    "},{"location":"errorcodes/bemani/#5-2500-0001","title":"5-2500-0001","text":"

    BACKUP DATA ERROR

    Follow the steps listed here

    "},{"location":"errorcodes/bemani/#5-2501-0000","title":"5-2501-0000","text":"

    The Group ID Error is caused when it finds another cab of the same kind (GF or DM) with the same Group ID on the network. In most cases for users, this means the computer is connected to BOTH Ethernet and Wi-fi so the game sees 2 instances of itself. Thus to resolve, make sure you do not have 2 devices on the same subnet like this by checking your connections accordingly.

    "},{"location":"errorcodes/bemani/#nostalgia-error-codes","title":"NOSTALGIA Error Codes","text":""},{"location":"errorcodes/bemani/#5-1501-0000","title":"5-1501-0000","text":"

    This error was seen in NOSTALGIA Op. 2 when a user had a bad AVS config, make sure your data is from a reliable source and consider redownloading or replacing the file.

    "},{"location":"errorcodes/sega/","title":"SEGA Error Codes","text":"

    Before reading

    This section contains various gamecode errors that a user may run across. There is an innumerable amount of these and I sometimes wonder if it's truly possible to have them all listed. Nonetheless, dozens, if not hundreds are currently missing. This list is a massive work in progress and will be updated with time.

    Furthermore, not every solution listed can be the definitive solution to your error, sometimes various odd software and hardware nuances occur to create yet unseen issues.

    "},{"location":"errorcodes/sega/#universal-game-error-codes","title":"Universal Game Error Codes","text":""},{"location":"errorcodes/sega/#0000","title":"0000","text":"

    Unexpected Error Occured

    This error occurs when the data is horribly corrupt, incomplete, or modified incorrectly. Please redownload your data from a reliable source.

    "},{"location":"errorcodes/sega/#0032","title":"0032","text":"

    Unexpected Error Occured

    Generic network error with multiple symptoms, the most typical of which being enabling DHCP in Windows while the game expects a static IP. Try adding this to config_hook.json:

    {\n    \"network\": {\n        \"property\": {\n            \"dhcp\": true\n        }\n    }\n}\n

    Tip

    If you're copying into an existing config_hook.json, remove the outer braces and add a comma to the previous item, like so:

    {\n    \"emoney\": {\n        \"enable\": false\n    },// (1)!\n    \"network\": {\n        \"property\": {\n            \"dhcp\": true\n        }\n    }\n}\n
    1. Notice the comma here.

    Tip

    If your game files does not include config_hook.json, it is OK to create a new file, then edit the launch script (usually start.bat) to tell the game about it:

    amdaemon.exe -f -c config_common.json config_server.json config_client.json config_hook.json\n
    "},{"location":"errorcodes/sega/#0800","title":"0800","text":"

    Unknown Error

    Generic network error usually thrown because the game is not able to connect to a server.

    Make sure that you have correctly entered your network's address in segatools.ini under the [dns] section:

    [dns]\n; Can also be an IP address:\n; default=192.168.34.23\ndefault=example.com\n

    "},{"location":"errorcodes/sega/#0919","title":"0919","text":"

    DVD Drive Remain Error

    This error occurs if the game detects an enabled DVD drive on the system. To resolve, either disable your computer's DVD drive, or enable DVD drive emulation in segatools.ini:

    [dvd]\nenable=1\n
    "},{"location":"errorcodes/sega/#0949","title":"0949","text":"

    Keychip Not Found

    Enable keychip emulation in segatools.ini:

    [keychip]\nenable=1\n

    If on a real cabinet using a real keychip, confirm that the keychip is connected properly and working.

    "},{"location":"errorcodes/sega/#4104","title":"4104","text":"

    Unexpected Error Occured

    Make sure that the game files are not on the E: or Y: drive. If that is already the case, check if the config files passed to AM Daemon exists and are valid JSON files:

    Runtime exception occurred.\nFile: D:\\Jenkins\\workspace\\amdaemon_all_build\\libs\\amdproc\\src\\ConfigFileLoader.cpp\nLine: 79\nFunction: enum amdaemon::process::ConfigFileLoader::Result __cdecl `anonymous-namespace'::parse(const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,class picojson::value &)\nMessage: Cannot open \"config_nonexistent.json\".\n
    Runtime exception occurred.\nFile: D:\\Jenkins\\workspace\\amdaemon_all_build\\libs\\amdproc\\src\\ConfigFileLoader.cpp\nLine: 89\nFunction: enum amdaemon::process::ConfigFileLoader::Result __cdecl `anonymous-namespace'::parse(const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,class picojson::value &)\nMessage: Cannot parse \".\\config_hook.json\".\nsyntax error at line 6 near: }\n
    "},{"location":"errorcodes/sega/#4105","title":"4105","text":"

    Unexpected Error Occured

    Check the AM Daemon window for any \"runtime exception\" messages, such as

    amsGfetcherThreadContextInit: Line1345  Error: load Icf failed.\nRuntime exception occurred.\nFile: D:\\Jenkins\\workspace\\amdaemon_all_build\\libs\\libamw\\src\\amw_netdeliver_context.cpp\nLine: 91\nFunction: enum am::util::ModuleContext<3>::Status __cdecl am::netdeliver::Context::initialize(void)\nMessage: amGfetcherInit(). ErrCode -1.\n

    Then continue by checking AMDaemon error codes.

    "},{"location":"errorcodes/sega/#6401","title":"6401","text":"

    I/O board is not connected to main board

    This error occurs when the game times out trying to communicate with the I/O board.

    When using segatools, this happens because I/O emulation took too long, which is usually caused by long-running background tasks (e.g. Windows Defender, Windows Update, file-syncing software). Try to see if this can be fixed by setting the game process and/or amdaemon.exe to high/realtime priority.

    "},{"location":"errorcodes/sega/#6501","title":"6501","text":"

    Aime Card Reader Not Found

    This error occurs when an Aime card reader is not found. Make sure you enabled Aime card reader emulation in segatools.ini if you don't have a physical reader connected:

    [aime]\nenable=1\n
    "},{"location":"errorcodes/sega/#6503","title":"6503","text":"

    Failed to read Aime card

    This error occurs when the Aime card cannot be read. Make sure your connection to the ALL.Net server is good (the network icon in the bottom corner is green).

    "},{"location":"errorcodes/sega/#8114","title":"8114","text":"

    ALL.Net System error (RTC)

    Make sure you're connected to an ALL.Net server for the first boot, or disable accounting by editing config_hook.json:

    {\n    \"allnet_accounting\": {\n        \"enable\": false\n    }\n}\n

    Tip

    If you're copying into an existing config_hook.json, remove the outer braces and add a comma to the previous item, like so:

    {\n    \"emoney\": {\n        \"enable\": false\n    },// (1)!\n    \"allnet_accounting\": {\n        \"enable\": false\n    }\n}\n
    1. Notice the comma here.

    Tip

    If your game files does not include config_hook.json, it is OK to create a new file, then edit the launch script (usually start.bat) to tell the game about it:

    amdaemon.exe -f -c config_common.json config_server.json config_client.json config_hook.json\n
    "},{"location":"errorcodes/sega/#chunithm-error-codes","title":"CHUNITHM Error Codes","text":""},{"location":"errorcodes/sega/#3101","title":"3101","text":"

    An unexpected error has occurred with the main device

    This error occurs when the game fails to communicate with the controller. Check if your controller is connected properly and if ChuniIO DLLs are working.

    "},{"location":"errorcodes/sega/#3102","title":"3102","text":"

    Initialization failure with the main device

    This error occurs when the game fails to communicate with the controller. Check if your controller is connected properly and if IO DLLs are working.

    "},{"location":"errorcodes/sega/#3201-3202-3203-3204-3205-3206","title":"3201, 3202, 3203, 3204, 3205, 3206","text":"

    Cannot confirm the connection with the side device sensor 1/2/3/4/5/6

    This error occurs if the air sensors are not functional or blocked during system test. To resolve this, enter and exit Test mode by pressing the F1 key (or 1 on older segatools) then stay clear of your controller. If the error still happens, your air sensors may be faulty.

    "},{"location":"errorcodes/sega/#3300","title":"3300","text":"

    Duplicate servers in the same network

    If multiple CHUNITHM machines are on the same LAN network, only one of them can be the server (dip switch 1 ON). Set all other machines to dip switch 1 OFF:

    [gpio]\ndipsw1=0\n
    "},{"location":"errorcodes/sega/#3301","title":"3301","text":"

    Duplicate STANDARD in the same group

    If multiple CHUNITHM machines are on the same LAN network and cabinet group (A/B/C/D), one of them should set reference machine settings to STANDARD and the rest to FOLLOW THE STANDARD. Change this by going to Test menu -> Game Settings (4th option) -> Reference machine settings (2nd option).

    "},{"location":"errorcodes/sega/#3400","title":"3400","text":"

    Monitor Not Supported 120fps

    This error occurs if you're running the game in SP mode but the monitor is not 1920x1080@120Hz in 32-bit color mode. Adjust display settings and try again.

    "},{"location":"errorcodes/sega/#3401","title":"3401","text":"

    Machine Not Supported 120fps

    This error occurs if you're running the game in CVT mode at 120fps. Use SP mode (dip switch 3 OFF) to run the game in 120fps. In segatools.ini this would be:

    [gpio]\ndipsw3=0\n
    "},{"location":"errorcodes/sega/#amdaemon-error-codes","title":"AMDaemon Error Codes","text":""},{"location":"errorcodes/sega/#ampdgd1232a01ainit-errcode-4","title":"ampdGd1232a01aInit(). ErrCode -4","text":"

    This error occurs because of a VFD port number mismatch. Update segatools, or if you're using a real VFD, confirm that the VFD uses the same port as specified in config_common.json or config_sp.json (CHUNITHM) under emoney.display_port:

    \"emoney\" :\n{        \n    \"display_port\" : 2 // (1)!\n}\n
    1. This should match the COM port that your real VFD is connected to.
    "},{"location":"errorcodes/sega/#amappimageinit-errcode-5","title":"amAppImageInit(). ErrCode -5","text":"

    Path to the configured AMFS directory is too long. Ensure that the path is shorter than 16 characters (32 bytes).

    "},{"location":"errorcodes/sega/#regcreatekeyexw-errorcode-5","title":"RegCreateKeyExW(). ErrorCode -5","text":"

    This error occurs because the Windows registry cannot be written to as a normal user. Start the game as administrator once, or update segatools.

    "},{"location":"errorcodes/sega/#amsysfileinitex-errcode-5","title":"amSysFileInitEx(). ErrCode -5","text":"

    The AMFS folder is read only. Uncheck the read only property in File Explorer for the AMFS folder.

    "},{"location":"errorcodes/sega/#amgfetcherinit-errcode-1","title":"amGfetcherInit(). ErrCode -1","text":"

    ICF1 is missing in the configured AMFS directory. Get the correct ICF for your game (the game ID in the ICF must be correct).

    "},{"location":"extras/ascs/","title":"Notes on the Most Common ASCs and Vendors","text":"

    Before proceeding, please read:

    This section is a compilation of several of the most popular ASCs (arcade-style controllers) along with their respective vendors. Alongside this, this guide includes any aspects worth noting from usage over the years to help potential buyers make an educated purchase. For the most part, this section aims to inform buyers more of negatives and problems above all else, so expect the focus to be more negative as it's important to note all the potential problems one may come across with ownership over the years.

    Lastly, certain bits will repeat across controller categories. Please treat each controller's section as its own individual list of noteworthy elements.

    "},{"location":"extras/ascs/#iidx","title":"IIDX","text":""},{"location":"extras/ascs/#dj-dao-fp7-emp","title":"DJ DAO FP7 EMP","text":"

    This controller works really well, the spacing is accurate to the arcade between buttons and the turntable, obviously the turntable size is reduced which is often noticed as a minor nuisance to players that play both at home and on cabs.

    One minor aspect that's appreciated are the feet of the controller, which hold up really well on all kinds of surfaces with a stable grip, alongside the fairly hefty weight of the controller it's rather unlikely it's going to budge even a little bit during play.

    This controller is not without fault though, one of the first things to go is the turntable sticker in the middle, it starts to peel pretty much instantly for several people. While some people have kept it on despite the peeling, some have ended up scratching their pinky fairly significantly on it, so it's worth considering its removal or finding a better adhesive.

    The rubberized turntable grip itself is also susceptible to peeling, but it's far more reliable, perhaps miscare or improper installations from Dao lead to problems sooner, but for many it will last several years without a problem.

    Another concern is in only in having a START and EFFECT at the top of the controller. IIDX utilizes 3 buttons in menu navigation, namely START, EFFECT, and VEFX so the limited option is a bit troublesome. However, the solution to this problem DJ DAO utilizes is the ability for the EFFECT button to take multiple inputs as separate bindings. To simplify this further, enabling this option allows single, double, and triple taps of the EFFECT button in rapid succession to be 3 different bindings, alleviating the need for another button.

    Unfortunately though, this does add latency to the button, it also doesn't feel too natural, and many owners use more responsive custom firmware over DJ DAO's firmware that, at the time of writing, doesn't support this multiselect feature anyways, meaning the problem is still present. Many users choose to upgrade from the default USB board to a custom one (Arduino, Arcin) since the button lights can't be controlled via software and it's only polling at the default 250hz. Of course that also means you can't use the original board's PS2 connector anymore.

    One thing to note with the rubberized turntable grip, this controller gets gross. Dead skin will build up around the edges of the turntable itself on the metal and along the edges of the rubber grip. Regular cleaning is required.

    All in all, this controller has a few minor problems but is often regarded as the best balance between price and performance, as it matches arcade play at a great price.

    "},{"location":"extras/ascs/#phoenixwan","title":"PHOENIXWAN","text":"

    The Phoenixwan, sometimes jokingly referred to as the wang, or phoenixwang, is a rather odd controller. It fills a niche that wasn't needed (Gamo2's site was already selling 6 different IIDX controllers) but still manages to be the smallest full-sized beatmania controller offered on the site.

    As expected, the spacing between the buttons and turntable is arcade accurate, and the turntable is full sized unlike the FP7. Moreover, 4 buttons are present for menu navigation this time around.

    The controller is also very flashy, with a customizable turntable LED that emits 16 million different colors, turntable sensitivity adjustment, and an audio light mode that tries its best to \"dance with the music\" in fanciful fashion, it's a neat gimmick. Lastly for maximum portability, this controller is very light and even features wire storage at the bottom.

    However, with the flashy style this controller brings it unfortunately takes a few steps backwards in other areas. One of the most perplexing areas are the feet, there's no other way to put it, some surfaces it's great and some it sucks. With the reduced weight, this controller will slide across some surfaces with ease leading to a really unpleasant experience. It would not be surprising if with improper play that the controller could be moved very easily by accident.

    Onto one of the more defining features though, the turntable grip. Gamo2's site says it's made of liquid silicone and space aluminum. The grip is fantastic, it's incredibly grippy and a lot of fun to stop on a dime back and forth on your hand. But this material doesn't come without some faults unfortunately, it gets turned into a fingerprint magnet right out of the box, and some users have reported the grip wears off and becomes flat after heavy usage. One could also argue that making a controller trying to replicate an arcade experience (hence arcade-style) that it's a bit backwards to deviate away from the arcade experience as well, but that's more semantics than anything.

    Lastly and most critically, a fair batch of buyers reported PCB problems where the board seemed to flat out die after just a few months. Apparently a firmware update can be pushed to work around some issues, but there's not much that's definitive as a solution in regards to this issue at the time of writing.

    Overall, the Phoenixwan is probably the best option in terms of portability and style, it's a very flashy device and great to take over to a friend's for some fun. But, with it comes a heftier price tag that might not be worth it for people looking to simply enjoy the game. With some critical issues, this controller might just be style over substance.

    "},{"location":"extras/ascs/#yuancon-iidx","title":"YuanCon IIDX","text":"

    YuanCon's IIDX controller looks rather plain, doesn't it? But the controller works really well, the spacing is of course accurate to arcade, and the turntable is full size as well. Obviously, it features 4 buttons for menu navigation too, which is incredibly convenient.

    The cost is very reasonable too, by default it comes with dubious microswitches labeled \"Chinese\" on the site, it's important to note that if a buyer upgrades to Omron switches on the site, it's a bit cheaper than buying Omrons separately later down the line. The \"Chinese\" switches are definitely not recommended and feel bad.

    This controller oddly uses an acrylic turntable as well, while it's a nice attempt it's somewhat disappointing overall. At the very least, it's fairly easy to modify the turntable and place something more proper such as an EMP mat on it for a better experience. Just note that the screws are not countersunk around the center of the turntable.

    Some people may be dissatisfied that the turntable has no lights too, an obvious cost cutting decision.

    The default buttons are typical cheap Chinese ones, these risk occasionally getting stuck around the enclosure's corners but it's less common than Chinese buttons for use on other games such as Pop'n and some users don't end up with any problems at all. Depending on a buyer's level of tolerance they may find these buttons fine or desperately yearn for an upgrade.

    One big positive for many is the detachable USB cable, it uses just one USB port which is quite handy. This comes at some costs though. The biggest issue is the lack of PS2 support, the lights are also dimmer than Dao's offerings which utilize 2 USB ports.

    Yuan's IIDX attempt is solid, but it's not without fault. Regardless, just about any buyer would be more than satisfied playing and enjoying the game on this controller regardless of the few minor faults it has.

    "},{"location":"extras/ascs/#iidx-arcade-parts-to-consider","title":"IIDX Arcade Parts to Consider","text":"

    IIDX controllers have a lot of options to choose from and it can be daunting, especially if you've never played before. I'll try to cover springs, microswitches, and buttons to the best of my ability.

    I've also documented many of the parts that I talk about and where to buy them here

    • Buttons/Keys

      The most commonly used buttons are Sanwa, Gersung, and DJ DAO/Yuan Chinese buttons.

      I can't really speak for every arcade in Japan, but both in Japan and US almost all arcades use Sanwa buttons. The Samduck buttons are a Korean variant that can be found in Korean arcades, but are still superceded by Sanwa buttons. The DJ Dao/Yuancon buttons are cheap Chinese clones that feel less satisfying both in physical feedback and audio feedback. Some players find them servicable, but I ultimately recommend upgrading when possible. The travel distance is different on Dao buttons for example due to the inaccurate construction having a different height than official parts like Sanwa, so the feeling will be significantly different in using them.

    • Microswitches and Springs

      If you buy the keys sepearately it's worth noting what spring and microswitch setups they come with:

      • Sanwa keys come with 100g springs and 100g Omron switches.
      • Samduck keys come with 20g springs and 65g Gersung switches.
      • DJ DAO keys come with 40g springs and 20g Honeywell switches.

      There are also many other cheap Chinese variants that I won't bother listing because I insist you do not play on them. Please stick to Omron or Gersung microswitches for an enjoyable play experience! The Honeywell microswitches for example are an incredibly cheap feeling switch that often breaks easily.

      With this in mind, the most common switch and spring setups are 50g/20g, 50g/60g, and 50g/100g setups (microswitch listed first, then springs in this case). However, you will find arcades around the world using a myriad of setups.

      By default for a new or inexperienced player, I would recommend a 50g/60g setup as it's a safe setup that won't require frequent maintenance, has a nice weighted feeling that will help build stamina, and isn't too light for charts with heavy amounts of jacks. That said, it ultimately comes down to user preference, with lighter setups running the risk of more maintenance, but being easier on one's hands especially for dense charts, and heavier setups being more sturdy, but easily tiring out one's hands, 100g/100g for example however, is too extreme for the grand majority of players and simply exhausting and painful to play on.

      One thing worth noting is many tournaments in Japan have utilized a 25g/60g setup as well, with the heavy springs being beneficial for jacks, just as one example.

      Your springs will also naturally lose resistance over time, so if you played at an arcade with a heavily worn setup I'm sure you'll find it feels very different to your brand new home setup even if you have the same weight ratings.

      Experimentation is strongly recommended regardless as you become a more developed and experienced player. If you love the game, don't be afraid of traveling to try out different setups or dropping some more cash on parts to experiment.

    "},{"location":"extras/ascs/#sound-voltex","title":"Sound Voltex","text":""},{"location":"extras/ascs/#dj-dao-svse5","title":"DJ DAO SVSE5","text":"

    The SVSE5 is a pretty straightforward controller without much to worry about, the sizing is very compact while retaining proper arcade spacing between the knobs and buttons at a very reasonable price, most of the gripes with this controller will come based on what parts are used. It uses the same firmware/board as the SVRE9 and also lacks HID-controlled lights.

    Dao's SDVX buttons are especially prone to sticking and getting stuck under their holders, notably more than their IIDX counterparts. Thankfully, this problem can be alleviated by sanding down the corners of the buttons but they still obviously do not feel as nice as Sanwa buttons and it requires taking apart the controller, which while simple, is a minor inconvenience.

    The default encoders (listed as Knobs Structure on the site) are horrendous, there's no nice way to put it. Please avoid these at all costs if you wish to enjoy the game or upgrade to Copals ASAP. But, it's worth noting that paying the upgrade cost when buying your controller ($30 at the time of writing) is cheaper than buying a set of Copal encoders separately (around $60+).

    Dao's SVSE5 is honestly somewhat odd to write on solely because there's not much to say, it's about as standard as it gets. The SVSE5 functions well and when avoiding the default encoders buyers will end up with a controller that's able to be enjoyed just as well as any other with minimal problems.

    "},{"location":"extras/ascs/#yuancon-sdvx","title":"YuanCon SDVX","text":"

    YuanCon's SDVX controller has quickly become the most popular option for Sound Voltex players and is inarguably their best controller yet. The controller feels great in your hands thanks to its light weight and good sizing. Like the SVSE5, it matches arcade dimensions perfectly as well, so anyone can transfer their skills from home to the arcade 1 to 1. One other noteworthy convenience is the detachable USB cable, making transportation and storage a little more enjoyable.

    One of aspects people comment on a fair bit is the metal casing, after years of Dao's tacky glossy acrylic designs a lot of buyers have welcomed this addition with open arms. Yuan's SDVX controller is as durable and sturdy as any other out there.

    Yuan's stock SDVX buttons suffer the same problems as Dao's and are especially prone to sticking and getting stuck under their holders. While some people don't end up with any issues at all, others do, it's a mixed bag presumably based on luck on how the plastic mold came out. Thankfully, this problem can be alleviated by sanding down the corners of the buttons but they still obviously do not feel as nice as Sanwa buttons and it requires taking apart the controller, which while simple, is a minor inconvenience.

    The stock encoders on this controller are interesting to note too, they're a surprisingly decent option to use, they feel very smooth and function well during play, but it's worth noting not everyone likes how they feel. Of course they don't feel like the arcade experience, but they're more than suitable for enjoyment.

    Overall, YuanCon's SDVX is a very enticing option for many, it's a great controller with minimal issues. There's little negative outside of some minor gripes to say, and at this price range, buyers would be hard pressed to find a controller that's definitively superior.

    "},{"location":"extras/ascs/#dj-dao-svre9","title":"DJ DAO SVRE9","text":"

    The crown jewel for many Sound Voltex players, the SVRE9 is designed to match the dimensions of an arcade cab as best as possible, providing both maximum luxury and performance. This controller includes arcade knobs out of the box, offering no alternative and is no doubt a part of the heftier price tag.

    This controller is a monster, both in size and weight, it is probably one of the most inconvenient Sound Voltex controllers to transport but even still it's not honestly not that bad, make sure you have enough space to safely place the controller on any surface before playing. One positive about the greater size and weight is that there's almost no risk of it moving around when accidentally bumped.

    Dao uses a custom harness for the arcade knobs to connect with the encoders, it's an odd contraption but it works well enough. However, it is worth noting that the encoders themselves have a plastic shaft, if tightening the inner screws holding them in place make sure to not tighten them too much as the screws will end up actually drilling into the plastic and destroying the encoder beyond repair.

    The knobs unfortunately risk shipping damage wherein the knob will have a grinding feeling when being rotated, it's extremely unpleasant but thankfully solution is simple, it requires lubricating the inner parts of the knobs by taking apart a bit of the controller, a minor inconvenience.

    Dao's SDVX buttons are especially prone to sticking and getting stuck under their holders, notably more than their IIDX counterparts. Thankfully, this problem can be alleviated by sanding down the corners of the buttons but they still obviously do not feel as nice as Sanwa buttons and it requires taking apart the controller, which while simple, is a minor inconvenience. One could argue that in choosing to purchase a luxury product like this, it's questionable to skimp on button quality however.

    Another thing to note is that the default firmware registers itself as keyboard (buttons) and mouse (x/y for knob movement. This, the fact that it doesn't support HID-controlled lights and that it polls at 250hz is enough for many to replace it's internal control board with a custom one like the Arcin or Arduino.

    Overall, this controller is widely considered the \"best\" option solely based on the luxury factor alone. However, the cheaper options provide the same arcade-exact dimensions, parts, and experience. It's a fantastic controller, but not for those with tighter wallets as the vastly increased cost ultimately provides nothing different in terms of play experience.

    "},{"location":"extras/ascs/#sdvx-arcade-parts-to-consider","title":"SDVX Arcade Parts to Consider","text":"

    Sound Voltex controllers have a lot of options to choose from and it can be daunting, especially if you've never played before. I'll try to cover springs, microswitches, and encoders to the best of my ability.

    I've also documented many of the parts that I talk about and where to buy them here

    • Springs and Microswitches

      For springs and microswitches, most vendor options consist of 20g, 60g, and 100g springs. Alongside 25g, 50g, and 100g microswitches. Cabs around the world use a variety of setups but two of the most common setups are 20g springs with 100g microswitches, and 100g springs with 100g microswitches. Commonly referenced as 20g/100g and 100g/100g, though sometimes interchangably used as 100g/20g for example. (there's really no definitive order and people put the spring weight or switch weight first on a whim constantly.)

      There are also various manufacturers of these parts, arcades use Sanwa parts. Some Korean arcades use Gersung Samduck parts however, a good Korean-made alternative. There are also various Chinese parts of equally garbage quality. If you order a controller with the stock Chinese buttons, they are including the cheap Chinese springs. These are fine, it's only a spring after all! But for the microswitches, please never use Chinese microswitches, they are of garbage quality and make playing the game horrendously unfun, I am adamant you do not believe the lies of those who say otherwise.

      An incredibly light setup such as 20g/25g can result in an extremely dissatisfying feedback on button press, making it hard to get the feeling of actuation on button press. Not many people go for this setup.

      Lots of home users default to 50g/60g setups for their first time around, it's a nice balance until they become more comfortable with the game and begin to branch out a bit more and figure out their preferences.

      Furthermore, lots of Round1 arcade locations in the US use 20g spring 100g microswitch setups, so if you played at one of those, you probably felt this setting. Just keep in mind that as the springs/switches wear down the feeling will be a little different than a fresh set!

    • Encoders

      As for the encoders, they're the things that turn with the knob internally, they dictate the feeling of the rotation. The default encoders on most of the Dao controllers is the Alps 801 set, the Chinese default ones. These are beyond unplayable, with a clicky angle-snapping experience over a smooth twist. The grand majority of players opt for copal encoders, which are both incredibly smooth and sensitive. However, they are prone to breaking within about a year of moderate player.

      The YuanCon controllers use encoders that many feel are superior to copals both in feeling and durability, so they're a very worthwhile option as well.

      Lastly, the arcade encoders are extremely durable, reliable, and stiffer to turn than the other options, they're also more expensive as well.

      I've documented many of the parts and where to buy them here

    "},{"location":"extras/ascs/#popn-music","title":"Pop'n Music","text":""},{"location":"extras/ascs/#dj-dao-pop-asc","title":"DJ DAO POP ASC","text":"

    Gamo2's Pop'n offering is a controller that results in a project for a lot of players. While it is a playable experience, for many, it will be dissatisfying out of the box. However, with a bit of knowledge one can turn it into a fantastic controller.

    One of the biggest issues with Pop'n controllers are the buttons. The Chinese default buttons are simply unacceptable, these things stick like crazy and getting Samduck buttons, a Korean alternative, is considered almost mandatory for a lot of players. It is possible to sand down the stock Chinese Dao buttons or get lucky and only have a few with problems, but the odds are heavily stacked against the buyer's favor here. The primary problem here and why Sanwas are not offered are their extreme cost, at around $40 a button it's simply out of reach for many. At the very least, one nice addition is that by default the controller comes with Omron microswitches.

    Dao's controller design here also isn't the best, it's big and bulky which has its pros and cons depending on preferences, but unlike Gamo2's other options providing magnetic bottoms that are easy to remove, the Pop'n ASC has 20 screws to gain access to the internals. While buyers hopefully won't need to be digging inside all that often, it's still a tedious process.

    This controller is notably loud too, any form of play is going to generate substantial noise that will annoy others in your household. Pop'n is naturally a loud game, but many attempts can be made to alleviate some of the noise. Some people play with a towel over the controller which is called toweling, but in the more desperate cases some people have filled the internals to brim with cotton balls and other various materials.

    Many users choose to upgrade from the default USB board to a custom one (Arduino, Arcin) since the button lights can't be controlled via software and it's only polling at the default 250hz. Of course that also means you can't use the original board's PS2 connector anymore.

    The pricing on this controller is a bit rough for many, due to the size and weight the shipping charges can be a significant problem notably more than other game's options as well, at least US buyers benefit from free shipping when it's in stock at the US storehouse. This controller is a good option, but it requires a bit of time, work, and funds to be truly great.

    "},{"location":"extras/ascs/#yuancon-popn","title":"YuanCon Pop'n","text":"

    YuanCon's Pop'n controller arrived on the scene many years after Dao's controller and seemingly has managed to address some of the more notable difficulties of its competitor at an expected competitive price point and with a sleek design.

    Right away it should be noted that this controller is a significantly smaller size than the Dao while retaining the expected arcade spacing between buttons. It's also in a metal shell for added durability yet it has notably less weight than the Dao.

    One big positive for many is the detachable USB cable, it uses just one USB port which is quite handy. This comes at some costs though. The biggest issue is the lack of PS2 support, the lights are also dimmer than Dao's offerings which utilize 2 USB ports. Like it's competitor, it also doesn't seem to support HID-controlled button lights currently.

    One of the biggest issues with Pop'n controllers are the buttons. Yuan's stock Chinese buttons are notably better than Dao's, but Samduck buttons, a Korean alternative, are still preferred as the stock Chinese buttons don't always feel satisfying depending on preferences. Sanwa buttons are incredibly expensive at around $40 a pop for Pop'n controllers, so they're simply out of the question for many players.

    It's also worth noting that this controller comes with Chinese microswitches, which is a disappointment. Many players vastly prefer Omron microswitches over the Chinese clones.

    This controller is notably loud too, any form of play is going to generate substantial noise that will annoy others in your household. Pop'n is naturally a loud game and this applies to any controller, but many attempts can be made to alleviate some of the noise. Some people play with a towel over the controller which is called toweling, but in the more desperate cases some people have filled the internals to brim with cotton balls and other various materials.

    Yuan's Pop'n controller and its pricing is very good, perhaps due to the known dissatisfaction with Chinese Pop'n buttons, the controller is offered to come with no buttons and switches to save further on cost, making it an extremely enticing option for anyone that would rather buy their buttons and switches separately. Compared to alternatives, the pricing on this Pop'n ASC is best in class by a significant margin and it functions just as well as any other out there.

    "},{"location":"extras/ascs/#jubeat","title":"jubeat","text":""},{"location":"extras/ascs/#dj-dao-fb9","title":"DJ DAO FB9","text":"

    Gamo2's jubeat controller is a very fun contraption, buyers actually slide their own monitor under it in order to play. While neat, the pricing on this thing isn't for the faint of heart and unfortunately it doesn't come without some problems.

    Right away the need to buy your own monitor separately should be addressed, as it adds to the already high cost and the requirements for the monitor are somewhat specific as well, further complicating things.

    Dao's jubeat board is also laughably bad and skilled players notice difficulties with timing and accuracy issues compared to a cab, many FB9 owners actually swap out the board for a P4IO alternative that matches arcade play far better for a more accurate and enjoyable experience. The biggest difference is in how multiple buttons are pressed so the issue is less prominent and earlier stages in the game.

    The rubbers for the buttons are also less than desirable, with a gummy and dissatisfying feeling that's prompted many to switch. Zhousensor provides better replacements and official ones can be bought on sites like Yahoo Auctions Japan for a reasonable price.

    The controller can also slide around a bit on some less than desirable surfaces and with inexperienced play, creating a need to readjust it fairly often after songs.

    Dao's buttons also have a slight rainbow effect going on around the edges inside the plastic on certain screens, some people may find it moderately distracting to see.

    Gamo2's jubeat offering isn't terrible, but it's not great either. The controller is for many people essentially a project that has a far greater pricetag than the notable one their site already lists. Buyers can end up going a few hundred over the controller's individual price just to get the controller to feel like a truly enjoyable experience. With the problems listed above, it's hard to fully recommend it. But ultimately, options are scarce for jubeat players.

    "},{"location":"extras/ascs/#ddr","title":"DDR","text":""},{"location":"extras/ascs/#stepmaniax-stage","title":"StepManiaX Stage","text":"

    Dance games have the luxury of many pads functioning the same across a wide variety of games so while it's not specifically for DDR, this is simply the apex beyond buying your own arcade cab. At an extreme price tag, Kyle Ward spares no expense to create the ultimate controller. It's even hard to label this thing as a true ASC, as it's not styled like an arcade controller, it IS one!

    Getting into the important details though, a couple of changes on the latest model feature a new sleek design, superior FSR sensors that help to minimalize maintenance, and a fleet of sleek LED customization to really help a buyer individual their product and make it look and feel like theirs.

    There's really only two \"problems\" present. Firstly, the cost, it's a premium and then some. However, the experience is also the best of any option short of owning a cab or official arcade pads. Yet even then, there's a strong argument to be had that the newer technology present trumps some of the dated arcade parts and design.

    Second, the weight. While the pad is on wheels for easy movement the listed weight on the side is 220 pounds, getting the pad up and down staircases won't be fun.

    Purists might argue using the StepManiaX Stage on DDR isn't an authentic experience without brackets and no doubt the feeling is slightly different as well with the different sensors. But many prominent players prefer bracketless pads anyways and consider the design outdated. FSRs are undoubtedly superior technology as well.

    Overall, it's borderline impossible to find fault with the StepManiaX Stage beyond purist nitpicking, the controller is is simply the best. An entire separate page could be written on the difficulties DDR ASCs over the years have had with numerous disasters in regards of shipping challenges and historically bad controllers to the point that this is the best option short of building your own pad, buying a cab, or buying pads off a cab. Yet even then, the experience might be found superior here.

    "},{"location":"extras/ascs/#l-tek-pads-aka-polish-dance-pads","title":"L-Tek pads (AKA Polish Dance Pads)","text":"

    In terms of functionality, these pads are totally fine for beginner to intermediate play. Compared to the pads listed above they are obviously more \"home grown\" feeling, but they are perfectly functional and with regular maintenance will carry you well into the DDR 15/ITG 12 range before needing to think about modifications.

    Pads are availble in an array of configurations (4 panel or 5 panel variants are available) and prices, they have recently added a pad that has a bar pre installed and also offer it seperate if you would like to add it to an exsisting pad.

    In terms of pricing, they are relatively affordable coming in at 184.58USD+shipping.

    All in all, I'd say they are a totally acceptable pad for someone wanting to get back into the game or starting out and wanting something that will last with little upkeep.

    "},{"location":"extras/ascs/#vendors","title":"Vendors","text":""},{"location":"extras/ascs/#gamo2","title":"Gamo2","text":"
    • Website: https://www.gamo2.com
    • Social Media: https://twitter.com/gamotwo

    Gamo2 has been around for a rather long time and is still one of, if not the most popular choice for people looking to buy an ASC. Dao sells a wide variety of controllers and occasionally squeezes out a new one here and there.

    Buyers can expect their controllers to arrive in secure and snug packaging, shipping time varies but is often prompt. Alongside this, Gamo2's shipping is incredibly expensive, they only ship with EMS and charge a premium for it, it's not fun. However, Gamo2 provides a US storehouse for buyers in the US to enjoy free shipping and get packages sooner as well. Keep an eye on their social media as the US storehouse offerings only happen a few times a year and sell out quick!

    Some buyers have noted lengthy delays when buying from Gamo2 so it's not all good news, seemingly randomly as well without any communication too. It's worth checking if there's any Chinese holidays going on or coming up before making a purchase, as they will certainly add to the wait. Most people might be surprised how many of those holidays seem to arise at just the worst time.

    Gamo2's in-house buttons flat out suck across every controller, these buttons are cheapo Chinese knock offs of Sanwa buttons and it shows. Depending on a buyer's level of tolerance they may find these buttons fine or desperately yearn for an upgrade. Sanwa buttons may seem overpriced, but they are well worth the investment for those looking for arcade accuracy. Sound Voltex and Pop'n Music Dao buttons are especially prone to getting stuck within the controller.

    Gamo2 also provides Honeywell switches by default while charging additional for Omron switches. Sadly, Honeywell switches are laughably bad compared to Omron and the almost unanimous consensus is to not even bother with Honeywell switches, they are far too sensitive and break far too easily. Upgrading to Omron switches should be an immediate decision for anyone unable to buy them right away alongside their controller, or simply holding out until the upgrade can be included with the purchase, it's that extreme of a difference.

    Finally, Gamo2's tech support is good. Dao's English isn't the best, but he is very patient and understanding, willing to work with buyers on almost any issue or question they could have.

    "},{"location":"extras/ascs/#yuancon","title":"YuanCon","text":"
    • Website: https://yuancon.store
    • Social Media: https://twitter.com/yuancontop

    YuanCon has grown immensely in popularity in just a short amount of time, if Gamo2 is no longer on top, then look to YuanCon as they self-report they're currently ranked first in Chinese sales! YuanCon's approach so far has been fantastic communication and utilizing their Discord server and Twitter to get their name out there as much as possible, even partnering with prominent rhythm game players.

    Buyers can expect their controllers to arrive within a moderate timeframe and in fancy Yuan-branded packaging that's more than suitable. On top of this, the pricing is extremely competitive and shipping prices are more fair than Gamo2. With this however, comes a lack of availability. Controllers often go out of stock so it's important to keep up with when pre-orders and restocks are going up.

    Default Yuan buttons are the typical cheap Chinese buttons that are not ideal for play, some users report less trouble with the buttons than Dao's default buttons, but Sanwas are always preferable. Yuan thankfully doesn't even bother with Honeywell switches, only offering Omron microswitches instead, a welcomed decision.

    Perhaps due to inexperience or quality control issues, there has been a notable minority of people with issues that have to be acknowledged below.

    Shipping times have varied widely, the grand majority of buyers get their packages promptly within 1-2 weeks, but there have been reports of some extreme cases well over 4+ weeks. This situation however was met promptly with an official statement from Yuan and his team. However, at the time of writing, I am aware of someone that has been waiting for their controller to ship for over 3 months.

    Some controllers have also arrived damaged or with missing elements. One prominent example was a large number of broken panels prompting refunds and a manufacturing change.

    Also worth noting that again at the time of writing, YuanCon's RGB offerings literally have LEDs that brown out and their engineer \"does not want to add HID lighting.\" Both a comical and egregious negative.

    It's worth noting that despite these negatives, Yuan and his team have made great efforts to stay very communicative and ensure that nobody ends up with a faulty product they're dissatisfied with, as shown in the above links. YuanCon's support and communication is top notch, and the future remains promising. Even if there's a small risk of initial hassle through slow shipping or quality control, buyers will ultimately end up with a fully functioning product that they can be satisfied with one way or another.

    "},{"location":"extras/ascs/#steprevolution-stepmaniax","title":"StepRevolution (StepManiaX)","text":"
    • Website: https://shop.steprevolution.com/
    • Social Media: https://twitter.com/smxgame

    Premium pads, spare parts and full cabinets that are designed to either play StepmaniaX or have other games run on them are for sale, there is official support for setting up a normal computer for use with stepmania or if you have the right configuration you can use Pump it up simulators with the cabinet aswell, and Kyle Ward is always very helpful for anyone who has questions!

    Only downside is the pads/cabs sell out usually within minutes of them going on sale and the shipping time can be multiple months some times as they are done made to order. Buyers can expect their pads to arrive in secure pallet packaging and the few times things have arrived either damaged or non working, customer support has been excellent and issues are always resolved quickly.

    American based company and every person who has purchased a pad or cabinet has been nothing short of ecstatic with it, if you have the money and don't mind waiting, this is the best option on the market, in or out of the arcade!

    "},{"location":"extras/ascs/#l-tek","title":"L-Tek","text":"
    • Website: https://maty-taneczne.pl/
    • Social Media: https://www.facebook.com/maty-tanecznepl-106162192775436/

    Pads are good starting points and most customers who've purchased them have been happy with them. Shipping is usually reasonably quick (upto a month depending on where in the world you are).

    They offer a range of products, both 4-panel and 5-panel pads, acecssories (replacement panels, sensors, bar attachment) to suit most people's dance pad needs.

    I have heard of cases of panels cracking under heavy use, but every case of this (I can recall one) has been resolved quickly and at no extra cost to the customer who had the pad.

    If you're in the market for a dance pad, and don't want to spend SMX money or hunt down an old arcade cabinet, I'd say they're worth the money.

    "},{"location":"extras/asphyxia/","title":"How to setup Asphyxia CORE","text":"

    If this isn't your first time setting up Asphyxia, make sure to backup your savedata folder and place it somewhere safe.

    "},{"location":"extras/asphyxia/#what-is-asphyxia-core","title":"What is Asphyxia CORE?","text":"

    Asphyxia CORE is a local e-amuse emulator which includes score saving and customization. The software itself does not support any game out of the box. For this, you need plugins.

    "},{"location":"extras/asphyxia/#configuring-asphyxia","title":"Configuring Asphyxia","text":"

    First, grab the latest release here. In almost all cases, you will use the asphyxia-core-win-x64.zip. Next, open the .zip file and extract the plugins folder and asphyxia-core-x64.exe into the contents folder of your desired game. We will use SDVX EG for this example.

    Your contents folder should look like this then:

    For Asphyxia to run properly, you will need a plugin for each game you want to use it with.

    • Join our Discord server.
    • Look for your game's channel, then the pinned Resources post.
    • Download the plugin archive and open it.
    • It should contain a folder such as sdvx@asphyxia or iidx@asphyxia.
    • Put that folder in your Asphyxia plugins folder, typically contents\\plugins\\ and overwrite files if needed.

    Run asphyxia-core-x64.exe to start the server. It will automatically open a browser tab. This is your WebUI.

    "},{"location":"extras/asphyxia/#changing-service-url","title":"Changing Service URL","text":"

    Run spicecfg.exe, head over to the Options tab and look for EA Service URL. In there, you need to input what is displayed on the Asphyxia WebUI on the Dashboard at the right side.

    For me, it's localhost:8083 and should look like this:

    "},{"location":"extras/asphyxia/#setting-up-sdvx","title":"Setting up SDVX","text":"

    On the WebUI, click on SDVX on the left-hand bar and click on Import Assets. In here, paste the path of your contents folder.

    In my case, it's D:\\BEMANI\\SDVX\\guide\\KFC-2021083100\\contents. Make sure you're using the correct path as it won't work otherwise. When you've done that, click on Submit. After a few seconds, a pop-up should appear saying Imported successfully!

    Go to SDVX on the left-hand bar, then Profiles and click on the green Detail button on your preferred profile. Click on Setting on the top bar and try changing some customization settings at the bottom. If they are working, head over to Changing Service URL. If they appear broken, completely close Asphyxia and continue reading.

    Head to the contents folder of your game again. If you have inserted the correct path when Importing and everything worked without any errors, you will have a folder called webui. Copy this folder and paste it into plugins\\sdvx@asphyxia. Overwrite any files if prompted to. Now close then re-run asphyxia-core-x64.exe and everything should function as intended.

    "},{"location":"extras/asphyxia/#setting-up-iidx","title":"Setting up IIDX","text":"

    You have already done all the step required to have it working. Simply create a profile and it will be visible on the WebUI.

    You're all done! Enjoy your game!

    "},{"location":"extras/audio/","title":"What is WASAPI & ASIO?","text":"

    WASAPI and ASIO are audio systems that manage how your applications like games, music, and others interact with your audio hardware. Without these core systems you would not be able to hear anything. This is a basic explanation on what they are and will not go into detail on how they function. There are 3 types that I'll cover here with pros and cons for each one.

    I would personally recommend using WASAPI Shared as this has in most cases the highest chance of working and requires the least amount of work. You can enable it by using a patch.

    If you would like to use WASAPI Exclusive, you can read more about it here.

    "},{"location":"extras/audio/#wasapi-shared","title":"WASAPI Shared","text":"

    WASAPI Shared mode is the standard mode that Windows uses. This allows you to hear multiple audio sources at once and allows programs to capture audio with programs like OBS and Discord. While this is nice for using windows and playing most games, this has a negative side effect of increasing audio latency.

    Pros:

    • Multiple audio sources can be sent to one audio device.
    • Can capture audio using OBS or Discord.
    • Supports almost all audio hardware as this is the standard for Windows.
    • Easy to set up.

    Cons:

    • Higher Latency.
    • Poor/Hard to configure for low latency.
    • USB audio devices are not supported (DAC).
    "},{"location":"extras/audio/#wasapi-exclusive","title":"WASAPI Exclusive","text":"

    WASAPI Exclusive mode is a secondary mode which allows one program to take complete control over an audio device. This allows an application to do anything to your audio device including changing settings like change volume, sample rates, and buffer size. With this in mind, this also bypasses a lot of latency that is introduced with multiple applications playing their own audio.

    The main downside is that you can only hear one audio source (the program that has control). In this case for example, beatmaniaIIDX would take complete control and you would not be able to hear applications like Discord. You cannot capture audio while running this mode without special software.

    Pros:

    • Low Latency (Real Time Latency)
    • Supports almost all audio hardware as this is the standard for Windows.

    Cons:

    • Application controls the hardware.
    • Not easily configurable.
    • Can not capture audio with OBS or Discord (Can be done, but requires a lot of configuration and can introduce latency. Switching to WASAPI Shared mode is recommended for this use case).
    • USB audio devices are not supported (DAC).
    "},{"location":"extras/audio/#asio","title":"ASIO","text":"

    ASIO stands for Audio Stream Input/Output. This is an audio driver designed for Audio Interfaces on Windows that is very similar to WASAPI Exclusive.

    The biggest difference between ASIO and WASAPI Exclusive is software/hardware support and age. In order to use ASIO, both your hardware and the application you are using must support ASIO. For example, Sound Voltex supports ASIO natively but it does take a bit to set up compared to WASAPI Exclusive. ASIO also has higher configurability.

    Pros:

    • Low Latency (Real Time Latency)
    • Highly Configurable
    • Industry standard for musicians means tons of support documentation.

    Cons:

    • Limited Hardware Support
    • Application controls hardware.
    • Can not capture audio with OBS or Discord (Can be done, but requires a lot of configuration and can introduce latency. Switching to WASAPI Shared mode is recommended for this use case).
    • Requires a powerful CPU.
    "},{"location":"extras/hexguide/","title":"Manual DLL Hex Editing","text":"

    Before proceeding

    This guide should ONLY be used as a last resort if all other methods fail. It has a high chance of breaking your game, make backups.

    "},{"location":"extras/hexguide/#preamble","title":"Preamble","text":"

    We're going to patch Beatmania IIDX 25 CANNON BALLERS, however the process is similar for other BEMANI games.

    Here's what you'll need:

    • Your favorite hex editor, here we'll be using HxD.
    • A clean copy of your desired BEMANI game.
    • A backup of your original .dll before editing.
    "},{"location":"extras/hexguide/#getting-started","title":"Getting Started","text":"

    Decide on what hex edits you want to apply, you may find that information from the community or our Resources.

    It's time to open our hex editor. If you're using HxD, you'll be greeted with the screen below.

    Open your game's .dll file in the hex editor.

    For the grand majority of hex edits, this is the main game file, such as bm2dx.dll, soundvoltex.dll, etc..

    Pictured below, we've opened up bm2dx.dll inside HxD.

    Attention

    The edit we'll be applying is EXCLUSIVE to this version of the game and serves as an example.

    This means it will not work on any other version of the game, nor any other game! Hex edits modify specific memory addresses that only apply to very specific game versions.

    We'll be editing our game to Unlock All Songs and its edit is:

    • Offset: 0xB60B2
    • Original: 74 10
    • Modified: 90 90

    In HxD we're going to hit Ctrl+G to open the Goto window.

    From here, we'll input the offset B60B2 in the Offset section as shown below, and hit OK.

    Our cursor should be taken to the offset at the exact location you want to edit.

    As you can see, the numbers in front of the cursor are 74 and 10 which corresponds to what we need to replace.

    If there's a mismatch, it's likely the offset you've put in was wrong, so be sure to double check!

    Now all we need to do is select 74 10 and replace it with 90 90.

    You can do this by either manually typing 90 90 or by copy and pasting.

    It should now look as shown below.

    Lastly, simply save your file and repeat these steps for any other edits you want to apply!

    If at any point your game has issues due to your edits, restore your backup.

    "},{"location":"extras/parts/","title":"Arcade Part Documentation","text":"

    Before proceeding, please read:

    This section is a list of various arcade part manufacturers with part model numbers and misc documentation concerning said parts as needed, alongside links on where to purchase parts from the most trusted locations (not every link to purchase will be included, there's too many parts sellers, only ones I've personally found reliable are listed.)

    I'm not confident this will be all-encompassing of every part ever, but it will be sufficient for those purchasing arcade style controllers (ASCs) and those in need of maintenance for said controllers. I'm omitting things like 400g springs, or 10g microswitches because no one really uses these products for regular play, but they exist nonetheless!

    One last thing, if there's for example, multiple model numbers of say, 25g microswitches, you can assume they have different internals and thus provide different feedback. I'm not aware of anyone qualified and experienced enough to give exact logistics on how these parts may feel different, so I've omitted any details and will simply specify what the most common vendors provide alongside these variants.

    7/26/2020 IMPORTANT Notice:

    Rakuten has switched to separate services, namely Rakuten Ichiba and Rakuten Global Express, they have provided an FAQ here. Essentially, some vendors will continue to offer international shipping, but the proxy service now exists for those that do not. If Sanwa Denshi does not ship to your region, simply sign up for their proxy service, or another of your choosing that is willing to provide for you.

    Alongside this, Sanwa Denshi seemingly no longer provides the typical lamps in many of the old-model button types that has been custom for many years. Given I am unfamiliar with anyone currently using these new lamps in their controllers, at the time of writing, I will provide links to buttons with the lamp and lamp-less buttons. On some listings, they allow the option to select the LED voltage and on others, they do not.

    • Just for reference:
      • DJ DAO boards: 5V
      • YuanCon boards: 12V
      • Arcin: 5V (or 12V if you only hook up the negative side)

    So, if you're overly concerned as a new buyer, you can choose to buy lamps at a later date. I apologize for the inconvenience and current inability to provide more detailed information, and will be working to update this ASAP.

    Lastly, I have to remove IST Mall (Korean seller) from many of the listings at this time because their Sanwa options seemingly have now begun to use the new-style connectors that are not compatible with provided connectors from existing ASC vendors. I apologize for this inconvenience, but feel free to buy this new style if you understand JST connectors and can wire things up with basic electronics skills.

    "},{"location":"extras/parts/#iidx-buttons","title":"IIDX Buttons","text":""},{"location":"extras/parts/#sanwa","title":"Sanwa","text":"

    Rectangular Gameplay Keys

    • Both OBSA-45UK-W and OBSA-45UK-B come with 100N springs and 100g switches (Omron V-10-1A4).
    • OBSA-45UK-W (White keys)
      • Where to buy:
        • Sanwa Rakuten (Official JP Store) - With Lamp
        • Sanwa Rakuten (Official JP Store) - Lamp-less
        • Buyee (Rakuten Proxy) - Old Lamp Holder With Lamp
        • Buyee (Rakuten Proxy) - Old Lamp Holder Lamp-less
        • IST MALL (KR Seller)
    • OBSA-45UK-B (Black keys)
      • Where to buy:
        • Sanwa Rakuten (Official JP Store) - With Lamp
        • Sanwa Rakuten (Official JP Store) - Lamp-less
        • Buyee (Rakuten Proxy) - Old Lamp Holder With Lamp
        • Buyee (Rakuten Proxy) - Old Lamp Holder Lamp-less
        • IST MALL (KR Seller)

    Square Menu/Option Buttons

    • OBSA-30UK
      • Where to buy:
        • Sanwa Rakuten (Official JP Store - With Lamp)
        • Sanwa Rakuten (Official JP Store - Lamp-less)
    "},{"location":"extras/parts/#samduck","title":"Samduck","text":"

    Rectangular Gameplay Keys

    • CWB 405
      • Comes with Gersung switches (45g) and springs (20-30N)
      • Does not come with lights but compatible with Dao lamps and ISTMall lamps.
      • Can use the same switches and springs as Sanwa OBSA-45UK buttons.
      • Where to buy:
        • IST MALL (KR Seller)

    Square Menu/Option Buttons

    • CWB 406
      • Does not come with lights but compatible with Dao lamps and ISTMall lamps.
      • Where to buy:
        • IST MALL (KR Seller)

    "},{"location":"extras/parts/#sdvx-buttons","title":"SDVX Buttons","text":""},{"location":"extras/parts/#sanwa_1","title":"Sanwa","text":"

    Square BT Gameplay Buttons

    • Sanwa OBSA-60UK
      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • Buyee (Rakuten Proxy) - Old Lamp Holder With Lamp
        • Buyee (Rakuten Proxy) - Old Lamp Holder Without Lamp

    Rectangular FX Gameplay Buttons

    • OBSA-45UK-B (Black FX keys)
      • Where to buy:
        • Sanwa Rakuten (Official JP Store - With Lamp)
        • Sanwa Rakuten (Official JP Store - Lamp-less)
        • Buyee (Rakuten Proxy) - Old Lamp Holder With Lamp
        • Buyee (Rakuten Proxy) - Old Lamp Holder Lamp-less

    Start Button

    • OBSA-30UK
      • Where to buy:
        • Sanwa Rakuten (Official JP Store - With Lamp)
        • Sanwa Rakuten (Official JP Store - Lamp-less)
    "},{"location":"extras/parts/#samduck_1","title":"Samduck","text":"

    Rectangular FX Gameplay Buttons

    • CWB 405
      • Where to buy:
        • IST MALL (KR Seller)

    Start Button

    • CWB 406
      • Where to buy:
        • IST MALL (KR Seller)

    "},{"location":"extras/parts/#sdvx-encoders","title":"SDVX Encoders","text":""},{"location":"extras/parts/#options","title":"Options","text":"

    Copal Encoders

    • RES20D-50-201-1
      • Where to buy:
        • Octopart (Lists Multiple Sellers)
        • GAMO2 (Upgrade set from stock Chinese, CN seller)

    YuanCon's Encoders

    • Where to buy:
      • Tabobao (CN Seller)

    Sensatec Encoders (Arcade)

    • ELV-24Y36A-K (GAMO2 Arcade Encoders)
      • Where to buy:
        • Sensatec (JP Seller)
        • Metro Electric (JP Seller)
    • ELV-24M36A-K
      • Where to buy:
        • Sensatec (JP Seller)

    "},{"location":"extras/parts/#popn-buttons","title":"Pop'n Buttons","text":""},{"location":"extras/parts/#sanwa_2","title":"Sanwa","text":"

    Circular Dome Gameplay Buttons

    • OBSA-100UMQ
      • Comes with 200N springs and 200g Omron switches.
      • Where to buy:
        • Sanwa Rakuten (Official JP Store) - With Lamp
        • Sanwa Rakuten (Official JP Store) - Lamp-less
        • Buyee (Rakuten Proxy) - Old Lamp Holder With Lamp
        • Buyee (Rakuten Proxy) - Old Lamp Holder Lamp-less
    "},{"location":"extras/parts/#samduck_2","title":"Samduck","text":"

    Circular Dome Gameplay Buttons

    • CWB 401
      • IST Mall incorrectly claims to ship these with 40N springs and 45g Gersung switches, but in reality the springs are much, much heavier (suspected to be 200-300N springs). Recommended to separately purchase springs and switches.
      • Where to buy:
        • IST MALL (KR Seller)

    "},{"location":"extras/parts/#jubeat-rubbers","title":"Jubeat Rubbers","text":""},{"location":"extras/parts/#options_1","title":"Options","text":"

    ZhouSensor

    • Where to buy:
      • ZhouSensor Taobao Store(CN)

    "},{"location":"extras/parts/#microswitches","title":"Microswitches","text":""},{"location":"extras/parts/#omron","title":"Omron","text":"

    25g Microswitches

    - D2MV-01-1C2 (GAMO2 and YuanCon provided)\n    - Where to buy:\n        - [Digikey (US Seller)](https://www.digikey.com/product-detail/en/omron-electronics-inc-emc-div/D2MV-01-1C2/Z4707-ND/5236583)\n        - [Sanwa Rakuten (Official JP Store)](https://item.rakuten.co.jp/sanwadenshi/ilumb_222/)\n        - [IST MALL (KR Seller)](http://istmall.co.kr/us/goods/goods_view.php?goodsNo=1009992803)\n        - [Buyee (Rakuten Proxy)](https://buyee.jp/rakuten/detail/sanwadenshi%3A10000320)\n\n- VX-01-1C22\n    - Where to buy:\n        - [Digikey (US Seller)](https://www.digikey.com/product-detail/en/omron-electronics-inc-emc-div/VX-01-1C22/Z4644-ND/369961)\n        - [Mouser (US Seller)](https://www.mouser.com/ProductDetail/Omron-Electronics/VX-01-1C22?qs=1tDaWCEHQQ6vTHtQABSaag%3D%3D)\n

    50g Microswitches

    - D2MV-01-1C3 (GAMO2 provided)\n    - Where to buy:\n        - [Digikey (US Seller)](https://www.digikey.com/product-detail/en/omron-electronics-inc-emc-div/D2MV-01-1C3/Z4708-ND/5236584)\n        - [Sanwa Rakuten (Official JP Store)](https://item.rakuten.co.jp/sanwadenshi/ilumb_223/)\n        - [IST MALL (KR Seller)](http://istmall.co.kr/us/goods/goods_view.php?goodsNo=1009992804)\n        - [Buyee (Rakuten Proxy)](https://buyee.jp/rakuten/detail/sanwadenshi%3A10000321)\n- VX-01-1C23\n    - Where to buy:\n        - [Digikey (US Seller)](https://www.digikey.com/product-detail/en/omron-electronics-inc-emc-div/D2MV-01-1C3/Z4708-ND/5236584)\n        - [Mouser (US Seller)](https://www.mouser.com/ProductDetail/Omron-Electronics/D2MV-01-1C3?qs=HDDQUw%2F3Phqm1Y5wA%2Fdz9w%3D%3D)\n

    100g Microswitches

    - V-10-1A4 (Arcade default, GAMO2 provided)\n    - Where to buy:\n        - [Digikey (US Seller)](https://www.digikey.com/product-detail/en/omron-electronics-inc-emc-div/V-10-1A4/Z4588-ND/1828942)\n        - [IST MALL (KR Seller)](http://istmall.co.kr/us/goods/goods_view.php?goodsNo=1009992411)\n        - [Buyee (Rakuten Proxy)](https://buyee.jp/rakuten/detail/sanwadenshi%3A10000283)\n
    "},{"location":"extras/parts/#gersung","title":"Gersung","text":"

    60g Microswitches

    • GSM-V0303A06
      • Advertised as \"between 50g and 100g\".
      • Where to buy:
        • IST MALL (KR Seller)

    "},{"location":"extras/parts/#springs","title":"Springs","text":""},{"location":"extras/parts/#options_2","title":"Options","text":"

    20g Springs

    • OBSA-SP-20
      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • IST MALL (KR Seller)
        • Buyee (Rakuten Proxy)
    • IST Spring
      • Where to buy:
        • IST MALL (KR Seller)

    40g Springs

    • OBSA-SP-40
      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • IST MALL (KR Seller)
        • Buyee (Rakuten Proxy)

    50g Springs

    • OBSA-SP-50
      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • Buyee (Rakuten Proxy)

    60g Springs

    • OBSA-SP-60-K
      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • IST MALL (KR Seller)
        • Buyee (Rakuten Proxy)
    • IST Spring
      • Where to buy:
        • IST MALL (KR Seller)

    100g Springs

    • OBSA-SP-100

      • Where to buy:
        • Sanwa Rakuten (Official JP Store)
        • IST MALL (KR Seller)
    • IST Spring

      • Where to buy:
        • IST MALL (KR Seller)
    "},{"location":"extras/parts/#led-lamps","title":"LED Lamps","text":""},{"location":"extras/parts/#options_3","title":"Options","text":"

    ISTMall lamps

    - Where to buy:\n    - [IST MALL (KR Seller)](https://istmall.co.kr/us/goods/goods_view.php?goodsNo=1009992273)\n
    "},{"location":"extras/patchsp2x/","title":"Spice2x DLL Patching","text":"

    TWO-TORIAL Patcher

    URL: https://sp2x.two-torial.xyz GitHub Repo Supported Games Contributing

    Known spice2x patchers

    Compatibility

    This patching method only is for spice2x supported games.

    Please make sure you're using the latest release for spice2x as the feature is fairly new.

    Before proceeding

    It is highly recommended to use an unpatched DLL as your base!

    If you've already patched your game through other methods (web patching or hex editing), Please replace your game's DLL with the original.

    "},{"location":"extras/patchsp2x/#getting-started","title":"Getting Started","text":"

    The following guide works the same regardless of which spice2x compatible game you're using.

    In this case we will be using a clean SDVX installation as a reference, with the following folder structure.

    "},{"location":"extras/patchsp2x/#importing-patches-from-url","title":"Importing Patches from URL","text":"

    Open spicecfg.exe and head to the Patches tab.

    By default no patches will be available, we need to import some.

    • Click on Import from URL.
    • Paste your preferred patcher's URL.

    Note: Check the Resources page for a list of recommended patchers.

    • Click on Import.

    If patching fails, it most likely is because the URL you provided doesn't support your game's version.

    "},{"location":"extras/patchsp2x/#picking-patches","title":"Picking Patches","text":"

    Important

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone.

    After a successful import, your patches should now show up inside spice2x.

    A new Patches folder has also been created, containing a .json file with your available patches for offline use.

    Now you may pick and choose desired patches!

    For game-specific instructions, refer to their respective dedicated pages.

    "},{"location":"extras/patchsp2x/#auto-apply-overwrite-game-files","title":"Auto apply / Overwrite game files","text":"

    Auto apply (recommended)

    After picking your patches, it is strongly recommended to tick the Auto apply patches on game start box.

    Doing so will keep your game files intact until you start it, at which point your selected patches will apply. Upon closing the game your game's files will be restored.

    Overwrite game files

    You also have the option to Overwrite game files, which will permanently modify your game files.

    This is NOT recommended unless you have a good reason to do so. A backup of your original dll will be created, however it is recommended to make your own!

    "},{"location":"extras/patchweb/","title":"Website DLL Patching","text":"

    Known web patchers: Resources

    For BEMANI games consider Spice2x Patching

    This patching method is outdated for BEMANI games.

    However spice2x patching is still very new and might not support your game yet, in this case follow this guide.

    Before proceeding

    It is highly recommended to use an unpatched DLL as your base!

    If you've already patched your game through other methods (spice2x patching or hex editing), Please replace your game's DLL with the original.

    "},{"location":"extras/patchweb/#getting-started","title":"Getting started","text":"

    We'll be using mon's BemaniPatcher. Almost every other patcher is based off of this and functions exactly the same.

    If your game is recent, please check Resources and use another web patcher.

    Go to your chosen patcher's website, you'll get something similar to this:

    Click on any game you'd like the patches for. In this case, we'll use Beatmania IIDX 30 Resident.

    Here, either:

    • Drag and drop the .dll file the site prompts you to use.
    • OR click on Choose a file and select it that way.

    If you've used the correct file and the site is compatible, it will tell you.

    X of X patches matched (100%) means the patcher is compatible with your game. If this shows any less than 100%, DO NOT use it. Your .dll file might not be clean. Only proceed with a clean one.

    Please keep in mind that some patchers may not support the most recent versions of your game right away.

    Now, you can select the patches you'd like to apply.

    If you're unsure on what to do, refer to your specific game's guide as it might have more information there. Otherwise feel free to join our Discord server, the link is at the top of the home page, and ask the community!

    When you're done selecting patches, click on Save Patched File and your new .dll file will start downloading.

    Backup your original .dll file first!

    Now you may replace your data's .dll file with the patched one you just downloaded.

    Once you've done that, you're done. Enjoy!

    "},{"location":"extras/pollingrates/","title":"List of Touchscreen Monitors and their Polling Rates","text":"

    Before reading

    This section contains a few touchscreen monitors tested by community members over the years and their respective polling rates. Please note that a polling rate is NOT THE REFRESH RATE of a monitor, but is the critical factor in determining how responsive a touchscreen is and is unfortunately something every major retailer omits from their product listings due to lack of consumer awareness.

    At higher levels of gameplay, rapid button presses may fail to be acknowledged by touchscreen monitors with a low polling rate, making good scores impossible and creating a frustrating experience.

    Every BEMANI game with a touchscreen polls at 250hz, and some use an IR grid to achieve this. Thus, I am defining viable as 180hz or more, but I will include some monitors and manufacturer dates under this to help curious buyers be aware, as sometimes different manufacturer dates result in different polling rates and it's always good to document cruddy monitors to save people money.

    One thing to note is, this is not to say that monitors with low polling rates are unusable, they can still provide enjoyment and are often cheap enough to be a great option to see how far one may want to get into a certain touchscreen based game. But, the goal is to provide a potential buyer information to make an educated choice, and monitors with low polling rates will run the risk of needing to be replaced as higher levels of play, potentially causing frustration and wasted money.

    If you want to check your touch screen monitor's polling rate simply download Mouse Rate Checker and move your finger across the window at a reasonable pace, but not too fast!

    "},{"location":"extras/pollingrates/#dell-s2240t","title":"Dell S2240T","text":"
    • 2013 Manufacturing Date:
      • 200hz GREAT!
    • 2014 Manufacturing Date:
      • May: 200hz GREAT!
      • September: 180hz
    • 2015 Manufacturing Date:
      • March: 200hz GREAT!
      • September: 200hz GREAT!
    • Late 2016 Manufacturing Date:
      • 140hz AVOID
    • Early 2017 Manufacturing Date:
      • 180hz
    • Mid 2017 Manufacturing Date:
      • 140hz AVOID
    • February 2018 Manufacturing Date:
      • 180hz
    "},{"location":"extras/pollingrates/#dell-p2314t","title":"Dell P2314T","text":"
    • November 2015 Manufacturing Date:
      • 60hz DO NOT BUY!
    "},{"location":"extras/pollingrates/#dell-p2418ht","title":"Dell P2418HT","text":"
    • May 2018 Manufacturing Date:
      • 60hz DO NOT BUY!
    "},{"location":"extras/pollingrates/#iiyama-t2336msc","title":"Iiyama T2336MSC","text":"
    • Revision B1:
      • 180hz
    "},{"location":"extras/softether/","title":"Setting Up SoftEther VPN for Cabinet-to-Cabinet Play","text":""},{"location":"extras/softether/#what-is-softether-vpn","title":"What is SoftEther VPN?","text":"

    SoftEther VPN is a free tool we use to create Virtual Hubs and connect multiple machines to the same virtual network, allowing the ability to perform Cabinet-to-Cabinet link even when the machines are on physically different networks.

    "},{"location":"extras/softether/#configuring-softether-server","title":"Configuring SoftEther Server","text":"

    This part of the guide is for hosting a hub! If you only wish to connect to a hub, refer to Connecting to a SoftEther Hub.

    While this guide is mainly focused on setting up link-play for arcade games, theoretically this should also work with other PC games that supports link-playing over LAN.

    "},{"location":"extras/softether/#setting-up-the-server-and-creating-a-hub","title":"Setting up the Server, and Creating a Hub","text":"

    First, go to the SoftEther VPN Download Center. In the Select Component section, choose SoftEther VPN Server. Choose the Operating System and CPU based on your own machine, and grab the latest rtm build. This guide will be using Windows as an example, the layout for other OS might vary.

    Run the installer and choose to install SoftEther VPN Server. Press Next to finish the installation, and start the Server Manager.

    When running the Server Manager for the first time, you should be greeted with the window below. Click on the Connect button.

    If prompted to setup a root password, set a password that you will remember. If prompted with the Easy Setup wizard, click Close on the bottom right of the window.

    Click on Create a Virtual Hub on the window below.

    Give your hub a name, and set an admin password. In this example, we will use Two-Torial.

    If you wish to limit the maximum amount of sessions that can be connected to your hub at a time, you can enable Limit Max VPN Sessions. Most arcade games support up to 4-way link, so we will set the limit to 4 in this example.

    Your hub is now created! You should see the hub show up on your Virtual Hub list. Click on the hub to highlight it, and click Manage Virtual Hub.

    "},{"location":"extras/softether/#adding-users-to-your-virtual-hub","title":"Adding Users to your Virtual Hub","text":"

    You will need to add User Accounts into the Virtual Hub before anyone can connect. Click on Manage Users, then click New at the bottom left of the window.

    Set a Username and Password for the user account, then check the Set Security Policy box on the top right, and click Security Policy.

    Scroll down and find Unlimited Number of Broadcasts and Filter all IPv6 Packets, then enable the 2 options. Leave everything else as defaults and click OK.

    Click on OK, and your user account should be created. Click on Exit to go back to the Hub Management page.

    You can either create one user account and give everyone the same credentials to connect to your hub under the same user, or you can also create individual user accounts for all the players that wish to connect to your hub. I recommend creating an user account for each player so you can have an easier time to manage the hub if needed.

    "},{"location":"extras/softether/#configuring-securenat","title":"Configuring SecureNAT","text":"

    We will use the SecureNAT option to assign a custom subnet to each connected machines. Some games like Chunithm requires you to be on a specific subnet or cab-to-cab link will not work. Click on Virtual NAT and Virtual DHCP Server (SecureNAT), then enable SecureNAT, and click on SecureNAT Configuration.

    • In the SecureNAT Configration window, set the IP Address under Virtual Host Network Interface Settings to the subnet you wish to use. In this exmaple, we will be using 192.168.139.x as this is the subnet required by Chunithm for cab-to-cab play.
    • Under Virtual DHCP Server Settings, set the IP Address range you wish to distribute to the connected machines. We will use a suffix of 11 to 14 in this example.
    • IMPORTANT: LEAVE THE Options Applied to Clients SECTION BLANK!!! Once everything is set, click on OK and Exit.

    "},{"location":"extras/softether/#setting-a-dynamic-dns-for-your-softether-server","title":"Setting a Dynamic DNS for your SoftEther Server","text":"

    You can set a custom DDNS Hostname for your SoftEther Server to allow people to remember your Server Hostname more easily. You can also just leave the hostname as default if you wish.

    Click Dynamic DNS Setting on the bottom left.

    • Under Change the Dynamic DNS Hostname section, set your preferred hostname. In this example, we will use twotorial.
    • Click Set to Above Hostname when done, and click Exit.

    If a prompt shows up and ask if you want to regenerate a new Server Certificate, click on No.

    If done correctly, the bottom left of your Virtual Hub management window should show your updated Hostname.

    The server setup is done! User(s) should be able to connect to your hub now.

    "},{"location":"extras/softether/#connecting-to-a-softether-hub","title":"Connecting to a SoftEther Hub","text":""},{"location":"extras/softether/#setting-up-the-vpn-client","title":"Setting up the VPN Client","text":"

    If you already have a hub created / you have a hub ready to connect, keep reading.

    Go to the SoftEther VPN Download Center. In the Select Component section, choose SoftEther VPN Client. Choose the Operating System and CPU based on your own machine, and grab the latest rtm build. This guide will be using Windows as an example, the layout for other OS might vary.

    Run the installer and choose to install SoftEther VPN Client. Press Next to finish the installation, and start the VPN Client.

    In the VPN Client window, click on Add VPN Connection.

    If a prompt shows up saying that you need to create a Virtual Network Adapter first, click Yes.

    Leave the adapter name as default, and press OK. Wait for the creation process to finish.

    "},{"location":"extras/softether/#connecting-to-a-virtual-hub","title":"Connecting to a Virtual Hub","text":"

    After you have created a Virtual Network Adapter, you should be able to add a VPN Hub. Click on Add VPN Connection again.

    • Name the Hub whatever you prefer. In this example, we will use Twotorial.
    • In the Destination VPN Server section, input the server Hostname and port. The hostname should usually be [your_hostname].softether.net
    • If the Hostname is correct and the client is able to establish a connection, the Virtual Hub Name should auto-fill when you click on the dropdown box.

    If the Virtual Hub Name shows a blank list even after clicking the dropdown box multiple times, it usually means your client is unable to establish a connection. Double check if the hostname, and your hub config is correct.

    • Under User Authentication Setting, input your username and password.
    • If you are connecting to another person's hub, ask the person for your login credentials.

    • Under Advanced Setting of Communication, UNCHECK THE RECONNECTS AUTOMATICALLY AFTER DISCONNECTED BOX. If this option is enabled, your VPN Client will always try to reconnect to the hub when it is running, taking up a spot in the hub. Please do not do this, it's just annoying when you're AFK in someone's hub and hogging up a spot.
    • Click Advanced Settings....

    • In the Advanced Settings window, you can set the Number of TCP Connections you wish to use. The higher you set, the more connections will be used, resulting in a potentially better link-play experience especially for real-time PVP games like Wangan Midnight Maximum Tune or Initial D: The Arcade.

    If you set this to a very high value and your connection speed is unable to keep up with the requests, your connection quality may be negatively impacted. I recommend setting this to 8 for a good balance.

    • If you find yourself desyncing a lot when in game, you can also enable Use Data Compression to improve the connection stability.
    • Click on OK once everything is set.

    Double click on the VPN hub to connect. If it shows you your assigned IP address, congratulations! You are now connected to the Virtual Hub and is ready for some cab-to-cab action!

    "},{"location":"extras/softether/#tips","title":"Tips","text":"
    • If you need to fetch your assigned IP address because the notification window disappeared too fast or if you forgot your IP, you can do so with the ipconfig command in CMD.
    • The Virtual Adapter name will usually be Unknown adapter VPN - VPN Client.
    • If you already have your hub setup and want to share the config with other users, you can Export your VPN profile and send it to them. Right click on the VPN Hub you wish to share and click Export VPN Connection Setting....
    • If you wish to include your username and password in the exported config, click on No. If the hub you are connecting to have different accounts setup for individual users, click on Yes to remove all sensitive information from the config.
    "},{"location":"extras/streamaudio/","title":"Workarounds for exclusive audio","text":"

    Before reading

    This section describes various workarounds and tips for dealing with games that use exclusive mode audio.

    In the recent years, BEMANI games started using WASAPI exclusive mode and ASIO to output game audio. While these provide great benefit when it comes to audio latency perceived by the player, they present additional challenges when trying to use other audio applications at the same time (e.g. a Discord voice call) or when capturing game audio for recording and streaming. This page explains how you can work around these issues. Read on carefully, as there are many things that can go wrong when dealing with audio.

    Remember, don't stream or upload recordings to public places! Privately among friends only!

    "},{"location":"extras/streamaudio/#setting-up-audio","title":"Setting up audio","text":"

    There are advantages and disadvantages to each of the methods, so read carefully.

    "},{"location":"extras/streamaudio/#option-1-force-shared-audio","title":"Option 1 - force shared audio","text":"
    • Enables: audio device sharing (voice calls while playing), recording, streaming
    • Advantage: very easy to set up, as seen below.
    • Disadvantages: may add significant audio latency to your game, depending on the game and your hardware, to a point where it becomes unplayable.

    Sound Voltex

    • Enable Shared mode WASAPI patch.
    • If you run into any issues, change the audio playback device to output at 44.1khz and 16 bit.

    IIDX

    • For TDJ mode, ensure that the sound output device is set to WASAPI.
      • In SpiceTools, set -iidxsounddevice to wasapi.
    • Enable Force shared audio patch.
    • If you run into any issues, change the audio playback device to output at 44.1khz and 16 bit.
    • That's really all there is. If you use OBS or Discord to capture the game, you will not have any issues recording audio with this configuration.
    "},{"location":"extras/streamaudio/#option-2-stereo-mix","title":"Option 2 - Stereo Mix","text":"
    • Enables: recording, streaming
    • Does NOT enable: audio device sharing (voice calls while playing)
    • Advantages: nothing to set up, no added latency to audio playback
    • Disadvantages: only works with some audio cards (most Realtek devices should work), recorded audio may be delayed or off-sync

    Some sound cards have a thing called Stereo Mix, which presents itself as a recording device that mirrors everything that is being outputted from the sound card. Conveniently this can be captured even when a game has exclusive control of the audio device.

    Enabling stereo mix

    1. Ensure that you have the latest audio drivers.
      • For example, if you have a Realtek audio device, use a Realtek driver and not the generic Windows HD Audio driver.
    2. Go to Windows Sound device settings. In the Playback tab, make sure the default audio device is set to the sound card output (speakers or headphones).
    3. Go to Recording devices tab.
    4. Look for Stereo Mix. If you don't see it, right click and check \"Show Disabled Devices\" and try again.

    Capturing audio in OBS with Stereo Mix

    1. Add a new Audio Input Capture source.
    2. Set the device as Stereo Mix.
    3. You can now capture audio.
    4. You'll probably want to set to \"Monitor Off\" so you don't get duplicated audio.
    "},{"location":"extras/streamaudio/#option-3-audio-splitter-cable-lo-tech-method","title":"Option 3 - audio splitter cable (lo-tech method)","text":"
    • Enables: recording, streaming
    • Does NOT enable: audio device sharing (voice calls while playing)
    • Advantages: easy one-time set up, no added latency to audio playback
    • Disadvantages: costs money, recorded audio may be delayed or off-sync, audio may become quieter

    Equipment

    1. Buy an audio splitter cable, and a headphone extension cable.
    2. Split the audio coming out of your computer into two: one into speakers/headphones, another into the extension cable, which then goes into the \"line in\" port of your PC.

    Capturing audio in OBS

    • Add \"Line In\" as an audio input source.
    "},{"location":"extras/streamaudio/#option-4-flexasio","title":"Option 4 - FlexASIO","text":"
    • Enables: audio device sharing (voice calls while playing), recording, streaming
    • Advantages: one-time set up, does not affect other audio configuration
    • Disadvantages: not as flexible as Voicemeeter when it comes to recording, adds a small latency

    FlexASIO is a virtual ASIO service that can redirect output to various backends, including shared mode WASAPI.

    FlexASIO set up

    1. Install FlexASIO
    2. Create a FlexASIO.toml configuration file in your user folder (C:\\Users\\Your Name)
    3. Insert these lines inside your configuration file:

      backend = \"Windows WASAPI\"\nbufferSizeSamples = 386\nchannels = 2\nwasapiExclusiveMode = false\n\n[output]\nsuggestedLatencySeconds = 0.0\n

    Try to lower bufferSizeSamples for minimal latency - recommended value is 128. If you hear audio crackling, increase bufferSizeSamples.

    Sound Voltex

    • Disable Shared mode WASAPI patch. You want the game to output in exclusive mode for lower overall latency.

    IIDX

    • For TDJ mode, ensure that the sound output device is set to WASAPI.
      • In SpiceTools, set -iidxsounddevice to wasapi.
    • Disable Force shared audio patch. You want the game to output in exclusive mode for lower overall latency.

    SpiceTools set up to use ASIO

    1. Under the options tab, make sure that IIDX Sound Output Device is set to default.
    2. Directly below it is an option called IIDX ASIO Driver. Type FlexASIO into it.

    Taiko no Tatsujin Nijiiro

    1. Disable wasapi_shared in config.toml.
    2. Enable asio in config.toml.
    3. Set asio_driver to FlexASIO.
    • To capture audio, you can capture desktop audio as you normally would in OBS.
    "},{"location":"extras/streamaudio/#option-5-voicemeeter","title":"Option 5 - Voicemeeter","text":"
    • Enables: audio device sharing (voice calls while playing), recording, streaming
    • Advantages: highly configurable, adds very little latency
    • Disadvantages: can be a challenge to set up, difficult to troubleshoot when things go wrong, need to run Voicemeeter every time

    Voicemeeter is free virtual audio mixer for Windows. It allows you to \"mux\" audio input streams into audio output streams; here, we take advantage of this application to redirect the game audio so that you enable audio capture & simultaneously enable other audio streams like voice calls.

    Initial Voicemeeter set up

    1. Download Voicemeeter Potato.
      • Potato comes with all three versions - regular Voicemeeter, Banana, and Potato.
      • Regular Voicemeeter is not good enough if you are following this guide. Banana is good enough if you want to mux two audio sources (say, game audio and Discord). Potato is recommended if you want to stream to Discord via OBS using instructions in the next section.
    2. Install and REBOOT YOUR COMPUTER when prompted.
    3. Launch Voicemeeter Banana or Potato, whichever one you prefer.
    4. On the right hand side, you will see flashing red text that says \"Select Main Output Device (A1). Look immediately to the left, click on A1 with a down arrow, and choose your output device. Typically you want the one that starts with \"WDM:\", but if your audio device supports it, \"ASIO:\" option will provide lower latency.
    5. In Windows sound settings, set your default audio playback device to Voicemeeter Input (and not Voicemeeter AUX Input!)

    Discord or other voice applications

    • Configure the output device to Voicemeeter AUX Input.

    Sound Voltex

    • Disable Shared mode WASAPI patch. You want the game to output in exclusive mode for lower overall latency.

    IIDX

    • Disable Force shared audio patch. You want the game to output in exclusive mode for lower overall latency.
    • For TDJ mode, ensure that the sound output device is set to WASAPI.
      • In SpiceTools, set -iidxsounddevice to wasapi.
    • (Optionally, you can output the game audio using SpiceTools -audiobackend asio and outputting to Voicemeeter ASIO instead of doing it over WASAPI, but probably provides negligible benefit to latency)

    At this point, you may want to look up various tutorials on YouTube to learn the basics of Voicemeeter. It may be daunting at first, but once you understand the concepts, it can be a very powerful tool. Plus, you can go beyond what I demonstrate below and instead do more complicated things on your own!

    Muxing with Voicemeeter

    1. Launch the game.
    2. In Voicemeeter, you'll notice that the VU meter under Voicemeeter VAIO is showing that it is receiving game audio. You'll want to ensure \"A1\" box is green so that you route the game audio to your main output device, so you can hear the game in your ears.
    3. (Similarly, audio from the voice chat would come through Voicemeeter AUX column.)
    4. At this point, you are able to hear both the game & listen to voice chat - success!

    Capturing audio in OBS with Voicemeeter

    1. Now, how do you capture this audio for recording? The basic idea is to route game audio to Voicemeeter's virtual output device, and capturing that output device in OBS.
    2. In the Voicemeeter VAIO column, click on B1 to make it turn green. This connects game audio to B1 channel, which is Voicemeeter Output virtual audio device.
    3. In OBS, create a new Audio Input Capture source.
    4. Double click on the new source and select VoiceMeeter Output (VB-Audio VoiceMeeter VAIO) from the drop-down.
    5. Click on the gear icon on the audio source, click on Advanced Audio Properties. In the \"Audio Monitoring\" column, set it to Monitor Off. This way, you can avoid double audio in your headphones when recording.
      • (Note that if you want to stream to Discord, you'll be doing something else instead; see the steps below.)
    6. You are done. You should see the game audio come through to OBS.
    "},{"location":"extras/streamaudio/#streaming-to-discord","title":"Streaming to Discord","text":"

    Important

    To reiterate, do NOT stream in public places! Privately among friends only!

    If you followed Option 1 (force shared mode audio), as previously mentioned, all you need is to capture the game window and stream to Discord.

    If you followed other options, a bit more work is involved to stream both video and audio at the same time. One method is to capture audio and video in OBS, and screen sharing OBS to Discord. Follow these instructions:

    "},{"location":"extras/streamaudio/#setting-up-virtual-audio-monitor-in-obs","title":"Setting up Virtual Audio Monitor in OBS","text":"

    We are going to make OBS capture audio and redirect the result to a virtual monitor device. In other words, OBS will be \"outputting\" audio to a fake speaker. Since it's still outputting audio, Discord is able to capture it, but you can avoid duplicated game audio this way.

    Option 1 - Using Virtual Audio Cable

    1. Download and install Virtual Audio Cable.
    2. Go to OBS Settings, Audio, Advanced, Monitoring Device - set to CABLE Input.
    3. Go to Edit, Advanced Audio Properties. For any audio channels you want to stream, turn on monitor to \"Monitor and Output\".

    Option 2 - Using Voicemeeter Potato

    1. We are going to make use of an unused virtual input device which is only available in Potato. In Banana this feature is not present.
    2. Go to OBS Settings, Audio, Advanced, Monitoring Device - set to VoiceMeeter VAIO3 Input.
    3. Go to Edit, Advanced Audio Properties. For any audio channels you want to stream, turn on monitor to \"Monitor and Output\".
    4. In VoiceMeeter Potato, prevent VAIO3 output so that you don't hear the OBS monitor audio in your ears. You can do this by disabling A1, B1, and so on in the VAIO3 column.
    "},{"location":"extras/streamaudio/#streaming-obs-windowed-preview-to-discord","title":"Streaming OBS Windowed Preview to Discord","text":"
    1. Add the game window capture as a scene, as you normally would in OBS.
    2. Right click on OBS stage and click on Windows Projector (Preview).
    3. Resize the new window as needed.
    4. Use Discord to screen share this Windowed Projector.
    5. You're done! The screen share should include both the OBS scene and the audio.
    "},{"location":"extras/streamaudio/#troubleshooting","title":"Troubleshooting","text":"

    General

    • Game is too quiet!
      • IIDX in TDJ mode is especially quiet. Try LDJ mode if you don't have a way to amplify things.

    Voicemeeter

    • Use the right version - Banana or Potato is recommended. Regular Voicemeeter lacks features so you can't follow the steps in this guide.
    • If you hear crackling, or if you feel the latency is too high, you'll need to adjust the buffer size. This is highly dependent on your set up; it's recommended that you search \"how to fix crackling audio voicemeeter\" or \"how to reduce latency in voicemeeter\" and you'll get lots of helpful guides.

    Discord

    • If Discord fails to capture audio, go to Discord settings, Voice & Video, and enable \"Use an experimental method to capture audio from applications\". This should already be checked by default.
    "},{"location":"games/beatstreamfinal/problems/","title":"BeatStream \u30a2\u30cb\u30e0\u30c8\u30e9\u30a4\u30f4","text":""},{"location":"games/beatstreamfinal/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 6 (ADE-704A)

    Based on an AMD Embedded R Series SoC.

    CPU: Intel Celeron B810

    GPU: AMD Radeon E4690

    OS: Windows 7 Embedded

    "},{"location":"games/beatstreamfinal/problems/#my-game-doesnt-boot-after-following-the-guide","title":"My Game Doesn't Boot After Following the Guide!","text":"

    The most common problem present here is if you do not have an E:/ drive. To resolve this issue, you must modify your game with the E:/drive fix patch.

    "},{"location":"games/beatstreamfinal/problems/#my-touchscreen-monitor-isnt-working","title":"My Touchscreen Monitor Isn't Working","text":"

    Try adding the -wintouch parameter to your .bat file, if that doesn't work, check the log and make sure it works with windows. SpiceTools at this point works with the grand majority of touchscreen monitors but no doubt some outliers are out there!

    "},{"location":"games/beatstreamfinal/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/beatstreamfinal/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/beatstreamfinal/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/beatstreamfinal/setup/","title":"BeatStream \u30a2\u30cb\u30e0\u30c8\u30e9\u30a4\u30f4","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/beatstreamfinal/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done,, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/beatstreamfinal/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/beatstreamfinal/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/beatstreamfinal/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/beatstreamfinal/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    You're all done! If you have a touchscreen monitor make sure it's plugged in, it should work automatically, if it doesn't check out the advertised Common Problems/Tips section at the link below.

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/chunithmluminous/c2c/","title":"Setting Up Chunithm for Cabinet-to-Cabinet Play (Multiplayer) over the Internet","text":"

    You are most likely to have success with Multiplayer when all users are using the SAME data and options, from the same sources. Verify that each person can run the game normally before attempting to network them together.

    • Chunithm expects the cabinets to be using specific IP addresses, 192.168.139.11/12/13/14
    • To achieve this over the internet, we can use SoftEther VPN. Refer to the Setting Up SoftEther VPN Guide for more information.
    "},{"location":"games/chunithmluminous/c2c/#configuring-segatoolsini-game-assignments","title":"Configuring segatools.ini & Game Assignments","text":"

    segatools.ini

    [netnev]\nenable=1\naddrSuffix= last 2 digits of your SoftEther IP\n\n[keychip]\nenable=1\nsubnet=192.168.139.0\nid=(Everyone needs a seperate keychip. If you play on a remote network, chances are you already have your own keychip. If not, you can use the example keychips below.)\n;example keychips: A61E-01D02321145 ; A61E-01A30831145 ; A61E-01E38091145 ; A61E-01E46241145\n\n[system]\ndipsw1=1\n;This has changed since Luminous. Previously if you wish to perform cab-to-cab link, you need to set this to 1 on the Server machine, and 0 on all other client machines.\n;This change is no longer needed, just keep this set to 1 on all machines.\n

    GAME ASSIGNMENTS

    • After saving your segatools.ini, launch the game and go into the Service Menu > and go to GAME ASSIGNMENTS.

    • Enable CABINET-TO-CABINET PLAY, and make sure all machine are on the same group (Group A for example).

    • Set one machine to STANDARD, and all other machines to FOLLOW THE STANDARD .

    Exit the Service Menu and load into Attract Mode. If the game passes the Group Check then chances are you're good to go! You can now login to a credit and open a cab-to-cab link request to check if the connection is working properly!

    "},{"location":"games/chunithmluminous/c2c/#how-to-link","title":"How to Link?","text":"

    If you're new to Chunithm and have never tried link-play before and you have no idea how, keep reading.

    • Login to a credit.

    • If you're hosting a cab-to-cab session, choose a song first, then scroll to the far left and press Confirm. The cab-to-cab request is now open.

    • If you're connecting, navigate to the \"Cabinet-to-Cabinet Play\" tab and wait for other players to create a session.

    If you are able to see each other's session, congrats! You can now enjoy some cab-to-cab chain action!

    "},{"location":"games/chunithmluminous/c2c/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmluminous/controllers/","title":"CHUNITHM LUMINOUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    segatools, by default, only accepts keyboard input and does not recognize any controllers. However, it can be configured with IO DLLs to add support for controllers.

    The controller you plan on using should also be provided with these IO DLLs. If unsure, check the support section for your controller, or contact the vendor directly. Alternate options for the most common controllers are listed below.

    These IO DLLs should be copied to your game's App\\bin\\ folder and referenced in segatools.ini under the [chuniio] section.

    If you have a single DLL, uncomment the path= line by removing the leading semicolon (;), then add your DLL's file name after the =:

    [chuniio]\n; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.\n; (will use chu2to3 engine internally)\n;(1)!\npath=controller.dll\n
    1. Note that there is no leading semicolon.

    If you have two DLLs, ending in _x86.dll and _x64.dll (or _chusan.dll and _amdaemon.dll), uncomment the path32= and path64= lines by removing the leading semicolon (;), then add your DLLs after the =:

    [chuniio]\n; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.\n; x86 chuniio to path32, x64 to path64. Both are necessary.\n;(1)!\npath32=controller_x86.dll\npath64=controller_x64.dll\n
    1. Note that there is no leading semicolon.
    "},{"location":"games/chunithmluminous/controllers/#keyboard","title":"Keyboard","text":"

    Keyboard is the default input method, and while not recommended for playing the game, it is useful for testing purposes.

    The default layout uses SDFGHJKL for slider input, and Space Bar for the AIRs.

    If you wish to change the default keybinds, an explanation on how to set these is included above the [io3] section in your segatools.ini.

    "},{"location":"games/chunithmluminous/controllers/#brokenithm","title":"Brokenithm","text":"

    Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom half of the screen as the ground slider, and sliding into the upper half activates the air sensors.

    "},{"location":"games/chunithmluminous/controllers/#android","title":"Android","text":"

    Warning

    Your computer and your Android device must be on the same local network.

    • Download the latest version of Brokenithm-Android and install it on your Android device.
    • Download the latest version of Brokenithm-Android-Server and extract only brokenithm_server.exe to your App\\bin\\ folder.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run brokenithm_server.exe. A command prompt window should open, saying that it is waiting for a device on port 52468.
    • Open the Brokenithm app on your Android device. Enter your computer's IP address in the Address box on the top right, then tap Start.
    • Run the game as normal.
    Getting your computer's IP address

    Open Settings -> Network and Internet and select Properties. Scroll down to the bottom and check the address under the IPv4 address field:

    That is your computer's IP address.

    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted brokenithm_server.exe to App\\bin\\ as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    Improving latency

    You can improve latency by running Brokenithm with your Android device tethered to your computer. However, this requires a little extra setup:

    • Connect your Android device to your computer with a USB cable.
    • If you haven't enabled Developer options on your device, do it by navigating to the \"About\" page in your phone's settings, then tap \"Build number\" seven times. This varies by device, so if unsure, look up the instructions for your specific one.
    • Navigate to Developer options and enable USB debugging.
    • On your computer, download and extract Android SDK Platform Tools to your App\\bin\\ folder.
    • Navigate to the App\\bin\\platform-tools folder in File Explorer, click on the address bar, type cmd, and hit Enter to open a command prompt.
    • In the command prompt, type the following command:
    adb reverse tcp:52468 tcp:52468\n
    • Start brokenithm_server.exe.
    • On your Android device, open Brokenithm, and change the address to 0.0.0.0.
      • If the text box to the left of the \"SETTINGS\" button say \"UDP\", tap on it once to switch to \"TCP\" mode.
    • Tap on \"START\", and you will now be connected via the USB cable.
    • You can now start the game as normal.

    The next time you play the game, you only need to run the adb reverse ... command again. To do this automatically when the game starts, add a line to the start.bat script before the brokenithm_server line:

    @echo off\n\npushd %~dp0\n\nstart /min platform-tools\\adb reverse tcp:52468 tcp:52468\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmluminous/controllers/#iosipados","title":"iOS/iPadOS","text":"
    • Install Brokenithm on your iOS/iPadOS device by joining the Brokenithm TestFlight (iOS 18 only).
      • If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different IPA with Sideloadly.
    • If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, uninstall it.
    • Install the non-Microsoft Store version of iTunes from the website.
    • Download the latest version of Brokenithm-Evolved-iOS server and extract it to App\\bin\\Brokenithm-Server.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run App\\bin\\Brokenithm-Server\\Brokenithm-Evolved-iOS.exe. A command prompt window should open, saying that it is waiting for a device.
    • On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a USB cable.
    • Run the game as normal.
    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted the server to App\\bin\\Brokenithm-Server as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min Brokenithm-Server\\Brokenithm-Evolved-iOS.exe\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmluminous/controllers/#tasoller","title":"TASOLLER","text":"

    Warning

    This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the controller after January 2022, the update should have already been applied.

    If you've purchased the controller before then, you will need to update the touch firmware by following the instructions on DJ-DAO's support page.

    • Install the custom Host and LED firmware to your controller. Instructions on how to do so is provided in the linked archive.
    • Pick one of these two TASOLLER IO DLLs to download and extract to your App\\bin folder. They should be functionally the same, but if one doesn't work, you can try the other:
      • chuniio-tasoller (download lib.zip)
      • chuniio-rs (download chusan.zip)
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_tasoller.dll;(1)!\npath64=chuniio_tasoller_x64.dll;(2)!\n
    1. Or chuniio_tasoller_v2_chusan.dll if you downloaded chuniio-rs.
    2. Or chuniio_tasoller_v2_amdaemon.dll if you downloaded chuniio-rs.

    3. Connect the controller to your computer, and then start the game.

    "},{"location":"games/chunithmluminous/controllers/#yubideck","title":"YubiDeck","text":"
    • Switch your YubiDeck to HID output mode. Instructions on how to do so are provided in the YubiDeck manual.
    • Download the latest version of YubiDeck IO DLLs and extract it to your App\\bin folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_yubideck_chusan.dll\npath64=chuniio_yubideck_amdaemon.dll\n
    • Optionally, reference the included AimeIO DLL to use the controller's built-in card reader:
    [aimeio]\npath=aimeio_yubideck.dll\n
    • Connect the controller to your computer, and then start the game.
    "},{"location":"games/chunithmluminous/controllers/#arcade-hardware-and-other-controllers","title":"Arcade hardware and other controllers","text":"

    If you're interested in using a cabinet slider and air sensors, or possibly even making your own controller, the Cons&Stuff website and Discord community is a great place to start!

    "},{"location":"games/chunithmluminous/setup/","title":"CHUNITHM LUMINOUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of CHUNITHM

    You'll want to create a new folder for the game and start from scratch. CHUNITHM DOES NOT like being extracted over old data!

    "},{"location":"games/chunithmluminous/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create another empty folder named AppData next to them. It should now look like below.

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/chunithmluminous/setup/#updating-the-base-game","title":"Updating the base game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    "},{"location":"games/chunithmluminous/setup/#installing-option-data","title":"Installing option data","text":"

    CHUNITHM content updates are distributed through option folders instead of patching the base game. They are named A???, with each ? being a number. Custom options distributed by the community might use letters instead, to distinguish them from official ones.

    Extract any options you've downloaded into the Option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    "},{"location":"games/chunithmluminous/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has a file named ICF1, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions.

    Showing file extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/chunithmluminous/setup/#installing-unprotected-executables","title":"Installing unprotected executables","text":"

    CHUNITHM executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of chusanApp.exe and amdaemon.exe for your game version. If these weren't provided with your data, join the Discord for assistance.

    Copy chusanApp.exe and amdaemon.exe to the bin folder of your game data. Agree to overwrite when asked.

    "},{"location":"games/chunithmluminous/setup/#patching-the-game","title":"Patching the game","text":"

    Go through the Web Patching guide to learn how to use a web patcher.

    There are many patches for CHUNITHM.

    We will only bring up the ones we think could be genuinely useful.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    Patch Recommendation Description Force shared audio mode Either Force the game to use shared mode audio output, letting you listen to other audio sources while the game is running at the cost of audio latency. Force 2 channel audio output Either Try enabling this patch if you don't get audio output at all. Disable song select timer Either Disables the song select timer. No encryption ON Disable encrypting network requests. Required if you plan to run a local server. No TLS ON Disable checking if the server is HTTPS or not. Required if you plan to run a local server. Bypass 1080p monitor check Either Disable checking if the monitor is 1080p when enabling 120FPS. Enable if you cannot set your monitor to 1080p. Bypass 120Hz monitor check Either Disable checking if the monitor is exactly 120Hz when enabling 120FPS. Enable if you cannot set your monitor to 120Hz."},{"location":"games/chunithmluminous/setup/#installing-segatools","title":"Installing segatools","text":"
    • Head over to segatools releases and download segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find chusan.zip and extract it to the App\\bin folder in your game data.

    You should now have a few more files inside the folder, as highlighted:

    "},{"location":"games/chunithmluminous/setup/#configuring-segatools","title":"Configuring segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App\\bin\\segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key.

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/chunithmluminous/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../Option\nappdata=../../AppData\n
    "},{"location":"games/chunithmluminous/setup/#system-formerly-gpio","title":"[system] (formerly [gpio])","text":"

    Warning

    As of 2024-08-20, the [gpio] section in segatools has been renamed to [system].

    • If you have a 120Hz monitor, set dipsw2 and dipsw3 to 0:
    [system]\ndipsw2=0\ndipsw3=0\n
    • If you have a 60Hz monitor, set dipsw2 and dipsw3 to 1:
    [system]\ndipsw2=1\ndipsw3=1\n
    "},{"location":"games/chunithmluminous/setup/#gfx","title":"[gfx]","text":"
    • Set windowed to 0 to run in fullscreen mode and 1 to run in windowed mode.
    • If you have multiple monitors and you're running in fullscreen mode (windowed=0), set monitor to the index of the monitor you want to run the game on.
    Getting the monitor index

    Navigate to Windows display settings. Each monitor should be assigned a number. The monitor index is that number minus one. For example, monitor 2 means monitor index 1.

    "},{"location":"games/chunithmluminous/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App\\bin\\DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/chunithmluminous/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/chunithmluminous/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/chunithmluminous/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/chunithmluminous/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App\\bin\\start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/chunithmluminous/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/chunithmluminous/setup/#game-assignments","title":"GAME ASSIGNMENTS","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    Start the game by running App\\bin\\start.bat. Let the game load until it reaches the screen below.

    Press your Test button (default F1) to enter the service menu. Use the Service button (default F2) to navigate the menu, and Test button to select an option.

    Navigate to \u30b2\u30fc\u30e0\u8a2d\u5b9a (GAME ASSIGNMENTS, the 4th option).

    Select \u30b0\u30eb\u30fc\u30d7\u5185\u57fa\u6e96\u6a5f\u8a2d\u5b9a (SET STANDARD IN GROUP, the second option) and toggle this setting to \u57fa\u6e96\u6a5f (STANDARD).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu.

    "},{"location":"games/chunithmluminous/setup/#close-setting","title":"CLOSE SETTING","text":"

    Navigate to \u9589\u5e97\u8a2d\u5b9a (CLOSE SETTING, the 10th option).

    Navigate to \u6642 (HOUR, the 2nd option) and use the Service button to toggle the setting until it says \u5168\u6642\u523b (ALL TIME).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu, then select \u7d42\u4e86 (also the last option) in the main menu to exit the service menu.

    "},{"location":"games/chunithmluminous/setup/#waiting-for-distribution-server","title":"Waiting for Distribution Server","text":"

    If you're stuck at the Waiting for Distribution Server screen below, close the game and relaunch.

    You're all done! The game should load up properly now.

    You can add coins using the Coin key (default F3) and card in by holding the Enter key.

    "},{"location":"games/chunithmluminous/setup/#further-configuration","title":"Further configuration","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmluminous/troubleshooting/","title":"CHUNITHM LUMINOUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/chunithmluminous/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things, the most common of which are:

    • amdaemon crashing in the background. Make sure that the config_*.json files have valid syntax, your ICF files are correct, and the OpenSSL fix is applied on Intel Core 10th Gen CPUs and newer.
    • Using the incorrect dipswitch settings for your refresh rate (e.g. dipsw3=0 on a 60Hz screen). Refer to the setup guide to fix it.
    • Enabling 120FPS on a monitor that is not exactly 120Hz or exactly 1080p. If you cannot set your monitor's refresh rate to 120Hz, apply the \"Bypass 120Hz monitor check\"/\"Bypass 1080p monitor check\" on a CHUNITHM web patcher (see Resources).
    Capturing logs from amdaemon for troubleshooting

    To assist with troubleshooting, a script can be used to capture logs from amdaemon. Create a file named amdaemontest.bat in App\\bin, then paste the code block below into the file.

    @echo off\ncls\necho Attempting to run AM Daemon ...\necho Window should close after 30 seconds\necho Log will be generated at amdaemontest.txt\ncall :sub >amdaemontest.txt\nexit /b\n\n:sub\nset OPENSSL_ia32cap=:~0x20000000\npushd %~dp0\nstart /b \"AM Daemon\" /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\nping 127.0.0.1 -n 31 > nul && taskkill /im amdaemon.exe\n

    Double-click it to run. The script should run for 30 seconds, and you will get a file named amdaemontest.txt in App\\bin, which you can send to help people troubleshoot your issue.

    "},{"location":"games/chunithmluminous/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot!","text":"

    CHUNITHM game files consist of thousands of small XML files, which Windows Defender takes a long time to scan through. Add your game folder to the Windows Defender exclusion list.

    Danger

    Doing this will prevent Windows Defender from scanning your game folder for viruses. Only do this if you trust the source of the data.

    "},{"location":"games/chunithmluminous/troubleshooting/#my-game-is-running-too-slowfast","title":"My game is running too slow/fast","text":"

    The game could be running under or over its required refresh rate.

    • Make sure V-Sync isn't disabled in your graphics settings (called \"Vertical sync\" in NVIDIA Control Panel and \"Wait for Vertical Refresh\" in AMD Control Panel.)
    • Make sure your monitor's refresh rate is set to 60Hz or 120Hz.

    It could also be that your computer's performance isn't good enough to keep a steady framerate.

    "},{"location":"games/chunithmluminous/troubleshooting/#my-game-is-stuttering","title":"My game is stuttering","text":"

    For NVIDIA users, create an override for chusanApp.exe in NVIDIA Control Panel and change \"Power management mode\" to \"Prefer maximum performance\".

    "},{"location":"games/chunithmluminous/troubleshooting/#my-game-crashes-when-i-tab-out-of-fullscreen","title":"My game crashes when I tab out of fullscreen!","text":"

    As the game is intended to run on arcade hardware, it doesn't like being minimized.

    One workaround for this is to use DXVK. Download the latest version from releases. This will be a dxvk-x.y.z.tar.gz file, which you can open using 7zip. Navigate to the x32 folder, and copy the d3d9.dll file to your game's App\\bin folder, agreeing to overwrite when asked.

    You should now be able to tab out of fullscreen without crashing the game.

    Warning

    The game will not ignore inputs when out of focus.

    This means any controller inputs will still be accepted, so try not to lean onto your slider whilst tabbed out!

    This also means that you can accidentally enter the service menu by hitting your Test key even if the game is minimised. If you were in the middle of a credit, your scores will be lost.

    "},{"location":"games/chunithmluminous/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    CHUNITHM uses WASAPI exclusive mode for audio to get better latency.

    You can apply the \"Shared Audio\" patch on a CHUNITHM web patcher (see Resources) to hear audio outside of the game at the cost of audio latency.

    "},{"location":"games/chunithmluminous/troubleshooting/#cabinet-to-cabinetc2c-fixes","title":"Cabinet-to-Cabinet(c2c) Fixes","text":"

    c2c can have many problems but you can fix most of them by applying the \"Patch for head-to-head play\" and disabling \"Set all timers to 999\" on a CHUNITHM web patcher (see Resources).

    If the above does not work then please ensure both machines have the exact same data and can communicate with each other if they cannot then you can try disabling firewalls or changing the c2c group.

    "},{"location":"games/chunithmnew/c2c/","title":"Setting Up Chunithm for Cabinet-to-Cabinet Play (Multiplayer) over the Internet","text":"

    You are most likely to have success with Multiplayer when all users are using the SAME data and options, from the same sources. Verify that each person can run the game normally before attempting to network them together.

    • Chunithm expects the cabinets to be using specific IP addresses, 192.168.139.11/12/13/14
    • To achieve this over the internet, we can use SoftEther VPN. Refer to the Setting Up SoftEther VPN Guide for more information.
    "},{"location":"games/chunithmnew/c2c/#configuring-segatoolsini-game-assignments","title":"Configuring segatools.ini & Game Assignments","text":"

    segatools.ini

    [netnev]\nenable=1\naddrSuffix= last 2 digits of your SoftEther IP\n\n[keychip]\nenable=1\nsubnet=192.168.139.0\nid=(Everyone needs a seperate keychip. If you play on a remote network, chances are you already have your own keychip. If not, you can use the example keychips below.)\n;example keychips: A61E-01D02321145 ; A61E-01A30831145 ; A61E-01E38091145 ; A61E-01E46241145\n\n[system]\ndipsw1=1\n;Set this to 1 on the Server machine, and 0 on all other client machines.\n;If your game gets stuck on \"Checking for Dist Server\", try setting this to 1 on all machines and continue following the steps.\n

    GAME ASSIGNMENTS

    • After saving your segatools.ini, launch the game and go into the Service Menu > and go to GAME ASSIGNMENTS.

    • Enable CABINET-TO-CABINET PLAY, and make sure all machine are on the same group (Group A for example).

    • Set one machine to STANDARD, and all other machines to FOLLOW THE STANDARD .

    Exit the Service Menu and load into Attract Mode. If the game passes the Group Check then chances are you're good to go! You can now login to a credit and open a cab-to-cab link request to check if the connection is working properly!

    "},{"location":"games/chunithmnew/c2c/#how-to-link","title":"How to Link?","text":"

    If you're new to Chunithm and have never tried link-play before and you have no idea how, keep reading.

    • Login to a credit.

    • If you're hosting a cab-to-cab session, choose a song first, then scroll to the far left and press Confirm. The cab-to-cab request is now open.

    • If you're connecting, navigate to the \"Cabinet-to-Cabinet Play\" tab and wait for other players to create a session.

    If you are able to see each other's session, congrats! You can now enjoy some cab-to-cab chain action!

    "},{"location":"games/chunithmnew/c2c/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmnew/controllers/","title":"CHUNITHM NEW","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    segatools, by default, only accepts keyboard input and does not recognize any controllers. However, it can be configured with IO DLLs to add support for controllers.

    The controller you plan on using should also be provided with these IO DLLs. If unsure, check the support section for your controller, or contact the vendor directly. Alternate options for the most common controllers are listed below.

    These IO DLLs should be copied to your game's App\\bin\\ folder and referenced in segatools.ini under the [chuniio] section.

    If you have a single DLL, uncomment the path= line by removing the leading semicolon (;), then add your DLL's file name after the =:

    [chuniio]\n; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.\n; (will use chu2to3 engine internally)\n;(1)!\npath=controller.dll\n
    1. Note that there is no leading semicolon.

    If you have two DLLs, ending in _x86.dll and _x64.dll (or _chusan.dll and _amdaemon.dll), uncomment the path32= and path64= lines by removing the leading semicolon (;), then add your DLLs after the =:

    [chuniio]\n; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.\n; x86 chuniio to path32, x64 to path64. Both are necessary.\n;(1)!\npath32=controller_x86.dll\npath64=controller_x64.dll\n
    1. Note that there is no leading semicolon.
    "},{"location":"games/chunithmnew/controllers/#keyboard","title":"Keyboard","text":"

    Keyboard is the default input method, and while not recommended for playing the game, it is useful for testing purposes.

    The default layout uses SDFGHJKL for slider input, and Space Bar for the AIRs.

    If you wish to change the default keybinds, an explanation on how to set these is included above the [io3] section in your segatools.ini.

    "},{"location":"games/chunithmnew/controllers/#brokenithm","title":"Brokenithm","text":"

    Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom half of the screen as the ground slider, and sliding into the upper half activates the air sensors.

    "},{"location":"games/chunithmnew/controllers/#android","title":"Android","text":"

    Warning

    Your computer and your Android device must be on the same local network.

    • Download the latest version of Brokenithm-Android and install it on your Android device.
    • Download the latest version of Brokenithm-Android-Server and extract only brokenithm_server.exe to your App\\bin\\ folder.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run brokenithm_server.exe. A command prompt window should open, saying that it is waiting for a device on port 52468.
    • Open the Brokenithm app on your Android device. Enter your computer's IP address in the Address box on the top right, then tap Start.
    • Run the game as normal.
    Getting your computer's IP address

    Open Settings -> Network and Internet and select Properties. Scroll down to the bottom and check the address under the IPv4 address field:

    That is your computer's IP address.

    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted brokenithm_server.exe to App\\bin\\ as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    Improving latency

    You can improve latency by running Brokenithm with your Android device tethered to your computer. However, this requires a little extra setup:

    • Connect your Android device to your computer with a USB cable.
    • If you haven't enabled Developer options on your device, do it by navigating to the \"About\" page in your phone's settings, then tap \"Build number\" seven times. This varies by device, so if unsure, look up the instructions for your specific one.
    • Navigate to Developer options and enable USB debugging.
    • On your computer, download and extract Android SDK Platform Tools to your App\\bin\\ folder.
    • Navigate to the App\\bin\\platform-tools folder in File Explorer, click on the address bar, type cmd, and hit Enter to open a command prompt.
    • In the command prompt, type the following command:
    adb reverse tcp:52468 tcp:52468\n
    • Start brokenithm_server.exe.
    • On your Android device, open Brokenithm, and change the address to 0.0.0.0.
      • If the text box to the left of the \"SETTINGS\" button say \"UDP\", tap on it once to switch to \"TCP\" mode.
    • Tap on \"START\", and you will now be connected via the USB cable.
    • You can now start the game as normal.

    The next time you play the game, you only need to run the adb reverse ... command again. To do this automatically when the game starts, add a line to the start.bat script before the brokenithm_server line:

    @echo off\n\npushd %~dp0\n\nstart /min platform-tools\\adb reverse tcp:52468 tcp:52468\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmnew/controllers/#iosipados","title":"iOS/iPadOS","text":"
    • Install Brokenithm on your iOS/iPadOS device by joining the Brokenithm TestFlight (iOS 18 only).
      • If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different IPA with Sideloadly.
    • If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, uninstall it.
    • Install the non-Microsoft Store version of iTunes from the website.
    • Download the latest version of Brokenithm-Evolved-iOS server and extract it to App\\bin\\Brokenithm-Server.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run App\\bin\\Brokenithm-Server\\Brokenithm-Evolved-iOS.exe. A command prompt window should open, saying that it is waiting for a device.
    • On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a USB cable.
    • Run the game as normal.
    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted the server to App\\bin\\Brokenithm-Server as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min Brokenithm-Server\\Brokenithm-Evolved-iOS.exe\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmnew/controllers/#tasoller","title":"TASOLLER","text":"

    Warning

    This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the controller after January 2022, the update should have already been applied.

    If you've purchased the controller before then, you will need to update the touch firmware by following the instructions on DJ-DAO's support page.

    • Install the custom Host and LED firmware to your controller. Instructions on how to do so is provided in the linked archive.
    • Pick one of these two TASOLLER IO DLLs to download and extract to your App\\bin folder. They should be functionally the same, but if one doesn't work, you can try the other:
      • chuniio-tasoller (download lib.zip)
      • chuniio-rs (download chusan.zip)
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_tasoller.dll;(1)!\npath64=chuniio_tasoller_x64.dll;(2)!\n
    1. Or chuniio_tasoller_v2_chusan.dll if you downloaded chuniio-rs.
    2. Or chuniio_tasoller_v2_amdaemon.dll if you downloaded chuniio-rs.

    3. Connect the controller to your computer, and then start the game.

    "},{"location":"games/chunithmnew/controllers/#yubideck","title":"YubiDeck","text":"
    • Switch your YubiDeck to HID output mode. Instructions on how to do so are provided in the YubiDeck manual.
    • Download the latest version of YubiDeck IO DLLs and extract it to your App\\bin folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_yubideck_chusan.dll\npath64=chuniio_yubideck_amdaemon.dll\n
    • Optionally, reference the included AimeIO DLL to use the controller's built-in card reader:
    [aimeio]\npath=aimeio_yubideck.dll\n
    • Connect the controller to your computer, and then start the game.
    "},{"location":"games/chunithmnew/controllers/#arcade-hardware-and-other-controllers","title":"Arcade hardware and other controllers","text":"

    If you're interested in using a cabinet slider and air sensors, or possibly even making your own controller, the Cons&Stuff website and Discord community is a great place to start!

    "},{"location":"games/chunithmnew/setup/","title":"CHUNITHM NEW","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of CHUNITHM

    You'll want to create a new folder for the game and start from scratch. CHUNITHM DOES NOT like being extracted over old data!

    "},{"location":"games/chunithmnew/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create another empty folder named AppData next to them. It should now look like below.

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/chunithmnew/setup/#updating-the-base-game","title":"Updating the base game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    "},{"location":"games/chunithmnew/setup/#installing-option-data","title":"Installing option data","text":"

    CHUNITHM content updates are distributed through option folders instead of patching the base game. They are named A???, with each ? being a number. Custom options distributed by the community might use letters instead, to distinguish them from official ones.

    Extract any options you've downloaded into the Option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    "},{"location":"games/chunithmnew/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has a file named ICF1, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions.

    Showing file extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/chunithmnew/setup/#installing-unprotected-executables","title":"Installing unprotected executables","text":"

    CHUNITHM executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of chusanApp.exe and amdaemon.exe for your game version. If these weren't provided with your data, join the Discord for assistance.

    Copy chusanApp.exe and amdaemon.exe to the bin folder of your game data. Agree to overwrite when asked.

    "},{"location":"games/chunithmnew/setup/#patching-the-game","title":"Patching the game","text":"

    Go through the Web Patching guide to learn how to use a web patcher.

    There are many patches for CHUNITHM.

    We will only bring up the ones we think could be genuinely useful.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    Patch Recommendation Description Force shared audio mode Either Force the game to use shared mode audio output, letting you listen to other audio sources while the game is running at the cost of audio latency. Force 2 channel audio output Either Try enabling this patch if you don't get audio output at all. Disable song select timer Either Disables the song select timer. No encryption ON Disable encrypting network requests. Required if you plan to run a local server. No TLS ON Disable checking if the server is HTTPS or not. Required if you plan to run a local server. Bypass 1080p monitor check Either Disable checking if the monitor is 1080p when enabling 120FPS. Enable if you cannot set your monitor to 1080p. Bypass 120Hz monitor check Either Disable checking if the monitor is exactly 120Hz when enabling 120FPS. Enable if you cannot set your monitor to 120Hz."},{"location":"games/chunithmnew/setup/#installing-segatools","title":"Installing segatools","text":"
    • Head over to segatools releases and download segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find chusan.zip and extract it to the App\\bin folder in your game data.

    You should now have a few more files inside the folder, as highlighted:

    "},{"location":"games/chunithmnew/setup/#configuring-segatools","title":"Configuring segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App\\bin\\segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key.

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/chunithmnew/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../Option\nappdata=../../AppData\n
    "},{"location":"games/chunithmnew/setup/#system-formerly-gpio","title":"[system] (formerly [gpio])","text":"

    Warning

    As of 2024-08-20, the [gpio] section in segatools has been renamed to [system].

    • If you have a 120Hz monitor, set dipsw2 and dipsw3 to 0:
    [system]\ndipsw2=0\ndipsw3=0\n
    • If you have a 60Hz monitor, set dipsw2 and dipsw3 to 1:
    [system]\ndipsw2=1\ndipsw3=1\n
    "},{"location":"games/chunithmnew/setup/#gfx","title":"[gfx]","text":"
    • Set windowed to 0 to run in fullscreen mode and 1 to run in windowed mode.
    • If you have multiple monitors and you're running in fullscreen mode (windowed=0), set monitor to the index of the monitor you want to run the game on.
    Getting the monitor index

    Navigate to Windows display settings. Each monitor should be assigned a number. The monitor index is that number minus one. For example, monitor 2 means monitor index 1.

    "},{"location":"games/chunithmnew/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App\\bin\\DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/chunithmnew/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/chunithmnew/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/chunithmnew/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/chunithmnew/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App\\bin\\start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/chunithmnew/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/chunithmnew/setup/#game-assignments","title":"GAME ASSIGNMENTS","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    Start the game by running App\\bin\\start.bat. Let the game load until it reaches the screen below.

    Press your Test button (default F1) to enter the service menu. Use the Service button (default F2) to navigate the menu, and Test button to select an option.

    Navigate to \u30b2\u30fc\u30e0\u8a2d\u5b9a (GAME ASSIGNMENTS, the 4th option).

    Select \u30b0\u30eb\u30fc\u30d7\u5185\u57fa\u6e96\u6a5f\u8a2d\u5b9a (SET STANDARD IN GROUP, the second option) and toggle this setting to \u57fa\u6e96\u6a5f (STANDARD).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu.

    "},{"location":"games/chunithmnew/setup/#close-setting","title":"CLOSE SETTING","text":"

    Navigate to \u9589\u5e97\u8a2d\u5b9a (CLOSE SETTING, the 10th option).

    Navigate to \u6642 (HOUR, the 2nd option) and use the Service button to toggle the setting until it says \u5168\u6642\u523b (ALL TIME).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu, then select \u7d42\u4e86 (also the last option) in the main menu to exit the service menu.

    "},{"location":"games/chunithmnew/setup/#waiting-for-distribution-server","title":"Waiting for Distribution Server","text":"

    If you're stuck at the Waiting for Distribution Server screen below, close the game and relaunch.

    You're all done! The game should load up properly now.

    You can add coins using the Coin key (default F3) and card in by holding the Enter key.

    "},{"location":"games/chunithmnew/setup/#further-configuration","title":"Further configuration","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmnew/troubleshooting/","title":"CHUNITHM NEW","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/chunithmnew/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things, the most common of which are:

    • amdaemon crashing in the background. Make sure that the config_*.json files have valid syntax, your ICF files are correct, and the OpenSSL fix is applied on Intel Core 10th Gen CPUs and newer.
    • Using the incorrect dipswitch settings for your refresh rate (e.g. dipsw3=0 on a 60Hz screen). Refer to the setup guide to fix it.
    • Enabling 120FPS on a monitor that is not exactly 120Hz or exactly 1080p. If you cannot set your monitor's refresh rate to 120Hz, apply the \"Bypass 120Hz monitor check\"/\"Bypass 1080p monitor check\" on a CHUNITHM web patcher (see Resources).
    Capturing logs from amdaemon for troubleshooting

    To assist with troubleshooting, a script can be used to capture logs from amdaemon. Create a file named amdaemontest.bat in App\\bin, then paste the code block below into the file.

    @echo off\ncls\necho Attempting to run AM Daemon ...\necho Window should close after 30 seconds\necho Log will be generated at amdaemontest.txt\ncall :sub >amdaemontest.txt\nexit /b\n\n:sub\nset OPENSSL_ia32cap=:~0x20000000\npushd %~dp0\nstart /b \"AM Daemon\" /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\nping 127.0.0.1 -n 31 > nul && taskkill /im amdaemon.exe\n

    Double-click it to run. The script should run for 30 seconds, and you will get a file named amdaemontest.txt in App\\bin, which you can send to help people troubleshoot your issue.

    "},{"location":"games/chunithmnew/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot!","text":"

    CHUNITHM game files consist of thousands of small XML files, which Windows Defender takes a long time to scan through. Add your game folder to the Windows Defender exclusion list.

    Danger

    Doing this will prevent Windows Defender from scanning your game folder for viruses. Only do this if you trust the source of the data.

    "},{"location":"games/chunithmnew/troubleshooting/#my-game-is-running-too-slowfast","title":"My game is running too slow/fast","text":"

    The game could be running under or over its required refresh rate.

    • Make sure V-Sync isn't disabled in your graphics settings (called \"Vertical sync\" in NVIDIA Control Panel and \"Wait for Vertical Refresh\" in AMD Control Panel.)
    • Make sure your monitor's refresh rate is set to 60Hz or 120Hz.

    It could also be that your computer's performance isn't good enough to keep a steady framerate.

    "},{"location":"games/chunithmnew/troubleshooting/#my-game-is-stuttering","title":"My game is stuttering","text":"

    For NVIDIA users, create an override for chusanApp.exe in NVIDIA Control Panel and change \"Power management mode\" to \"Prefer maximum performance\".

    "},{"location":"games/chunithmnew/troubleshooting/#my-game-crashes-when-i-tab-out-of-fullscreen","title":"My game crashes when I tab out of fullscreen!","text":"

    As the game is intended to run on arcade hardware, it doesn't like being minimized.

    One workaround for this is to use DXVK. Download the latest version from releases. This will be a dxvk-x.y.z.tar.gz file, which you can open using 7zip. Navigate to the x32 folder, and copy the d3d9.dll file to your game's App\\bin folder, agreeing to overwrite when asked.

    You should now be able to tab out of fullscreen without crashing the game.

    Warning

    The game will not ignore inputs when out of focus.

    This means any controller inputs will still be accepted, so try not to lean onto your slider whilst tabbed out!

    This also means that you can accidentally enter the service menu by hitting your Test key even if the game is minimised. If you were in the middle of a credit, your scores will be lost.

    "},{"location":"games/chunithmnew/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    CHUNITHM uses WASAPI exclusive mode for audio to get better latency.

    You can apply the \"Shared Audio\" patch on a CHUNITHM web patcher (see Resources) to hear audio outside of the game at the cost of audio latency.

    "},{"location":"games/chunithmnew/troubleshooting/#cabinet-to-cabinetc2c-fixes","title":"Cabinet-to-Cabinet(c2c) Fixes","text":"

    c2c can have many problems but you can fix most of them by applying the \"Patch for head-to-head play\" and disabling \"Set all timers to 999\" on a CHUNITHM web patcher (see Resources).

    If the above does not work then please ensure both machines have the exact same data and can communicate with each other if they cannot then you can try disabling firewalls or changing the c2c group.

    "},{"location":"games/chunithmnewplus/c2c/","title":"Setting Up Chunithm for Cabinet-to-Cabinet Play (Multiplayer) over the Internet","text":"

    You are most likely to have success with Multiplayer when all users are using the SAME data and options, from the same sources. Verify that each person can run the game normally before attempting to network them together.

    • Chunithm expects the cabinets to be using specific IP addresses, 192.168.139.11/12/13/14
    • To achieve this over the internet, we can use SoftEther VPN. Refer to the Setting Up SoftEther VPN Guide for more information.
    "},{"location":"games/chunithmnewplus/c2c/#configuring-segatoolsini-game-assignments","title":"Configuring segatools.ini & Game Assignments","text":"

    segatools.ini

    [netnev]\nenable=1\naddrSuffix= last 2 digits of your SoftEther IP\n\n[keychip]\nenable=1\nsubnet=192.168.139.0\nid=(Everyone needs a seperate keychip. If you play on a remote network, chances are you already have your own keychip. If not, you can use the example keychips below.)\n;example keychips: A61E-01D02321145 ; A61E-01A30831145 ; A61E-01E38091145 ; A61E-01E46241145\n\n[system]\ndipsw1=1\n;Set this to 1 on the Server machine, and 0 on all other client machines.\n;If your game gets stuck on \"Checking for Dist Server\", try setting this to 1 on all machines and continue following the steps.\n

    GAME ASSIGNMENTS

    • After saving your segatools.ini, launch the game and go into the Service Menu > and go to GAME ASSIGNMENTS.

    • Enable CABINET-TO-CABINET PLAY, and make sure all machine are on the same group (Group A for example).

    • Set one machine to STANDARD, and all other machines to FOLLOW THE STANDARD .

    Exit the Service Menu and load into Attract Mode. If the game passes the Group Check then chances are you're good to go! You can now login to a credit and open a cab-to-cab link request to check if the connection is working properly!

    "},{"location":"games/chunithmnewplus/c2c/#how-to-link","title":"How to Link?","text":"

    If you're new to Chunithm and have never tried link-play before and you have no idea how, keep reading.

    • Login to a credit.

    • If you're hosting a cab-to-cab session, choose a song first, then scroll to the far left and press Confirm. The cab-to-cab request is now open.

    • If you're connecting, navigate to the \"Cabinet-to-Cabinet Play\" tab and wait for other players to create a session.

    If you are able to see each other's session, congrats! You can now enjoy some cab-to-cab chain action!

    "},{"location":"games/chunithmnewplus/c2c/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmnewplus/controllers/","title":"CHUNITHM NEW PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    segatools, by default, only accepts keyboard input and does not recognize any controllers. However, it can be configured with IO DLLs to add support for controllers.

    The controller you plan on using should also be provided with these IO DLLs. If unsure, check the support section for your controller, or contact the vendor directly. Alternate options for the most common controllers are listed below.

    These IO DLLs should be copied to your game's App\\bin\\ folder and referenced in segatools.ini under the [chuniio] section.

    If you have a single DLL, uncomment the path= line by removing the leading semicolon (;), then add your DLL's file name after the =:

    [chuniio]\n; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.\n; (will use chu2to3 engine internally)\n;(1)!\npath=controller.dll\n
    1. Note that there is no leading semicolon.

    If you have two DLLs, ending in _x86.dll and _x64.dll (or _chusan.dll and _amdaemon.dll), uncomment the path32= and path64= lines by removing the leading semicolon (;), then add your DLLs after the =:

    [chuniio]\n; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.\n; x86 chuniio to path32, x64 to path64. Both are necessary.\n;(1)!\npath32=controller_x86.dll\npath64=controller_x64.dll\n
    1. Note that there is no leading semicolon.
    "},{"location":"games/chunithmnewplus/controllers/#keyboard","title":"Keyboard","text":"

    Keyboard is the default input method, and while not recommended for playing the game, it is useful for testing purposes.

    The default layout uses SDFGHJKL for slider input, and Space Bar for the AIRs.

    If you wish to change the default keybinds, an explanation on how to set these is included above the [io3] section in your segatools.ini.

    "},{"location":"games/chunithmnewplus/controllers/#brokenithm","title":"Brokenithm","text":"

    Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom half of the screen as the ground slider, and sliding into the upper half activates the air sensors.

    "},{"location":"games/chunithmnewplus/controllers/#android","title":"Android","text":"

    Warning

    Your computer and your Android device must be on the same local network.

    • Download the latest version of Brokenithm-Android and install it on your Android device.
    • Download the latest version of Brokenithm-Android-Server and extract only brokenithm_server.exe to your App\\bin\\ folder.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run brokenithm_server.exe. A command prompt window should open, saying that it is waiting for a device on port 52468.
    • Open the Brokenithm app on your Android device. Enter your computer's IP address in the Address box on the top right, then tap Start.
    • Run the game as normal.
    Getting your computer's IP address

    Open Settings -> Network and Internet and select Properties. Scroll down to the bottom and check the address under the IPv4 address field:

    That is your computer's IP address.

    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted brokenithm_server.exe to App\\bin\\ as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    Improving latency

    You can improve latency by running Brokenithm with your Android device tethered to your computer. However, this requires a little extra setup:

    • Connect your Android device to your computer with a USB cable.
    • If you haven't enabled Developer options on your device, do it by navigating to the \"About\" page in your phone's settings, then tap \"Build number\" seven times. This varies by device, so if unsure, look up the instructions for your specific one.
    • Navigate to Developer options and enable USB debugging.
    • On your computer, download and extract Android SDK Platform Tools to your App\\bin\\ folder.
    • Navigate to the App\\bin\\platform-tools folder in File Explorer, click on the address bar, type cmd, and hit Enter to open a command prompt.
    • In the command prompt, type the following command:
    adb reverse tcp:52468 tcp:52468\n
    • Start brokenithm_server.exe.
    • On your Android device, open Brokenithm, and change the address to 0.0.0.0.
      • If the text box to the left of the \"SETTINGS\" button say \"UDP\", tap on it once to switch to \"TCP\" mode.
    • Tap on \"START\", and you will now be connected via the USB cable.
    • You can now start the game as normal.

    The next time you play the game, you only need to run the adb reverse ... command again. To do this automatically when the game starts, add a line to the start.bat script before the brokenithm_server line:

    @echo off\n\npushd %~dp0\n\nstart /min platform-tools\\adb reverse tcp:52468 tcp:52468\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmnewplus/controllers/#iosipados","title":"iOS/iPadOS","text":"
    • Install Brokenithm on your iOS/iPadOS device by joining the Brokenithm TestFlight (iOS 18 only).
      • If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different IPA with Sideloadly.
    • If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, uninstall it.
    • Install the non-Microsoft Store version of iTunes from the website.
    • Download the latest version of Brokenithm-Evolved-iOS server and extract it to App\\bin\\Brokenithm-Server.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run App\\bin\\Brokenithm-Server\\Brokenithm-Evolved-iOS.exe. A command prompt window should open, saying that it is waiting for a device.
    • On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a USB cable.
    • Run the game as normal.
    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted the server to App\\bin\\Brokenithm-Server as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min Brokenithm-Server\\Brokenithm-Evolved-iOS.exe\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmnewplus/controllers/#tasoller","title":"TASOLLER","text":"

    Warning

    This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the controller after January 2022, the update should have already been applied.

    If you've purchased the controller before then, you will need to update the touch firmware by following the instructions on DJ-DAO's support page.

    • Install the custom Host and LED firmware to your controller. Instructions on how to do so is provided in the linked archive.
    • Pick one of these two TASOLLER IO DLLs to download and extract to your App\\bin folder. They should be functionally the same, but if one doesn't work, you can try the other:
      • chuniio-tasoller (download lib.zip)
      • chuniio-rs (download chusan.zip)
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_tasoller.dll;(1)!\npath64=chuniio_tasoller_x64.dll;(2)!\n
    1. Or chuniio_tasoller_v2_chusan.dll if you downloaded chuniio-rs.
    2. Or chuniio_tasoller_v2_amdaemon.dll if you downloaded chuniio-rs.

    3. Connect the controller to your computer, and then start the game.

    "},{"location":"games/chunithmnewplus/controllers/#yubideck","title":"YubiDeck","text":"
    • Switch your YubiDeck to HID output mode. Instructions on how to do so are provided in the YubiDeck manual.
    • Download the latest version of YubiDeck IO DLLs and extract it to your App\\bin folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_yubideck_chusan.dll\npath64=chuniio_yubideck_amdaemon.dll\n
    • Optionally, reference the included AimeIO DLL to use the controller's built-in card reader:
    [aimeio]\npath=aimeio_yubideck.dll\n
    • Connect the controller to your computer, and then start the game.
    "},{"location":"games/chunithmnewplus/controllers/#arcade-hardware-and-other-controllers","title":"Arcade hardware and other controllers","text":"

    If you're interested in using a cabinet slider and air sensors, or possibly even making your own controller, the Cons&Stuff website and Discord community is a great place to start!

    "},{"location":"games/chunithmnewplus/setup/","title":"CHUNITHM NEW PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of CHUNITHM

    You'll want to create a new folder for the game and start from scratch. CHUNITHM DOES NOT like being extracted over old data!

    "},{"location":"games/chunithmnewplus/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create another empty folder named AppData next to them. It should now look like below.

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/chunithmnewplus/setup/#updating-the-base-game","title":"Updating the base game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    "},{"location":"games/chunithmnewplus/setup/#installing-option-data","title":"Installing option data","text":"

    CHUNITHM content updates are distributed through option folders instead of patching the base game. They are named A???, with each ? being a number. Custom options distributed by the community might use letters instead, to distinguish them from official ones.

    Extract any options you've downloaded into the Option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    "},{"location":"games/chunithmnewplus/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has a file named ICF1, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions.

    Showing file extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/chunithmnewplus/setup/#installing-unprotected-executables","title":"Installing unprotected executables","text":"

    CHUNITHM executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of chusanApp.exe and amdaemon.exe for your game version. If these weren't provided with your data, join the Discord for assistance.

    Copy chusanApp.exe and amdaemon.exe to the bin folder of your game data. Agree to overwrite when asked.

    "},{"location":"games/chunithmnewplus/setup/#patching-the-game","title":"Patching the game","text":"

    Go through the Web Patching guide to learn how to use a web patcher.

    There are many patches for CHUNITHM.

    We will only bring up the ones we think could be genuinely useful.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    Patch Recommendation Description Force shared audio mode Either Force the game to use shared mode audio output, letting you listen to other audio sources while the game is running at the cost of audio latency. Force 2 channel audio output Either Try enabling this patch if you don't get audio output at all. Disable song select timer Either Disables the song select timer. No encryption ON Disable encrypting network requests. Required if you plan to run a local server. No TLS ON Disable checking if the server is HTTPS or not. Required if you plan to run a local server. Bypass 1080p monitor check Either Disable checking if the monitor is 1080p when enabling 120FPS. Enable if you cannot set your monitor to 1080p. Bypass 120Hz monitor check Either Disable checking if the monitor is exactly 120Hz when enabling 120FPS. Enable if you cannot set your monitor to 120Hz."},{"location":"games/chunithmnewplus/setup/#installing-segatools","title":"Installing segatools","text":"
    • Head over to segatools releases and download segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find chusan.zip and extract it to the App\\bin folder in your game data.

    You should now have a few more files inside the folder, as highlighted:

    "},{"location":"games/chunithmnewplus/setup/#configuring-segatools","title":"Configuring segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App\\bin\\segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key.

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/chunithmnewplus/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../Option\nappdata=../../AppData\n
    "},{"location":"games/chunithmnewplus/setup/#system-formerly-gpio","title":"[system] (formerly [gpio])","text":"

    Warning

    As of 2024-08-20, the [gpio] section in segatools has been renamed to [system].

    • If you have a 120Hz monitor, set dipsw2 and dipsw3 to 0:
    [system]\ndipsw2=0\ndipsw3=0\n
    • If you have a 60Hz monitor, set dipsw2 and dipsw3 to 1:
    [system]\ndipsw2=1\ndipsw3=1\n
    "},{"location":"games/chunithmnewplus/setup/#gfx","title":"[gfx]","text":"
    • Set windowed to 0 to run in fullscreen mode and 1 to run in windowed mode.
    • If you have multiple monitors and you're running in fullscreen mode (windowed=0), set monitor to the index of the monitor you want to run the game on.
    Getting the monitor index

    Navigate to Windows display settings. Each monitor should be assigned a number. The monitor index is that number minus one. For example, monitor 2 means monitor index 1.

    "},{"location":"games/chunithmnewplus/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App\\bin\\DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/chunithmnewplus/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/chunithmnewplus/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/chunithmnewplus/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/chunithmnewplus/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App\\bin\\start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/chunithmnewplus/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/chunithmnewplus/setup/#game-assignments","title":"GAME ASSIGNMENTS","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    Start the game by running App\\bin\\start.bat. Let the game load until it reaches the screen below.

    Press your Test button (default F1) to enter the service menu. Use the Service button (default F2) to navigate the menu, and Test button to select an option.

    Navigate to \u30b2\u30fc\u30e0\u8a2d\u5b9a (GAME ASSIGNMENTS, the 4th option).

    Select \u30b0\u30eb\u30fc\u30d7\u5185\u57fa\u6e96\u6a5f\u8a2d\u5b9a (SET STANDARD IN GROUP, the second option) and toggle this setting to \u57fa\u6e96\u6a5f (STANDARD).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu.

    "},{"location":"games/chunithmnewplus/setup/#close-setting","title":"CLOSE SETTING","text":"

    Navigate to \u9589\u5e97\u8a2d\u5b9a (CLOSE SETTING, the 10th option).

    Navigate to \u6642 (HOUR, the 2nd option) and use the Service button to toggle the setting until it says \u5168\u6642\u523b (ALL TIME).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu, then select \u7d42\u4e86 (also the last option) in the main menu to exit the service menu.

    "},{"location":"games/chunithmnewplus/setup/#waiting-for-distribution-server","title":"Waiting for Distribution Server","text":"

    If you're stuck at the Waiting for Distribution Server screen below, close the game and relaunch.

    You're all done! The game should load up properly now.

    You can add coins using the Coin key (default F3) and card in by holding the Enter key.

    "},{"location":"games/chunithmnewplus/setup/#further-configuration","title":"Further configuration","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmnewplus/troubleshooting/","title":"CHUNITHM NEW PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/chunithmnewplus/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things, the most common of which are:

    • amdaemon crashing in the background. Make sure that the config_*.json files have valid syntax, your ICF files are correct, and the OpenSSL fix is applied on Intel Core 10th Gen CPUs and newer.
    • Using the incorrect dipswitch settings for your refresh rate (e.g. dipsw3=0 on a 60Hz screen). Refer to the setup guide to fix it.
    • Enabling 120FPS on a monitor that is not exactly 120Hz or exactly 1080p. If you cannot set your monitor's refresh rate to 120Hz, apply the \"Bypass 120Hz monitor check\"/\"Bypass 1080p monitor check\" on a CHUNITHM web patcher (see Resources).
    Capturing logs from amdaemon for troubleshooting

    To assist with troubleshooting, a script can be used to capture logs from amdaemon. Create a file named amdaemontest.bat in App\\bin, then paste the code block below into the file.

    @echo off\ncls\necho Attempting to run AM Daemon ...\necho Window should close after 30 seconds\necho Log will be generated at amdaemontest.txt\ncall :sub >amdaemontest.txt\nexit /b\n\n:sub\nset OPENSSL_ia32cap=:~0x20000000\npushd %~dp0\nstart /b \"AM Daemon\" /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\nping 127.0.0.1 -n 31 > nul && taskkill /im amdaemon.exe\n

    Double-click it to run. The script should run for 30 seconds, and you will get a file named amdaemontest.txt in App\\bin, which you can send to help people troubleshoot your issue.

    "},{"location":"games/chunithmnewplus/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot!","text":"

    CHUNITHM game files consist of thousands of small XML files, which Windows Defender takes a long time to scan through. Add your game folder to the Windows Defender exclusion list.

    Danger

    Doing this will prevent Windows Defender from scanning your game folder for viruses. Only do this if you trust the source of the data.

    "},{"location":"games/chunithmnewplus/troubleshooting/#my-game-is-running-too-slowfast","title":"My game is running too slow/fast","text":"

    The game could be running under or over its required refresh rate.

    • Make sure V-Sync isn't disabled in your graphics settings (called \"Vertical sync\" in NVIDIA Control Panel and \"Wait for Vertical Refresh\" in AMD Control Panel.)
    • Make sure your monitor's refresh rate is set to 60Hz or 120Hz.

    It could also be that your computer's performance isn't good enough to keep a steady framerate.

    "},{"location":"games/chunithmnewplus/troubleshooting/#my-game-is-stuttering","title":"My game is stuttering","text":"

    For NVIDIA users, create an override for chusanApp.exe in NVIDIA Control Panel and change \"Power management mode\" to \"Prefer maximum performance\".

    "},{"location":"games/chunithmnewplus/troubleshooting/#my-game-crashes-when-i-tab-out-of-fullscreen","title":"My game crashes when I tab out of fullscreen!","text":"

    As the game is intended to run on arcade hardware, it doesn't like being minimized.

    One workaround for this is to use DXVK. Download the latest version from releases. This will be a dxvk-x.y.z.tar.gz file, which you can open using 7zip. Navigate to the x32 folder, and copy the d3d9.dll file to your game's App\\bin folder, agreeing to overwrite when asked.

    You should now be able to tab out of fullscreen without crashing the game.

    Warning

    The game will not ignore inputs when out of focus.

    This means any controller inputs will still be accepted, so try not to lean onto your slider whilst tabbed out!

    This also means that you can accidentally enter the service menu by hitting your Test key even if the game is minimised. If you were in the middle of a credit, your scores will be lost.

    "},{"location":"games/chunithmnewplus/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    CHUNITHM uses WASAPI exclusive mode for audio to get better latency.

    You can apply the \"Shared Audio\" patch on a CHUNITHM web patcher (see Resources) to hear audio outside of the game at the cost of audio latency.

    "},{"location":"games/chunithmnewplus/troubleshooting/#cabinet-to-cabinetc2c-fixes","title":"Cabinet-to-Cabinet(c2c) Fixes","text":"

    c2c can have many problems but you can fix most of them by applying the \"Patch for head-to-head play\" and disabling \"Set all timers to 999\" on a CHUNITHM web patcher (see Resources).

    If the above does not work then please ensure both machines have the exact same data and can communicate with each other if they cannot then you can try disabling firewalls or changing the c2c group.

    "},{"location":"games/chunithmsun/c2c/","title":"Setting Up Chunithm for Cabinet-to-Cabinet Play (Multiplayer) over the Internet","text":"

    You are most likely to have success with Multiplayer when all users are using the SAME data and options, from the same sources. Verify that each person can run the game normally before attempting to network them together.

    • Chunithm expects the cabinets to be using specific IP addresses, 192.168.139.11/12/13/14
    • To achieve this over the internet, we can use SoftEther VPN. Refer to the Setting Up SoftEther VPN Guide for more information.
    "},{"location":"games/chunithmsun/c2c/#configuring-segatoolsini-game-assignments","title":"Configuring segatools.ini & Game Assignments","text":"

    segatools.ini

    [netnev]\nenable=1\naddrSuffix= last 2 digits of your SoftEther IP\n\n[keychip]\nenable=1\nsubnet=192.168.139.0\nid=(Everyone needs a seperate keychip. If you play on a remote network, chances are you already have your own keychip. If not, you can use the example keychips below.)\n;example keychips: A61E-01D02321145 ; A61E-01A30831145 ; A61E-01E38091145 ; A61E-01E46241145\n\n[system]\ndipsw1=1\n;Set this to 1 on the Server machine, and 0 on all other client machines.\n;If your game gets stuck on \"Checking for Dist Server\", try setting this to 1 on all machines and continue following the steps.\n

    GAME ASSIGNMENTS

    • After saving your segatools.ini, launch the game and go into the Service Menu > and go to GAME ASSIGNMENTS.

    • Enable CABINET-TO-CABINET PLAY, and make sure all machine are on the same group (Group A for example).

    • Set one machine to STANDARD, and all other machines to FOLLOW THE STANDARD .

    Exit the Service Menu and load into Attract Mode. If the game passes the Group Check then chances are you're good to go! You can now login to a credit and open a cab-to-cab link request to check if the connection is working properly!

    "},{"location":"games/chunithmsun/c2c/#how-to-link","title":"How to Link?","text":"

    If you're new to Chunithm and have never tried link-play before and you have no idea how, keep reading.

    • Login to a credit.

    • If you're hosting a cab-to-cab session, choose a song first, then scroll to the far left and press Confirm. The cab-to-cab request is now open.

    • If you're connecting, navigate to the \"Cabinet-to-Cabinet Play\" tab and wait for other players to create a session.

    If you are able to see each other's session, congrats! You can now enjoy some cab-to-cab chain action!

    "},{"location":"games/chunithmsun/c2c/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmsun/controllers/","title":"CHUNITHM SUN","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    segatools, by default, only accepts keyboard input and does not recognize any controllers. However, it can be configured with IO DLLs to add support for controllers.

    The controller you plan on using should also be provided with these IO DLLs. If unsure, check the support section for your controller, or contact the vendor directly. Alternate options for the most common controllers are listed below.

    These IO DLLs should be copied to your game's App\\bin\\ folder and referenced in segatools.ini under the [chuniio] section.

    If you have a single DLL, uncomment the path= line by removing the leading semicolon (;), then add your DLL's file name after the =:

    [chuniio]\n; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.\n; (will use chu2to3 engine internally)\n;(1)!\npath=controller.dll\n
    1. Note that there is no leading semicolon.

    If you have two DLLs, ending in _x86.dll and _x64.dll (or _chusan.dll and _amdaemon.dll), uncomment the path32= and path64= lines by removing the leading semicolon (;), then add your DLLs after the =:

    [chuniio]\n; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.\n; x86 chuniio to path32, x64 to path64. Both are necessary.\n;(1)!\npath32=controller_x86.dll\npath64=controller_x64.dll\n
    1. Note that there is no leading semicolon.
    "},{"location":"games/chunithmsun/controllers/#keyboard","title":"Keyboard","text":"

    Keyboard is the default input method, and while not recommended for playing the game, it is useful for testing purposes.

    The default layout uses SDFGHJKL for slider input, and Space Bar for the AIRs.

    If you wish to change the default keybinds, an explanation on how to set these is included above the [io3] section in your segatools.ini.

    "},{"location":"games/chunithmsun/controllers/#brokenithm","title":"Brokenithm","text":"

    Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom half of the screen as the ground slider, and sliding into the upper half activates the air sensors.

    "},{"location":"games/chunithmsun/controllers/#android","title":"Android","text":"

    Warning

    Your computer and your Android device must be on the same local network.

    • Download the latest version of Brokenithm-Android and install it on your Android device.
    • Download the latest version of Brokenithm-Android-Server and extract only brokenithm_server.exe to your App\\bin\\ folder.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run brokenithm_server.exe. A command prompt window should open, saying that it is waiting for a device on port 52468.
    • Open the Brokenithm app on your Android device. Enter your computer's IP address in the Address box on the top right, then tap Start.
    • Run the game as normal.
    Getting your computer's IP address

    Open Settings -> Network and Internet and select Properties. Scroll down to the bottom and check the address under the IPv4 address field:

    That is your computer's IP address.

    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted brokenithm_server.exe to App\\bin\\ as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    Improving latency

    You can improve latency by running Brokenithm with your Android device tethered to your computer. However, this requires a little extra setup:

    • Connect your Android device to your computer with a USB cable.
    • If you haven't enabled Developer options on your device, do it by navigating to the \"About\" page in your phone's settings, then tap \"Build number\" seven times. This varies by device, so if unsure, look up the instructions for your specific one.
    • Navigate to Developer options and enable USB debugging.
    • On your computer, download and extract Android SDK Platform Tools to your App\\bin\\ folder.
    • Navigate to the App\\bin\\platform-tools folder in File Explorer, click on the address bar, type cmd, and hit Enter to open a command prompt.
    • In the command prompt, type the following command:
    adb reverse tcp:52468 tcp:52468\n
    • Start brokenithm_server.exe.
    • On your Android device, open Brokenithm, and change the address to 0.0.0.0.
      • If the text box to the left of the \"SETTINGS\" button say \"UDP\", tap on it once to switch to \"TCP\" mode.
    • Tap on \"START\", and you will now be connected via the USB cable.
    • You can now start the game as normal.

    The next time you play the game, you only need to run the adb reverse ... command again. To do this automatically when the game starts, add a line to the start.bat script before the brokenithm_server line:

    @echo off\n\npushd %~dp0\n\nstart /min platform-tools\\adb reverse tcp:52468 tcp:52468\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmsun/controllers/#iosipados","title":"iOS/iPadOS","text":"
    • Install Brokenithm on your iOS/iPadOS device by joining the Brokenithm TestFlight (iOS 18 only).
      • If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different IPA with Sideloadly.
    • If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, uninstall it.
    • Install the non-Microsoft Store version of iTunes from the website.
    • Download the latest version of Brokenithm-Evolved-iOS server and extract it to App\\bin\\Brokenithm-Server.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run App\\bin\\Brokenithm-Server\\Brokenithm-Evolved-iOS.exe. A command prompt window should open, saying that it is waiting for a device.
    • On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a USB cable.
    • Run the game as normal.
    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted the server to App\\bin\\Brokenithm-Server as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min Brokenithm-Server\\Brokenithm-Evolved-iOS.exe\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmsun/controllers/#tasoller","title":"TASOLLER","text":"

    Warning

    This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the controller after January 2022, the update should have already been applied.

    If you've purchased the controller before then, you will need to update the touch firmware by following the instructions on DJ-DAO's support page.

    • Install the custom Host and LED firmware to your controller. Instructions on how to do so is provided in the linked archive.
    • Pick one of these two TASOLLER IO DLLs to download and extract to your App\\bin folder. They should be functionally the same, but if one doesn't work, you can try the other:
      • chuniio-tasoller (download lib.zip)
      • chuniio-rs (download chusan.zip)
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_tasoller.dll;(1)!\npath64=chuniio_tasoller_x64.dll;(2)!\n
    1. Or chuniio_tasoller_v2_chusan.dll if you downloaded chuniio-rs.
    2. Or chuniio_tasoller_v2_amdaemon.dll if you downloaded chuniio-rs.

    3. Connect the controller to your computer, and then start the game.

    "},{"location":"games/chunithmsun/controllers/#yubideck","title":"YubiDeck","text":"
    • Switch your YubiDeck to HID output mode. Instructions on how to do so are provided in the YubiDeck manual.
    • Download the latest version of YubiDeck IO DLLs and extract it to your App\\bin folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_yubideck_chusan.dll\npath64=chuniio_yubideck_amdaemon.dll\n
    • Optionally, reference the included AimeIO DLL to use the controller's built-in card reader:
    [aimeio]\npath=aimeio_yubideck.dll\n
    • Connect the controller to your computer, and then start the game.
    "},{"location":"games/chunithmsun/controllers/#arcade-hardware-and-other-controllers","title":"Arcade hardware and other controllers","text":"

    If you're interested in using a cabinet slider and air sensors, or possibly even making your own controller, the Cons&Stuff website and Discord community is a great place to start!

    "},{"location":"games/chunithmsun/setup/","title":"CHUNITHM SUN","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of CHUNITHM

    You'll want to create a new folder for the game and start from scratch. CHUNITHM DOES NOT like being extracted over old data!

    "},{"location":"games/chunithmsun/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create another empty folder named AppData next to them. It should now look like below.

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/chunithmsun/setup/#updating-the-base-game","title":"Updating the base game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    "},{"location":"games/chunithmsun/setup/#installing-option-data","title":"Installing option data","text":"

    CHUNITHM content updates are distributed through option folders instead of patching the base game. They are named A???, with each ? being a number. Custom options distributed by the community might use letters instead, to distinguish them from official ones.

    Extract any options you've downloaded into the Option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    "},{"location":"games/chunithmsun/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has a file named ICF1, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions.

    Showing file extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/chunithmsun/setup/#installing-unprotected-executables","title":"Installing unprotected executables","text":"

    CHUNITHM executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of chusanApp.exe and amdaemon.exe for your game version. If these weren't provided with your data, join the Discord for assistance.

    Copy chusanApp.exe and amdaemon.exe to the bin folder of your game data. Agree to overwrite when asked.

    "},{"location":"games/chunithmsun/setup/#patching-the-game","title":"Patching the game","text":"

    Go through the Web Patching guide to learn how to use a web patcher.

    There are many patches for CHUNITHM.

    We will only bring up the ones we think could be genuinely useful.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    Patch Recommendation Description Force shared audio mode Either Force the game to use shared mode audio output, letting you listen to other audio sources while the game is running at the cost of audio latency. Force 2 channel audio output Either Try enabling this patch if you don't get audio output at all. Disable song select timer Either Disables the song select timer. No encryption ON Disable encrypting network requests. Required if you plan to run a local server. No TLS ON Disable checking if the server is HTTPS or not. Required if you plan to run a local server. Bypass 1080p monitor check Either Disable checking if the monitor is 1080p when enabling 120FPS. Enable if you cannot set your monitor to 1080p. Bypass 120Hz monitor check Either Disable checking if the monitor is exactly 120Hz when enabling 120FPS. Enable if you cannot set your monitor to 120Hz."},{"location":"games/chunithmsun/setup/#installing-segatools","title":"Installing segatools","text":"
    • Head over to segatools releases and download segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find chusan.zip and extract it to the App\\bin folder in your game data.

    You should now have a few more files inside the folder, as highlighted:

    "},{"location":"games/chunithmsun/setup/#configuring-segatools","title":"Configuring segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App\\bin\\segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key.

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/chunithmsun/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../Option\nappdata=../../AppData\n
    "},{"location":"games/chunithmsun/setup/#system-formerly-gpio","title":"[system] (formerly [gpio])","text":"

    Warning

    As of 2024-08-20, the [gpio] section in segatools has been renamed to [system].

    • If you have a 120Hz monitor, set dipsw2 and dipsw3 to 0:
    [system]\ndipsw2=0\ndipsw3=0\n
    • If you have a 60Hz monitor, set dipsw2 and dipsw3 to 1:
    [system]\ndipsw2=1\ndipsw3=1\n
    "},{"location":"games/chunithmsun/setup/#gfx","title":"[gfx]","text":"
    • Set windowed to 0 to run in fullscreen mode and 1 to run in windowed mode.
    • If you have multiple monitors and you're running in fullscreen mode (windowed=0), set monitor to the index of the monitor you want to run the game on.
    Getting the monitor index

    Navigate to Windows display settings. Each monitor should be assigned a number. The monitor index is that number minus one. For example, monitor 2 means monitor index 1.

    "},{"location":"games/chunithmsun/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App\\bin\\DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/chunithmsun/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/chunithmsun/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/chunithmsun/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/chunithmsun/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App\\bin\\start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/chunithmsun/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/chunithmsun/setup/#game-assignments","title":"GAME ASSIGNMENTS","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    Start the game by running App\\bin\\start.bat. Let the game load until it reaches the screen below.

    Press your Test button (default F1) to enter the service menu. Use the Service button (default F2) to navigate the menu, and Test button to select an option.

    Navigate to \u30b2\u30fc\u30e0\u8a2d\u5b9a (GAME ASSIGNMENTS, the 4th option).

    Select \u30b0\u30eb\u30fc\u30d7\u5185\u57fa\u6e96\u6a5f\u8a2d\u5b9a (SET STANDARD IN GROUP, the second option) and toggle this setting to \u57fa\u6e96\u6a5f (STANDARD).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu.

    "},{"location":"games/chunithmsun/setup/#close-setting","title":"CLOSE SETTING","text":"

    Navigate to \u9589\u5e97\u8a2d\u5b9a (CLOSE SETTING, the 10th option).

    Navigate to \u6642 (HOUR, the 2nd option) and use the Service button to toggle the setting until it says \u5168\u6642\u523b (ALL TIME).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu, then select \u7d42\u4e86 (also the last option) in the main menu to exit the service menu.

    "},{"location":"games/chunithmsun/setup/#waiting-for-distribution-server","title":"Waiting for Distribution Server","text":"

    If you're stuck at the Waiting for Distribution Server screen below, close the game and relaunch.

    You're all done! The game should load up properly now.

    You can add coins using the Coin key (default F3) and card in by holding the Enter key.

    "},{"location":"games/chunithmsun/setup/#further-configuration","title":"Further configuration","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmsun/troubleshooting/","title":"CHUNITHM SUN","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/chunithmsun/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things, the most common of which are:

    • amdaemon crashing in the background. Make sure that the config_*.json files have valid syntax, your ICF files are correct, and the OpenSSL fix is applied on Intel Core 10th Gen CPUs and newer.
    • Using the incorrect dipswitch settings for your refresh rate (e.g. dipsw3=0 on a 60Hz screen). Refer to the setup guide to fix it.
    • Enabling 120FPS on a monitor that is not exactly 120Hz or exactly 1080p. If you cannot set your monitor's refresh rate to 120Hz, apply the \"Bypass 120Hz monitor check\"/\"Bypass 1080p monitor check\" on a CHUNITHM web patcher (see Resources).
    Capturing logs from amdaemon for troubleshooting

    To assist with troubleshooting, a script can be used to capture logs from amdaemon. Create a file named amdaemontest.bat in App\\bin, then paste the code block below into the file.

    @echo off\ncls\necho Attempting to run AM Daemon ...\necho Window should close after 30 seconds\necho Log will be generated at amdaemontest.txt\ncall :sub >amdaemontest.txt\nexit /b\n\n:sub\nset OPENSSL_ia32cap=:~0x20000000\npushd %~dp0\nstart /b \"AM Daemon\" /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\nping 127.0.0.1 -n 31 > nul && taskkill /im amdaemon.exe\n

    Double-click it to run. The script should run for 30 seconds, and you will get a file named amdaemontest.txt in App\\bin, which you can send to help people troubleshoot your issue.

    "},{"location":"games/chunithmsun/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot!","text":"

    CHUNITHM game files consist of thousands of small XML files, which Windows Defender takes a long time to scan through. Add your game folder to the Windows Defender exclusion list.

    Danger

    Doing this will prevent Windows Defender from scanning your game folder for viruses. Only do this if you trust the source of the data.

    "},{"location":"games/chunithmsun/troubleshooting/#my-game-is-running-too-slowfast","title":"My game is running too slow/fast","text":"

    The game could be running under or over its required refresh rate.

    • Make sure V-Sync isn't disabled in your graphics settings (called \"Vertical sync\" in NVIDIA Control Panel and \"Wait for Vertical Refresh\" in AMD Control Panel.)
    • Make sure your monitor's refresh rate is set to 60Hz or 120Hz.

    It could also be that your computer's performance isn't good enough to keep a steady framerate.

    "},{"location":"games/chunithmsun/troubleshooting/#my-game-is-stuttering","title":"My game is stuttering","text":"

    For NVIDIA users, create an override for chusanApp.exe in NVIDIA Control Panel and change \"Power management mode\" to \"Prefer maximum performance\".

    "},{"location":"games/chunithmsun/troubleshooting/#my-game-crashes-when-i-tab-out-of-fullscreen","title":"My game crashes when I tab out of fullscreen!","text":"

    As the game is intended to run on arcade hardware, it doesn't like being minimized.

    One workaround for this is to use DXVK. Download the latest version from releases. This will be a dxvk-x.y.z.tar.gz file, which you can open using 7zip. Navigate to the x32 folder, and copy the d3d9.dll file to your game's App\\bin folder, agreeing to overwrite when asked.

    You should now be able to tab out of fullscreen without crashing the game.

    Warning

    The game will not ignore inputs when out of focus.

    This means any controller inputs will still be accepted, so try not to lean onto your slider whilst tabbed out!

    This also means that you can accidentally enter the service menu by hitting your Test key even if the game is minimised. If you were in the middle of a credit, your scores will be lost.

    "},{"location":"games/chunithmsun/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    CHUNITHM uses WASAPI exclusive mode for audio to get better latency.

    You can apply the \"Shared Audio\" patch on a CHUNITHM web patcher (see Resources) to hear audio outside of the game at the cost of audio latency.

    "},{"location":"games/chunithmsun/troubleshooting/#cabinet-to-cabinetc2c-fixes","title":"Cabinet-to-Cabinet(c2c) Fixes","text":"

    c2c can have many problems but you can fix most of them by applying the \"Patch for head-to-head play\" and disabling \"Set all timers to 999\" on a CHUNITHM web patcher (see Resources).

    If the above does not work then please ensure both machines have the exact same data and can communicate with each other if they cannot then you can try disabling firewalls or changing the c2c group.

    "},{"location":"games/chunithmsunplus/c2c/","title":"Setting Up Chunithm for Cabinet-to-Cabinet Play (Multiplayer) over the Internet","text":"

    You are most likely to have success with Multiplayer when all users are using the SAME data and options, from the same sources. Verify that each person can run the game normally before attempting to network them together.

    • Chunithm expects the cabinets to be using specific IP addresses, 192.168.139.11/12/13/14
    • To achieve this over the internet, we can use SoftEther VPN. Refer to the Setting Up SoftEther VPN Guide for more information.
    "},{"location":"games/chunithmsunplus/c2c/#configuring-segatoolsini-game-assignments","title":"Configuring segatools.ini & Game Assignments","text":"

    segatools.ini

    [netnev]\nenable=1\naddrSuffix= last 2 digits of your SoftEther IP\n\n[keychip]\nenable=1\nsubnet=192.168.139.0\nid=(Everyone needs a seperate keychip. If you play on a remote network, chances are you already have your own keychip. If not, you can use the example keychips below.)\n;example keychips: A61E-01D02321145 ; A61E-01A30831145 ; A61E-01E38091145 ; A61E-01E46241145\n\n[system]\ndipsw1=1\n;Set this to 1 on the Server machine, and 0 on all other client machines.\n;If your game gets stuck on \"Checking for Dist Server\", try setting this to 1 on all machines and continue following the steps.\n

    GAME ASSIGNMENTS

    • After saving your segatools.ini, launch the game and go into the Service Menu > and go to GAME ASSIGNMENTS.

    • Enable CABINET-TO-CABINET PLAY, and make sure all machine are on the same group (Group A for example).

    • Set one machine to STANDARD, and all other machines to FOLLOW THE STANDARD .

    Exit the Service Menu and load into Attract Mode. If the game passes the Group Check then chances are you're good to go! You can now login to a credit and open a cab-to-cab link request to check if the connection is working properly!

    "},{"location":"games/chunithmsunplus/c2c/#how-to-link","title":"How to Link?","text":"

    If you're new to Chunithm and have never tried link-play before and you have no idea how, keep reading.

    • Login to a credit.

    • If you're hosting a cab-to-cab session, choose a song first, then scroll to the far left and press Confirm. The cab-to-cab request is now open.

    • If you're connecting, navigate to the \"Cabinet-to-Cabinet Play\" tab and wait for other players to create a session.

    If you are able to see each other's session, congrats! You can now enjoy some cab-to-cab chain action!

    "},{"location":"games/chunithmsunplus/c2c/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmsunplus/controllers/","title":"CHUNITHM SUN PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    segatools, by default, only accepts keyboard input and does not recognize any controllers. However, it can be configured with IO DLLs to add support for controllers.

    The controller you plan on using should also be provided with these IO DLLs. If unsure, check the support section for your controller, or contact the vendor directly. Alternate options for the most common controllers are listed below.

    These IO DLLs should be copied to your game's App\\bin\\ folder and referenced in segatools.ini under the [chuniio] section.

    If you have a single DLL, uncomment the path= line by removing the leading semicolon (;), then add your DLL's file name after the =:

    [chuniio]\n; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL.\n; (will use chu2to3 engine internally)\n;(1)!\npath=controller.dll\n
    1. Note that there is no leading semicolon.

    If you have two DLLs, ending in _x86.dll and _x64.dll (or _chusan.dll and _amdaemon.dll), uncomment the path32= and path64= lines by removing the leading semicolon (;), then add your DLLs after the =:

    [chuniio]\n; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs.\n; x86 chuniio to path32, x64 to path64. Both are necessary.\n;(1)!\npath32=controller_x86.dll\npath64=controller_x64.dll\n
    1. Note that there is no leading semicolon.
    "},{"location":"games/chunithmsunplus/controllers/#keyboard","title":"Keyboard","text":"

    Keyboard is the default input method, and while not recommended for playing the game, it is useful for testing purposes.

    The default layout uses SDFGHJKL for slider input, and Space Bar for the AIRs.

    If you wish to change the default keybinds, an explanation on how to set these is included above the [io3] section in your segatools.ini.

    "},{"location":"games/chunithmsunplus/controllers/#brokenithm","title":"Brokenithm","text":"

    Brokenithm allows you to use a mobile device as a CHUNITHM controller. It uses the bottom half of the screen as the ground slider, and sliding into the upper half activates the air sensors.

    "},{"location":"games/chunithmsunplus/controllers/#android","title":"Android","text":"

    Warning

    Your computer and your Android device must be on the same local network.

    • Download the latest version of Brokenithm-Android and install it on your Android device.
    • Download the latest version of Brokenithm-Android-Server and extract only brokenithm_server.exe to your App\\bin\\ folder.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run brokenithm_server.exe. A command prompt window should open, saying that it is waiting for a device on port 52468.
    • Open the Brokenithm app on your Android device. Enter your computer's IP address in the Address box on the top right, then tap Start.
    • Run the game as normal.
    Getting your computer's IP address

    Open Settings -> Network and Internet and select Properties. Scroll down to the bottom and check the address under the IPv4 address field:

    That is your computer's IP address.

    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted brokenithm_server.exe to App\\bin\\ as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    Improving latency

    You can improve latency by running Brokenithm with your Android device tethered to your computer. However, this requires a little extra setup:

    • Connect your Android device to your computer with a USB cable.
    • If you haven't enabled Developer options on your device, do it by navigating to the \"About\" page in your phone's settings, then tap \"Build number\" seven times. This varies by device, so if unsure, look up the instructions for your specific one.
    • Navigate to Developer options and enable USB debugging.
    • On your computer, download and extract Android SDK Platform Tools to your App\\bin\\ folder.
    • Navigate to the App\\bin\\platform-tools folder in File Explorer, click on the address bar, type cmd, and hit Enter to open a command prompt.
    • In the command prompt, type the following command:
    adb reverse tcp:52468 tcp:52468\n
    • Start brokenithm_server.exe.
    • On your Android device, open Brokenithm, and change the address to 0.0.0.0.
      • If the text box to the left of the \"SETTINGS\" button say \"UDP\", tap on it once to switch to \"TCP\" mode.
    • Tap on \"START\", and you will now be connected via the USB cable.
    • You can now start the game as normal.

    The next time you play the game, you only need to run the adb reverse ... command again. To do this automatically when the game starts, add a line to the start.bat script before the brokenithm_server line:

    @echo off\n\npushd %~dp0\n\nstart /min platform-tools\\adb reverse tcp:52468 tcp:52468\nstart /min brokenithm_server\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmsunplus/controllers/#iosipados","title":"iOS/iPadOS","text":"
    • Install Brokenithm on your iOS/iPadOS device by joining the Brokenithm TestFlight (iOS 18 only).
      • If your iOS/iPadOS device doesn't have iOS 18, you will need to sideload a different IPA with Sideloadly.
    • If you have iTunes and/or iCloud installed from the Microsoft Store on your computer, uninstall it.
    • Install the non-Microsoft Store version of iTunes from the website.
    • Download the latest version of Brokenithm-Evolved-iOS server and extract it to App\\bin\\Brokenithm-Server.
    • Download the latest version of Brokenithm-Evolved IO DLLs and extract the DLL files to your App\\bin\\ folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [aimeio]\npath=aime_brokenithm.dll\n
    [chuniio]\npath32=brokenithm_x86.dll\npath64=brokenithm_x64.dll\n
    • Run App\\bin\\Brokenithm-Server\\Brokenithm-Evolved-iOS.exe. A command prompt window should open, saying that it is waiting for a device.
    • On your iOS/iPadOS device, open Brokenithm, and connect it to your computer with a USB cable.
    • Run the game as normal.
    Automatically launching the Brokenithm server when starting the game

    This will only work if you extracted the server to App\\bin\\Brokenithm-Server as previously instructed.

    You can edit the launch script to launch the Brokenithm server when starting the game. Edit App\\bin\\start.bat to add a line above the existing commands:

    @echo off\n\npushd %~dp0\n\nstart /min Brokenithm-Server\\Brokenithm-Evolved-iOS.exe\nstart /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\ninject_x86 -d -k chusanhook_x86.dll chusanApp.exe\ntaskkill /f /im amdaemon.exe > nul 2>&1\n\necho.\necho Game processes have terminated\npause\n
    "},{"location":"games/chunithmsunplus/controllers/#tasoller","title":"TASOLLER","text":"

    Warning

    This guide only covers TASOLLERs running the v2.0 touch firmware. If you've purchased the controller after January 2022, the update should have already been applied.

    If you've purchased the controller before then, you will need to update the touch firmware by following the instructions on DJ-DAO's support page.

    • Install the custom Host and LED firmware to your controller. Instructions on how to do so is provided in the linked archive.
    • Pick one of these two TASOLLER IO DLLs to download and extract to your App\\bin folder. They should be functionally the same, but if one doesn't work, you can try the other:
      • chuniio-tasoller (download lib.zip)
      • chuniio-rs (download chusan.zip)
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_tasoller.dll;(1)!\npath64=chuniio_tasoller_x64.dll;(2)!\n
    1. Or chuniio_tasoller_v2_chusan.dll if you downloaded chuniio-rs.
    2. Or chuniio_tasoller_v2_amdaemon.dll if you downloaded chuniio-rs.

    3. Connect the controller to your computer, and then start the game.

    "},{"location":"games/chunithmsunplus/controllers/#yubideck","title":"YubiDeck","text":"
    • Switch your YubiDeck to HID output mode. Instructions on how to do so are provided in the YubiDeck manual.
    • Download the latest version of YubiDeck IO DLLs and extract it to your App\\bin folder.
    • Edit your App\\bin\\segatools.ini to reference the extracted DLLs:
    [chuniio]\npath32=chuniio_yubideck_chusan.dll\npath64=chuniio_yubideck_amdaemon.dll\n
    • Optionally, reference the included AimeIO DLL to use the controller's built-in card reader:
    [aimeio]\npath=aimeio_yubideck.dll\n
    • Connect the controller to your computer, and then start the game.
    "},{"location":"games/chunithmsunplus/controllers/#arcade-hardware-and-other-controllers","title":"Arcade hardware and other controllers","text":"

    If you're interested in using a cabinet slider and air sensors, or possibly even making your own controller, the Cons&Stuff website and Discord community is a great place to start!

    "},{"location":"games/chunithmsunplus/setup/","title":"CHUNITHM SUN PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of CHUNITHM

    You'll want to create a new folder for the game and start from scratch. CHUNITHM DOES NOT like being extracted over old data!

    "},{"location":"games/chunithmsunplus/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create another empty folder named AppData next to them. It should now look like below.

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/chunithmsunplus/setup/#updating-the-base-game","title":"Updating the base game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    "},{"location":"games/chunithmsunplus/setup/#installing-option-data","title":"Installing option data","text":"

    CHUNITHM content updates are distributed through option folders instead of patching the base game. They are named A???, with each ? being a number. Custom options distributed by the community might use letters instead, to distinguish them from official ones.

    Extract any options you've downloaded into the Option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    "},{"location":"games/chunithmsunplus/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has a file named ICF1, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions.

    Showing file extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/chunithmsunplus/setup/#installing-unprotected-executables","title":"Installing unprotected executables","text":"

    CHUNITHM executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of chusanApp.exe and amdaemon.exe for your game version. If these weren't provided with your data, join the Discord for assistance.

    Copy chusanApp.exe and amdaemon.exe to the bin folder of your game data. Agree to overwrite when asked.

    "},{"location":"games/chunithmsunplus/setup/#patching-the-game","title":"Patching the game","text":"

    Go through the Web Patching guide to learn how to use a web patcher.

    There are many patches for CHUNITHM.

    We will only bring up the ones we think could be genuinely useful.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    Patch Recommendation Description Force shared audio mode Either Force the game to use shared mode audio output, letting you listen to other audio sources while the game is running at the cost of audio latency. Force 2 channel audio output Either Try enabling this patch if you don't get audio output at all. Disable song select timer Either Disables the song select timer. No encryption ON Disable encrypting network requests. Required if you plan to run a local server. No TLS ON Disable checking if the server is HTTPS or not. Required if you plan to run a local server. Bypass 1080p monitor check Either Disable checking if the monitor is 1080p when enabling 120FPS. Enable if you cannot set your monitor to 1080p. Bypass 120Hz monitor check Either Disable checking if the monitor is exactly 120Hz when enabling 120FPS. Enable if you cannot set your monitor to 120Hz."},{"location":"games/chunithmsunplus/setup/#installing-segatools","title":"Installing segatools","text":"
    • Head over to segatools releases and download segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find chusan.zip and extract it to the App\\bin folder in your game data.

    You should now have a few more files inside the folder, as highlighted:

    "},{"location":"games/chunithmsunplus/setup/#configuring-segatools","title":"Configuring segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App\\bin\\segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key.

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/chunithmsunplus/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../Option\nappdata=../../AppData\n
    "},{"location":"games/chunithmsunplus/setup/#system-formerly-gpio","title":"[system] (formerly [gpio])","text":"

    Warning

    As of 2024-08-20, the [gpio] section in segatools has been renamed to [system].

    • If you have a 120Hz monitor, set dipsw2 and dipsw3 to 0:
    [system]\ndipsw2=0\ndipsw3=0\n
    • If you have a 60Hz monitor, set dipsw2 and dipsw3 to 1:
    [system]\ndipsw2=1\ndipsw3=1\n
    "},{"location":"games/chunithmsunplus/setup/#gfx","title":"[gfx]","text":"
    • Set windowed to 0 to run in fullscreen mode and 1 to run in windowed mode.
    • If you have multiple monitors and you're running in fullscreen mode (windowed=0), set monitor to the index of the monitor you want to run the game on.
    Getting the monitor index

    Navigate to Windows display settings. Each monitor should be assigned a number. The monitor index is that number minus one. For example, monitor 2 means monitor index 1.

    "},{"location":"games/chunithmsunplus/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App\\bin\\DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/chunithmsunplus/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/chunithmsunplus/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/chunithmsunplus/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/chunithmsunplus/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App\\bin\\start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/chunithmsunplus/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/chunithmsunplus/setup/#game-assignments","title":"GAME ASSIGNMENTS","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    Start the game by running App\\bin\\start.bat. Let the game load until it reaches the screen below.

    Press your Test button (default F1) to enter the service menu. Use the Service button (default F2) to navigate the menu, and Test button to select an option.

    Navigate to \u30b2\u30fc\u30e0\u8a2d\u5b9a (GAME ASSIGNMENTS, the 4th option).

    Select \u30b0\u30eb\u30fc\u30d7\u5185\u57fa\u6e96\u6a5f\u8a2d\u5b9a (SET STANDARD IN GROUP, the second option) and toggle this setting to \u57fa\u6e96\u6a5f (STANDARD).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu.

    "},{"location":"games/chunithmsunplus/setup/#close-setting","title":"CLOSE SETTING","text":"

    Navigate to \u9589\u5e97\u8a2d\u5b9a (CLOSE SETTING, the 10th option).

    Navigate to \u6642 (HOUR, the 2nd option) and use the Service button to toggle the setting until it says \u5168\u6642\u523b (ALL TIME).

    Select \u7d42\u4e86 (EXIT, the last option) to exit to the main service menu, then select \u7d42\u4e86 (also the last option) in the main menu to exit the service menu.

    "},{"location":"games/chunithmsunplus/setup/#waiting-for-distribution-server","title":"Waiting for Distribution Server","text":"

    If you're stuck at the Waiting for Distribution Server screen below, close the game and relaunch.

    You're all done! The game should load up properly now.

    You can add coins using the Coin key (default F3) and card in by holding the Enter key.

    "},{"location":"games/chunithmsunplus/setup/#further-configuration","title":"Further configuration","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/chunithmsunplus/troubleshooting/","title":"CHUNITHM SUN PLUS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/chunithmsunplus/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things, the most common of which are:

    • amdaemon crashing in the background. Make sure that the config_*.json files have valid syntax, your ICF files are correct, and the OpenSSL fix is applied on Intel Core 10th Gen CPUs and newer.
    • Using the incorrect dipswitch settings for your refresh rate (e.g. dipsw3=0 on a 60Hz screen). Refer to the setup guide to fix it.
    • Enabling 120FPS on a monitor that is not exactly 120Hz or exactly 1080p. If you cannot set your monitor's refresh rate to 120Hz, apply the \"Bypass 120Hz monitor check\"/\"Bypass 1080p monitor check\" on a CHUNITHM web patcher (see Resources).
    Capturing logs from amdaemon for troubleshooting

    To assist with troubleshooting, a script can be used to capture logs from amdaemon. Create a file named amdaemontest.bat in App\\bin, then paste the code block below into the file.

    @echo off\ncls\necho Attempting to run AM Daemon ...\necho Window should close after 30 seconds\necho Log will be generated at amdaemontest.txt\ncall :sub >amdaemontest.txt\nexit /b\n\n:sub\nset OPENSSL_ia32cap=:~0x20000000\npushd %~dp0\nstart /b \"AM Daemon\" /min inject_x64 -d -k chusanhook_x64.dll amdaemon.exe -c config_common.json config_server.json config_client.json config_cvt.json config_sp.json config_hook.json\nping 127.0.0.1 -n 31 > nul && taskkill /im amdaemon.exe\n

    Double-click it to run. The script should run for 30 seconds, and you will get a file named amdaemontest.txt in App\\bin, which you can send to help people troubleshoot your issue.

    "},{"location":"games/chunithmsunplus/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot!","text":"

    CHUNITHM game files consist of thousands of small XML files, which Windows Defender takes a long time to scan through. Add your game folder to the Windows Defender exclusion list.

    Danger

    Doing this will prevent Windows Defender from scanning your game folder for viruses. Only do this if you trust the source of the data.

    "},{"location":"games/chunithmsunplus/troubleshooting/#my-game-is-running-too-slowfast","title":"My game is running too slow/fast","text":"

    The game could be running under or over its required refresh rate.

    • Make sure V-Sync isn't disabled in your graphics settings (called \"Vertical sync\" in NVIDIA Control Panel and \"Wait for Vertical Refresh\" in AMD Control Panel.)
    • Make sure your monitor's refresh rate is set to 60Hz or 120Hz.

    It could also be that your computer's performance isn't good enough to keep a steady framerate.

    "},{"location":"games/chunithmsunplus/troubleshooting/#my-game-is-stuttering","title":"My game is stuttering","text":"

    For NVIDIA users, create an override for chusanApp.exe in NVIDIA Control Panel and change \"Power management mode\" to \"Prefer maximum performance\".

    "},{"location":"games/chunithmsunplus/troubleshooting/#my-game-crashes-when-i-tab-out-of-fullscreen","title":"My game crashes when I tab out of fullscreen!","text":"

    As the game is intended to run on arcade hardware, it doesn't like being minimized.

    One workaround for this is to use DXVK. Download the latest version from releases. This will be a dxvk-x.y.z.tar.gz file, which you can open using 7zip. Navigate to the x32 folder, and copy the d3d9.dll file to your game's App\\bin folder, agreeing to overwrite when asked.

    You should now be able to tab out of fullscreen without crashing the game.

    Warning

    The game will not ignore inputs when out of focus.

    This means any controller inputs will still be accepted, so try not to lean onto your slider whilst tabbed out!

    This also means that you can accidentally enter the service menu by hitting your Test key even if the game is minimised. If you were in the middle of a credit, your scores will be lost.

    "},{"location":"games/chunithmsunplus/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    CHUNITHM uses WASAPI exclusive mode for audio to get better latency.

    You can apply the \"Shared Audio\" patch on a CHUNITHM web patcher (see Resources) to hear audio outside of the game at the cost of audio latency.

    "},{"location":"games/chunithmsunplus/troubleshooting/#cabinet-to-cabinetc2c-fixes","title":"Cabinet-to-Cabinet(c2c) Fixes","text":"

    c2c can have many problems but you can fix most of them by applying the \"Patch for head-to-head play\" and disabling \"Set all timers to 999\" on a CHUNITHM web patcher (see Resources).

    If the above does not work then please ensure both machines have the exact same data and can communicate with each other if they cannot then you can try disabling firewalls or changing the c2c group.

    "},{"location":"games/ddrace/problems/","title":"DDR Ace Common Problems/Tips","text":""},{"location":"games/ddrace/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: Celeron M 440 1.86GHz

    GPU: ATI Radeon HD 2400

    RAM: 2 GB

    OS: Windows XP Embedded

    "},{"location":"games/ddrace/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/ddrace/problems/#ddr-as-video-background-are-missing-in-the-menus-andor-some-songs-soft-lock-the-game-on-the-nthfinalextra-stage-screen","title":"Ddr a's Video Background Are Missing in the Menus And/Or Some Songs Soft-Lock the Game on the Nth/Final/Extra Stage Screen","text":"

    DDR's Video backgrounds rely on two DLLs in the game's \"com\" folder. However, unlike most other Bemani AC Games, these DLLs must be registered (Windows must know that these files exist, and where to point to when they are called). Without these, the game will run, but songs that rely on FMV backgrounds will break and the menu's backgrounds will be blank.

    There are two ways to fix this: You can either install the K-lite Codec Pack (which gives the added bonus of enabling playback of weird esoteric video formats outside of the game) or register the DLLs for the game manually, if you wish to save space and aren't afraid of the command prompt.

    You can download the K-lite codec pack from here: https://www.codecguide.com/download_kl.htm The basic installer is all you need. Simply install the pack and then run DDR A.

    To register the DLLs with Windows:

    1. Open an elevated command prompt (Right click Command Prompt -> Run As Administrator)

    2. Navigate to your Windows directory (Typically C:/ Windows), then to SysWOW64 (Or System32 if on a 32-bit version of Windows) by typing cd C:/windows inside the command prompt

    3. Type regsvr32 [path to one of the two DLLs in your DDR A's \"content/com/\" folder]

      Ex: regsvsr32 D:\\MDX-2019042200\\contents\\com k-clvsd.dll

    4. Repeat the command for the other DLL in the folder, and then close command prompt

      Ex: regvsr32 D:\\MDX-2019042200\\contents\\com xactengine2_10.dll

    5. If everything went smoothly, run the game again with your desired tools and enjoy a properly working DDR A!

    "},{"location":"games/ddrace/problems/#i-want-to-play-in-43-sd-mode","title":"I Want to Play in 4:3 (SD) Mode!","text":"

    If you're using SpiceTools, you can add -ddrsd to your gamestart.bat file and the game will boot into 4:3 mode.

    "},{"location":"games/ddrace/problems/#where-is-the-option-for-dancersshadingmeasure-linesfast-slowlayering","title":"Where Is the Option For Dancers/Shading/Measure lines/Fast-Slow/Layering?","text":"

    These options are locked behind network requirements and they will not show unless connected to a network that has written support for these options. Patches exist to alleviate this.

    "},{"location":"games/ddrace/problems/#why-is-my-game-not-in-english","title":"Why Is My Game Not in English?","text":"

    English text is built in, change <dest>J</dest> in the eamuse-config.xml file inside contents/prop to <dest>A</dest>, then you can change language to English in the service menu's GAME OPTIONS (accessed via Spice's Test button). If English is not automatically set as pictured below. Make sure the code at the top left upon booting indicates A:A:A as desired.

    "},{"location":"games/ddrace/setup/","title":"DANCE DANCE REVOLUTION ACE","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/ddrace/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file anything you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/ddrace/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/ddrace/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/ddrace/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/ddrace/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    One last important note before booting the game is that you should install K-Lite Mega Codec (See Common Problems/Tips for a guide!) before booting, the game will run without it, but some songs will lock up and the game will crash and all background videos will be black on most setups.

    With that, you're all done! The final step you'll have to do with your chosen tools is simply setting up your desired keybinds! Once you've done that, Boot the game with your gamestart.bat and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/exchain/problems/","title":"GITADORA EXCHAIN Common Problems/Tips","text":""},{"location":"games/exchain/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: AMD Athlon 64 X2 4400

    GPU: ATI Radeon HD 2400

    RAM: 1 GB

    OS: Windows 7 Embedded

    "},{"location":"games/exchain/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/exchain/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/exchain/problems/#game-stuck-on-title-screen-amd-ryzen-3900x","title":"Game Stuck On Title Screen (AMD Ryzen 3900X)","text":"

    If you have AMD Ryzen 3900X-series processor and the game gets stuck on the title screen (or a black screen) you are running into a known processor bug for games using Media Foundation to play videos. The workaround is to disable simultaneous multithreading (SMT) in the system's BIOS settings. See this GitHub issue for Proton

    "},{"location":"games/exchain/problems/#occasional-graphical-stuttering-during-gameplay","title":"Occasional Graphical Stuttering During Gameplay","text":"

    Disable fullscreen optimizations for spice64.exe instance. Right click on spice64.exe, click on Properties. Click on Compatibility tab, \"Change settings for all users\", and check \"Disable fullscreen optimizations\".

    "},{"location":"games/exchain/problems/#i-get-an-ip-change-error","title":"I get an IP Change Error!","text":"

    Apply the Fix IP Change Error patch.

    "},{"location":"games/exchain/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-). Gitadora features BOTH a visual offset and an audio based one, so experiment accordingly.

    "},{"location":"games/exchain/problems/#why-are-my-videos-freezing-usually-towards-the-end-of-the-song","title":"Why Are My Videos Freezing (Usually Towards the End of the Song)?","text":"

    If you're using Windows 10, there is a bug that is caused by the difference between the ASF stream decoder between Windows 7 and Windows 10 wherein it fails to properly detect the end of file of the video stream which causes the video decoder to throw an exception, which is why the video freezes. At the time of writing, SpiceTools does not have a fix for this, but there are hooks available to resolve this issue.

    "},{"location":"games/exchain/problems/#i-tried-switching-to-spicetools-to-follow-the-guide-and-it-crashes","title":"I Tried Switching to SpiceTools to Follow the Guide and It Crashes!","text":"

    This is a known issue, make sure to replace all of the .dll files from the contents folder of the game with ones from a fresh install, other tools currently modify these files in a way that SpiceTools cannot deal with.

    "},{"location":"games/exchain/problems/#my-drum-pedal-isnt-working","title":"My Drum Pedal Isn't Working!","text":"

    Some drum kits utilize hi-hat control with the pedal resulting in different MIDI addresses that require additional bindings, make sure to follow your drum kit's manual to see these other bindings and bind them in your desired tool's accordingly. Gitadora does not do this, so the game utilizes just 1 binding for every level of sensitivity on the pedal and multiple bindings are typically required with most drum kits.

    "},{"location":"games/exchain/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    Gitadora is a 64-bit game that utilizes a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of BEMANI games which used DirectSound. Unfortunately, this cannot be changed.

    "},{"location":"games/exchain/problems/#note-on-2-channel-and-4-channel-audio","title":"Note on 2-channel and 4-channel Audio","text":"

    For most setups, the -2ch parameter will be mandatory to hear any functional audio. 4-channel setups aren't really working in general and there's buffer issues, please avoid using it.

    "},{"location":"games/exchain/setup/","title":"GITADORA EXCHAIN","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/exchain/setup/#getting-started","title":"Getting Started.","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, the first thing to do is put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    Why does this look different than the usual? This installation includes a modules folder that Spice automatically detects, keeping things clean and simple.

    "},{"location":"games/exchain/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below for both launching the guitar version and drum version using SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/exchain/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    FOR GUITAR

    For our guitar local network configuration example, on a single line in the .bat file we're going to type spice64.exe -e prop\\eamuse-config2.xml -2ch -ea -w and save the file.

    What do these different parameters do? - -e sets a custom path for the eamuse config to boot the proper one (in this case, guitar via prop\\eamuse-config2.xml) - -2ch enables 2-channel audio for GITADORA - -ea enables an integrated e-amusement server within SpiceTools. - -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    FOR DRUM

    For our drum local network configuration example, on a single line in the .bat file we're going to type spice64.exe -2ch -ea -w and save the file.

    What do these different parameters do? - -2ch enables 2-channel audio for GITADORA - -ea enables an integrated e-amusement server within SpiceTools. - -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/exchain/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    FOR GUITAR

    For our guitar online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -e prop\\eamuse-config2.xml -2ch -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -e sets a custom path for the eamuse config to boot the proper one (in this case, guitar via prop\\eamuse-config2.xml)
    • -2ch enables 2-channel audio for GITADORA
    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    FOR DRUM

    For our drum online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -2ch -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -2ch enables 2-channel audio for GITADORA
    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/exchain/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen, oh no!

    This is normal, simply hit your Test keybind and continue on to this.

    From here, we will need to set a shop name to play, so select the GAME OPTIONS option.

    Then, select SHOP SETTINGS.

    Once inside, select SHOP NAME SETTINGS and name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done, go down to PREFECTURE and set it to whatever you desire as well. Finally, go to SAVE AND EXIT to get back to the main menu.

    The last menu we'll go inside from the service menu is the clock menu. Go inside CLOCK and simply set the clock by hitting SAVE AND EXIT as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/gitamatixx/problems/","title":"GITADORA Matixx Common Problems/Tips","text":""},{"location":"games/gitamatixx/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: AMD Athlon 64 X2 4400

    GPU: ATI Radeon HD 2400

    RAM: 1 GB

    OS: Windows 7 Embedded

    "},{"location":"games/gitamatixx/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/gitamatixx/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/gitamatixx/problems/#game-stuck-on-title-screen-amd-ryzen-3900x","title":"Game Stuck On Title Screen (AMD Ryzen 3900X)","text":"

    If you have AMD Ryzen 3900X-series processor and the game gets stuck on the title screen (or a black screen) you are running into a known processor bug for games using Media Foundation to play videos. The workaround is to disable simultaneous multithreading (SMT) in the system's BIOS settings. See this GitHub issue for Proton

    "},{"location":"games/gitamatixx/problems/#occasional-graphical-stuttering-during-gameplay","title":"Occasional Graphical Stuttering During Gameplay","text":"

    Disable fullscreen optimizations for spice64.exe instance. Right click on spice64.exe, click on Properties. Click on Compatibility tab, \"Change settings for all users\", and check \"Disable fullscreen optimizations\".

    "},{"location":"games/gitamatixx/problems/#i-get-an-ip-change-error","title":"I get an IP Change Error!","text":"

    Apply the Fix IP Change Error patch.

    "},{"location":"games/gitamatixx/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-). Gitadora features BOTH a visual offset and an audio based one, so experiment accordingly.

    "},{"location":"games/gitamatixx/problems/#why-are-my-videos-freezing-usually-towards-the-end-of-the-song","title":"Why Are My Videos Freezing (Usually Towards the End of the Song)?","text":"

    If you're using Windows 10, there is a bug that is caused by the difference between the ASF stream decoder between Windows 7 and Windows 10 wherein it fails to properly detect the end of file of the video stream which causes the video decoder to throw an exception, which is why the video freezes. At the time of writing, SpiceTools does not have a fix for this, but there are hooks available to resolve this issue.

    "},{"location":"games/gitamatixx/problems/#i-tried-switching-to-spicetools-to-follow-the-guide-and-it-crashes","title":"I Tried Switching to SpiceTools to Follow the Guide and It Crashes!","text":"

    This is a known issue, make sure to replace all of the .dll files from the contents folder of the game with ones from a fresh install, other tools currently modify these files in a way that SpiceTools cannot deal with.

    "},{"location":"games/gitamatixx/problems/#my-drum-pedal-isnt-working","title":"My Drum Pedal Isn't Working!","text":"

    Some drum kits utilize hi-hat control with the pedal resulting in different MIDI addresses that require additional bindings, make sure to follow your drum kit's manual to see these other bindings and bind them in your desired tool's accordingly. Gitadora does not do this, so the game utilizes just 1 binding for every level of sensitivity on the pedal and multiple bindings are typically required with most drum kits.

    "},{"location":"games/gitamatixx/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    Gitadora is a 64-bit game that utilizes a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of BEMANI games which used DirectSound. Unfortunately, this cannot be changed.

    "},{"location":"games/gitamatixx/problems/#note-on-2-channel-and-4-channel-audio","title":"Note on 2-channel and 4-channel Audio","text":"

    For most setups, the -2ch parameter will be mandatory to hear any functional audio. 4-channel setups aren't really working in general and there's buffer issues, please avoid using it.

    "},{"location":"games/gitamatixx/setup/","title":"GITADORA Matixx","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/gitamatixx/setup/#getting-started","title":"Getting Started.","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, the first thing to do is put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/gitamatixx/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below for both launching the guitar version and drum version using SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/gitamatixx/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    FOR GUITAR

    For our guitar local network configuration example, on a single line in the .bat file we're going to type spice64.exe -e prop\\eamuse-config2.xml -2ch -ea -w and save the file.

    What do these different parameters do? - -e sets a custom path for the eamuse config to boot the proper one (in this case, guitar via prop\\eamuse-config2.xml) - -2ch enables 2-channel audio for GITADORA - -ea enables an integrated e-amusement server within SpiceTools. - -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    FOR DRUM

    For our drum local network configuration example, on a single line in the .bat file we're going to type spice64.exe -2ch -ea -w and save the file.

    What do these different parameters do? - -2ch enables 2-channel audio for GITADORA - -ea enables an integrated e-amusement server within SpiceTools. - -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/gitamatixx/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    FOR GUITAR

    For our guitar online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -e prop\\eamuse-config2.xml -2ch -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -e sets a custom path for the eamuse config to boot the proper one (in this case, guitar via prop\\eamuse-config2.xml)
    • -2ch enables 2-channel audio for GITADORA
    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    FOR DRUM

    For our drum online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -2ch -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -2ch enables 2-channel audio for GITADORA
    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/gitamatixx/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen, oh no!

    This is normal, simply hit your Test keybind and continue on to this.

    From here, we will need to set a shop name to play, so select the GAME OPTIONS option.

    Then, select SHOP SETTINGS.

    Once inside, select SHOP NAME SETTINGS and name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done, go down to PREFECTURE and set it to whatever you desire as well. Finally, go to SAVE AND EXIT to get back to the main menu.

    The last menu we'll go inside from the service menu is the clock menu. Go inside CLOCK and simply set the clock by hitting SAVE AND EXIT as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/hellopopn/problems/","title":"Common Problems/Tips","text":"

    HELLO Pop'n Common Problems/Tips

    "},{"location":"games/hellopopn/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Try to eliminate any unnecessary background processes during play.

    "},{"location":"games/hellopopn/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/hellopopn/problems/#the-game-crashes-fullscreen","title":"The game crashes fullscreen!","text":"

    Some monitors and display adapters may not support the odd resolution the game runs at, which is 1360x768 versus the occasionally seen 1366x768. To resolve, setup a custom resolution inside your appropriate graphics card settings, or enable GPU resolution scaling.

    "},{"location":"games/hellopopn/problems/#other-crashes","title":"Other Crashes","text":"

    This game may fail in the case of using HDMI audio. Even if you're not using HDMI audio however, some failures to boot have been noted. Please update to the latest SpiceTools which fixes this issue.

    "},{"location":"games/hellopopn/setup/","title":"HELLO Pop'n","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/hellopopn/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder. Pictured below is what your folder should look like.

    "},{"location":"games/hellopopn/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up spicecfg.exe and head to the Options tab. Here you can configure all of the various options that SpiceTools has, but for the purpose of this guide we'll demonstrate how to set up a local server and an online server. You can skip over the parts that you don't need, and feel free to set any other options that you might like.

    If you're not using SpiceTools:

    It's most likely that your toolkit doesn't have an options interface, so you'll have to create a .bat file. Consult the appropriate documentation for this as this isn't covered in this guide.

    "},{"location":"games/hellopopn/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, in the Options tab enable the following options: E-Amusement Emulation: -ea and Windowed Mode: -w.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to disable -w to run the game fullscreen once you're done setting up!

    Pictured below, the selected options in spicecfg.exe.

    "},{"location":"games/hellopopn/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different options!

    We're going to use the option PCBID: -pcbid for our PCBID, with XXXXXXXXXXXXXXXXXXXX as the value. For the network URL we're going to use the option Service URL: -url, with http://yoururlhere.com/ as the value. We'll also enable windowed mode by enabling the option Windowed Mode: -w.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to disable -w to run the game fullscreen once you're done setting up!

    Pictured below, the enabled options in spicecfg.exe.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/hellopopn/setup/#configuring-keybinds","title":"Configuring Keybinds","text":"

    While we're still in spicecfg.exe, why not set up the keybinds? To do this you'll have to head on over to the Buttons tab. Here you simply click Bind and press the button on your controller (or keyboard). Below are my keybinds for a keyboard. Notice that I've also bound the Service, Test and Coin Mech buttons to my keyboard. This might come in handy but shouldn't be necessary to play the game.

    "},{"location":"games/hellopopn/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    Boot the game by double-clicking spice.exe.

    The boot sequence may have a very light blue background. Press any overlay hotkey (F12, for example) to make it display normally.

    Simply follow the on-screen text in the bottom left corner to continue. On the first boot, the game may tell you to press Test, and then Service.

    HELLO Pop'n has the ability to run offline, so the network error can be safely ignored.

    You're all done! The game takes a couple of seconds to load all of the data.

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/iidx10/setup/","title":"beatmania IIDX 10th style","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx10/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.
    "},{"location":"games/iidx10/setup/#installing-bemanitools","title":"Installing Bemanitools","text":"
    • Download Bemanitools.

    • Inside bemanitools-5.48.zip locate iidx-09-to-12.zip.

    • Extract everything inside the folder that contains the bm2dx.exe which is located in \\D01\\JAE.

    Pictured below is what your folder should look like. We've removed any files not necessary for 10th style.

    "},{"location":"games/iidx10/setup/#using-iidxhook-10conf-rteffectdll","title":"Using iidxhook-10.conf & RtEffect.dll","text":"
    • Download the Bemanitools supplements

    • Open bemanitools-supplement-v1.6.zip and navigate inside misc.zip

    • Inside misc\\d3d8to9, extract d3d8.dll to \\D01\\JAE.

    This enables us to use the graphic options inside iidxhook-10.conf which we will take advantage of.

    • Open bemanitools-supplement-v1.6.zip and navigate inside iidx.zip

    • Inside iidx/misc, extract RtEffect_stub.dll to \\D01\\JAE.

    • Delete the already existing RtEffect.dll and rename RtEffect_stub.dll to RtEffect.dll.

    This will eliminate any immediate crashes relating to needing specific old hardware.

    "},{"location":"games/iidx10/setup/#replacing-bm2dxexe","title":"Replacing bm2dx.exe","text":"
    • Go to D01\\util and copy bm2dx_D01_JAE_no_checksum.exe to D01\\JAE

    • Delete the original bm2dx.exe

    • Rename bm2dx_D01_JAE_no_checksum.exe to bm2dx.exe

    If you don't do this, you will end up getting a HDD DATA ERROR (PROG CHKSUM) which will result in the game not being able to run.

    "},{"location":"games/iidx10/setup/#configuring-bemanitools","title":"Configuring Bemanitools","text":"

    To configure your keybinds, open your config.bat file.

    "},{"location":"games/iidx10/setup/#buttons","title":"Buttons","text":"

    Double click on the right on a button that you wish to bind, then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx10/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • Head to the Analogs tab at the top.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the preview turns along with it.
    • Click OK, leaving the rest of the settings alone.
    "},{"location":"games/iidx10/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through bemanitools.

    If it does, here's how you may link different actions to your lights:

    • In Device, pick your controller.
    • In Game Light, select the corresponding button that will be used for that light.
    • Repeat for your other lights.

    If you'd like to play offline, you can head straight to Game resolution and locking FPS

    "},{"location":"games/iidx10/setup/#configuring-bemanitools-for-a-network","title":"Configuring Bemanitools for a network","text":"

    Head over to the Network tab.

    Now we will set up our PIN pad and card.

    • Click on Keyboard device
    • You may or may not have more than one option. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.
    • Once you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed).
    • Grab your card, create a .txt and name it however you like. In this example it's called card.txt
    • Place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    "},{"location":"games/iidx10/setup/#connecting-to-a-network","title":"Connecting to a network","text":"
    • Locate your iidxhook-10.conf

    • Open it with your desired text editor (we're using Notepad++)

    • Replace the eamuse.server=localhost:80 with your desired network URL

    • Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n
    "},{"location":"games/iidx10/setup/#game-resolution-and-locking-fps","title":"Game resolution and locking FPS","text":"

    We'd like to mention that there are two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window and configure the proper resolution. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-10.conf. We want to find these lines:

    # Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, press CTRL + F and search for gfx.frame_rate_limit=0.0. This will bring you to the first line we want to edit.

    Listed below are the values we want to change them to.

    gfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false.

    Make sure to decide on whether you want Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n
    "},{"location":"games/iidx10/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx10/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run gamestart.bat.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    Press your Start key to confirm to get to the next error message.

    "},{"location":"games/iidx10/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Start key to confirm. This will bring you into it's service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Navigate to CLOCK. You do not need to manually change it. Navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx10/setup/#enabling-e-amusement-for-online-play","title":"Enabling e-AMUSEMENT for Online Play","text":"

    From the service menu, go to e-AMUSEMENT OPTIONS then e-AMUSEMENT SETTINGS.

    It'll bring you to this screen, change it so that e-AMUSEMENT switches to ON and it will look like this:

    We will need to set a SHOP NAME SETTING and change our PREFECTURE otherwise the game will throw errors at us.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Navigate to EXIT and select it.
    • Change your prefecture once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Select SAVE AND EXIT. The game will now give you a message, which translated means:

    e-AMUSEMENT settings have been changed. Please turn the power off and on again.

    So, close the game and open it again.

    "},{"location":"games/iidx10/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played. Make sure to insert two credits by pressing your SERVICE key. Have fun!

    Have any other errors?

    Check out the Troubleshooting section.

    "},{"location":"games/iidx10/troubleshooting/","title":"IIDX 10 Troubleshooting","text":""},{"location":"games/iidx10/troubleshooting/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx10/troubleshooting/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx10/troubleshooting/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx10/troubleshooting/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. These fixes shouldn't be needed for 10th style since we're addressing them in the guide. We'll add them anyway just in case.

    "},{"location":"games/iidx10/troubleshooting/#fix-1-wrong-data-structure","title":"Fix #1 (Wrong data structure)","text":"

    Make sure that your unpacked data looks like this:

    • JAx (Game binary revision folder where 'x' can be A, B, C, D, E, F, G)
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx10/troubleshooting/#fix-2-rteffectsdll-didnt-get-replaced","title":"Fix #2 (RtEffects.dll didn't get replaced)","text":"

    Refer to Using iidxhook-10.conf & RtEffect.dll again and check if you have followed all the instructions explained in it.

    "},{"location":"games/iidx11/setup/","title":"beatmania IIDX 11 IIDX RED","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx11/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.
    "},{"location":"games/iidx11/setup/#installing-bemanitools","title":"Installing Bemanitools","text":"
    • Download Bemanitools.

    • Inside bemanitools-5.48.zip locate iidx-09-to-12.zip.

    • Extract everything inside the folder that contains the bm2dx.exe which is located in \\E11\\JAA.

    Pictured below is what your folder should look like. We've removed any files not necessary for IIDX RED.

    "},{"location":"games/iidx11/setup/#using-iidxhook-11conf-rteffectdll","title":"Using iidxhook-11.conf & RtEffect.dll","text":"
    • Download the Bemanitools supplements

    • Open bemanitools-supplement-v1.6.zip and navigate inside misc.zip

    • Inside misc\\d3d8to9, extract d3d8.dll to \\E11\\JAA.

    This enables us to use the graphic options inside iidxhook-11.conf which we will take advantage of.

    • Open bemanitools-supplement-v1.6.zip and navigate inside iidx.zip

    • Inside iidx/misc, extract RtEffect_stub.dll to \\E11\\JAA.

    • Delete the already existing RtEffect.dll and rename RtEffect_stub.dll to RtEffect.dll.

    This will eliminate any immediate crashes relating to needing specific old hardware.

    "},{"location":"games/iidx11/setup/#configuring-bemanitools","title":"Configuring Bemanitools","text":"

    To configure your keybinds, open your config.bat file.

    "},{"location":"games/iidx11/setup/#buttons","title":"Buttons","text":"

    Double click on the right on a button that you wish to bind, then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx11/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • Head to the Analogs tab at the top.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the preview turns along with it.
    • Click OK, leaving the rest of the settings alone.
    "},{"location":"games/iidx11/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through bemanitools.

    If it does, here's how you may link different actions to your lights:

    • In Device, pick your controller.
    • In Game Light, select the corresponding button that will be used for that light.
    • Repeat for your other lights.

    If you'd like to play offline, you can head straight to Game resolution and locking FPS

    "},{"location":"games/iidx11/setup/#configuring-bemanitools-for-a-network","title":"Configuring Bemanitools for a network","text":"

    Head over to the Network tab.

    Now we will set up our PIN pad and card.

    • Click on Keyboard device
    • You may or may not have more than one option. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.
    • Once you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed).
    • Grab your card, create a .txt and name it however you like. In this example it's called card.txt
    • Place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    "},{"location":"games/iidx11/setup/#connecting-to-a-network","title":"Connecting to a network","text":"
    • Locate your iidxhook-11.conf

    • Open it with your desired text editor (we're using Notepad++)

    • Replace the eamuse.server=localhost:80 with your desired network URL

    • Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n
    "},{"location":"games/iidx11/setup/#game-resolution-and-locking-fps","title":"Game resolution and locking FPS","text":"

    We'd like to mention that there are two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window and configure the proper resolution. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-11.conf. We want to find these lines:

    # Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, press CTRL + F and search for gfx.frame_rate_limit=0.0. This will bring you to the first line we want to edit.

    Listed below are the values we want to change them to.

    gfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false.

    Make sure to decide on whether you want Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n
    "},{"location":"games/iidx11/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx11/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run gamestart.bat.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    Press your Start key to confirm to get to the next error message.

    "},{"location":"games/iidx11/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Start key to confirm. This will bring you into it's service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Navigate to CLOCK. You do not need to manually change it. Navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx11/setup/#enabling-e-amusement-for-online-play","title":"Enabling e-AMUSEMENT for Online Play","text":"

    From the service menu, go to NETWORK OPTIONS then e-AMUSEMENT SETTINGS.

    It'll bring you to this screen, change it so that e-AMUSEMENT switches to ON and it will look like this:

    We will need to set a SHOP NAME SETTING and change our PREFECTURE otherwise the game will throw errors at us.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Navigate to EXIT and select it.
    • Change your prefecture once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Select SAVE AND EXIT. The game will now give you a message, which translated means:

    e-AMUSEMENT settings have been changed. Please turn the power off and on again.

    So, close the game and open it again.

    "},{"location":"games/iidx11/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played. Make sure to insert two credits by pressing your SERVICE key. Have fun!

    Have any other errors?

    Check out the Troubleshooting section.

    "},{"location":"games/iidx11/troubleshooting/","title":"IIDX 11 Troubleshooting","text":""},{"location":"games/iidx11/troubleshooting/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx11/troubleshooting/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx11/troubleshooting/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx11/troubleshooting/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. These fixes shouldn't be needed for IIDX RED since we're addressing them in the guide. We'll add them anyway just in case.

    "},{"location":"games/iidx11/troubleshooting/#fix-1-wrong-data-structure","title":"Fix #1 (Wrong data structure)","text":"

    Make sure that your unpacked data looks like this:

    • JAx (Game binary revision folder where 'x' can be A, B, C, D, E, F, G)
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx11/troubleshooting/#fix-2-rteffectsdll-didnt-get-replaced","title":"Fix #2 (RtEffects.dll didn't get replaced)","text":"

    Refer to Using iidxhook-11.conf & RtEffect.dll again and check if you have followed all the instructions explained in it.

    "},{"location":"games/iidx12/setup/","title":"beatmania IIDX 12 HAPPY SKY","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx12/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.
    "},{"location":"games/iidx12/setup/#installing-bemanitools","title":"Installing Bemanitools","text":"
    • Download Bemanitools.

    • Inside bemanitools-5.48.zip locate iidx-09-to-12.zip.

    • Extract everything inside the folder that contains the bm2dx.exe which is located in \\ECO\\JAD.

    Pictured below is what your folder should look like. We've removed any files not necessary for HAPPY SKY.

    "},{"location":"games/iidx12/setup/#using-iidxhook-12conf-rteffectdll","title":"Using iidxhook-12.conf & RtEffect.dll","text":"
    • Download the Bemanitools supplements

    • Open bemanitools-supplement-v1.6.zip and navigate inside misc.zip

    • Inside misc\\d3d8to9, extract d3d8.dll to \\ECO\\JAD.

    This enables us to use the graphic options inside iidxhook-12.conf which we will take advantage of.

    • Open bemanitools-supplement-v1.6.zip and navigate inside iidx.zip

    • Inside iidx/misc, extract RtEffect_stub.dll to \\ECO\\JAD.

    • Delete the already existing RtEffect.dll and rename RtEffect_stub.dll to RtEffect.dll.

    This will eliminate any immediate crashes relating to needing specific old hardware.

    "},{"location":"games/iidx12/setup/#installing-clvsdax","title":"Installing CLVSD.ax","text":"

    We need to install a codec so that background videos will work and won't cause an error.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx12/setup/#configuring-bemanitools","title":"Configuring Bemanitools","text":"

    To configure your keybinds, open your config.bat file.

    "},{"location":"games/iidx12/setup/#buttons","title":"Buttons","text":"

    Double click on the right on a button that you wish to bind, then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx12/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • Head to the Analogs tab at the top.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the preview turns along with it.
    • Click OK, leaving the rest of the settings alone.
    "},{"location":"games/iidx12/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through bemanitools.

    If it does, here's how you may link different actions to your lights:

    • In Device, pick your controller.
    • In Game Light, select the corresponding button that will be used for that light.
    • Repeat for your other lights.

    If you'd like to play offline, you can head straight to Game resolution and locking FPS

    "},{"location":"games/iidx12/setup/#configuring-bemanitools-for-a-network","title":"Configuring Bemanitools for a network","text":"

    Head over to the Network tab.

    Now we will set up our PIN pad and card.

    • Click on Keyboard device
    • You may or may not have more than one option. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.
    • Once you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed).
    • Grab your card, create a .txt and name it however you like. In this example it's called card.txt
    • Place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    "},{"location":"games/iidx12/setup/#connecting-to-a-network","title":"Connecting to a network","text":"
    • Locate your iidxhook-12.conf

    • Open it with your desired text editor (we're using Notepad++)

    • Replace the eamuse.server=localhost:80 with your desired network URL

    • Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n
    "},{"location":"games/iidx12/setup/#game-resolution-and-locking-fps","title":"Game resolution and locking FPS","text":"

    We'd like to mention that there are two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window and configure the proper resolution. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-12.conf. We want to find these lines:

    # Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, press CTRL + F and search for gfx.frame_rate_limit=0.0. This will bring you to the first line we want to edit.

    Listed below are the values we want to change them to.

    gfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false.

    Make sure to decide on whether you want Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n
    "},{"location":"games/iidx12/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx12/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run gamestart.bat.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    Press your Start key to confirm to get to the next error message.

    "},{"location":"games/iidx12/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Start key to confirm. This will bring you into it's service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Navigate to CLOCK. You do not need to manually change it. Navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx12/setup/#enabling-e-amusement-for-online-play","title":"Enabling e-AMUSEMENT for Online Play","text":"

    From the service menu, go to NETWORK OPTIONS then e-AMUSEMENT SETTINGS.

    It'll bring you to this screen, change it so that e-AMUSEMENT switches to ON and it will look like this:

    We will need to set a SHOP NAME SETTING and change our PREFECTURE otherwise the game will throw errors at us.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Navigate to EXIT and select it.
    • Change your prefecture once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Select SAVE AND EXIT. The game will now give you a message, which translated means:

    e-AMUSEMENT settings have been changed. Please turn the power off and on again.

    So, close the game and open it again.

    "},{"location":"games/iidx12/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played. Make sure to insert two credits by pressing your SERVICE key. Have fun!

    Have any other errors?

    Check out the Troubleshooting section.

    "},{"location":"games/iidx12/troubleshooting/","title":"IIDX 12 Common Problems/Tips","text":""},{"location":"games/iidx12/troubleshooting/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx12/troubleshooting/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx12/troubleshooting/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx12/troubleshooting/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. These fixes shouldn't be needed for HAPPY SKY since we're addressing them in the guide. We'll add them anyway just in case.

    "},{"location":"games/iidx12/troubleshooting/#fix-1-wrong-data-structure","title":"Fix #1 (Wrong data structure)","text":"

    Make sure that your unpacked data looks like this:

    • JAx (Game binary revision folder where 'x' can be A, B, C, D, E, F, G)
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx12/troubleshooting/#fix-2-rteffectsdll-didnt-get-replaced","title":"Fix #2 (RtEffects.dll didn't get replaced)","text":"

    Refer to Using iidxhook-12.conf & RtEffect.dll again and check if you have followed all the instructions explained in it.

    "},{"location":"games/iidx13/setup/","title":"beatmania IIDX 13 DistorteD","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx13/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.
    "},{"location":"games/iidx13/setup/#installing-bemanitools","title":"Installing Bemanitools","text":"
    • Download Bemanitools.

    • Inside bemanitools-5.48.zip locate iidx-13.zip.

    • Extract everything inside the folder that contains the bm2dx.exe which is located in \\FDD\\JAG.

    Pictured below is what your folder should look like. We've removed any files not necessary for DistorteD.

    "},{"location":"games/iidx13/setup/#using-iidxhook-13conf-rteffectdll","title":"Using iidxhook-13.conf & RtEffect.dll","text":"
    • Download the Bemanitools supplements

    • Open bemanitools-supplement-v1.6.zip and navigate inside misc.zip

    • Inside misc\\d3d8to9, extract d3d8.dll to \\FDD\\JAG.

    This enables us to use the graphic options inside iidxhook-13.conf which we will take advantage of.

    • Open bemanitools-supplement-v1.6.zip and navigate inside iidx.zip

    • Inside iidx/misc, extract RtEffect_stub.dll to \\FDD\\JAG.

    • Delete the already existing RtEffect.dll and rename RtEffect_stub.dll to RtEffect.dll.

    This will eliminate any immediate crashes relating to needing specific old hardware.

    "},{"location":"games/iidx13/setup/#installing-clvsdax","title":"Installing CLVSD.ax","text":"

    We need to install a codec so that background videos will work and won't cause an error.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx13/setup/#configuring-bemanitools","title":"Configuring Bemanitools","text":"

    To configure your keybinds, open your config.bat file.

    "},{"location":"games/iidx13/setup/#buttons","title":"Buttons","text":"

    Double click on the right on a button that you wish to bind, then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx13/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • Head to the Analogs tab at the top.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the preview turns along with it.
    • Click OK, leaving the rest of the settings alone.
    "},{"location":"games/iidx13/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through bemanitools.

    If it does, here's how you may link different actions to your lights:

    • In Device, pick your controller.
    • In Game Light, select the corresponding button that will be used for that light.
    • Repeat for your other lights.

    If you'd like to play offline, you can head straight to Game resolution and locking FPS

    "},{"location":"games/iidx13/setup/#configuring-bemanitools-for-a-network","title":"Configuring Bemanitools for a network","text":"

    Head over to the Network tab.

    Now we will set up our PIN pad and card.

    • Click on Keyboard device
    • You may or may not have more than one option. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.
    • Once you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed).
    • Grab your card, create a .txt and name it however you like. In this example it's called card.txt
    • Place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    "},{"location":"games/iidx13/setup/#connecting-to-a-network","title":"Connecting to a network","text":"
    • Locate your iidxhook-13.conf

    • Open it with your desired text editor (we're using Notepad++)

    • Replace the eamuse.server=localhost:80 with your desired network URL

    • Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n
    "},{"location":"games/iidx13/setup/#game-resolution-and-locking-fps","title":"Game resolution and locking FPS","text":"

    We'd like to mention that there are two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window and configure the proper resolution. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-12.conf. We want to find these lines:

    # Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, press CTRL + F and search for gfx.frame_rate_limit=0.0. This will bring you to the first line we want to edit.

    Listed below are the values we want to change them to.

    gfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false.

    Make sure to decide on whether you want Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n
    "},{"location":"games/iidx13/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    We can now focus on starting the game and getting it running. Open gamestart.bat (if you kept the name as is)

    You will be greeted by the initialization screen and shortly after this screen:

    "},{"location":"games/iidx13/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx13/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run gamestart.bat.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    Press your Start key to confirm to get to the next error message.

    "},{"location":"games/iidx13/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Start key to confirm. This will bring you into it's service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Navigate to CLOCK. You do not need to manually change it. Navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx13/setup/#enabling-e-amusement-for-online-play","title":"Enabling e-AMUSEMENT for Online Play","text":"

    From the service menu, go to NETWORK OPTIONS then e-AMUSEMENT SETTINGS.

    It'll bring you to this screen, change it so that e-AMUSEMENT switches to ON and it will look like this:

    We will need to set a SHOP NAME SETTING and change our PREFECTURE otherwise the game will throw errors at us.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Navigate to EXIT and select it.
    • Change your prefecture once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Select SAVE AND EXIT. The game will now give you a message, which translated means:

    e-AMUSEMENT settings have been changed. Please turn the power off and on again.

    So, close the game and open it again.

    "},{"location":"games/iidx13/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played. Make sure to insert two credits by pressing your SERVICE key. Have fun!

    Have any other errors?

    Check out the Troubleshooting section.

    "},{"location":"games/iidx13/troubleshooting/","title":"IIDX 13 Common Problems/Tips","text":""},{"location":"games/iidx13/troubleshooting/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx13/troubleshooting/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx13/troubleshooting/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx13/troubleshooting/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. These fixes shouldn't be needed for DistorteD since we're addressing them in the guide. We'll add them anyway just in case.

    "},{"location":"games/iidx13/troubleshooting/#fix-1-wrong-data-structure","title":"Fix #1 (Wrong data structure)","text":"

    Make sure that your unpacked data looks like this:

    • JAx (Game binary revision folder where 'x' can be A, B, C, D, E, F, G)
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx13/troubleshooting/#fix-2-rteffectsdll-didnt-get-replaced","title":"Fix #2 (RtEffects.dll didn't get replaced)","text":"

    Refer to Using iidxhook-13.conf & RtEffect.dll again and check if you have followed all the instructions explained in it.

    "},{"location":"games/iidx14/problems/","title":"IIDX 14 Common Problems/Tips","text":""},{"location":"games/iidx14/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx14/problems/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx14/problems/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    Inside the Bemanitools Supplement archive, navigate to \\iidx.zip\\iidx\\misc\\ where you'll find CLVSD.ax.

    Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    Open up the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\" A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx14/problems/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. This fix shouldn't be needed for GOLD since we're addressing them in the guide. We'll add it anyway just in case.

    "},{"location":"games/iidx14/problems/#wrong-data-structure","title":"Wrong data structure","text":"

    Make sure that your unpacked data looks like this:

    • yyyymmddrr (y = year digit, m = month digit, d = day digit, r = revision digit) revision folder containing game binary and libraries
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx14/setup/","title":"beatmania IIDX 14 GOLD","text":"

    Before reading

    This game will require you to touch and edit files manually. This guide tries to make everything as clear as possible. Bemanitools & Bemanitools Supplement will be used in this guide.

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you encounter any issues or errors regarding this guide or come across issues that aren't listed, feel free to open up a GitHub Issue!

    "},{"location":"games/iidx14/setup/#getting-started","title":"Getting Started","text":"

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, locate iidx-14-to-17.zip inside the bemanitools-5.44.zip. Extract it inside the folder that contains the bm2dx.exe which should be located in \\GLD\\2007072301. Pictured below is what your folder should look like, we've removed any files not necessary for GOLD. Feel free to name your gamestart.bat file whatever you desire, for the sake of convenience we've kept it as it.

    Next up, open the bemanitools-supplement-v1.6.zip or any version higher than that and navigate inside the misc.zip. Now navigate into misc\\d3d8to9 and extract d3d8.dll into the same folder as we previously have done. This enables us to use the graphic options inside iidxhook-14.conf which we will take advantage of. It should look like this:

    Lastly, we need to install a codec so that background videos will work and won't cause an error.

    Inside the Bemanitools Supplement archive, navigate to \\iidx.zip\\iidx\\misc\\ where you'll find CLVSD.ax.

    Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    Open up the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\" A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just DistorteD.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx14/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    To configure your keybinds, open up your config.bat file. You'll be greeted by this screen:

    It works similarly to Spice but not entirely. Make sure to also bind Test and Service since we will need it later. Service will also be used to insert coins to start the game. When you're done setting up your keybinds and analogs, it should look something like this:

    If you'd like to play offline, you can head straight to Setting up the games resolution

    "},{"location":"games/iidx14/setup/#configuring-bemanitools-for-an-online-network","title":"Configuring Bemanitools for an Online Network","text":"

    After setting the keybinds and analogs, we can head over to the Network tab, which will look like this:

    Now we will set up our PIN pad and card. Click on Keyboard device, you may or may not have more than one option. This is normal. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    If you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed). It should look similiar to this:

    Next, grab your card, create a .txt, name it however you like, in this example it's called card.txt and place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder. It should look like this:

    "},{"location":"games/iidx14/setup/#configuring-the-game-for-an-online-network","title":"Configuring the game for an Online Network","text":"

    Locate your iidxhook-14.conf and edit it in your desired text editor (we're using Notepad++). It may seem overwhelming at first but it's actually fairly simple. All we really care about are these lines:

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n

    Replace the eamuse.server=localhost:80 with your desired network URL

    Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    "},{"location":"games/iidx14/setup/#setting-up-the-games-resolution-locking-fps-and-fixing-stretched-videos","title":"Setting up the game's resolution, locking FPS and fixing stretched videos","text":"

    Before we begin, we'd like to mention that you have two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window, configure the proper resolution and fix stretched background videos. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-14.conf. We want to find these lines:

    # Fix stretched BG videos on newer GPUs. Might appear on Red and newer\ngfx.bgvideo_uv_fix=false\n\n# Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, simply press CTRL + F and search for each argument. It will highlight them for you.

    Listed below are the values we want to change them to.

    gfx.bgvideo_uv_fix=true\ngfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false. Under normal circumstances there shouldn't be a need for you to fiddle with gfx.monitor_check=1.000000 so we are also going to ignore it.

    Make sure to adjust for if you want either Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n

    When you're done, it should look like this:

    "},{"location":"games/iidx14/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    We can now focus on starting the game and getting it running. Open gamestart.bat (if you kept the name as is)

    You might come across an error that says:

    USB I/O ERROR ERROR(FM TRNS-OUT) or USB I/O ERROR ERROR(FM-DL TIMEOUT) simply reboot the game and it should work regardless.

    You will be greeted by the initialization screen and shortly after this screen:

    Hit your Test button to confirm to get to this screen:

    Hit your Test button again to confirm. The game will then perform a MONITOR CHECK.

    Once the MONITOR CHECK is done, the game puts us into the games settings menu. From there, navigate to CLOCK SETUP. You can leave the date, no need to manually change it. Simply navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx14/setup/#setting-shop-name-and-prefecture-for-online-play","title":"Setting Shop Name and Prefecture for Online Play","text":"

    From the games settings menu, naviate to e-AMUSEMENT OPTIONS and select it. This will bring you to e-AMUSEMENT SETTINGS. Select it aswell.

    It'll bring you to this next screen, if e-AMUSEMENT is OFF, select it so that e-AMUSEMENT switches to ON and it will look like this:

    We now have to change our SHOP NAME SETTING and PREFECTURE otherwise the game will throw errors at us.

    Start with the shop name, select it and change them to what ever you like. When you're done editing your shop name, navigate to EXIT and select it.

    For the prefecture change it once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Once that is done, hit SAVE AND EXIT. The game will say NOW SAVING.

    When it's done saving, you can exit out of the NETWORK OPTIONS.

    "},{"location":"games/iidx14/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played! Make sure to insert two credits by pressing your SERVICE key! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/iidx24/problems/","title":"IIDX 24 Common Problems/Tips","text":""},{"location":"games/iidx24/problems/#hardware-specs","title":"Hardware Specs","text":"

    Warning:

    The specs may not be correct. If something isn't correct or it's fine, let me know.

    Bemani PC (ADE-704A)

    Konami (2012-2017)

    This board has a E4690 Radeon MXM card.

    CPU: Intel Celeron B810

    GPU: AMD Radeon E4690

    NIC: Realtek RTL8168/8111

    Chipset: Intel HM65

    RAM: 4 GB

    OS: Windows XP Embedded with Service Pack 2

    "},{"location":"games/iidx24/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/iidx24/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/iidx24/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/iidx24/problems/#hd-and-hd","title":"HD and HD*","text":"

    This version of IIDX has two HD mode options, HD and HD* neither is inherently better than the other, the only difference is HD* is an additional + 1.0 offset in-game, the official reasoning is to account for a different set of monitors on arcade cabs. In beatmania IIDX 26 ROOTAGE this option is removed entirely and only HD is present.

    "},{"location":"games/iidx24/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/iidx24/setup/","title":"beatmania IIDX 24 SINOBUZ","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    Note:

    This game uses 32-bit tools!

    "},{"location":"games/iidx24/setup/#getting-started","title":"Getting Started","text":"

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/iidx24/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/iidx24/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/iidx24/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/iidx24/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    Hit the Test keybinding to initialize the backup data, a message will pop up stating it's been initialized.

    Lastly, you'll run into this error message as well, let's work on eliminating these messages. Let the game run for a bit until the monitor check is complete and you should be taken to the service menu pictured below.

    Start by navigating up to CLOCK and entering that menu.

    Simply hit save and exit and leave, the clock will be saved. Then, back in the service menu, go up to GAME OPTIONS

    Once inside that menu, navigate your way up to DEFINITION TYPE and choose either HD or HD* depending on your preferences, both run the game at 720p but have a timing difference addressed on the FAQ page. It might be worth noting that the HD* option is no longer present as of beatmania IIDX 26 ROOTAGE.

    The game will then count down asking you to confirm the selection before reverting, just hit YES assuming it loaded just fine on your computer. Then, exit out of that menu and head to NETWORK OPTIONS from back inside the service menu.

    From here, we will need to set a shop name to play, so select the SHOP NAME SETTING option. Once inside, name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done go to EXIT and then SAVE AND EXIT inside of NETWORK OPTIONS once you've chosen your desired name, as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/iidx25/problems/","title":"IIDX 25 Common Problems/Tips","text":""},{"location":"games/iidx25/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC (ADE-6291)

    Konami (2018)

    Based on an AMD Embedded R Series SoC.

    CPU: AMD RX-421BD

    GPU: Radeon R7

    RAM: 4 GB

    OS: Windows 7 Embedded

    "},{"location":"games/iidx25/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/iidx25/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/iidx25/problems/#camera-device-error-message","title":"Camera Device Error Message","text":"

    The game released with two USB cameras and naturally it's looking for them, if you do not have two cameras plugged into your computer then the game outputs this error, which can be ignored simply by hitting Test or waiting 60 seconds for it to be auto-dismissed.

    But if you're tired of this message every time you start up the game, the CAMERA DEVICE ERROR message can be removed via a patch.

    "},{"location":"games/iidx25/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/iidx25/problems/#hd-and-hd","title":"HD and HD*","text":"

    This version of IIDX has two HD mode options, HD and HD* neither is inherently better than the other, the only difference is HD* is an additional + 1.0 offset in-game, the official reasoning is to account for a different set of monitors on arcade cabs. In beatmania IIDX 26 ROOTAGE this option is removed entirely and only HD is present.

    "},{"location":"games/iidx25/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/iidx25/problems/#a-note-about-sse-42","title":"A Note About SSE 4.2","text":"

    In the rare case you are running this game on very old hardware, IIDX 25 requires a processor supporting the SSE 4.2 instruction set. But, in the event your processor does not have this, there is a patch available to bypass this.

    "},{"location":"games/iidx25/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    64-bit versions of IIDX are now utilizing a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of the games which used DirectSound. Unfortunately, this cannot be changed.

    "},{"location":"games/iidx25/problems/#im-not-getting-any-audiomy-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm Not Getting Any Audio/My Audio Is Completely Wrecked and I'm Using an External Dac!","text":"

    Several external DACs have issues with WASAPI exclusive mode and are unable to be used entirely, it's likely you'll be forced to use your motherboard's sound chip, or find a compatible DAC.

    "},{"location":"games/iidx25/setup/","title":"beatmania IIDX 25 CANNON BALLERS","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/iidx25/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential crashing on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/iidx25/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/iidx25/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/iidx25/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/iidx25/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen, oh no!

    Ignore this message, simply hit your Test keybind and continue onto this.

    Hit the Test keybinding again to initialize the backup data, a message will pop up stating it's been initialized.

    Lastly, you'll run into this error message as well, let's work on eliminating these messages. Let the game run for a bit until the monitor check is complete and you should be taken to the service menu pictured below.

    Start by navigating up to CLOCK and entering that menu.

    Simply hit save and exit and leave, the clock will be saved. Then, back in the service menu, go up to GAME OPTIONS

    Once inside that menu, navigate your way up to DEFINITION TYPE and choose either HD or HD* depending on your preferences, both run the game at 720p but have a timing difference addressed on the FAQ page. It might be worth noting that the HD* option is no longer present as of beatmania IIDX 26 ROOTAGE.

    The game will then count down asking you to confirm the selection before reverting, just hit YES assuming it loaded just fine on your computer. Then, exit out of that menu and head to NETWORK OPTIONS from back inside the service menu.

    From here, we will need to set a shop name to play, so select the SHOP NAME SETTING option. Once inside, name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done go to EXIT and then SAVE AND EXIT inside of NETWORK OPTIONS once you've chosen your desired name, as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/iidx26/problems/","title":"IIDX 26 Common Problems/Tips","text":""},{"location":"games/iidx26/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC (ADE-6291)

    Konami (2018)

    Based on an AMD Embedded R Series SoC.

    CPU: AMD RX-421BD

    GPU: Radeon R7

    RAM: 4 GB

    OS: Windows 7 Embedded

    "},{"location":"games/iidx26/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/iidx26/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/iidx26/problems/#camera-device-error-message","title":"Camera Device Error Message","text":"

    The game released with two USB cameras and naturally it's looking for them, if you do not have two cameras plugged into your computer then the game outputs this error, which can be ignored simply by hitting Test or waiting 60 seconds for it to be auto-dismissed.

    But if you're tired of this message every time you start up the game, the CAMERA DEVICE ERROR message can be removed via a patch.

    "},{"location":"games/iidx26/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/iidx26/problems/#hd-and-hd","title":"HD and HD*","text":"

    This version of IIDX has removed having two HD mode options, leaving only HD. HD and HD* neither is inherently better than the other, the only difference is HD* is an additional + 1.0 offset in-game, now applied to the lone HD mode. The official reasoning is to account for a different set of monitors on arcade cabs.

    "},{"location":"games/iidx26/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/iidx26/problems/#a-note-about-sse-42","title":"A Note About SSE 4.2","text":"

    In the rare case you are running this game on very old hardware, IIDX 26 requires a processor supporting the SSE 4.2 instruction set. But, in the event your processor does not have this, there is a patch available to bypass this.

    "},{"location":"games/iidx26/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    64-bit versions of IIDX are now utilizing a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of the games which used DirectSound. Unfortunately, this cannot be changed.

    "},{"location":"games/iidx26/problems/#im-not-getting-any-audiomy-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm Not Getting Any Audio/My Audio Is Completely Wrecked and I'm Using an External Dac!","text":"

    Several external DACs have issues with WASAPI exclusive mode and are unable to be used entirely, it's likely you'll be forced to use your motherboard's sound chip, or find a compatible DAC.

    "},{"location":"games/iidx26/setup/","title":"beatmania IIDX 26 Rootage","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/iidx26/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential crashing on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/iidx26/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/iidx26/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/iidx26/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/iidx26/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen, oh no!

    Ignore this message, simply hit your Test keybind and continue onto this.

    Hit the Test keybinding again to initialize the backup data, a message will pop up stating it's been initialized.

    Lastly, you'll run into this error message as well, let's work on eliminating these messages. Let the game run for a bit until the monitor check is complete and you should be taken to the service menu pictured below.

    Start by navigating up to CLOCK and entering that menu.

    Simply hit save and exit and leave, the clock will be saved. Then, back in the service menu, go up to GAME OPTIONS

    Once inside that menu, navigate your way up to DEFINITION TYPE and choose either SD or HD depending on your preferences.

    The game will then count down asking you to confirm the selection before reverting, just hit YES assuming it loaded just fine on your computer. Then, exit out of that menu and head to NETWORK OPTIONS from back inside the service menu.

    From here, we will need to set a shop name to play, so select the SHOP NAME SETTING option. Once inside, name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done go to EXIT and then SAVE AND EXIT inside of NETWORK OPTIONS once you've chosen your desired name, as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/iidx27/lightning/","title":"beatmania IIDX 27 Lighting Mode Information","text":""},{"location":"games/iidx27/lightning/#notes","title":"Notes","text":"

    Booting the game in Lightning Mode requires a few things. To start off with, you will need to enable the -iidxtdj option in SpiceTools and you will also need to enable the Enable Lightning Mode patch.

    In doing so, and subsequently every time you choose to switch between the two modes, you will want to delete everything inside your dev/nvram folder, and redo the setup process again with initializing the backup date, setting the clock, shop name, and the definition type.

    SpiceTools as of 10/26/2020 has some updated features to work with this as well. Namely, the ability to toggle the Lightning Model subscreen via the Toggle Subscreen option in the Buttons tab. You can use your mouse to navigate the touchscreen as desired. Enter your pin, toggle buttons, etc.

    SpiceCompanion has also as of 10/26/2020 added a brand new Screen feature as well. Using SpiceCompanion, you can receive the subscreen on your phone/tablet/etc and then use your device as a touch device for the subscreen. Do note that at this time it will not work while the game is running in windowed mode. If you run into performance issues, go to the settings tab to adjust things like the Screen Quality, Screen Threads, and Screen Divide, this feature is heavily dependent on connection and you will notice as you bump up the quality that the ping will increase as well. It may take some fiddling to find the most ideal settings for your setup.

    "},{"location":"games/iidx27/lightning/#lightning-specific-troubleshooting","title":"Lightning-specific Troubleshooting","text":"

    Below are the two main issues that have arisen for users utilizing this guide and general startup practices.

    "},{"location":"games/iidx27/lightning/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 11 (ARESPEAR C300)

    Konami (2019)

    Based on KONAMI ARESPEAR C300 gaming PC.

    CPU: Intel i5-9400F 2.9Ghz

    GPU: GIGABYTE GeForce GTX 1650 1530Mhz 4GB

    RAM: 8 GB DDR4

    STORAGE: Innodisk 2.5\" 3ME3 SATA SSD 256GB

    AUDIO: ASUS Xonar AE

    OS: Windows 10 IoT Enterprise

    "},{"location":"games/iidx27/lightning/#enabling-lighting-mode-patch","title":"Enabling Lighting Mode Patch","text":"

    If you get a stack trace in your log.txt with the following line...

    I:stackwalker: 00000001805FC970 (bm2dx): (unknown): dll_entry_main

    Please enable the lightning mode patch in SpiceTool's patch manager.

    "},{"location":"games/iidx27/lightning/#audio-related-crash","title":"Audio Related Crash","text":"

    If you get a stack trace in your log.txt that looks like this...

    exception raised: EXCEPTION_ACCESS_VIOLATION

    [2020/10/22 18:20:21] I:signal: printing callstack

    [2020/10/22 18:20:21] I:stackwalker: 000000018026E906 (bm2dx): (unknown): (unknown)

    For cab type 1 (LDJ), change your audio device to motherboard audio and/or use -audiobackend asio -asiodriverid ... -audiodummy

    For cab type 2 (TDJ, with -iidxtdj or another means), you have a few options:

    1) Use -iidxasio \"Driver Name Here\" to set the ASIO driver used by IIDX's own ASIO handler. (Does not work with all ASIO drivers, they designed it to work best with a specific revision of the XONAR SOUNCARD(64))

    2) Use -iidxsounddevice wasapi to set IIDX to use WASAPI instead of its own ASIO handler.

    3) Use -iidxsounddevice wasapi along with -audiobackend asio ... to have the game pipe audio through Spice's own ASIO handler which is more compatible with various ASIO drivers

    "},{"location":"games/iidx27/problems/","title":"IIDX 27 Common Problems/Tips","text":"

    Author Note:

    For lightning specific issues, see lightning cab notes

    "},{"location":"games/iidx27/problems/#hardware-specs","title":"Hardware Specs","text":"

    (These are the specs for non-lightning model cab running Heroic Verse)

    Bemani PC Type 9 (ADE-6291)

    Konami (2017)

    Based on an AMD Embedded R Series SoC.

    CPU: AMD RX-421BD 2.1/3.4GHz APU

    GPU: Radeon R7 800Mhz

    RAM: 4 GB

    STORAGE: innodisk 3ME2 mSATA SSD 256GB

    OS: Windows 7 Embedded

    "},{"location":"games/iidx27/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/iidx27/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz or 120hz framerate, depending on if you're in LDJ or TDJ mode. The game is hardcoded to run at these specific framerates and this cannot be changed. To solve this, set your monitor's refresh rate to match if you're in LDJ 60hz or TDJ 120hz mode. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard or around 120.00hz. If it's not around there and your monitor is indeed set correctly for the given mode, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/iidx27/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/iidx27/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/iidx27/problems/#a-note-about-sse-42","title":"A Note About SSE 4.2","text":"

    In the rare case you are running this game on very old hardware, IIDX 27 requires a processor supporting the SSE 4.2 instruction set. But, in the event your processor does not have this, there is a patch available to bypass this.

    "},{"location":"games/iidx27/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    64-bit versions of IIDX are now utilizing a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of the games which used DirectSound. Unfortunately, this cannot be changed.

    "},{"location":"games/iidx27/problems/#im-not-getting-any-audiomy-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm Not Getting Any Audio/My Audio Is Completely Wrecked and I'm Using an External Dac!","text":"

    Several external DACs have issues with WASAPI exclusive mode and are unable to be used entirely, it's likely you'll be forced to use your motherboard's sound chip, or find a compatible DAC.

    "},{"location":"games/iidx27/setup/","title":"beatmania IIDX 27 Heroic Verse","text":"

    Author Note:

    Lightning mode specifics: they are found here

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/iidx27/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential crashing on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, Pictured below is what your folder should look like.

    "},{"location":"games/iidx27/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up spicecfg.exe and head to the Options where we'll set our desired parameters. For the purpose of this guide, we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    You will have to likely generate a .bat file given your existing tool's documentation. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs and to consult appropriate support if you're unsure how to do this.

    "},{"location":"games/iidx27/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, inside Options tab we're going to click on the following: E-Amusement Emulation: -ea and Windowed Mode: -w to enable them.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the selected options inside the Options tab in spicecfg.exe.

    "},{"location":"games/iidx27/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On the Service URL: -url parameter, we're going to input our chosen network URL like so: http://yoururlhere.com/

    To go alongside this, we'll also be inputting into the PCBID: -p parameter, the PCBID given to us from our network, like so: XXXXXXXXXXXXXXXXXXXX

    Lastly, we'll click on the Windowed Mode: -w parameter.

    What do these different parameters do?

    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the selected options inside the Options tab in spicecfg.exe.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/iidx27/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds inside the Buttons and Analogs tabs! If you'd like an example, I've shown my keybindings below on a DJ DAO FP7 from the 1P side. Make sure you setup the Test keybind as it will be critical for setting up the game.

    Once you've done that, launch your game for the first time by double clicking the spice64.exe and the game should load with your chosen parameters from spicecfg.exe.

    If it's your first time running the game, you'll immediately be greeted with this screen, oh no!

    Ignore this message, simply hit your Test keybind and continue onto this.

    Hit the Test keybinding to initialize the backup data, a message will pop up stating it's been initialized.

    You'll also run into this error message as well, let's work on eliminating these messages. Let the game run for a bit until the monitor check is complete and you should be taken to the service menu pictured below.

    Start by navigating up to CLOCK and entering that menu.

    Simply hit save and exit and leave, the clock will be saved. Then, back in the service menu, go up to GAME OPTIONS

    Once inside that menu, navigate your way up to DEFINITION TYPE and choose either SD or HD depending on your preferences.

    The game will then count down asking you to confirm the selection before reverting, just hit YES assuming it loaded just fine on your computer. Then, exit out of that menu and head to NETWORK OPTIONS from back inside the service menu.

    If it doesn't transition to HD, after you've saved, you can simply reboot the game and all should be well.

    The final thing we need to set is here inside NETWORK OPTIONS, we will need to set a shop name to play, so select the SHOP NAME SETTING option. Once inside, name your shop whatever you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Once that's done go to EXIT and then SAVE AND EXIT inside of NETWORK OPTIONS once you've chosen your desired name, as pictured below.

    You're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    Lightning Mode specifics can be found: here

    "},{"location":"games/iidx30/extras/","title":"beatmania IIDX 30 RESIDENT","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx30/extras/#standard-lightning-modes","title":"Standard & Lightning modes","text":"

    Lightning mode requires a 120hz capable monitor.

    To make use of the Lightning Mode, which unlocks the subscreen and 120FPS, we need to go to the contents\\prop folder and edit the ea3-config.xml file.

    We're interested in these lines:

        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">A</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2023090500</ext>\n    </soft>\n

    This is the line that determines if the game will run in Standard (60 FPS) or Lightning (120 FPS) mode.

    <spec __type=\"str\">A</spec>\n
    • A for Standard (LDJ-003, LDJ, 60hz)
    • D for Lightning (LDJ-010, TDJ, 120hz)
    "},{"location":"games/iidx30/extras/#changing-the-games-language","title":"Changing the game's language","text":"

    This is done in-game before card-in by pressing your EFFECT key.

    "},{"location":"games/iidx30/extras/#more-about-ea3-configxml","title":"More about ea3-config.xml","text":"

    The ea3-config.xml file is located inside the prop folder.

    Below is an explanation on what different sections of this file do.

    The following lines change the PCBID and HARDID that your system reports to your e-amusement server. There is no need to manually change this as spice2x will do it for us.

    <pcbid __type=\"str\">00010203040506070809</pcbid>\n<hardid __type=\"str\">00010203040506070809</hardid>\n

    The following line determines what version of the game you are running. You should never change this. It should always say LDJ.

    <model __type=\"str\">LDJ</model>\n

    The following line determines the game's region. You should never change this. As you can change the language in-game.

    <dest __type=\"str\">J</dest>\n

    You should never change this. It should always say A for Resident.

    <rev __type=\"str\">A</rev>\n

    The following line determines your datecode. Always keep it up to date with your game's current version.

    <ext __type=\"str\">2024052100</ext>\n

    The following line determine what remote service URL spice2x is supposed to connect to. There is no need to manually change this as spice2x will do it for us.

    <services __type=\"str\">http://localhost:8083</services>\n
    "},{"location":"games/iidx30/setup/","title":"beatmania IIDX 30 RESIDENT","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx30/setup/#about-data","title":"About data","text":"

    Standard (LDJ) / Lightning (TDJ)

    Please keep the following in mind as you're going through this guide.

    IIDX's codename is LDJ. For IIDX 30 Resident it typically is LDJ-003.

    Two versions of the game exist:

    • TDJ expects a 120hz compatible monitor for its main screen, and a second 60hz touchscreen compatible monitor called a subscreen. The second monitor isn't mandatory, we can get around that using spice2x.
    • LDJ expects 60hz monitor for its main screen, and no subscreen.

    We'll be using the terms TDJ for Lightning, and LDJ for Standard throughout the guide.

    "},{"location":"games/iidx30/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure with a few folders only, as follows.

    If your data doesn't look like this

    If you're missing the modules folder and instead have bunch of .dll files next to your folders:

    • Create a modules folder.
    • Move all .dll files inside of it so you end up with a structure as shown above.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    If you don't need to update your data, you can skip over to the Installing Spice2x section.

    "},{"location":"games/iidx30/setup/#updating-data","title":"Updating data","text":"Please make sure you're using the right update for your current data.

    Patches re-uploaded by the community tend to be named LDJ-DATECODE-to-DATECODE.

    For example LDJ-2022120800-to-2023090500.

    • 2022120800 being your current data's version.
    • 2023090500 being the version you would arrive at.
    • Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.
    • Open prop\\ea3-config.xml in a text editor and find the following lines near the top.
        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">A</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2023090500</ext>\n    </soft>\n

    On the line with <ext __type=\"str\"> the datecode needs to match your new version.

    • If that's already the case then great! Don't touch anything.
    • If it instead corresponds to our pre-patch datecode, replace it with the new one.

    Now save the file.

    "},{"location":"games/iidx30/setup/#installing-spice2x","title":"Installing Spice2x","text":"
    • Head over to spice2x.github.io and download the latest release.
    • Extract the spice64.exe and spicecfg.exe files from the archive to your game's directory.
    "},{"location":"games/iidx30/setup/#configuring-spice2x","title":"Configuring Spice2x","text":"

    Open spicecfg.exe, each following sub-section corresponds to a tab at the top.

    "},{"location":"games/iidx30/setup/#buttons","title":"Buttons","text":"

    Click on Bind then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're using LDJ:

    • P1 Keypad: 1 to 9

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx30/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • For Turntable P1, click Bind.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the Preview turns along with it.
    • Click Close, leaving the rest of the settings alone.
    "},{"location":"games/iidx30/setup/#overlay","title":"Overlay","text":"

    Modifying buttons in this section is not required but you are free to change what you want.

    Click on Bind then press the key you want associated with the action.

    "},{"location":"games/iidx30/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through spice2x.

    If it does, here's how you may link different actions to your lights:

    • Click Bind.
    • In Device, pick your controller.
    • In Light Control, select the corresponding light.
    • Click Close.
    • Repeat for your other lights.
    "},{"location":"games/iidx30/setup/#cards","title":"Cards","text":"

    Covered in the Connecting to a network section.

    "},{"location":"games/iidx30/setup/#patches","title":"Patches","text":"

    As of writing, web patching is recommended for IIDX 30 Resident as opposed to spice2x patching.

    Spice2x patching is fairly new and the game's latest releases are prioritized for conversion.

    For now use Mon's BemaniPatcher, more info can be found in the web patching page.

    As a general rule of thumb, if you're not sure what a patch does or you're not absolutely certain you need it, leave it alone, regardless of recommendations below.

    General patches Patch Recommendation Description Standard/Menu Timer Freeze Either Freezes the timer in all non-premium environments. Premium Free Timer Freeze Either Freezes the timer in Premium Free mode. Cursor Lock Either In song select, always returns to the previously selected song. CS-style Song Start Delay Either At the start of a song, holding Start will pause it until you release it. Increase Game Volume Either Ignores in-game settings and keeps the volume at a maximum, helpful for TDJ which tends to be quiet. Hide all bottom text Either Hides text at the bottom of the screen such as Credits or Paseli."},{"location":"games/iidx30/setup/#api","title":"API","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx30/setup/#options","title":"Options","text":"

    If you don't know what an option does, hover over the question mark at the very left.

    Be very careful changing options you don't understand as it may cause issues.

    Required

    Category Option Parameter Setting Game Options IIDX Disable Cameras -iidxdisablecams ON Network EA Service URL -url Covered in Connecting to a network

    Required For TDJ

    Category Option Parameter Setting Game Options IIDX TDJ Mode -iidxtdj ON

    If you only have a single 120hz monitor, and not another 60hz touchscreen:

    Category Option Parameter Setting Game Options IIDX TDJ Mode -graphics-force-single-adapter ON

    Highly Recommended for NVIDIA users ONLY

    Category Option Parameter Setting Graphics (common) NVIDIA profile optimization -nvprofile ON"},{"location":"games/iidx30/setup/#advanced-development","title":"Advanced & Development","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx30/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Open spicecfg.exe and head to the Options tab.

    In the Network category, set the following settings:

    • EA Service URL to the URL provided by your network.
    • PCBID to the PCBID provided by your network.

    Next you need a card number. If you don't already have one, generate one in the Cards tab. To keep your card number safe, create a new .txt file with ONLY it inside.

    Once that's done, head to the Cards tab, for Player 1 click Open... and point to your text file.

    Local e-amuse Emulator (Asphyxia)

    This is covered in the Asphyxia CORE page.

    "},{"location":"games/iidx30/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/iidx30/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/iidx30/setup/#audio","title":"Audio","text":"
    • Open spicecfg.exe.
    • At the very top, click on Shortcuts then Audio Playback Devices.
    • In the popup window, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick the 24 bit, 44100 Hz (CD Quality) option and click Apply then OK.
    "},{"location":"games/iidx30/setup/#standard-lightning-language-settings","title":"Standard / Lightning / Language settings","text":"

    Read through the Extra Information page and edit your prop\\ea3-config.xml file if necessary.

    "},{"location":"games/iidx30/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx30/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run spice64.exe, press Yes when it asks for elevated privileges.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    "},{"location":"games/iidx30/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Test key to initialize the backup data, a message will pop up stating it's been initialized.

    Next, you'll get another error.

    Let the game run for a bit until the monitor check is complete and you should be taken to the service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Start by going up to CLOCK.

    Here, simply select SAVE AND EXIT and the clock will be set.

    You'll be back in the service menu.

    "},{"location":"games/iidx30/setup/#network-options","title":"NETWORK OPTIONS","text":"

    Go to NETWORK OPTIONS then SHOP NAME SETTING.

    We will need to set a shop name.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Go to EXIT then SAVE AND EXIT.

    Select GAME MODE.

    You're all done! The game should load up properly now.

    "},{"location":"games/iidx30/setup/#carding-in","title":"Carding in","text":"

    Before carding in, you have the option of changing the game's language by pressing your EFFECT key.

    For LDJ (Standard)

    LDJ should accept keypad number binds:

    • Press your Keypad Insert Card button.
    • Enter your code using your keypad binds.
    For TDJ (Lightning)

    TDJ will ignore keypad number binds, you need to:

    • Press your Keypad Insert Card button.
    • Press your Toggle Sub Screen overlay button (PgUp by default) to bring up the sub screen.
    • Enter your code by clicking on the subscreen's keypad.
    • If your code is accepted, you may now close the overlay.
    "},{"location":"games/iidx30/setup/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issue?

    Check out the Troubleshooting and Error Codes pages.

    For any more game-specific information, check out Extra Information.

    "},{"location":"games/iidx30/troubleshooting/","title":"beatmania IIDX 30 RESIDENT","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx30/troubleshooting/#im-having-performance-issues","title":"I'm having performance issues!","text":"

    If you're having performance issues of some kind, spice2x's PC optimization guide is worth looking at.

    "},{"location":"games/iidx30/troubleshooting/#my-game-is-running-slowfast-after-finishing-a-song-the-game-gets-stuck-loading","title":"My game is running slow/fast, After finishing a song the game gets stuck loading!","text":"

    The most common reason for this is the game is running over its required refresh rate. To solve this, make sure v-sync isn't disabled in your graphics card's settings.

    For NVIDIA users, enable NVIDIA profile optimization (-nvprofile) in the Options tab.

    "},{"location":"games/iidx30/troubleshooting/#how-do-i-set-my-offset","title":"How do I set my offset?","text":"

    Play through a chart you're comfortable with.

    If you're getting too many Fast, increase your offset (+). If you're getting too many Slow, decrease your offset (-).

    "},{"location":"games/iidx30/troubleshooting/#my-inputs-arent-working-i-cant-get-past-error-messages","title":"My inputs aren't working / I can't get past error messages!","text":"

    If none of your inputs are working, try updating spice2x, you can also try using the beta versions if the stable releases don't work for you.

    "},{"location":"games/iidx30/troubleshooting/#my-game-audio-is-super-quiet","title":"My game audio is super quiet!","text":"

    When using TDJ mode the audio is very quiet by default. To mitigate this, you can use the Increase Game Volume patch.

    "},{"location":"games/iidx30/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    IIDX uses WASAPI exclusive mode for audio to get better audio latency. Unlike former versions of the games which used DirectSound.

    You can use the Shared Mode WASAPI patch to deal with some hardware issues, it can also be used to hear audio outside the game at the cost of audio latency.

    "},{"location":"games/iidx30/troubleshooting/#im-not-getting-any-audio-or-my-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm not getting any audio, or my audio is completely wrecked and I'm using an External Dac!","text":"

    Many setups have found some difficulty with audio due to various equipment being used. Consider using the Shared Mode WASAPI patch.

    "},{"location":"games/iidx31/extras/","title":"beatmania IIDX 31 EPOLIS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx31/extras/#standard-lightning-modes","title":"Standard & Lightning modes","text":"

    Lightning mode requires a 120hz capable monitor.

    To make use of the Lightning Mode, which unlocks the subscreen and 120FPS, we need to go to the contents\\prop folder and edit the ea3-config.xml file.

    We're interested in these lines:

        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">E</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024050700</ext>\n    </soft>\n

    This is the line that determines if the game will run in Standard (60 FPS) or Lightning (120 FPS) mode.

    <spec __type=\"str\">E</spec>\n
    • E for Standard (LDJ-012, LDJ, 60hz)
    • D for Lightning (LDJ-010, TDJ, 120hz)
    "},{"location":"games/iidx31/extras/#changing-the-games-language","title":"Changing the game's language","text":"

    This is done in-game before card-in by pressing your EFFECT key.

    "},{"location":"games/iidx31/extras/#more-about-ea3-configxml","title":"More about ea3-config.xml","text":"

    The ea3-config.xml file is located inside the prop folder.

    Below is an explanation on what different sections of this file do.

    The following lines change the PCBID and HARDID that your system reports to your e-amusement server. There is no need to manually change this as spice2x will do it for us.

    <pcbid __type=\"str\">00010203040506070809</pcbid>\n<hardid __type=\"str\">00010203040506070809</hardid>\n

    The following line determines what version of the game you are running. You should never change this. It should always say LDJ.

    <model __type=\"str\">LDJ</model>\n

    The following line determines the game's region. You should never change this. As you can change the language in-game.

    <dest __type=\"str\">J</dest>\n

    You should never change this. It should always say A for Epolis.

    <rev __type=\"str\">A</rev>\n

    The following line determines your datecode. Always keep it up to date with your game's current version.

    <ext __type=\"str\">2024052100</ext>\n

    The following line determine what remote service URL spice2x is supposed to connect to. There is no need to manually change this as spice2x will do it for us.

    <services __type=\"str\">http://localhost:8083</services>\n
    "},{"location":"games/iidx31/setup/","title":"beatmania IIDX 31 EPOLIS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx31/setup/#about-data","title":"About data","text":"

    The full game should be around 100gb while updates are only around 2-5gb in size.

    Standard (LDJ) / Lightning (TDJ)

    Please keep the following in mind as you're going through this guide.

    IIDX's codename is LDJ. For IIDX 31 Epolis this would be either:

    • LDJ-010 (TDJ, Lightning cab, 120 FPS)
    • LDJ-012 (LDJ, Standard cab, 60 FPS)

    The main difference between 010 and 012 is the game's main .dll file, bm2dx.dll.

    This changes which features the game offers, and which conditions the game expects to run under.

    • TDJ expects a 120hz compatible monitor for its main screen, and a second 60hz touchscreen compatible monitor called a subscreen. The second monitor isn't mandatory, we can get around that using spice2x.
    • LDJ expects 60hz monitor for its main screen, and no subscreen.

    We'll be using the terms TDJ for Lightning, and LDJ for Standard throughout the guide.

    If you're coming from IIDX 30 Resident

    You'll want to update your data from LDJ-003 to LDJ-010 or LDJ-012 FIRST then follow this guide as normal.

    "},{"location":"games/iidx31/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure with a few folders only, as follows.

    If your data doesn't look like this

    If you're missing the modules folder and instead have bunch of .dll files next to your folders:

    • Create a modules folder.
    • Move all .dll files inside of it so you end up with a structure as shown above.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    If you don't need to update your data, you can skip over to the Installing Spice2x section.

    "},{"location":"games/iidx31/setup/#updating-data","title":"Updating data","text":"Please make sure you're using the right update for your current data.

    As we've seen in the About data section, the main difference between LDJ and TDJ is the bm2dx.dll file. When updating from a previous version to the next, our current .dll will be overwritten.

    Knowing that, patches re-uploaded by the community tend to be named LDJ-DATECODE-to-LDJ-010/012-DATECODE. Note: If updating from IIDX 30 Resident, it will be LDJ-003-DATECODE-to-LDJ-010/012-DATECODE.

    For example LDJ-2024032500-to-LDJ-010-2024050700.

    • 2024032500 being your current data's version, no matter if it's using a TDJ or LDJ .dll file.
    • 2024050700 being the version you would arrive at.
    • 010 meaning you would end up with a TDJ (Lightning Cab) bm2dx.dll file.
    • Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.
    • Open prop\\ea3-config.xml in a text editor and find the following lines near the top.
        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">E</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024050700</ext>\n    </soft>\n

    On the line with <spec __type=\"str\"> the letter needs to match your data type:

    • E for Standard (LDJ-012, LDJ, 60hz)
    • D for Lightning (LDJ-010, TDJ, 120hz)

    Replace the letter accordingly if necessary.

    On the line with <ext __type=\"str\"> the datecode needs to match your new version.

    • If that's already the case then great! Don't touch anything.
    • If it instead corresponds to our pre-patch datecode, replace it with the new one.

    Now save the file.

    "},{"location":"games/iidx31/setup/#installing-spice2x","title":"Installing Spice2x","text":"
    • Head over to spice2x.github.io and download the latest release.
    • Extract the spice64.exe and spicecfg.exe files from the archive to your game's directory.
    "},{"location":"games/iidx31/setup/#configuring-spice2x","title":"Configuring Spice2x","text":"

    Open spicecfg.exe, each following sub-section corresponds to a tab at the top.

    "},{"location":"games/iidx31/setup/#buttons","title":"Buttons","text":"

    Click on Bind then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're using LDJ:

    • P1 Keypad: 1 to 9

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx31/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • For Turntable P1, click Bind.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the Preview turns along with it.
    • Click Close, leaving the rest of the settings alone.
    "},{"location":"games/iidx31/setup/#overlay","title":"Overlay","text":"

    Modifying buttons in this section is not required but you are free to change what you want.

    Click on Bind then press the key you want associated with the action.

    "},{"location":"games/iidx31/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through spice2x.

    If it does, here's how you may link different actions to your lights:

    • Click Bind.
    • In Device, pick your controller.
    • In Light Control, select the corresponding light.
    • Click Close.
    • Repeat for your other lights.
    "},{"location":"games/iidx31/setup/#cards","title":"Cards","text":"

    Covered in the Connecting to a network section.

    "},{"location":"games/iidx31/setup/#patches","title":"Patches","text":"

    First go through the Spice2x Patching page to import patches.

    If not using ASIO, you NEED to patch Force Audio Output Mode to WASAPI otherwise the game won't boot.

    Other patches that may be useful to you

    Note: As a general rule of thumb, the fewer patches the better. If you're unsure what something does, don't enable or change it.

    Patch Recommendation Description Force TDJ Mode Either Starts the game in TDJ (010) mode when using a LDJ (012) .dll file. Use this instead of forcing 120Hz using other patches. Standard/Menu Timer Freeze Either Freezes the timer in all non-premium environments. Premium Free Timer Freeze Either Freezes the timer in Premium Free mode. Cursor Lock Either In song select, always returns to the previously selected song. CS-style Song Start Delay Either At the start of a song, holding Start will pause it until you release it. Increase Game Volume Either Ignores in-game settings and keeps the volume at a maximum, helpful for TDJ which tends to be quiet. Hide all bottom text Either Hides text at the bottom of the screen such as Credits or Paseli."},{"location":"games/iidx31/setup/#api","title":"API","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx31/setup/#options","title":"Options","text":"

    If you don't know what an option does, hover over the question mark at the very left.

    Be very careful changing options you don't understand as it may cause issues.

    Required

    Category Option Parameter Setting Game Options IIDX Disable Cameras -iidxdisablecams ON Network EA Service URL -url Covered in Connecting to a network

    Required For TDJ

    Category Option Parameter Setting Game Options IIDX TDJ Mode -iidxtdj ON

    If you only have a single 120hz monitor, and not another 60hz touchscreen:

    Category Option Parameter Setting Graphics (common) Only Use One Monitor -graphics-force-single-adapter ON

    Highly Recommended for NVIDIA users ONLY

    Category Option Parameter Setting Graphics (common) NVIDIA profile optimization -nvprofile ON"},{"location":"games/iidx31/setup/#advanced-development","title":"Advanced & Development","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx31/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Open spicecfg.exe and head to the Options tab.

    In the Network category, set the following settings:

    • EA Service URL to the URL provided by your network.
    • PCBID to the PCBID provided by your network.

    Next you need a card number. If you don't already have one, generate one in the Cards tab. To keep your card number safe, create a new .txt file with ONLY it inside.

    Once that's done, head to the Cards tab, for Player 1 click Open... and point to your text file.

    Local e-amuse Emulator (Asphyxia)

    This is covered in the Asphyxia CORE page.

    "},{"location":"games/iidx31/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/iidx31/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/iidx31/setup/#audio","title":"Audio","text":"
    • Open spicecfg.exe.
    • At the very top, click on Shortcuts then Audio Playback Devices.
    • In the popup window, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick the 24 bit, 44100 Hz (CD Quality) option and click Apply then OK. 24 bit, 48000 Hz is also acceptable as spice2x will handle it.
    "},{"location":"games/iidx31/setup/#standard-lightning-language-settings","title":"Standard / Lightning / Language settings","text":"

    Read through the Extra Information page and edit your prop\\ea3-config.xml file if necessary.

    "},{"location":"games/iidx31/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx31/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run spice64.exe, press Yes when it asks for elevated privileges.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    "},{"location":"games/iidx31/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Test key to initialize the backup data, a message will pop up stating it's been initialized.

    Next, you'll get another error.

    Let the game run for a bit until the monitor check is complete and you should be taken to the service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Start by going up to CLOCK.

    Here, simply select SAVE AND EXIT and the clock will be set.

    You'll be back in the service menu.

    "},{"location":"games/iidx31/setup/#network-options","title":"NETWORK OPTIONS","text":"

    Go to NETWORK OPTIONS then SHOP NAME SETTING.

    We will need to set a shop name.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Go to EXIT then SAVE AND EXIT.

    Select GAME MODE.

    You're all done! The game should load up properly now.

    "},{"location":"games/iidx31/setup/#carding-in","title":"Carding in","text":"

    Before carding in, you have the option of changing the game's language by pressing your EFFECT key.

    For LDJ (Standard)

    LDJ should accept keypad number binds:

    • Press your Keypad Insert Card button.
    • Enter your code using your keypad binds.
    For TDJ (Lightning)

    TDJ will ignore keypad number binds, you need to:

    • Press your Keypad Insert Card button.
    • Press your Toggle Sub Screen overlay button (PgUp by default) to bring up the sub screen.
    • Enter your code by clicking on the subscreen's keypad.
    • If your code is accepted, you may now close the overlay.
    "},{"location":"games/iidx31/setup/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issue?

    Check out the Troubleshooting and Error Codes pages.

    For any more game-specific information, check out Extra Information.

    "},{"location":"games/iidx31/troubleshooting/","title":"beatmania IIDX 31 EPOLIS","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx31/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things. The most common of which is you need to patch the DLL for your game with Force Audio Output Mode set to WASAPI or ASIO. Also see the audio section in the setup guide.

    "},{"location":"games/iidx31/troubleshooting/#my-game-is-running-too-slowfast-game-gets-stuck-monitor-error-at-boot-error-5-1503-0043","title":"My game is running too slow/fast / Game gets stuck / Monitor error at boot / Error 5-1503-0043","text":"

    Potential causes:

    1. The game could be running over/under its required refresh rate (60 for LDJ, 120 for TDJ) To solve this, make sure v-sync isn't disabled in your graphics card's settings. For NVIDIA users, enable NVIDIA profile optimization (-nvprofile) in the Options tab.
    2. It could be that your computer's performance isn't good enough to keep a steady framerate.
    "},{"location":"games/iidx31/troubleshooting/#im-having-performance-issues-my-fps-fluctates","title":"I'm having performance issues / my FPS fluctates!","text":"

    If you're having performance issues of some kind, spice2x's PC optimization guide is worth looking at. If none of that works, your PC probably isn't good enough to run the game, sorry.

    "},{"location":"games/iidx31/troubleshooting/#unable-to-login-eamuse-error-network-error","title":"Unable to login / Eamuse error / Network error","text":"

    Get the proper Asphyxia plugin from our Discord server in the #iidx channel > Resources post. Make sure you didn't enable -smartea in spicecfg's options.

    "},{"location":"games/iidx31/troubleshooting/#how-do-i-set-my-offset","title":"How do I set my offset?","text":"

    Play through a chart you're comfortable with.

    If you're getting too many Fast, increase your offset (+). If you're getting too many Slow, decrease your offset (-).

    "},{"location":"games/iidx31/troubleshooting/#my-inputs-arent-working-i-cant-get-past-error-messages","title":"My inputs aren't working / I can't get past error messages!","text":"

    If none of your inputs are working, try updating spice2x, you can also try using the beta versions if the stable releases don't work for you.

    "},{"location":"games/iidx31/troubleshooting/#my-game-audio-is-super-quiet","title":"My game audio is super quiet!","text":"

    When using TDJ mode the audio is very quiet by default. To mitigate this, you can use the Increase Game Volume patch.

    "},{"location":"games/iidx31/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    IIDX uses WASAPI exclusive mode for audio to get better audio latency. Unlike former versions of the games which used DirectSound.

    You can use the Shared Mode WASAPI patch to hear other apps while the game is running, at the cost of some audio latency.

    "},{"location":"games/iidx31/troubleshooting/#im-not-getting-any-audio-or-my-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm not getting any audio, or my audio is completely wrecked and I'm using an External Dac!","text":"

    Many setups have found some difficulty with audio due to various equipment being used. Consider using the Shared Mode WASAPI patch.

    "},{"location":"games/iidx31/troubleshooting/#my-audio-is-sloweddistorted-and-im-using-the-shared-mode-wasapi-patch","title":"My audio is slowed/distorted and I'm using the Shared Mode WASAPI patch.","text":"

    When using this patch, you must set your audio device's sample rate to 48000 Hz. See audio for more details

    "},{"location":"games/iidx32/extras/","title":"beatmania IIDX 32 Pinky Crush","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx32/extras/#standard-lightning-modes","title":"Standard & Lightning modes","text":"

    Lightning mode requires a 120hz capable monitor.

    To make use of the Lightning Mode, which unlocks the subscreen and 120FPS, we need to go to the contents\\prop folder and edit the ea3-config.xml file.

    We're interested in these lines:

        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">E</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024100900</ext>\n    </soft>\n

    This is the line that determines if the game will run in Standard (60 FPS) or Lightning (120 FPS) mode.

    <spec __type=\"str\">E</spec>\n
    • E for Standard (LDJ-012, LDJ, 60hz)
    • D for Lightning (LDJ-010, TDJ, 120hz)
    "},{"location":"games/iidx32/extras/#changing-the-games-language","title":"Changing the game's language","text":"

    This is done in-game before card-in by pressing your EFFECT key.

    "},{"location":"games/iidx32/extras/#more-about-ea3-configxml","title":"More about ea3-config.xml","text":"

    The ea3-config.xml file is located inside the prop folder.

    Below is an explanation on what different sections of this file do.

    The following lines change the PCBID and HARDID that your system reports to your e-amusement server. There is no need to manually change this as spice2x will do it for us.

    <pcbid __type=\"str\">00010203040506070809</pcbid>\n<hardid __type=\"str\">00010203040506070809</hardid>\n

    The following line determines what version of the game you are running. You should never change this. It should always say LDJ.

    <model __type=\"str\">LDJ</model>\n

    The following line determines the game's region. You should never change this. As you can change the language in-game.

    <dest __type=\"str\">J</dest>\n

    You should never change this. It should always say A for Pinky Crush.

    <rev __type=\"str\">A</rev>\n

    The following line determines your datecode. Always keep it up to date with your game's current version.

    <ext __type=\"str\">2024100900</ext>\n

    The following line determine what remote service URL spice2x is supposed to connect to. There is no need to manually change this as spice2x will do it for us.

    <services __type=\"str\">http://localhost:8083</services>\n
    "},{"location":"games/iidx32/setup/","title":"beatmania IIDX 32 Pinky Crush","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx32/setup/#about-data","title":"About data","text":"

    The full game should be around 100gb while updates are only around 2-5gb in size.

    Standard (LDJ) / Lightning (TDJ)

    Please keep the following in mind as you're going through this guide.

    IIDX's codename is LDJ. For IIDX 32 Pinky Crush this would be either:

    • LDJ-010 (TDJ, Lightning cab, 120 FPS)
    • LDJ-012 (LDJ, Standard cab, 60 FPS)

    The main difference between 010 and 012 is the game's main .dll file, bm2dx.dll.

    This changes which features the game offers, and which conditions the game expects to run under.

    • TDJ expects a 120hz compatible monitor for its main screen, and a second 60hz touchscreen compatible monitor called a subscreen. The second monitor isn't mandatory, we can get around that using spice2x.
    • LDJ expects 60hz monitor for its main screen, and no subscreen.

    We'll be using the terms TDJ for Lightning, and LDJ for Standard throughout the guide.

    If you're coming from IIDX 30 Resident

    You'll want to update your data from LDJ-003 to LDJ-010 or LDJ-012 FIRST then follow this guide as normal.

    "},{"location":"games/iidx32/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure with a few folders only, as follows.

    If your data doesn't look like this

    If you're missing the modules folder and instead have bunch of .dll files next to your folders:

    • Create a modules folder.
    • Move all .dll files inside of it so you end up with a structure as shown above.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    If you don't need to update your data, you can skip over to the Installing Spice2x section.

    "},{"location":"games/iidx32/setup/#updating-data","title":"Updating data","text":"Please make sure you're using the right update for your current data.

    As we've seen in the About data section, the main difference between LDJ and TDJ is the bm2dx.dll file. When updating from a previous version to the next, our current .dll will be overwritten.

    Knowing that, patches re-uploaded by the community tend to be named LDJ-DATECODE-to-LDJ-010/012-DATECODE. Note: If updating from IIDX 30 Resident, it will be LDJ-003-DATECODE-to-LDJ-010/012-DATECODE.

    For example LDJ-2024082600-to-LDJ-010-2024100900.

    • 2024082600 being your current data's version, no matter if it's using a TDJ or LDJ .dll file.
    • 2024100900 being the version you would arrive at.
    • 010 meaning you would end up with a TDJ (Lightning Cab) bm2dx.dll file.
    • Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.
    • Open prop\\ea3-config.xml in a text editor and find the following lines near the top.
        <soft>\n        <model __type=\"str\">LDJ</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">E</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024100900</ext>\n    </soft>\n

    On the line with <spec __type=\"str\"> the letter needs to match your data type:

    • E for Standard (LDJ-012, LDJ, 60hz)
    • D for Lightning (LDJ-010, TDJ, 120hz)

    Replace the letter accordingly if necessary.

    On the line with <ext __type=\"str\"> the datecode needs to match your new version.

    • If that's already the case then great! Don't touch anything.
    • If it instead corresponds to our pre-patch datecode, replace it with the new one.

    Now save the file.

    "},{"location":"games/iidx32/setup/#installing-spice2x","title":"Installing Spice2x","text":"
    • Head over to spice2x.github.io and download the latest release.
    • Extract the spice64.exe and spicecfg.exe files from the archive to your game's directory.
    "},{"location":"games/iidx32/setup/#configuring-spice2x","title":"Configuring Spice2x","text":"

    Open spicecfg.exe, each following sub-section corresponds to a tab at the top.

    "},{"location":"games/iidx32/setup/#buttons","title":"Buttons","text":"

    Click on Bind then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're using LDJ:

    • P1 Keypad: 1 to 9

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx32/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • For Turntable P1, click Bind.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the Preview turns along with it.
    • Click Close, leaving the rest of the settings alone.
    "},{"location":"games/iidx32/setup/#overlay","title":"Overlay","text":"

    Modifying buttons in this section is not required but you are free to change what you want.

    Click on Bind then press the key you want associated with the action.

    "},{"location":"games/iidx32/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through spice2x.

    If it does, here's how you may link different actions to your lights:

    • Click Bind.
    • In Device, pick your controller.
    • In Light Control, select the corresponding light.
    • Click Close.
    • Repeat for your other lights.
    "},{"location":"games/iidx32/setup/#cards","title":"Cards","text":"

    Covered in the Connecting to a network section.

    "},{"location":"games/iidx32/setup/#patches","title":"Patches","text":"

    First go through the Spice2x Patching page to import patches.

    If not using ASIO, you NEED to patch Force Audio Output Mode to WASAPI otherwise the game won't boot.

    Other patches that may be useful to you

    Note: As a general rule of thumb, the fewer patches the better. If you're unsure what something does, don't enable or change it.

    Patch Recommendation Description Force TDJ Mode Either Starts the game in TDJ (010) mode when using a LDJ (012) .dll file. Use this instead of forcing 120Hz using other patches. Standard/Menu Timer Freeze Either Freezes the timer in all non-premium environments. Premium Free Timer Freeze Either Freezes the timer in Premium Free mode. Cursor Lock Either In song select, always returns to the previously selected song. CS-style Song Start Delay Either At the start of a song, holding Start will pause it until you release it. Increase Game Volume Either Ignores in-game settings and keeps the volume at a maximum, helpful for TDJ which tends to be quiet. Hide all bottom text Either Hides text at the bottom of the screen such as Credits or Paseli."},{"location":"games/iidx32/setup/#api","title":"API","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx32/setup/#options","title":"Options","text":"

    If you don't know what an option does, hover over the question mark at the very left.

    Be very careful changing options you don't understand as it may cause issues.

    Required

    Category Option Parameter Setting Game Options IIDX Disable Cameras -iidxdisablecams ON Network EA Service URL -url Covered in Connecting to a network

    Required For TDJ

    Category Option Parameter Setting Game Options IIDX TDJ Mode -iidxtdj ON

    If you only have a single 120hz monitor, and not another 60hz touchscreen:

    Category Option Parameter Setting Graphics (common) Only Use One Monitor -graphics-force-single-adapter ON

    Highly Recommended for NVIDIA users ONLY

    Category Option Parameter Setting Graphics (common) NVIDIA profile optimization -nvprofile ON"},{"location":"games/iidx32/setup/#advanced-development","title":"Advanced & Development","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/iidx32/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Open spicecfg.exe and head to the Options tab.

    In the Network category, set the following settings:

    • EA Service URL to the URL provided by your network.
    • PCBID to the PCBID provided by your network.

    Next you need a card number. If you don't already have one, generate one in the Cards tab. To keep your card number safe, create a new .txt file with ONLY it inside.

    Once that's done, head to the Cards tab, for Player 1 click Open... and point to your text file.

    Local e-amuse Emulator (Asphyxia)

    This is covered in the Asphyxia CORE page.

    "},{"location":"games/iidx32/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/iidx32/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/iidx32/setup/#audio","title":"Audio","text":"
    • Open spicecfg.exe.
    • At the very top, click on Shortcuts then Audio Playback Devices.
    • In the popup window, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick the 24 bit, 44100 Hz (CD Quality) option and click Apply then OK. 24 bit, 48000 Hz is also acceptable as spice2x will handle it.
    "},{"location":"games/iidx32/setup/#standard-lightning-language-settings","title":"Standard / Lightning / Language settings","text":"

    Read through the Extra Information page and edit your prop\\ea3-config.xml file if necessary.

    "},{"location":"games/iidx32/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx32/setup/#backup-data","title":"BACKUP DATA","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run spice64.exe, press Yes when it asks for elevated privileges.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    "},{"location":"games/iidx32/setup/#clock-error","title":"CLOCK ERROR","text":"

    Press your Test key to initialize the backup data, a message will pop up stating it's been initialized.

    Next, you'll get another error.

    Let the game run for a bit until the monitor check is complete and you should be taken to the service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Start by going up to CLOCK.

    Here, simply select SAVE AND EXIT and the clock will be set.

    You'll be back in the service menu.

    "},{"location":"games/iidx32/setup/#network-options","title":"NETWORK OPTIONS","text":"

    Go to NETWORK OPTIONS then SHOP NAME SETTING.

    We will need to set a shop name.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Go to EXIT then SAVE AND EXIT.

    Select GAME MODE.

    You're all done! The game should load up properly now.

    "},{"location":"games/iidx32/setup/#carding-in","title":"Carding in","text":"

    Before carding in, you have the option of changing the game's language by pressing your EFFECT key.

    For LDJ (Standard)

    LDJ should accept keypad number binds:

    • Press your Keypad Insert Card button.
    • Enter your code using your keypad binds.
    For TDJ (Lightning)

    TDJ will ignore keypad number binds, you need to:

    • Press your Keypad Insert Card button.
    • Press your Toggle Sub Screen overlay button (PgUp by default) to bring up the sub screen.
    • Enter your code by clicking on the subscreen's keypad.
    • If your code is accepted, you may now close the overlay.
    "},{"location":"games/iidx32/setup/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issue?

    Check out the Troubleshooting and Error Codes pages.

    For any more game-specific information, check out Extra Information.

    "},{"location":"games/iidx32/troubleshooting/","title":"beatmania IIDX 32 Pinky Crush","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx32/troubleshooting/#my-game-crashes-on-launch","title":"My game crashes on launch!","text":"

    Could be due to many things. The most common of which is you need to patch the DLL for your game with Force Audio Output Mode set to WASAPI or ASIO. Also see the audio section in the setup guide.

    "},{"location":"games/iidx32/troubleshooting/#my-game-is-running-too-slowfast-game-gets-stuck-monitor-error-at-boot-error-5-1503-0043","title":"My game is running too slow/fast / Game gets stuck / Monitor error at boot / Error 5-1503-0043","text":"

    Potential causes:

    1. The game could be running over/under its required refresh rate (60 for LDJ, 120 for TDJ) To solve this, make sure v-sync isn't disabled in your graphics card's settings. For NVIDIA users, enable NVIDIA profile optimization (-nvprofile) in the Options tab.
    2. It could be that your computer's performance isn't good enough to keep a steady framerate.
    "},{"location":"games/iidx32/troubleshooting/#im-having-performance-issues-my-fps-fluctates","title":"I'm having performance issues / my FPS fluctates!","text":"

    If you're having performance issues of some kind, spice2x's PC optimization guide is worth looking at. If none of that works, your PC probably isn't good enough to run the game, sorry.

    "},{"location":"games/iidx32/troubleshooting/#unable-to-login-eamuse-error-network-error","title":"Unable to login / Eamuse error / Network error","text":"

    Get the proper Asphyxia plugin from our Discord server in the #iidx channel > Resources post. Make sure you didn't enable -smartea in spicecfg's options.

    "},{"location":"games/iidx32/troubleshooting/#how-do-i-set-my-offset","title":"How do I set my offset?","text":"

    Play through a chart you're comfortable with.

    If you're getting too many Fast, increase your offset (+). If you're getting too many Slow, decrease your offset (-).

    "},{"location":"games/iidx32/troubleshooting/#my-inputs-arent-working-i-cant-get-past-error-messages","title":"My inputs aren't working / I can't get past error messages!","text":"

    If none of your inputs are working, try updating spice2x, you can also try using the beta versions if the stable releases don't work for you.

    "},{"location":"games/iidx32/troubleshooting/#my-game-audio-is-super-quiet","title":"My game audio is super quiet!","text":"

    When using TDJ mode the audio is very quiet by default. To mitigate this, you can use the Increase Game Volume patch.

    "},{"location":"games/iidx32/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    IIDX uses WASAPI exclusive mode for audio to get better audio latency. Unlike former versions of the games which used DirectSound.

    You can use the Shared Mode WASAPI patch to hear other apps while the game is running, at the cost of some audio latency.

    "},{"location":"games/iidx32/troubleshooting/#im-not-getting-any-audio-or-my-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm not getting any audio, or my audio is completely wrecked and I'm using an External Dac!","text":"

    Many setups have found some difficulty with audio due to various equipment being used. Consider using the Shared Mode WASAPI patch.

    "},{"location":"games/iidx32/troubleshooting/#my-audio-is-sloweddistorted-and-im-using-the-shared-mode-wasapi-patch","title":"My audio is slowed/distorted and I'm using the Shared Mode WASAPI patch.","text":"

    When using this patch, you must set your audio device's sample rate to 48000 Hz. See audio for more details

    "},{"location":"games/iidx9/setup/","title":"beatmania IIDX 9th style","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/iidx9/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.
    "},{"location":"games/iidx9/setup/#installing-bemanitools","title":"Installing Bemanitools","text":"
    • Download Bemanitools.

    • Inside bemanitools-5.48.zip locate iidx-09-to-12.zip.

    • Extract everything inside the folder that contains the bm2dx.exe which is located in \\C02\\D\\C02\\JAG.

    Pictured below is what your folder should look like. We've removed any files not necessary for 9th style.

    "},{"location":"games/iidx9/setup/#using-iidxhook-09conf","title":"Using iidxhook-09.conf","text":"
    • Download the Bemanitools supplements

    • Open bemanitools-supplement-v1.6.zip and navigate inside misc.zip

    • Inside misc\\d3d8to9, extract d3d8.dll to \\C02\\D\\C02\\JAG.

    This enables us to use the graphic options inside iidxhook-09.conf which we will take advantage of.

    "},{"location":"games/iidx9/setup/#configuring-bemanitools","title":"Configuring Bemanitools","text":"

    To configure your keybinds, open your config.bat file.

    "},{"location":"games/iidx9/setup/#buttons","title":"Buttons","text":"

    Double click on the right on a button that you wish to bind, then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • P1 Game buttons: 1 to 7, Start, EFFECT, VEFX
    • P1 Keypad: Keypad Insert Card

    Only if you're playing using a keyboard:

    • Turntable: TT+, TT- and optionally TT+/- which alternates between TT+ and TT- on each press.
    "},{"location":"games/iidx9/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to TT+ and TT-, you need to:

    • Head to the Analogs tab at the top.
    • In Device, pick your controller.
    • In Control, pick whichever one corresponds to the turntable.
    • Turn your turntable ensuring that the preview turns along with it.
    • Click OK, leaving the rest of the settings alone.
    "},{"location":"games/iidx9/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through bemanitools.

    If it does, here's how you may link different actions to your lights:

    • In Device, pick your controller.
    • In Game Light, select the corresponding button that will be used for that light.
    • Repeat for your other lights.

    If you'd like to play offline, you can head straight to Game resolution and locking FPS

    "},{"location":"games/iidx9/setup/#configuring-bemanitools-for-a-network","title":"Configuring Bemanitools for a network","text":"

    Head over to the Network tab.

    Now we will set up our PIN pad and card.

    • Click on Keyboard device
    • You may or may not have more than one option. To figure out which one is your actual keyboard, select a device inside that list and press a button on the numpad.
    • Once you have found your correct device, the Keyboard status will change (the number and location of the number does not matter, it only matters that it changed).
    • Grab your card, create a .txt and name it however you like. In this example it's called card.txt
    • Place the file in a location that is easily accessible and you won't forget. In this case it's in a seperate folder.

    If you don't have a numpad, make sure to tick Use top keyboard row for PIN pad input. This will also change the Card In button to Backspace.

    "},{"location":"games/iidx9/setup/#connecting-to-a-network","title":"Connecting to a network","text":"
    • Locate your iidxhook-09.conf

    • Open it with your desired text editor (we're using Notepad++)

    • Replace the eamuse.server=localhost:80 with your desired network URL

    • Replace eamuse.pcbid=XXXXXXXXXXXXXXXXXXXX and eamuse.eamid=XXXXXXXXXXXXXXXXXXXX with your PCBID of your network of choice.

    # URL (e.g. http://my.eamuse.server:80/whatever) or IPV4 (e.g. 127.0.0.1:80) of the target eamuse server. The port is optional but defaults to 80.\neamuse.server=localhost:80\n\n# PCBID\neamuse.pcbid=XXXXXXXXXXXXXXXXXXXX\n\n# EAMID\neamuse.eamid=XXXXXXXXXXXXXXXXXXXX\n
    "},{"location":"games/iidx9/setup/#game-resolution-and-locking-fps","title":"Game resolution and locking FPS","text":"

    We'd like to mention that there are two options when it comes to how the game renders. You can choose between Linear and Point.

    Below is an example of how both look like.

    Linear

    Point

    It comes down to your own prefrence what you decide on, Linear is less sharp but doesn't have pixel perfect edges. Point is sharp and is pixel perfect.

    Next up, we'll setup borderless window and configure the proper resolution. We're using a 1920x1080 monitor so we will use that.

    Repeat the previous step and open your iidxhook-09.conf. We want to find these lines:

    # Software limit the frame rate of the rendering loop in hz, e.g. 60 or 59.95 (0.0 = no software limit)\ngfx.frame_rate_limit=0.0\n\n# Run the game windowed\ngfx.windowed=false\n\n# Windowed width, 0 for default size\ngfx.window_width=0\n\n# Windowed height, 0 for default size\ngfx.window_height=0\n\n# Up-/downscale the back buffer's width. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding height parameter.\ngfx.scale_back_buffer_width=0\n\n# Up-/downscale the back buffer's height. This does not change the game's rendering resolution but scales the final frame. Use this to target the native resolution of your monitor/TV, e.g. to avoid over-/underscan, bad image quality or latency caused by the monitors internal upscaler. 0 to disable this feature. Must be set in combination with the corresponding width parameter.\ngfx.scale_back_buffer_height=0\n\n# Filter type to use for up-/downscaling the back buffer. Only used if scaling feature was enabled by setting the scaling width and height parameters. Available types: none, linear, point (refer to D3DTEXTUREFILTERTYPE  for explanation).\ngfx.scale_back_buffer_filter=none\n

    If you can't seem to find them, press CTRL + F and search for gfx.frame_rate_limit=0.0. This will bring you to the first line we want to edit.

    Listed below are the values we want to change them to.

    gfx.frame_rate_limit=59.95\ngfx.windowed=true\ngfx.window_width=1920\ngfx.window_height=1080\ngfx.scale_back_buffer_width=1920\ngfx.scale_back_buffer_height=1080\ngfx.scale_back_buffer_filter=linear\n
    Unless you'd like to have the game properly windowed you can safely ignore gfx.framed=false.

    Make sure to decide on whether you want Linear or Point rendering.

    gfx.scale_back_buffer_filter=linear\ngfx.scale_back_buffer_filter=point\n
    "},{"location":"games/iidx9/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    "},{"location":"games/iidx9/setup/#clock-error","title":"CLOCK ERROR","text":"

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run gamestart.bat.

    If it's your first time running the game, you'll immediately be greeted with this screen.

    The game will automatically bring you into it's service menu.

    Instructions on how to navigate the menu are shown at the bottom of the screen.

    • Press 1 and 2 to go up and down.
    • Press 6 to select/execute.

    Navigate to CLOCK SETUP. You do not need to manually change it. Navigate to SAVE AND EXIT.

    If you'd like to play offline, you can head straight to Final Notes

    "},{"location":"games/iidx9/setup/#enabling-e-amusement-for-online-play","title":"Enabling e-AMUSEMENT for Online Play","text":"

    From the service menu, go to e-AMUSEMENT OPTIONS then e-AMUSEMENT SETTINGS.

    It'll bring you to this screen, change it so that e-AMUSEMENT switches to ON and it will look like this:

    We will need to set a SHOP NAME SETTING and change our PREFECTURE otherwise the game will throw errors at us.

    • Name your shop to whatever you'd like. Instructions on how to navigate are at the bottom of the screen.
    • Navigate to EXIT and select it.
    • Change your prefecture once or how many times you'd like, it doesn't matter as long as it's not the default one.

    Select SAVE AND EXIT. The game will now give you a message, which translated means:

    e-AMUSEMENT settings have been changed. Please turn the power off and on again.

    So, close the game and open it again.

    "},{"location":"games/iidx9/setup/#final-notes","title":"Final Notes","text":"

    You're all done! From the service menu select GAMEMODE and the game should load ready to be played. Make sure to insert two credits by pressing your SERVICE key. Have fun!

    Have any other errors?

    Check out the Troubleshooting section.

    "},{"location":"games/iidx9/troubleshooting/","title":"IIDX 9 Troubleshooting","text":""},{"location":"games/iidx9/troubleshooting/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 59.95hz, the game is hardcoded to run at 59.95hz and this cannot be changed. To solve this, check this section of the guide again.

    "},{"location":"games/iidx9/troubleshooting/#im-getting-network-warning-instead-of-network-ok","title":"I'm getting \"NETWORK WARNING\" instead of \"NETWORK OK\"","text":"

    This can be caused by:

    • Invalid PCBID
    • Firewall blocking connections
    • Invalid eamuse url or port specified
    • Game is not run using the Administrator account
    "},{"location":"games/iidx9/troubleshooting/#my-background-videos-arent-working","title":"My background videos aren't working!","text":"

    You need to install a codec.

    • Open bemanitools-supplement-v1.6.zip and navigate to \\iidx.zip\\iidx\\misc\\ where CLVSD.ax is located.

    • Extract CLVSD.ax inside a folder that you know won't be moved or renamed.

    • Open the command prompt as administrator. Now type regsvr32 \"<location of the file>\\CLVSD.ax\" into the command prompt.

    As an example, it could look like this: regsvr32 \"D:\\BEMANI\\IIDX\\CLVSD.ax\"

    A prompt should appear telling you that it has been installed successfully. This applies for all styles that require this codec, not just HAPPY SKY.

    If an error occurs, you didn't run the command prompt as administrator or you messed up the location of the file.

    You can not move or delete CLVSD.ax at all, otherwise it will revert the changes and you have to install it again.

    "},{"location":"games/iidx9/troubleshooting/#my-game-crashes-immediately","title":"My game crashes immediately!","text":"

    This can have multiple reasons. These fixes shouldn't be needed for 9th style since we're addressing them in the guide. We'll add them anyway just in case.

    "},{"location":"games/iidx9/troubleshooting/#fix-1-wrong-data-structure","title":"Fix #1 (Wrong data structure)","text":"

    Make sure that your unpacked data looks like this:

    • JAx (Game binary revision folder where 'x' can be A, B, C, D, E, F, G)
    • data
    • sidcode.txt

    Any other files are optional and don't have to be removed as these are not required to run the game.

    "},{"location":"games/iidx9/troubleshooting/#fix-2-rteffectsdll-didnt-get-replaced","title":"Fix #2 (RtEffects.dll didn't get replaced)","text":"

    Refer to Getting Started again and check if you have followed all the instructions explained in it.

    "},{"location":"games/jubeatclan/problems/","title":"jubeat clan Common Problems/Tips","text":""},{"location":"games/jubeatclan/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC (ADE-704A)

    This board has a E4690 Radeon MXM card.

    CPU: Intel Celeron B810

    GPU: AMD Radeon E4690

    Chipset: Intel HM65

    "},{"location":"games/jubeatclan/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/jubeatclan/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/jubeatclan/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/jubeatclan/problems/#my-touchscreen-isnt-working","title":"My Touchscreen Isn't Working!","text":"

    There's a myriad of reasons for this. With SpiceTools in most cases, try using the -wintouch parameter if rawinput is not working for your monitor.

    "},{"location":"games/jubeatclan/setup/","title":"jubeat clan","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/jubeatclan/setup/#getting-started","title":"Getting Started","text":"

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's main folder and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/jubeatclan/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/jubeatclan/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/jubeatclan/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/jubeatclan/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you'll immediately be greeted with this screen (cropped to save your sanity with scrolling repeatedly on the page), oh no!

    This is okay, you can use your mouse or touchscreen to simply hit TEST to initialize the backup data, the game will prompt you to reboot, but let's save ourselves some time and instead go into the GAME OPTIONS menu instead, as shown below. If you rebooted, you will see a message telling you to set the \"Shop Settings\" which is what we're going to now do, as shown below.

    Enter the GAME OPTIONS menu and proceed to the SHOP SETTINGS menu.

    From here, we will need to set the SHOP NAME SETTINGS. This is a simple process, simply navigate using the controls in the menu to set any name you desire! For the purpose of the guide, we named it Guide but highly encourage fun and/or lazy names. Lastly, if you're not connected to an online network, you'll need to set the SHOP AREA as well, navigate to any option you prefer, they're all predefined so you can't get creative here, pictured below is what we set ours to.

    With that, you're all done! Simply exit the service menu or reboot then enjoy the game, have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/maimaidx/buddies/controllers/","title":"maimai DX BUDDiES","text":""},{"location":"games/maimaidx/buddies/controllers/#coming-soon","title":"Coming Soon","text":""},{"location":"games/maimaidx/buddies/setup/","title":"maimai DX BUDDiES","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you're coming from a previous version of maimai DX

    Create a new folder for the game and start from scratch. maimai DX DOES NOT like being extracted over old data!

    "},{"location":"games/maimaidx/buddies/setup/#preparing-data","title":"Preparing data","text":"

    There are currently issues with running game data in the E:\\ or Y:\\ drive.Please extract the data into other drives.

    After downloading and extracting your data, we need to make sure your files are not set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and filesand press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure as follows.

    Create two new empty folders named appdata and amfs (and the folder option if not present) next to them as shown below:

    The App folder should have a file structure as follows.

    If your data doesn't look like this

    If your data looks like the third image:

    • Create an App folder and move all files and folders from the image inside of it.
    • Create empty folders named amfs, Option and AppData next to the App folder.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    "},{"location":"games/maimaidx/buddies/setup/#installing-icfs","title":"Installing ICFs","text":"

    Install Configuration Files (ICFs) tell the game what version it is. Without this your game cannot go online!

    If your amfs folder already has filesICF1 and ICF2, skip this step.

    Otherwise, obtain copies of ICF1 for your game version and place it in the amfs folder. If it is named something else, rename it to exactly ICF1 without any file extensions. ICF2 is a copy of ICF1.

    Showing File Extensions

    By default, file extensions on Windows are hidden. Enable them by navigating to the View tab in File Explorer and select File name extensions.

    "},{"location":"games/maimaidx/buddies/setup/#installing-unprotected-executables","title":"Installing Unprotected Executables","text":"

    maimai DX executables are protected and will not run on a regular computer.

    Obtained unprotected (also called \"unpacked\" or \"decrypted\" by the community) copies of the following files and the associated configuration file:

    • amdaemon.exe
    • Sinmai.exe
    • Sinmai_Data/Plugins/amdaemon_api.dll
    • Sinmai_Data/Plugins/Cake.dll
    • Sinmai_Data/Managed/AMDaemon.NET.dll
    • Sinmai_Data/Managed/Assembly-CSharp.dll
    • mai2.ini or maimaiDX.ini

    Copy the files and folders into the App/Package folder of your game data. Agree to overwrite when asked.

    Assembly-CSharp Notes

    Assembly-CSharp.dll must match your game version. All others can be reused from other game versions. If these were not provided with your data, join the Discord for assistance.

    Assembly-CSharp.dll must also contain mai2.ini or maimaiDX.ini. These configuration files are specific to the unprotected Assembly-CSharp.dll. If your package does not contain a configuration file, please create one with the following to bypass hardware checks on game startup:

    [AM]\nTarget=0\nIgnoreError=1\nDummyTouchPanel=1\nDummyLED=1\nDummyCodeCamera=1\nDummyPhotoCamera=1\n\n[Sound]\nSound8Ch=0\n\n[Patches]\nEnablePatchLog=1\n

    If the assembly supports it, App/Package/dpPatchLog.log lists supported patches after the first run. Otherwise see Custom Mods

    "},{"location":"games/maimaidx/buddies/setup/#installing-segatools","title":"Installing Segatools","text":"
    • Head over to segatools releases and download the latest segatools.zip. Do not download the source code.
    • Extracting the archive should give you a few more zip files. Find mai2.zip and extract it to the App/Package folder in your game data.

    You should now have a few more files inside the App/Package folder, as highlighted:

    "},{"location":"games/maimaidx/buddies/setup/#configuring-segatools","title":"Configuring Segatools","text":"

    Since there is no graphical configuration tool for segatools, you will have to edit the configuration file by hand. It is found in App/Package/segatools.ini.

    It is recommended that you follow along using a text editor with syntax highlighting such as Notepad++.

    Each following sub-section will correspond to a section in segatools.ini. If any section is not mentioned, you can skip them.

    Warning

    If a key already exists in the section, delete everything after = and replace it with your setting. Do not add another key. Example:

    [system]\ndipsw2=1\ndipsw2=1 ; WRONG!\n
    "},{"location":"games/maimaidx/buddies/setup/#vfs","title":"[vfs]","text":"

    If you've been matching the file structure as described in the Preparing data section, you can fill in this section with the values below:

    [vfs]\namfs=../../amfs\noption=../../option\nappdata=../../appdata\n
    "},{"location":"games/maimaidx/buddies/setup/#dns","title":"[dns]","text":"

    Game will not pass checks unless you modify the dns:

    [dns]\ndefault=YOUR_IPv4_ADDRESS\n
    Finding Your IPv4 Address

    Open a command promt. Type ipconfig and look for the IPv4 Address. Place those digits here otherwise you will get stuck on the DNS(LAN) check.

    "},{"location":"games/maimaidx/buddies/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/maimaidx/buddies/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/maimaidx/buddies/setup/#audio","title":"Audio","text":"
    • Right-click on the volume setting in your taskbar and select Sounds.
    • Navigate to the Playback tab, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick either 16 bit, 48000Hz (DVD Quality) or 24 bit, 48000Hz (Studio Quality), click Apply, then OK.
    "},{"location":"games/maimaidx/buddies/setup/#fixing-openssl-on-intel-10th-gen-and-newer-cpus","title":"Fixing OpenSSL on Intel 10th Gen and newer CPUs","text":"

    If you have an Intel 10th Gen CPU or newer, right click App/Package/start.bat, select Edit, and add the highlighted line to the top of the file.

    @echo off\nset OPENSSL_ia32cap=:~0x20000000\n\npushd %~dp0\n...\n
    "},{"location":"games/maimaidx/buddies/setup/#test-launch","title":"Test Launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    Please Disconnect any Hardware including Controllers or Card Readers at this time.

    Tip

    Without an English patch, the service menu will be in Japanese. If you don't know Japanese, Google Lens is a handy tool for navigating this menu.

    "},{"location":"games/maimaidx/buddies/setup/#game-settings","title":"Game Settings","text":"

    If you've followed all instructions correctly, you are ready to launch the game!

    Start the game by running App/Package/start.bat. You should see a terminal pop-up with the following:

    Another window titled Sinmai is the actual game. It should pause on Search for Distribution Servers:

    Use the following keyboard controls F1 = Test/Enter and c = down to do the following:

    • Press F1 to enter the service menu
    • Press c a few times to navigate to Game Settings or \u30b2\u30fc\u30e0\u8a2d\u5b9a as shown below:

    • Press F1 to enter the menu. Press c to navigate to the top option and toggle to OFF using F1. You should see the following:

    • Press ESC to exit. Close all associated windows including CMD, AMDaemon, and Sinmai. Relaunch with start.bat and the game should boot into guest mode.
    "},{"location":"games/maimaidx/buddies/setup/#connecting-to-a-network","title":"Connecting to a Network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Head to the [dns] section inside segatools.ini. Set default to the address provided by your network. Do not add http:// or https:// to the address!

    [dns]\ndefault=network.example\n

    Then, head to the [keychip] section and set id to the keychip ID provided by your network:

    [keychip]\nid=A69E-XXXXXXXXXXX\n

    Finally, you need a card number. Create a file named aime.txt inside App/Package/DEVICE and type in your 20-digit access code if you already have one, or make one up if you don't. If you're making one up, the access code MUST NOT start with a 3.

    Local (ARTEMiS/AquaDX)

    Both of these options require non-trivial setup. Refer to the official guides for ARTEMiS and AquaDX to set up a local server.

    "},{"location":"games/maimaidx/buddies/setup/#further-configuration","title":"Further Configuration","text":""},{"location":"games/maimaidx/buddies/setup/#updating-the-base-game","title":"Updating the Base Game","text":"

    Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.

    Only update if an unencrypted Assembly-CSharp.dll is available

    "},{"location":"games/maimaidx/buddies/setup/#installing-option-data","title":"Installing Option Data","text":"

    maimai DX content updates are distributed through option folders instead of patching the base game. They are named with a letter followed by three numbers. Each release increments the letter (ie. BUDDiES is H??? and BUDDiES+ is I???).

    Extract any options you've downloaded into the option folder. You should end up with a file structure as follows. Do not be worried if you have fewer or more option folders.

    Do not mix option data between versions

    "},{"location":"games/maimaidx/buddies/setup/#custom-mods","title":"Custom Mods","text":"

    Please use BepInEx to load all mods including MelonLoader and MonoMods

    Mods have historically been hardcoded into the unprotected Assembly-CSharp.dll which the user can enable/disable with the mai2.ini or maimaiDX.ini configuration. The modern approach is to use BepInEx to load custom mods without hardmodding the Assembly-CSharp file.

    To enable BepInEx, download the BepInEx stable release, extract the BepInEx folder to the App/Package folder, and modify segatools.ini with the following:

    [unity]\nenable=1\ntargetAssembly=BepInEx\\core\\BepInEx.Preloader.dll\n
    • BepInEx: place mods in BepInEx/Plugins
    • Melonloader: use BepInEx.MelonLoader.Loader UnityMono-BepInEx5. Place mods in MLLoader/Mods
    • MonoMods: use BepInEx.MonoMod.Loader. Place mods in BepInEx/monomod

    Some maimai DX mods are only compatible with BepInEx 5.4.22

    "},{"location":"games/maimaidx/buddies/setup/#controllers-and-troubleshooting","title":"Controllers and Troubleshooting","text":"

    Input methods and controllers are covered in the Controllers page.

    Have any other issues?

    Check out the Troubleshooting and Error Codes pages.

    "},{"location":"games/maimaidx/buddies/troubleshooting/","title":"maimai DX BUDDiES","text":""},{"location":"games/maimaidx/buddies/troubleshooting/#coming-soon","title":"Coming Soon","text":""},{"location":"games/musecafinal/problems/","title":"MUSECA 1+1/2 Common Problems/Tips","text":""},{"location":"games/musecafinal/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC (ADE-6291)

    Konami (2018)

    Based on an AMD Embedded R Series SoC.

    CPU: AMD RX-421BD

    GPU: Radeon R7

    RAM: 4 GB

    OS: Windows 7 Embedded

    "},{"location":"games/musecafinal/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/musecafinal/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/musecafinal/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/musecafinal/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/musecafinal/problems/#booting-the-game-in-offline-mode","title":"Booting the Game in Offline Mode","text":"

    If your game version is PIX-2018073002, this version supports turning off E-Amusement. In order to do that, change the game code to J:B:A (<spec>B</spec> in prop/ea3-config.xml), disable/disconnect all network adapters and turn set the E-Amusement setting in the game's operator menu to OFF.

    "},{"location":"games/musecafinal/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    Museca is a 64-bit game utilizing a feature in Windows called WASAPI exclusive mode to obtain less audio latency. Unfortunately, this cannot be changed.

    "},{"location":"games/musecafinal/problems/#im-not-getting-any-audiomy-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm Not Getting Any Audio/My Audio Is Completely Wrecked and I'm Using an External Dac!","text":"

    Several external DACs have issues with WASAPI exclusive mode and are unable to be used entirely, it's likely you'll be forced to use your motherboard's sound chip, or find a compatible DAC.

    "},{"location":"games/musecafinal/setup/","title":"MUSECA 1+1/2","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/musecafinal/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/musecafinal/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/musecafinal/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/musecafinal/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/musecafinal/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    It's important to note before booting the game that Museca uses portrait mode and attempting to boot the game fullscreen in most landscape environments will result in a crash. To alleviate this, we must set our main monitor to portrait mode and be ready to rotate it! To do so, right click on your desktop and go into Display Settings, then simply set the orientation to Portrait as pictured.

    In the event that you do not have the means to run the game in portrait mode and cannot rotate your monitor, it is recommended you boot the game in windowed mode. In SpiceTools, simply add the windowed mode parameter, this parameter is -w and can be placed right after any other desired parameters chosen in our gamestart.bat

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/nostforte/problems/","title":"NOSTALGIA FORTE Common Problems/Tips","text":""},{"location":"games/nostforte/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 6 (ADE-704A)

    Based on an AMD Embedded R Series SoC.

    CPU: Intel Celeron B810

    GPU: AMD Radeon E4690

    OS: Windows 7 Embedded

    "},{"location":"games/nostforte/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/nostforte/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/nostforte/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/nostforte/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/nostforte/problems/#no-matter-what-i-do-the-game-crashes-and-i-have-multiple-monitors","title":"No Matter What I Do, the Game Crashes and I Have Multiple Monitors!","text":"

    This problem is somewhat irregular, but sometimes Nostalgia has issues booting with multiple monitors present, particularly when trying to boot the game windowed. Make sure you're running the latest SpiceTools which has attempted to resolve all instances of this issue.

    "},{"location":"games/nostforte/setup/","title":"NOSTALGIA FORTE","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/nostforte/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's main folder and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/nostforte/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate ONLY a local network configuration with SpiceTools. Why only local? Because none of the most typical places currently support Nostalgia. Regardless, please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/nostforte/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/nostforte/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/nostforte/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you should be automatically forced into the service menu with lots of scary flashing notifications as pictured below, let's work through them.

    Interestingly, only the red flashing ones really take any effort to deal with. You can start by entering and exiting the following menus: SOUND OPTIONS, GAME OPTIONS, COIN OPTIONS, ECOMODE OPTIONS, and NETWORK OPTIONS.

    Once you've done that, enter CLOCK and set the clock by hitting SAVE AND EXIT as pictured below.

    The final menu we must deal with is VIRTUAL COIN, enter the menu and select OPERATION SETTINGS as seen below.

    Once inside this menu, we'll need to deal with all 4 blinking options, let's start by entering the TAX RATE SETTING menu, shown below.

    Set the tax rate by simply selecting SAVE AND EXIT while will take us back into the OPERATING SETTINGS. Pictured below is the TAX RATE SETTING menu.

    Once back inside the TAX RATE SETTING menu, we must deal with the three blinking PATTERN options. Doing so is effortless, simply enter all three menus one by one and hit SAVE AND EXIT just as we did for the TAX RATE SETTING in the previous step. Pictured below is the inside of PATTERN 1.

    After saving and exiting all three PATTERN options, you're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/nostop2/problems/","title":"NOSTALGIA OP.2 Common Problems/Tips","text":""},{"location":"games/nostop2/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 6 (ADE-704A)

    Based on an AMD Embedded R Series SoC.

    CPU: Intel Celeron B810

    GPU: AMD Radeon E4690

    OS: Windows 7 Embedded

    "},{"location":"games/nostop2/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/nostop2/problems/#my-game-is-running-crazy-fast","title":"My Game Is Running Crazy Fast!","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/nostop2/problems/#occasional-game-stutters-during-play","title":"Occasional Game Stutters During Play","text":"

    Sometimes you might have occasional stutters during play, while solutions can vary wildly from general performance issues to bad hard drives, try adding SpiceTools -realtime parameter to your .bat file.

    "},{"location":"games/nostop2/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/nostop2/problems/#no-matter-what-i-do-the-game-crashes-and-i-have-multiple-monitors","title":"No Matter What I Do, the Game Crashes and I Have Multiple Monitors!","text":"

    This problem is somewhat irregular, but sometimes Nostalgia has issues booting with multiple monitors present, particularly when trying to boot the game windowed. Make sure you're running the latest SpiceTools which has attempted to resolve all instances of this issue.

    "},{"location":"games/nostop2/setup/","title":"NOSTALGIA OP.2","text":"

    Warning:

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/nostop2/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential audio issues on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    Once that's done, it's time to work on setting up your data.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's main folder and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file whatever you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/nostop2/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate ONLY a local network configuration with SpiceTools. Why only local? Because none of the most typical places currently support Nostalgia. Regardless, please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/nostop2/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/nostop2/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/nostop2/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    The last steps you'll have to do with your chosen tools is simply setting up your desired keybinds! Make sure you setup the Test keybind as it will be critical for setting up the game. Once you've done that, launch your game for the first time by double clicking the .bat you setup and the game should load.

    If it's your first time running the game, you should be automatically forced into the service menu with lots of scary flashing notifications as pictured below, let's work through them.

    Interestingly, only the red flashing ones really take any effort to deal with. You can start by entering and exiting the following menus: SOUND OPTIONS, GAME OPTIONS, COIN OPTIONS, ECOMODE OPTIONS, and NETWORK OPTIONS.

    Once you've done that, enter CLOCK and set the clock by hitting SAVE AND EXIT as pictured below.

    The final menu we must deal with is VIRTUAL COIN, enter the menu and select OPERATION SETTINGS as seen below.

    Once inside this menu, we'll need to deal with all 4 blinking options, let's start by entering the TAX RATE SETTING menu, shown below.

    Set the tax rate by simply selecting SAVE AND EXIT while will take us back into the OPERATING SETTINGS. Pictured below is the TAX RATE SETTING menu.

    Once back inside the TAX RATE SETTING menu, we must deal with the three blinking PATTERN options. Doing so is effortless, simply enter all three menus one by one and hit SAVE AND EXIT just as we did for the TAX RATE SETTING in the previous step. Pictured below is the inside of PATTERN 1.

    After saving and exiting all three PATTERN options, you're all done! From the service menu select GAME MODE and the game should load ready to be played! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/popnpeace/problems/","title":"Common Problems/Tips","text":"

    Pop'n Peace Common Problems/Tips

    "},{"location":"games/popnpeace/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: Intel Celeron B810 1.6GHz

    GPU: ATI Radeon E4690 MXM

    OS: Windows XP Embedded

    "},{"location":"games/popnpeace/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/popnpeace/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/popnpeace/problems/#why-is-the-in-game-text-garbled","title":"Why Is the In-Game Text Garbled?","text":"

    The in-game text requires a Japanese locale to display the Japanese characters correctly, look up a guide for your specific operating system on how to switch your operating system's locale to Japanese.

    "},{"location":"games/popnpeace/problems/#the-game-crashes-fullscreen","title":"The game crashes fullscreen!","text":"

    Some monitors and display adapters may not support the odd resolution the game runs at, which is 1360x768 versus the occasionally seen 1366x768. To resolve, setup a custom resolution inside your appropriate graphic's card settings, or enable GPU resolution scaling.

    "},{"location":"games/popnpeace/problems/#other-crashes","title":"Other Crashes","text":"

    This game requires an E: drive to be named by the computer. If you do not have one, make sure to apply the E: Drive fix patch.

    It may also fail to boot regardless of this, such as in the case of using HDMI audio. Even if you're not using HDMI audio however, some failures to boot have been noted. For safety, make sure to also apply the HDMI Audio Fix patch unless you're using the latest SpiceTools which fixes this issue.

    "},{"location":"games/popnpeace/setup/","title":"Pop'n Peace","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/popnpeace/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder. Pictured below is what your folder should look like.

    "},{"location":"games/popnpeace/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up spicecfg.exe and head to the Options tab. Here you can configure all of the various options that SpiceTools has, but for the purpose of this guide we'll demonstrate how to set up a local server and an online server. You can skip over the parts that you don't need, and feel free to set any other options that you might like.

    If you're not using SpiceTools:

    It's most likely that your toolkit doesn't have an options interface, so you'll have to create a .bat file. Consult the appropriate documentation for this as this isn't covered in this guide.

    "},{"location":"games/popnpeace/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, in the Options tab enable the following options: E-Amusement Emulation: -ea and Windowed Mode: -w.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to disable -w to run the game fullscreen once you're done setting up!

    Pictured below, the selected options in spicecfg.exe.

    "},{"location":"games/popnpeace/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different options!

    We're going to use the option PCBID: -pcbid for our PCBID, with XXXXXXXXXXXXXXXXXXXX as the value. For the network URL we're going to use the option Service URL: -url, with http://yoururlhere.com/ as the value. We'll also enable windowed mode by enabling the option Windowed Mode: -w.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to disable -w to run the game fullscreen once you're done setting up!

    Pictured below, the enabled options in spicecfg.exe.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/popnpeace/setup/#configuring-keybinds","title":"Configuring Keybinds","text":"

    While we're still in spicecfg.exe, why not set up the keybinds? To do this you'll have to head on over to the Buttons tab. Here you simply click Bind and press the button on your controller (or keyboard). Below are my keybinds of an arduino based controller. Notice that I've also bound the Service, Test and Coin Mech buttons to my keyboard. This might come in handy but shouldn't be necessary to play the game.

    "},{"location":"games/popnpeace/setup/#booting","title":"Booting","text":"

    With that, you're all done! Boot the game by double-clicking spice.exe and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/popnusaneko/problems/","title":"Common Problems/Tips","text":"

    Pop'n Usaneko Common Problems/Tips

    "},{"location":"games/popnusaneko/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: Intel Celeron B810 1.6GHz

    GPU: ATI Radeon E4690 MXM

    OS: Windows XP Embedded

    "},{"location":"games/popnusaneko/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/popnusaneko/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/popnusaneko/problems/#why-is-the-in-game-text-garbled","title":"Why Is the In-Game Text Garbled?","text":"

    The in-game text requires a Japanese locale to display the Japanese characters correctly, look up a guide for your specific operating system on how to switch your operating system's locale to Japanese.

    "},{"location":"games/popnusaneko/problems/#the-game-crashes-fullscreen","title":"The game crashes fullscreen!","text":"

    Some monitors and display adapters may not support the odd resolution the game runs at, which is 1360x768 versus the occasionally seen 1366x768. To resolve, setup a custom resolution inside your appropriate graphic's card settings, or enable GPU resolution scaling.

    "},{"location":"games/popnusaneko/problems/#other-crashes","title":"Other Crashes","text":"

    This game requires an E: drive to be named by the computer. If you do not have one, make sure to apply the E: Drive fix patch.

    It may also fail to boot regardless of this, such as in the case of using HDMI audio. Even if you're not using HDMI audio however, some failures to boot have been noted. For safety, make sure to also apply the HDMI Audio Fix patch unless you're using the latest SpiceTools which fixes this issue.

    "},{"location":"games/popnusaneko/problems/#how-to-unlock-songs","title":"How to Unlock Songs","text":"

    Without an appropriate patch, the game is missing song unlocks. To resolve this, I've provided an unlocked DLL with BOTH the HDMI audio fix and E: drive fix already applied. You can download from the Discord server here.

    Simply replace it with your existing one inside the contents folder of your game installation. When asked to replace, hit yes.

    "},{"location":"games/popnusaneko/setup/","title":"Pop'n Usaneko","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/popnusaneko/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file anything you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/popnusaneko/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/popnusaneko/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/popnusaneko/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/popnusaneko/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    With that, you're all done! The final step you'll have to do with your chosen tools is simply setting up your desired keybinds! Once you've done that, Boot the game with your gamestart.bat and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/reflesia/problems/","title":"REFLEC BEAT: Reflesia Common Problems/Tips","text":""},{"location":"games/reflesia/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC (ADE-704A)

    CPU: Intel Celeron B810 1.6GHz

    GPU: E4690 Radeon MXM

    OS: Windows XP Embedded

    "},{"location":"games/reflesia/problems/#my-game-doesnt-boot-after-following-the-guide","title":"My Game Doesn't Boot After Following the Guide!","text":"

    The most common problem present here is if you do not have an E:/ drive. To resolve this issue, you must apply the E:/drive fix patch.

    "},{"location":"games/reflesia/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/reflesia/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/reflesia/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-).

    "},{"location":"games/reflesia/problems/#failed-to-create-texture-error-in-spicetools","title":"Failed to Create Texture Error in SpiceTools","text":"

    If your error is along the lines of a failure to create a texture W:afputils: CTexture::create_texture \u30c6\u30af\u30b9\u30c1\u30e3\u306e\u4f5c\u6210\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002 then boot the game without touching anything, even your mouse, maybe give it a few tries, it's admittedly a strange issue with no exact science behind it discovered.

    "},{"location":"games/reflesia/problems/#i-get-a-white-screen-that-silently-closes-after-a-few-seconds","title":"I Get a White Screen That Silently Closes After a Few Seconds","text":"

    Reflesia runs at 768x1360 opposed to more common resolutions. If your monitor doesn't have support for this, try making a custom resolution in your graphic's cards options. Also, make sure your monitor is in portrait mode as opposed to landscape.

    "},{"location":"games/reflesia/setup/","title":"REFLEC BEAT: The Reflesia of Eternity","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    One other thing, make sure your game folder isn't set to Read Only and that you don't have horribly wonky security permissions in Windows.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/reflesia/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is put your desired 32-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file anything you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/reflesia/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/reflesia/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/reflesia/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/reflesia/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    It's important to note before booting the game that Reflec Beat uses portrait mode and attempting to boot the game fullscreen in most landscape environments will result in a crash. To alleviate this, we must set our main monitor to portrait mode and be ready to rotate it! To do so, right click on your desktop and go into Display Settings, then simply set the orientation to Portrait as pictured.

    In the event that you do not have the means to run the game in portrait mode and cannot rotate your monitor, it is recommended you boot the game in windowed mode. In SpiceTools, simply add the windowed mode parameter, this parameter is -w and can be placed right after any other desired parameters chosen in our gamestart.bat

    As for the touch stuff, by default SpiceTools should detect your mouse just fine, you can use the -s parameter to have your cursor show at all times above the game window. For touchscreen monitors, it's a bit tricky to write something encompassing them all. Many should be detected automatically, however some may require adding the -wintouch parameter for support.

    You can check out some documented touchscreen monitors here.

    With that, you're all done! The final step you'll have to do with your chosen tools is simply setting up your desired keybinds! Once you've done that, Boot the game with your gamestart.bat and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/sdvx4/problems/","title":"SDVX IV Common Problems/Tips","text":""},{"location":"games/sdvx4/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: Celeron M 440 1.86GHz

    GPU: ATI Radeon HD 2400

    RAM: 2 GB

    OS: Windows XP Embedded

    "},{"location":"games/sdvx4/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    "},{"location":"games/sdvx4/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/sdvx4/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-). Please note that Sound Voltex IV's offset is purely visual and the game does not have an audio-based offset adjustment. Sound Voltex V however, does.

    "},{"location":"games/sdvx4/problems/#running-the-game-windowed-and-borderless","title":"Running the Game Windowed and Borderless","text":"

    Some players utilizing windowed mode use 3rd party software called Borderless Gaming in order to achieve this, follow the program's instructions accordingly.

    "},{"location":"games/sdvx4/problems/#where-are-all-the-navigators","title":"Where Are All the Navigators?","text":"

    Many navigators are locked behind network requirements and they will not show unless connected to a network that has written support for the events that they're typically locked behind.

    "},{"location":"games/sdvx4/setup/","title":"SOUND VOLTEX IV HEAVENLY HAVEN","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/sdvx4/setup/#getting-started","title":"Getting Started","text":"

    This game still uses DirectSound so we can skip audio related setup needed for other games. After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 32-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file anything you desire, for the sake of convenience we've named ours gamestart.bat.

    "},{"location":"games/sdvx4/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/sdvx4/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/sdvx4/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/sdvx4/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    It's important to note before booting the game that Sound Voltex uses portrait mode and attempting to boot the game fullscreen in most landscape environments will result in a crash. To alleviate this, we must set our main monitor to portrait mode and be ready to rotate it! To do so, right click on your desktop and go into Display Settings, then simply set the orientation to Portrait as pictured.

    In the event that you do not have the means to run the game in portrait mode and cannot rotate your monitor, it is recommended you boot the game in windowed mode. In SpiceTools, simply add the windowed mode parameter, this parameter is -w and can be placed right after any other desired parameters chosen in our gamestart.bat

    With that, you're all done! The final step you'll have to do with your chosen tools is simply setting up your desired keybinds! Once you've done that, Boot the game with your gamestart.bat and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/sdvx5/problems/","title":"SDVX VW Common Problems/Tips","text":""},{"location":"games/sdvx5/problems/#hardware-specs","title":"Hardware Specs","text":"

    Bemani PC Type 4

    CPU: Intel i3-4300 3.5GHz

    GPU: Nvidia GeForce GTX 1050 2GB

    RAM: 8GB DDR3L PC3-12800 (4GB*2)

    OS: Windows 7 Embedded

    "},{"location":"games/sdvx5/problems/#my-game-is-running-slowlagging","title":"My Game Is Running Slow/Lagging","text":"

    Make sure you at least meet the above hardware requirements, try to eliminate any unnecessary background processes during play as well.

    At the time of writing, some individuals with more than capable PCs have had framerate issues, most notably with Ryzen CPUs. There's really no fix as the issues seem largely random, but it's worth noting regardless to consider trying different computers if you have them available.

    "},{"location":"games/sdvx5/problems/#my-game-is-running-crazy-fastafter-finishing-a-song-loading-is-stuck","title":"My Game Is Running Crazy Fast/After Finishing a Song Loading Is Stuck","text":"

    The most common reason for this is the game is running over its required 60hz, the game is hardcoded to run at 60hz and this cannot be changed. To solve this, set your monitor's refresh rate to 60hz. You can always check on the game's monitor check if the game is fluctuating around 59.94hz, the NTSC standard. If it's not around there and your monitor is indeed set to 60hz, consider trying a different panel or forcing vsync on in your GPU's graphics settings.

    "},{"location":"games/sdvx5/problems/#which-offset-is-which","title":"Which Offset Is Which?","text":"

    If you're getting too many fasts, increase your offset (+). If you're getting too many slows, decrease your offset (-). Sound Voltex V has two types of offset adjustments, visual and audio based, so be sure to fiddle with both to find desirable settings.

    "},{"location":"games/sdvx5/problems/#running-the-game-windowed-and-borderless","title":"Running the Game Windowed and Borderless","text":"

    Some players utilizing windowed mode use 3rd party software called Borderless Gaming in order to achieve this, follow the program's instructions accordingly.

    "},{"location":"games/sdvx5/problems/#where-are-all-the-navigators","title":"Where Are All the Navigators?","text":"

    Many navigators are locked behind network requirements and they will not show unless connected to a network that has written support for the events that they're typically locked behind.

    "},{"location":"games/sdvx5/problems/#a-note-about-sse-42","title":"A Note About SSE 4.2","text":"

    In the rare case you are running this game on very old hardware, SDVX V requires a processor supporting the SSE 4.2 instruction set. But, in the event your processor does not have this, there is a patch available to bypass this.

    "},{"location":"games/sdvx5/problems/#when-i-run-this-game-all-other-background-audio-is-gone-whats-going-on","title":"When I Run This Game All Other Background Audio Is Gone! What's Going On?","text":"

    64-bit versions of SDVX are now utilizing a feature in Windows called WASAPI exclusive mode to obtain less audio latency than the former 32-bit versions of the games which used DirectSound. You can use the Shared Mode WASAPI patch to deal with some hardware issues, it can also be used to hear background audio outside the game so that the game does not take total control. Many have reported that this edit only works when the audio is set to either 16-bit 44100Hz or 24-bit 44100Hz.

    "},{"location":"games/sdvx5/problems/#im-not-getting-any-audiomy-audio-is-completely-wrecked-and-im-using-an-external-dac","title":"I'm Not Getting Any Audio/My Audio Is Completely Wrecked and I'm Using an External Dac!","text":"

    Several external DACs have issues with WASAPI exclusive mode and are unable to be used entirely, it's likely you'll be forced to use your motherboard's sound chip, or find a compatible DAC.

    Alongside this, many setups have found some difficulty with audio due to various equipment being used. Consider applying the Shared Mode WASAPI patch.

    "},{"location":"games/sdvx5/setup/","title":"SOUND VOLTEX VIVID WAVE","text":"

    Warning

    Please make sure your data is from an appropriate source and unmodified before proceeding, this guide is unable to troubleshoot any problems related to bad or poorly managed data.

    If you obtained data from a torrent file, make sure you're not seeding the data before proceeding as well.

    Lastly, for demonstrative purposes, this guide uses SpiceTools, you should consult appropriate documentation and requirements of your desired tools as the setup process is likely to be extremely similar.

    "},{"location":"games/sdvx5/setup/#getting-started","title":"Getting Started","text":"

    Before we even touch the game, let's fiddle with our audio settings to minimize any potential crashing on startup. In Windows, go to Playback Devices and then right click on your default device and go to Properties. From there, hit the Advanced tab and set your Default Format to 44100 Hz and check both of the options inside Exclusive Mode as pictured.

    After downloading your data, the first thing to do is make sure your files aren't set to READ ONLY, make sure to uncheck it from the main folder in the Windows Properties tab if so. Then, put your desired 64-bit tools inside the game's contents folder, and to create a .bat file. Pictured below is what your folder should look like, feel free to name your .bat file anything you desire, for the sake of convenience we've named ours gamestart.bat.

    Why does this look different than the usual? This installation includes a modules folder that Spice automatically detects, keeping things clean and simple. If your version of the game doesn't have this, it probably has the contents folder populated with many different dll files such as the main soundvoltex.dll. You should still place your tools here if so!

    "},{"location":"games/sdvx5/setup/#configuring-your-tools","title":"Configuring Your Tools","text":"

    Now that you have your files ready, open up your .bat file in your desired text editor (we're using Notepad++) and edit it with your desired parameters, for the purpose of this guide we will demonstrate both a local network configuration and an online example below with SpiceTools, skip to whichever you're in need of accordingly and please keep in mind you can add whatever additional parameters you desire.

    If you're not using SpiceTools:

    The overall structure of your .bat file will differ from the guide, namely the initialization of SpiceTools won't be present and potential parameters may differ. As stated above, make sure to check the documentation of your tools to ensure you're using the correct parameters for your needs.

    "},{"location":"games/sdvx5/setup/#configuring-for-a-local-network","title":"Configuring for a Local Network","text":"

    For our local network configuration example, on a single line in the .bat file we're going to type spice64.exe -ea -w and save the file.

    What do these different parameters do?

    • -ea enables an integrated e-amusement server within SpiceTools.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    "},{"location":"games/sdvx5/setup/#configuring-for-an-online-network","title":"Configuring for an Online Network","text":"

    For our online network example we're simply doing the above but with different parameters! On our single line, we're going to type spice64.exe -p XXXXXXXXXXXXXXXXXXXX -url http://yoururlhere.com/ -w and save the file.

    What do these different parameters do?

    • -p takes your PCBID on your network of choice, simply replace XXXXXXXXXXXXXXXXXXXX with your PCBID.
    • -url allows you to specify a custom service URL to connect with, simply replace http://yoururlhere.com/ with your chosen network's URL.
    • -w will boot the game in windowed mode which will ease our initial setup and testing later, make sure to remove -w to run the game fullscreen once you're done setting up!

    Pictured below, the contents of our gamestart.bat file in Notepad++.

    One final note, since you're playing on a network, you will have one additional step of setting up your card file within your chosen tools, make sure to check your server's information on how to setup a card file.

    "},{"location":"games/sdvx5/setup/#final-steps-and-setting-up-the-game","title":"Final Steps and Setting up the Game","text":"

    It's important to note before booting the game that Sound Voltex uses portrait mode and attempting to boot the game fullscreen in most landscape environments will result in a crash. To alleviate this, we must set our main monitor to portrait mode and be ready to rotate it! To do so, right click on your desktop and go into Display Settings, then simply set the orientation to Portrait as pictured.

    In the event that you do not have the means to run the game in portrait mode and cannot rotate your monitor, it is recommended you boot the game in windowed mode. In SpiceTools, simply add the windowed mode parameter, this parameter is -w and can be placed right after any other desired parameters chosen in our gamestart.bat

    With that, you're all done! The final step you'll have to do with your chosen tools is simply setting up your desired keybinds! Once you've done that, Boot the game with your gamestart.bat and the game should load and be ready to be enjoyed! Have fun!

    Have any other errors?

    Check out the Common Problems/Tips section and Error Code section to resolve any issues not seen in this guide to greater depth.

    "},{"location":"games/sdvx6/extras/","title":"SOUND VOLTEX EXCEED GEAR","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/sdvx6/extras/#nemsys-valkyrie-modes","title":"Nemsys & Valkyrie modes","text":"

    Valkyrie mode requires a 120hz capable monitor, or to have patched your .dll with Valkyrie Mode 60hz.

    To make use of the Valkyrie Mode (Subscreen, 120FPS, S-CRITICAL..) you need to go to the contents\\prop folder and edit the ea3-config.xml file.

    We're interested in these lines:

        <soft>\n        <model __type=\"str\">KFC</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">G</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024052100</ext>\n    </soft>\n

    This is the line that determines if the game will run in Nemsys (60 FPS) or Valkyrie (120 FPS) mode.

    <spec __type=\"str\">G</spec>\n

    Use:

    • F for Nemsys
    • G for Valkyrie
    "},{"location":"games/sdvx6/extras/#changing-the-games-language","title":"Changing the game's language","text":"

    Go to the contents\\prop folder and edit the ea3-config.xml file.

    We're interested in these lines:

        <soft>\n        <model __type=\"str\">KFC</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">G</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024052100</ext>\n    </soft>\n

    This is the line that determines which region, and therefore which language the game will use.

    <dest __type=\"str\">J</dest>\n

    Use:

    • J for Japan (Japanese)
    • K for Korea (Korean + some censored jackets)
    • A for Asia/Australia (English)
    • U for America (English + some censoring in recent versions)
    • Y for Indonesia
    "},{"location":"games/sdvx6/extras/#more-about-ea3-configxml","title":"More about ea3-config.xml","text":"

    The ea3-config.xml file is located inside the prop folder.

    Below is an explanation on what different sections of this file do.

    The following lines change the PCBID and HARDID that your system reports to your e-amusement server. There is no need to manually change this as spice2x will do it for us.

    <pcbid __type=\"str\">00010203040506070809</pcbid>\n<hardid __type=\"str\">00010203040506070809</hardid>\n

    The following line determines what version of the game you are running. You should never change this. It should always say KFC.

    <model __type=\"str\">KFC</model>\n

    You should never change this. It should always say A for Exceed Gear.

    <rev __type=\"str\">A</rev>\n

    The following line determines your datecode. Always keep it up to date with your game's current version.

    <ext __type=\"str\">2024052100</ext>\n

    The following line determine what remote service URL spice2x is supposed to connect to. There is no need to manually change this as spice2x will do it for us.

    <services __type=\"str\">http://localhost:8083</services>\n
    "},{"location":"games/sdvx6/setup/","title":"SOUND VOLTEX EXCEED GEAR","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/sdvx6/setup/#preparing-data","title":"Preparing data","text":"

    After downloading and extracting your data, we need to make sure your files aren't set to Read-only.

    • Right click the folder containing your data, then click on Properties.
    • In the General tab go down to Attributes, untick Read-only and click Apply.
    • A popup will appear, select Apply changes to this folder, subfolder and files and press OK.
    • Finally, click OK again to exit out of properties.

    You should end up with a file structure with a few folders only, as follows.

    If your data doesn't look like this

    If you're missing the modules folder and instead have bunch of .dll files next to your folders:

    • Create a modules folder.
    • Move all .dll files inside of it so you end up with a structure as shown above.

    If extra files are present next to your folders, such as executables, scripts, etc.. remove them. This also means your data was tampered with and we strongly recommend getting new data from somewhere else.

    If you don't need to update your data, you can skip over to the Installing Spice2x section.

    "},{"location":"games/sdvx6/setup/#updating-data","title":"Updating data","text":"Please make sure you're using the right update for your current data.

    SDVX Patches re-uploaded by the community tend to be appropriately named KFC-DATECODE-to-DATECODE.

    For example KFC-2024043000-to-2024052100.

    • 2024043000 being your current data's version.
    • 2024052100 being the one you would arrive at.
    • Extract your patch's files to your existing data in a way that matches its file structure. Agree to overwrite files if necessary.
    • Open prop\\ea3-config.xml in a text editor and find the following lines near the top.
        <soft>\n        <model __type=\"str\">KFC</model>\n        <dest __type=\"str\">J</dest>\n        <spec __type=\"str\">G</spec>\n        <rev __type=\"str\">A</rev>\n        <ext __type=\"str\">2024052100</ext>\n    </soft>\n

    On the line with <ext __type=\"str\"> the datecode needs to match your new version.

    • If that's already the case then great! Don't touch anything.
    • If it instead corresponds to our pre-patch datecode, replace it with the new one and save the file.
    "},{"location":"games/sdvx6/setup/#installing-spice2x","title":"Installing Spice2x","text":"
    • Head over to spice2x.github.io and download the latest release.
    • Extract the spice64.exe and spicecfg.exe files from the archive to your game's directory.
    If you're using an AMD graphics card

    A few more files are required to make your game work with AMD as the game was built for NVIDIA.

    • From the spice2x archive, extract the .dll files found in spice2x\\stubs\\64\\ to your data's modules folder.

    "},{"location":"games/sdvx6/setup/#configuring-spice2x","title":"Configuring Spice2x","text":"

    Open spicecfg.exe, each following sub-section corresponds to a tab at the top.

    "},{"location":"games/sdvx6/setup/#buttons","title":"Buttons","text":"

    Click on Bind then press the key you want associated with the action.

    With your controller and/or keyboard plugged in, configure your keys for:

    • Maintenance: Service, Test
    • Game buttons: BT-A, BT-B, BT-C, BT-D, FX-L, FX-R, Start
    • P1 Keypad: Keypad 0 to 9, Keypad Insert Card

    Only if you're playing using a keyboard:

    • Knobs: VOL-L Left, VOL-L Right, VOL-R Left, Vol-R Right
    "},{"location":"games/sdvx6/setup/#analogs-controllercab-only","title":"Analogs (controller/cab only)","text":"

    With a controller rather than binding buttons to VOL-L and VOL-R, you need to:

    • Click Bind.
    • In Device, pick your controller.
    • In Control, pick X for VOL-L or Y for VOL-R.
    • Turn your knob ensuring that the Preview knob turns along with it.
    • Click Close, leaving the rest of the settings alone.
    • Repeat for your other knob.
    "},{"location":"games/sdvx6/setup/#overlay","title":"Overlay","text":"

    Modifying buttons in this section is not required but you are free to change what you want.

    Click on Bind then press the key you want associated with the action.

    "},{"location":"games/sdvx6/setup/#lights-controllercab-only","title":"Lights (controller/cab only)","text":"

    Your controller might support having its lights controlled by the game through spice2x.

    If it does, here's how you may link different actions to your lights:

    • Click Bind.
    • In Device, pick your controller.
    • In Light Control, select the corresponding light.
    • Click Close.
    • Repeat for your other lights.
    "},{"location":"games/sdvx6/setup/#cards","title":"Cards","text":"

    Covered in the Connecting to a network section.

    "},{"location":"games/sdvx6/setup/#patches","title":"Patches","text":"

    Go through the Spice2x Patching page to import patches.

    If you don't absolutely need a patch or you're unsure what it does, leave it alone! Regardless of recommendations below.

    General patches Patch Recommendation Description Disable power change Either Prevents the game from changing Windows power settings. Disable monitor change Either Prevents the game from changing Windows monitor settings. Force BIO2 (KFC) IO in Valkyrie mode OFF Only useful for real cabs or Valkyrie at 60hz. Shared mode WASAPI Either For non-Valkyrie setups. Runs the game with non-exclusive WASAPI audio, allowing you to hear audio from other sources at the cost of audio latency. Shared mode WASAPI Valkyrie Either For Valkyrie setups. Same as above. ASIO 2 Channels Mode OFF For ASIO audio only. Uses 2 channels instead of 8, useful for some audio cards. Unlock All Songs OFF This might get you banned from remote servers. If using Asphyxia, you should unlock Songs using the WebUI instead. Unlock All Difficulties OFF This might get you banned from remote servers. If using Asphyxia, you should unlock Difficulties using the WebUI instead. Uncensor album jackets (for K region only) OFF Only useful for Korean region. The game is already \"uncensored\" otherwise. Hide all bottom text Either Hides text at the bottom of the screen such as Credits or Paseli. Disable subscreen in Valkyrie mode Either Disables the subscreen entirely. Note that this option is also available in the Options tab (-sdvxnosub). Timer freeze Either Freezes the timer in all non-premium environments. Premium timer freeze Either Freezes the timer in premium environments. Hide premium guide banner Either Hides the premium guide banner at the bottom of the screen during play. Premium Time Length Any Defines how long your premium time will be. If you've frozen premium time this is just vanity. Valkyrie Mode 60hz OFF Allows 60hz monitor users to use Valkyrie-exclusive features. To be used in conjunction with the Force BIO2 patch and G spec in ea3-config.xml. Fake Region Japan Unlocks region specific content regardless of the chosen region in ea3-config.xml. Japan unlocks the most content and is therefore recommended. If your monitor supports 120hz or more Patch Recommendation Game FPS Target 120 FPS (NOT higher) Note FPS Target 120 FPS (NOT higher)"},{"location":"games/sdvx6/setup/#api","title":"API","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/sdvx6/setup/#options","title":"Options","text":"

    If you don't know what an option does, hover over the question mark at the very left.

    Be very careful changing options you don't understand as it may cause issues.

    Required

    Category Option Parameter Setting Game Options SDVX Disable Cameras -sdvxdisablecams ON Network EA Service URL -url Covered in Connecting to a network

    Highly Recommended for NVIDIA users ONLY

    Category Option Parameter Setting Graphics (common) NVIDIA profile optimization -nvprofile ON"},{"location":"games/sdvx6/setup/#advanced-development","title":"Advanced & Development","text":"

    Leave everything at default unless you know what you're doing.

    "},{"location":"games/sdvx6/setup/#connecting-to-a-network","title":"Connecting to a network","text":"

    Please choose one of the two solutions, not both!

    Remote (Online Network)

    Open spicecfg.exe and head to the Options tab.

    In the Network category, set the following settings:

    • EA Service URL to the URL provided by your network.
    • PCBID to the PCBID provided by your network.

    Next you need a card number. If you don't already have one, generate one in the Cards tab. To keep your card number safe, create a new .txt file with ONLY it inside.

    Once that's done, head to the Cards tab, for Player 1 click Open... and point to your text file.

    Local e-amuse Emulator (Asphyxia)

    This is covered in the Asphyxia CORE page.

    "},{"location":"games/sdvx6/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/sdvx6/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/sdvx6/setup/#audio","title":"Audio","text":"
    • Open spicecfg.exe.
    • At the very top, click on Shortcuts then Audio Playback Devices.
    • In the popup window, right click on your default audio device, and click on Properties.
    • Go to the Advanced tab.
    • Check both boxes under Exclusive Mode.
    • Open the Default Format dropdown.
    • Pick the 16 bit, 44100 Hz (CD Quality) option and click Apply then OK.
    "},{"location":"games/sdvx6/setup/#monitor-orientation","title":"Monitor orientation","text":"

    Before each play session, you will have to make sure your monitor is in Portrait or Portrait (flipped) mode.

    To do so:

    • Right click on your desktop.
    • Click Display Options.
    • Look for Display orientation and set it to Portrait or Portrait (flipped).

    • Rotate your monitor vertically.
    "},{"location":"games/sdvx6/setup/#valkyrie-nemsys-language-settings","title":"Valkyrie / Nemsys / Language settings","text":"

    Read through the Extra Information page and edit your prop\\ea3-config.xml file if necessary.

    "},{"location":"games/sdvx6/setup/#first-launch","title":"First launch","text":"

    If you have any issues running the game, refer to the Troubleshooting page.

    If you've followed all instructions correctly, you're now finally ready to launch the game!

    First plug your controller if you have one and run spice64.exe, press Yes when it asks for elevated privileges.

    The game will go through a series of checks, let it run, if you've done everything properly they'll pass.

    "},{"location":"games/sdvx6/setup/#calibration","title":"Calibration","text":"

    If you're seeing this screen, it means you need to calibrate your knobs.

    Press your Test key. The game will instruct you where to navigate inside the menu.

    • Press BT-A to go up.
    • Press BT-B to go down.
    • Press Start to select.

    Select I/O CHECK and press Start.

    Select CALIBRATION SETTINGS and press Start.

    Select CALIBRATION and press Start.

    First, your left knob (VOL-L for keyboard players)

    1. Slowly turn your LEFT knob counterclockwise (VOL-L Left) until the first line says COUNT = OK.
    2. Press Start.
    3. Slowly turn your LEFT knob clockwise (VOL-L Right) until the first line says COUNT = OK.
    4. Press Start.

    Now same thing but for the right knob (VOL-R for keyboard players)

    1. Slowly turn your RIGHT knob counterclockwise (VOL-R Left) until the first line says COUNT = OK.
    2. Press Start.
    3. Slowly turn your RIGHT knob clockwise (VOL-R Right) until the first line says COUNT = OK.
    4. Press Start.

    Select SAVE AND EXIT and press Start.

    Select GAME MODE and press Start.

    You're all done! The game should load up properly now.

    "},{"location":"games/sdvx6/setup/#carding-in","title":"Carding in","text":"

    Once the game is done loading, you need to card in.

    • Press your Keypad Insert Card button.
    • Enter your code using your keypad binds.
    "},{"location":"games/sdvx6/setup/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issue?

    Check out the Troubleshooting and Error Codes pages.

    For any more game-specific information, check out Extra Information.

    "},{"location":"games/sdvx6/troubleshooting/","title":"SOUND VOLTEX EXCEED GEAR","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/sdvx6/troubleshooting/#im-having-performance-issues","title":"I'm having performance issues!","text":"

    If you're having performance issues of some kind, spice2x's PC optimization guide is worth looking at.

    "},{"location":"games/sdvx6/troubleshooting/#my-game-is-running-slowfast-after-finishing-a-song-the-game-gets-stuck-loading","title":"My game is running slow/fast, After finishing a song the game gets stuck loading!","text":"

    The most common reason for this is the game is running over its required refresh rate. To solve this, make sure v-sync isn't disabled in your graphics card's settings.

    For NVIDIA users, enable NVIDIA profile optimization (-nvprofile) in the Options tab.

    "},{"location":"games/sdvx6/troubleshooting/#how-do-i-set-my-offset","title":"How do I set my offset?","text":"

    Play through a chart you're comfortable with.

    If you're getting too many Late, decrease your offset (-). If you're getting too many Early, increase your offset (+).

    Sound Voltex Exceed Gear has two types of offset adjustments, visual and audio based, so be sure to fiddle with both to find desirable settings.

    "},{"location":"games/sdvx6/troubleshooting/#how-do-i-run-the-game-windowed-borderless","title":"How do I run the game windowed borderless?","text":"

    Some players utilize windowed mode and use 3rd party software called Borderless Gaming in order to achieve this, follow the program's instructions accordingly.

    "},{"location":"games/sdvx6/troubleshooting/#where-are-all-the-navigators","title":"Where are all the navigators?","text":"

    Many navigators are locked behind network requirements and they will not show unless connected to a network that has written support for the events they're typically locked behind.

    "},{"location":"games/sdvx6/troubleshooting/#my-game-audio-is-super-quiet","title":"My game audio is super quiet!","text":"

    Press your Test key to enter its menu, go to SOUND OPTIONS and change the volume from 20 to 30.

    "},{"location":"games/sdvx6/troubleshooting/#when-i-run-the-game-all-other-audio-is-gone","title":"When I run the game all other audio is gone!","text":"

    Sound Voltex Exceed Gear uses WASAPI exclusive mode for audio to get better audio latency. Unlike former versions of the games which used DirectSound.

    You can use the Shared Mode WASAPI patch to deal with some hardware issues, it can also be used to hear audio outside the game at the cost of audio latency.

    "},{"location":"games/sdvx6/troubleshooting/#im-not-getting-any-audio-my-game-crashes-due-to-audio","title":"I'm not getting any audio / My game crashes due to audio","text":"

    Many setups have found some difficulty with audio due to various equipment being used. Consider using the Shared Mode WASAPI patch.

    "},{"location":"games/taikonijiiro/setup/","title":"Taiko no Tatsujin Nijiiro","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/taikonijiiro/setup/#preparing-data","title":"Preparing data","text":"

    Taiko is generally distributed as a single folder. For Nijiiro, this will be SBWY 39.06. The game folder should contain an AMCUS, Data and Executable folder.

    Nijiiro is a rolling release so please verify your game version by opening AMCUS\\AMConfig.ini and verifying that it says cacfg-game_ver=39.06

    NAMCO data is also distributed as .VHDX and .VHD files. These files are useful for archival purposes, but are not required to run the game. Always download the unpacked data for home use.

    "},{"location":"games/taikonijiiro/setup/#installing-taikoarcadeloader-tal","title":"Installing TaikoArcadeLoader (TAL)","text":"

    TaikoArcadeLoader:

    TaikoArcadeLoader is a loader and hardware emulator for Nijiiro. It will allow us to launch the game, as well as configure inputs and network settings. More information can be found at the TAL github page.

    • Download the latest version of TAL from the actions tab of the TAL page. This will be a file named dist. You will need to be logged into github to download this file.

    • If github link is not working download TAL from our Discord in Taiko > Resources

    • Copy the files from dist.zip to your Executable/Release folder. When asked, choose to replace the existing files with the newly copied files.

    "},{"location":"games/taikonijiiro/setup/#configuring-taikoarcadeloader","title":"Configuring TaikoArcadeLoader","text":"

    The configuration information for TaikoArcadeLoader is stored within config.toml.

    Open up config.toml with a text editor of your choice. We'll be using Notepad++.

    config.toml is separated into several sections, indicated by the section name in [square brackets]

    Information for this can be found at the TAL github page.

    The [amauth] section contains network related config

    • server = can be left default if playing on a local server or offline but it is recommend to play on an online network.
    • port = do not change unless you know what you are doing.
    • chassis_id = do not change unless you know what you are doing.
    • shop_id = mostly visual. change if you want to.
    • game_ver = mostly visual. change if you want to.
    • country_code = do not change unless you know what you are doing.
    [amauth]\nserver = \"127.0.0.1\"\nport = \"54430\"\nchassis_id = \"284111080000\"\nshop_id = \"TWO-TORIAL\"\ngame_ver = \"39.06\"\ncountry_code = \"JPN\"\n

    The [patches] section contains patches

    • version = do not change unless you know what you are doing.
    • res = change to your display's resolution.
    • windowed = set to true if you want to run the game in windowed.
    • vsync = set to true if your display is set to 120hz.
    • unlock_songs = do not change unless you know what you are doing.
    [patches]\nversion = \"auto\"\nres = { x = 1920, y = 1080 }\nwindowed = false\nvsync = false\nunlock_songs = true\n

    The [keyboard] section contains keyboard related config

    • auto_ime = if set to true, changes your keyboard layout to Qwerty until the game is closed.
    • jp_layout = should be set to true for actual japanese keyboards.
    [keyboard]\nauto_ime = false\njp_layout = false\n
    "},{"location":"games/taikonijiiro/setup/#configuring-inputs","title":"Configuring Inputs","text":"

    Depending on the input method you choose, the configuration for them can change slightly. Below are all the input methods available and how to set them up.

    Keyboard

    Keyboard is the default input method.

    • The default layout uses DF JK for the drum input
    • P to Insert Card
    • Enter to add coins

    If you wish to view or change all the default keybinds, you can do so in keyconfig.toml.

    Controller

    The setup for both drum and normal controllers is the same.

    • In config.toml set wait_period = to 0
    • If you are using a controller that does not use keyboard inputs, you need to set SDL keybinds in keyconfig.toml
    • When you're using an analog input for the drums, you need to set analog_input = false to true in config.toml

    A list of valid SDL inputs can be found at the bottom of keyconfig.toml

    If you're using 2 controllers, use JoyToKey and remove SDL inputs from keyconfig.toml

    Physical Card Readers

    You can insert your card with physical card readers. If you happen to have one, you can set them up to use them for Taiko no Tatsujin Nijiiro.

    AIC Pico
    • In config.toml set [card_reader] to false.
    • Update to the latest firmware
    • Inside AMFWConfig.ini change COM4 to the port of your AIC Pico
    ACR122U
    • In config.toml set [card_reader] to true.
    • Use AkaiiKitsune's tal-cardreader plugin

    If you don't have a physical card reader, you can skip over to the Networks section

    "},{"location":"games/taikonijiiro/setup/#networks","title":"Networks","text":"

    Please choose one of the two solutions, not both!

    Online Hosted Servers (Recommended)

    There are a few online hosted servers that support Nijiiro, however most of them are currently invite only. Ask your friends where they play, and maybe they'll invite you!

    Elara Global Taiko Server

    EGTS is the only public Nijiiro server that also comes with an Omnimix verison that includes custom songs and songs from other Taiko games.

    Self Hosted Local Servers (Complex)

    If you wish to run the game locally, but with the ability to create and save a profile, you can run a server on the same computer you are playing the game on. This server will need to be running before you launch the game, however it can be shut down when you are no longer playing.

    Any provided setup instructions are likely to become outdated rather quickly.

    Please refer to the included setup instructions on each projects respective web page.

    • TLS - A network service emulator for Nijiiro. Setup can be complex as you are required to build TLS from source using VisualStudio and .sln files.
    "},{"location":"games/taikonijiiro/setup/#pre-launch-requirements","title":"Pre-launch requirements","text":"

    These steps are required, otherwise your game won't run.

    "},{"location":"games/taikonijiiro/setup/#vcredist-directx","title":"VCRedist & DirectX","text":"
    • Download and install the latest VCRedist (VisualCppRedist_AIO_x86_x64.exe)
    • Download and install the DirectX End-User Runtimes
    "},{"location":"games/taikonijiiro/setup/#first-launch","title":"First Launch","text":"

    Run Taiko.exe to start the game.

    Enter the I/O setup screen by pressing F1 on the Attract screen then using the arrow keys and Enter, navigate to I/O TEST -> TAIKO TEST. For the best settings copy the image below. If you wish you can adjust these settings to your liking.

    You're all done! The game should load up properly now.

    "},{"location":"games/taikonijiiro/setup/#troubleshooting","title":"Troubleshooting","text":"

    Have any other issue?

    Check out the Troubleshooting page.

    "},{"location":"games/taikonijiiro/troubleshooting/","title":"Taiko no Tatsujin Nijiiro Common Problems/Tips","text":"

    Please make sure you downloaded your data from an appropriate source.This guide is unable to troubleshoot any problems related to bad or poorly managed data.

    "},{"location":"games/taikonijiiro/troubleshooting/#changing-the-language","title":"Changing the Language","text":"

    Nijiiro supports changing the language from the test menu. The officially supported languages are:

    • Japanese (Default)
    • English
    • Chinese (zh-TW)
    • Korean

    An unofficial mod allows you to change the language to Chinese (simplified), this can be found on the Discord.

    Using F1, the arrow keys and Enter, navigate to OTHERS -> LANGUAGE

    "},{"location":"games/taikonijiiro/troubleshooting/#my-game-takes-a-long-time-to-boot","title":"My game takes a long time to boot","text":"

    First boot after connecting to a network will be very long (>90s)

    The game files for Nijiiro consists of thousands of small .bin files and Windows Defender is known to spend a long time scanning through them during game boot up.

    One way to massively speed up boot times is to add the entire game folder as a Windows Defender Exception.

    Doing this will prevent Defender from scanning your game folder for viruses.

    Only do this if you trust the source of your data!

    • Open Virus & threat protection.
    • Under Virus & threat protection settings click the Manage Settings button.
    • Scroll down to Exclusions and click on Add or remove exclusions.
    • Click the Add an exclusion button, select the folder option, navigate to the root of your game installation and click Select Folder.

    "},{"location":"games/taikonijiiro/troubleshooting/#my-game-is-running-crazy-fastslow","title":"My game is running crazy fast/slow","text":"

    The game needs to be ran at 120 FPS or things will break.

    If you have a display that supports 120hz or higher
    • Set your display to 120hz. You may need to make a custom resolution.
    • In config.toml set vsync = to true.
    If you have a display that is less than 120hz
    • In config.toml set vsync = to false and windowed = to true.
    • Limit the FPS for Taiko.exe using your GPU settings or RTSS

    "},{"location":"games/taikonijiiro/troubleshooting/#my-game-is-not-connected-to-a-network-but-i-set-one-up","title":"My game is not connected to a network but I set one up","text":"

    Disable shop close time or you won't always be able to connect to the network

    Using F1 arrow keys and Enter navigate to GAME OPTIONS -> CLOCK/CLOSE TIME SETTING -> SCHEDULE TYPE.

    If you are still unable to connect that means you have incorrectly configured your config.toml or your server.

    "},{"location":"games/taikonijiiro/troubleshooting/#game-modes-are-missing","title":"Game modes are missing","text":"

    This will happen if you didn't correctly apply the unlock game modes mod or didn't card in.

    You can download the mod on the Discord.

    You can card in by pressing P by default.

    "},{"location":"games/taikonijiiro/troubleshooting/#my-game-is-still-too-bigsmall-after-setting-the-resolution-in-configtoml","title":"My game is still too big/small after setting the resolution in config.toml","text":"

    This will happen if you incorrectly set your resolution or scale.

    You can check your display resolution by right clicking your desktop and selecting Display settings.

    You can set your scale to 100% right above where it says your resolution.

    "},{"location":"games/taikonijiiro/troubleshooting/#my-controller-is-dropping-inputs-i-cant-hit-good-drumrolls","title":"My controller is dropping inputs / I can't hit good drumrolls","text":"

    This a common issue on some controllers.

    In config.toml increase wait_period = by 1, then test it in-game and repeat until it feels correct.

    "},{"location":"games/taikonijiiro/troubleshooting/#best-settings-for-nvidia-gpus","title":"Best settings for Nvidia GPUs","text":"

    This will help with latency and other issues

    In NVIDIA Control Panel set the following settings for Taiko.exe.

    • Low Latency Mode Ultra
    • Max Frame Rate 120 FPS
    • Power management mode Prefer maximum performance
    • Vertical sync Fast
    "},{"location":"games/taikonijiiro/troubleshooting/#audio","title":"Audio","text":"

    By default the game will use WASAPI Shared

    To use WASAPI exclusive:

    • Inside config.toml, set wasapi_shared = true to false

    To use ASIO in combination with FlexASIO:

    • Inside config.toml, set wasapi_shared = true to false and set asio = false to true.
    • Change asio_driver = \"\" to asio_driver = \"FlexASIO\"

    To change FlexASIO settings refer to this.

    "}]} \ No newline at end of file