diff --git a/docs/errorcodes/sega.md b/docs/errorcodes/sega.md index 0ee05df..67c52d9 100644 --- a/docs/errorcodes/sega.md +++ b/docs/errorcodes/sega.md @@ -52,10 +52,23 @@ 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: - ```batchfile + ``` amdaemon.exe -f -c config_common.json config_server.json config_client.json {++config_hook.json++} ``` +### 0800 +!!! tip "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: + ```ini + [dns] + ; Can also be an IP address: + ; default=192.168.34.23 + default=example.com + ``` + ### 0919 !!! tip "DVD Drive Remain Error" This error occurs if the game detects an enabled DVD drive on the system. To @@ -79,6 +92,28 @@ If on a real cabinet using a real keychip, confirm that the keychip is connected properly and working. +### 4104 +!!! tip "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: + + ```hl_lines="5" + Runtime exception occurred. + File: D:\Jenkins\workspace\amdaemon_all_build\libs\amdproc\src\ConfigFileLoader.cpp + Line: 79 + Function: enum amdaemon::process::ConfigFileLoader::Result __cdecl `anonymous-namespace'::parse(const class std::basic_string,class std::allocator > &,class picojson::value &) + Message: Cannot open "config_nonexistent.json". + ``` + + ```hl_lines="5 6" + Runtime exception occurred. + File: D:\Jenkins\workspace\amdaemon_all_build\libs\amdproc\src\ConfigFileLoader.cpp + Line: 89 + Function: enum amdaemon::process::ConfigFileLoader::Result __cdecl `anonymous-namespace'::parse(const class std::basic_string,class std::allocator > &,class picojson::value &) + Message: Cannot parse ".\config_hook.json". + syntax error at line 6 near: } + ``` + ### 4105 !!! tip "Unexpected Error Occured" Check the AM Daemon window for any "runtime exception" messages, such as @@ -152,7 +187,7 @@ 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: - ```batchfile + ``` amdaemon.exe -f -c config_common.json config_server.json config_client.json {++config_hook.json++} ``` diff --git a/docs/games/chunithmluminous/controllers.md b/docs/games/chunithmluminous/controllers.md new file mode 100644 index 0000000..22f11cf --- /dev/null +++ b/docs/games/chunithmluminous/controllers.md @@ -0,0 +1,288 @@ +# CHUNITHM LUMINOUS + + +!!! info "Last updated: ???? ???, 2024" + +!!! danger "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." + +--- + +!!! tip "" + 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. + +!!! tip "" + If you have a single DLL, uncomment the `path=` line by removing the leading semicolon (`;`), + then add your DLL's file name after the `=`: + + ```ini hl_lines="5" + [chuniio] + ; Uncomment this if you have custom chuniio implementation comprised of a single 32bit DLL. + ; (will use chu2to3 engine internally) + ;(1)! + path=controller.dll + ``` + + 1. Note that there is no leading semicolon. + +!!! tip "" + 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 `=`: + + ```ini hl_lines="5 6" + [chuniio] + ; Uncomment both of these if you have custom chuniio implementation comprised of two DLLs. + ; x86 chuniio to path32, x64 to path64. Both are necessary. + ;(1)! + path32=controller_x86.dll + path64=controller_x64.dll + ``` + + 1. Note that there is no leading semicolon. + +--- + +### Keyboard + +!!! tip "" + 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`. + +--- + +### Brokenithm + +!!! tip "" + 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. + +#### Android + +!!! warning + Your computer and your Android device must be on the same local network. + +!!! tip "" + - Download the latest version of [Brokenithm-Android](https://github.com/tindy2013/Brokenithm-Android/releases/latest) + and install it on your Android device. + - Download the latest version of [Brokenithm-Android-Server](https://github.com/tindy2013/Brokenithm-Android-Server/releases/latest) + and extract **only `brokenithm_server.exe`** to your `App\bin\` folder. + - Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder. + - Edit your `App\bin\segatools.ini` to reference the extracted DLLs: + + ```ini hl_lines="2" + [aimeio] + path=aime_brokenithm.dll + ``` + + ```ini hl_lines="2 3" + [chuniio] + path32=brokenithm_x86.dll + path64=brokenithm_x64.dll + ``` + + - 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. + +??? info "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. + +??? info "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: + + ```batch hl_lines="5" + @echo off + + pushd %~dp0 + + start /min brokenithm_server + start /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 + inject_x86 -d -k chusanhook_x86.dll chusanApp.exe + taskkill /f /im amdaemon.exe > nul 2>&1 + + echo. + echo Game processes have terminated + pause + ``` + +??? info "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](https://dl.google.com/android/repository/platform-tools-latest-windows.zip) + 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: + + ```batch + adb reverse tcp:52468 tcp:52468 + ``` + + - 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: + + ```batch hl_lines="5" + @echo off + + pushd %~dp0 + + start /min platform-tools\adb reverse tcp:52468 tcp:52468 + start /min brokenithm_server + start /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 + inject_x86 -d -k chusanhook_x86.dll chusanApp.exe + taskkill /f /im amdaemon.exe > nul 2>&1 + + echo. + echo Game processes have terminated + pause + ``` + +#### iOS/iPadOS + +!!! tip "" + - Install Brokenithm on your iOS/iPadOS device by joining the [Brokenithm TestFlight](https://testflight.apple.com/join/15FSg9sB). + - If the TestFlight is full, you will need to sideload the [IPA](https://redive.estertion.win/ipas/Brokenithm-iOS-build-10.ipa) with [Sideloadly](https://sideloadly.io/). + - 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](https://www.apple.com/itunes/download/win64). + - Download the latest version of [Brokenithm-Evolved-iOS server](https://redive.estertion.win/ipas/Brokenithm/Brokenithm-Evolved-iOS-v0.3.7z) + and extract it to `App\bin\Brokenithm-Server`. + - Download the latest version of [Brokenithm-Evolved IO DLLs](https://gitea.tendokyu.moe/Dniel97/Brokenithm-Evolved/releases) and extract the DLL files to your `App\bin\` folder. + - Edit your `App\bin\segatools.ini` to reference the extracted DLLs: + + ```ini hl_lines="2" + [aimeio] + path=aime_brokenithm.dll + ``` + + ```ini hl_lines="2 3" + [chuniio] + path32=brokenithm_x86.dll + path64=brokenithm_x64.dll + ``` + + - 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. + +??? info "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: + + ```batch hl_lines="5" + @echo off + + pushd %~dp0 + + start /min Brokenithm-Server\Brokenithm-Evolved-iOS.exe + start /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 + inject_x86 -d -k chusanhook_x86.dll chusanApp.exe + taskkill /f /im amdaemon.exe > nul 2>&1 + + echo. + echo Game processes have terminated + pause + ``` + +### TASOLLER + +!!! 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](https://www.dj-dao.com/en/support/11.html). + +!!! tip "" + - Install the [custom Host and LED firmware](https://pixeldrain.com/u/DajSPEoa) 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](https://gitea.tendokyu.moe/Scribbler/chuniio-tasoller/releases) (download `lib.zip`) + - [chuniio-rs](https://gitea.tendokyu.moe/beerpsi/chuniio-rs/releases) (download `chusan.zip`) + - Edit your `App\bin\segatools.ini` to reference the extracted DLLs: + + ```ini + [chuniio] + path32=chuniio_tasoller.dll;(1)! + path64=chuniio_tasoller_x64.dll;(2)! + ``` + + 1. Or `chuniio_tasoller_v2_chusan.dll` if you downloaded `chuniio-rs`. + 2. Or `chuniio_tasoller_v2_amdaemon.dll` if you downloaded `chuniio-rs`. + + - Connect the controller to your computer, and then start the game. + +### YubiDeck + +!!! tip "" + - Switch your YubiDeck to HID output mode. Instructions on how to do so are provided + in the [YubiDeck manual](https://drive.google.com/file/d/11KVlKbg3zGCRwI7R-30t2IJc6OQwDEgo/view). + - Download the latest version of [YubiDeck IO DLLs](https://gitea.tendokyu.moe/beerpsi/chuniio-yubideck/releases) + and extract it to your `App\bin` folder. + - Edit your `App\bin\segatools.ini` to reference the extracted DLLs: + + ```ini + [chuniio] + path32=chuniio_yubideck_chusan.dll + path64=chuniio_yubideck_amdaemon.dll + ``` + + - Optionally, reference the included AimeIO DLL to use the controller's + built-in card reader: + + ```ini + [aimeio] + path=aimeio_yubideck.dll + ``` + + - Connect the controller to your computer, and then start the game. + +### Arcade hardware and other controllers + +!!! tip "" + If you're interested in using a cabinet slider and air sensors, or possibly even + making your own controller, the [Cons&Stuff website](https://consandstuff.github.io/) + and Discord community is a great place to start! diff --git a/docs/games/chunithmluminous/setup.md b/docs/games/chunithmluminous/setup.md new file mode 100644 index 0000000..3873659 --- /dev/null +++ b/docs/games/chunithmluminous/setup.md @@ -0,0 +1,342 @@ +# CHUNITHM LUMINOUS + + +!!! info "Last updated: ???? ???, 2024" + +!!! danger "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." + +!!! danger "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! + +--- + +### Preparing data + +!!! danger "There are currently issues with running game data in the `E:\` or `Y:\` drive.
Please extract the data into other drives." + +!!! tip "" + 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. + + + +??? warning "If your data doesn't look like this" + If your data looks like the second 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.** + +#### Updating the base game + +!!! tip "" + Extract your patch's files to your existing data in a way that matches its + file structure. Agree to overwrite files if necessary. + +#### Installing option data + +!!! tip "" + 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.** + + + +#### Installing ICFs + +!!! tip "" + 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.** + +!!! info "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`. + + +#### Installing unprotected executables + +!!! tip "" + 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](https://discord.gg/cZRUmEPK78) + for assistance. + + Copy `chusanApp.exe` and `amdaemon.exe` to the `bin` folder of your game data. Agree + to overwirte when asked. + +--- + +### Patching the game + +!!! info "Go through the [Web Patching](../../extras/patchweb.md) 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. + +!!! danger "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. | + +--- + +### Installing segatools + +!!! tip "" + - Head over to [segatools releases](https://gitea.tendokyu.moe/Dniel97/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: + + + +--- + +### Configuring segatools + +!!! tip "" + 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++](https://notepad-plus-plus.org/). + + 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. + + ```ini + [gpio] + dipsw2=1 + dipsw2=1 ; WRONG! + ``` + +#### `[vfs]` + +!!! tip "" + If you've been matching the file structure as described in the [Preparing data](#preparing-data) + section, you can fill in this section with the values below: + + ```ini + [vfs] + amfs=../../amfs + option=../../Option + appdata=../../AppData + ``` + +#### `[gpio]` + +!!! tip "" + - If you have a 120Hz monitor, set `dipsw2` and `dipsw3` to 0: + + ```ini + [gpio] + dipsw2=0 + dipsw3=0 + ``` + + - If you have a 60Hz monitor, set `dipsw2` and `dipsw3` to 1: + + ```ini + [gpio] + dipsw2=1 + dipsw3=1 + ``` + +#### `[gfx]` + +!!! tip "" + - 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. + +??? info "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. + +--- + +### Connecting to a network + +!!! danger "Please choose one of the two solutions, not both!" + +??? tip "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!** + + ```ini + [dns] + default=network.example + ``` + + Then, head to the `[keychip]` section and set `id` to the keychip ID provided by your network: + + ```ini + [keychip] + id=A69E-XXXXXXXXXXX + ``` + + 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. + + + +??? warning "Local (ARTEMiS/AquaDX)" + Both of these options require non-trivial setup. Refer to the official guides for [ARTEMiS](https://gitea.tendokyu.moe/Hay1tsme/artemis/src/branch/develop/docs/INSTALL_WINDOWS.md) + and [AquaDX](https://github.com/hykilpikonna/AquaDX?tab=readme-ov-file#usage-v1-developmental-preview) + to set up a local server. + +--- + +### Pre-launch requirements + +!!! info "These steps are required, otherwise your game won't run." + +#### VCRedist & DirectX + +!!! tip "" + - Download and install the latest [VCRedist](https://github.com/abbodi1406/vcredist/releases/latest) (`VisualCppRedist_AIO_x86_x64.exe`) + - Download and install the [DirectX End-User Runtimes](https://www.microsoft.com/en-us/download/details.aspx?id=8109) + +#### Audio + +!!! tip "" + - 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`. + + + +#### Fixing OpenSSL on Intel 10th Gen and newer CPUs + +!!! tip "" + 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. + + ```batch hl_lines="2" + @echo off + set OPENSSL_ia32cap=:~0x20000000 + + pushd %~dp0 + ... + ``` + +--- + +### First launch + +!!! danger "If you have any issues running the game, refer to the [Troubleshooting](troubleshooting.md) page." + +!!! tip + Without an English patch, the service menu will be in Japanese. If you don't know Japanese, [Google Lens](https://lens.google/) + is a handy tool for navigating this menu. + +#### GAME ASSIGNMENTS + +!!! tip "" + 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. + + + +!!! tip "" + 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 **ゲーム設定** (`GAME ASSIGNMENTS`, the 4th option). + + + +!!! tip "" + Select **グループ内基準機設定** (`SET STANDARD IN GROUP`, the second option) + and toggle this setting to **基準機** (`STANDARD`). + + + +!!! tip "" + Select **終了** (`EXIT`, the last option) to exit to the main service menu. + +#### CLOSE SETTING + +!!! tip "" + Navigate to **閉店設定** (`CLOSE SETTING`, the 10th option). + + + +!!! tip "" + Navigate to **時** (`HOUR`, the 2nd option) and use the `Service` button + to toggle the setting until it says **全時刻** (`ALL TIME`). + + + +!!! tip "" + Select **終了** (`EXIT`, the last option) to exit to the main service menu, then select **終了** + (also the last option) in the main menu to exit the service menu. + +#### Waiting for Distribution Server + +!!! tip "" + If you're stuck at the `Waiting for Distribution Server` screen below, close the game and relaunch. + + + +!!! tip "" + 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. + +### Further configuration + +!!! info "Input methods and controllers are covered in the [Controllers](controllers.md) page." + +!!! warning "Have any other issues?" + + Check out the [Troubleshooting](troubleshooting.md) and [Error Codes](../../errorcodes/sega.md) pages. diff --git a/docs/games/chunithmluminous/troubleshooting.md b/docs/games/chunithmluminous/troubleshooting.md new file mode 100644 index 0000000..812792d --- /dev/null +++ b/docs/games/chunithmluminous/troubleshooting.md @@ -0,0 +1,116 @@ +# CHUNITHM LUMINOUS + + +!!! info "Last updated: ???? ???, 2024" + +!!! danger "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." + +--- + +### My game crashes on launch! + +!!! tip "" + 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](setup.md#fixing-openssl-on-intel-10th-gen-and-newer-cpus) + 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](setup.md#gpio) 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](../../resources.md#web-patchers)). + +??? info "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. + + ```batch + @echo off + cls + echo Attempting to run AM Daemon ... + echo Window should close after 30 seconds + echo Log will be generated at amdaemontest.txt + call :sub >amdaemontest.txt + exit /b + + :sub + set OPENSSL_ia32cap=:~0x20000000 + pushd %~dp0 + start /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 + ping 127.0.0.1 -n 31 > nul && taskkill /im amdaemon.exe + ``` + + 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. + +--- + +### My game takes a long time to boot! + +!!! tip "" + 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. + +--- + +### My game is running too slow/fast + +!!! tip "" + 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. + +--- + +### My game is stuttering + +!!! tip "" + For NVIDIA users, create an override for `chusanApp.exe` in NVIDIA Control Panel + and change "Power management mode" to "**Prefer maximum performance**". + +--- + +### My game crashes when I tab out of fullscreen! + +!!! tip "" + 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](https://github.com/doitsujin/dxvk/releases/latest). + This will be a `dxvk-x.y.z.tar.gz` file, which you can open using [7zip](https://www.7-zip.org/). + 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.** + +--- + +### When I run the game all other audio is gone! + +!!! tip "" + CHUNITHM uses [WASAPI exclusive mode](https://docs.microsoft.com/en-us/windows/win32/coreaudio/exclusive-mode-streams) + for audio to get better latency. + + You can apply the "Shared Audio" patch on a CHUNITHM web patcher (see [Resources](../../resources.md#web-patchers)) + to hear audio outside of the game at the cost of audio latency. + diff --git a/docs/img/chunithm/controllers/0_ipaddress.png b/docs/img/chunithm/controllers/0_ipaddress.png new file mode 100644 index 0000000..66e543c Binary files /dev/null and b/docs/img/chunithm/controllers/0_ipaddress.png differ diff --git a/docs/img/chunithm/setup/0_chunithmdata.png b/docs/img/chunithm/setup/0_chunithmdata.png new file mode 100644 index 0000000..e6ed71f Binary files /dev/null and b/docs/img/chunithm/setup/0_chunithmdata.png differ diff --git a/docs/img/chunithm/setup/0_chunithmdata_withappdata.png b/docs/img/chunithm/setup/0_chunithmdata_withappdata.png new file mode 100644 index 0000000..45fa5c9 Binary files /dev/null and b/docs/img/chunithm/setup/0_chunithmdata_withappdata.png differ diff --git a/docs/img/chunithm/setup/1_chunithmapp.png b/docs/img/chunithm/setup/1_chunithmapp.png new file mode 100644 index 0000000..329bd10 Binary files /dev/null and b/docs/img/chunithm/setup/1_chunithmapp.png differ diff --git a/docs/img/chunithm/setup/2_chunithmoption.png b/docs/img/chunithm/setup/2_chunithmoption.png new file mode 100644 index 0000000..b913d24 Binary files /dev/null and b/docs/img/chunithm/setup/2_chunithmoption.png differ diff --git a/docs/img/chunithm/setup/3_segatools_installed.png b/docs/img/chunithm/setup/3_segatools_installed.png new file mode 100644 index 0000000..a4920dd Binary files /dev/null and b/docs/img/chunithm/setup/3_segatools_installed.png differ diff --git a/docs/img/chunithm/setup/4_access_code.png b/docs/img/chunithm/setup/4_access_code.png new file mode 100644 index 0000000..74bf007 Binary files /dev/null and b/docs/img/chunithm/setup/4_access_code.png differ diff --git a/docs/img/chunithm/setup/5_audio.png b/docs/img/chunithm/setup/5_audio.png new file mode 100644 index 0000000..e8aea75 Binary files /dev/null and b/docs/img/chunithm/setup/5_audio.png differ diff --git a/docs/resources.md b/docs/resources.md index c983f3b..031d270 100644 --- a/docs/resources.md +++ b/docs/resources.md @@ -60,4 +60,13 @@ !!! tip "" - [573Controller](https://github.com/limyz/573controller) - DIY guitar solution for converting official cab guitars to USB home-use - - [Drummania English Menu Translation](https://twitter.com/approvedtx/status/1174028743989317632?s=21) - Handy for beginners, lots of options! \ No newline at end of file + - [Drummania English Menu Translation](https://twitter.com/approvedtx/status/1174028743989317632?s=21) - Handy for beginners, lots of options! + +--- + +### CHUNITHM + +!!! tip "" + + - Codex's [English Chunithm Guide](https://docs.google.com/document/d/1bsVv3-cOuk_0ZMlLq8joqcwa5YUM_Ff4VnQCgJIkUOk/view) - + Handy CHUNITHM resource for players of all skill levels diff --git a/mkdocs.yml b/mkdocs.yml index d0fa0e4..63277f9 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -109,6 +109,10 @@ nav: - "Controllers": "games/chunithmsunplus/controllers.md" - "Networks": "games/chunithmsunplus/networks.md" - "Common Problems/Tips": "games/chunithmsunplus/problems.md" + - "LUMINOUS": + - "Game Setup": "games/chunithmluminous/setup.md" + - "Controllers": "games/chunithmluminous/controllers.md" + - "Troubleshooting": "games/chunithmluminous/troubleshooting.md" - NAMCO: - "Taiko no Tatsujin": - "Nijiiro":