Merge pull request #132 from NotAkitake/revamp/asphyxia
Revamp Asphyxia guide
@@ -1,79 +1,152 @@
|
|||||||
--8<-- "docs/snippets/common/old_guide.md"
|
<img class="header-logo" src="/img/extras/asphyxia/logo.webp">
|
||||||
|
# Asphyxia
|
||||||
|
|
||||||
!!! danger "If this isn't your first time setting up Asphyxia, make sure to ^^*backup your `savedata` folder*^^ and place it somewhere safe."
|
!!! danger "Existing save data"
|
||||||
|
|
||||||
## What is Asphyxia CORE?
|
If you have previously used Asphyxia, be sure to backup your **savedata** folder located next to the `plugins` directory.
|
||||||
|
This folder contains important data including your game profiles and scores that you may want to keep.
|
||||||
|
|
||||||
|
## What is Asphyxia?
|
||||||
|
|
||||||
!!! tip ""
|
!!! tip ""
|
||||||
|
|
||||||
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`.
|
Asphyxia is a tool that handles online services for BEMANI games by simulating an e-amusement network, enabling features like score saving, profile management, game events and other online functionality.
|
||||||
|
|
||||||
## Configuring Asphyxia
|
It consists of two main components:
|
||||||
|
|
||||||
|
- Asphyxia **CORE**: The foundational framework that provides the base functionality but no game support by itself
|
||||||
|
- Asphyxia **PLUGINS**: Community-developed modules that implement game-specific features and support
|
||||||
|
|
||||||
|
## Downloading Asphyxia
|
||||||
|
|
||||||
!!! tip ""
|
!!! tip ""
|
||||||
|
|
||||||
First, grab the latest release [here.](https://github.com/asphyxia-core/asphyxia-core.github.io/releases) 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.
|
- Head to [Asphyxia CORE's releases](https://github.com/asphyxia-core/asphyxia-core.github.io/releases) page
|
||||||
|
- Download the latest `asphyxia-core-win-x64.zip` archive
|
||||||
|
- Prepare a permanent place for your Asphyxia files, **preferably an empty folder away from your game data**
|
||||||
|
- Extract the archive inside of it
|
||||||
|
|
||||||
<img src="/img/extras/asphyxia/1.webp">
|
You should end up with a structure as follows:
|
||||||
|
|
||||||
|
```
|
||||||
|
📂 asphyxia
|
||||||
|
┣━ 📂 plugins
|
||||||
|
┃ ┣━ 📂 _example@identifier
|
||||||
|
┃ ┃ ┗━ ...
|
||||||
|
┃ ┣━ 📄 asphyxia-core.d.ts
|
||||||
|
┃ ┣━ 📄 package.json
|
||||||
|
┃ ┗━ 📄 tsconfig.json
|
||||||
|
┗━ ▶️ asphyxia-core-x64.exe
|
||||||
|
```
|
||||||
|
|
||||||
|
!!! info "You can delete the `_example@identifier` folder, it serves as an example plugin layout for developers"
|
||||||
|
|
||||||
|
## Installing Plugins
|
||||||
|
|
||||||
|
!!! info "Asphyxia requires a specific plugin for each game you want to use it with"
|
||||||
|
|
||||||
!!! tip ""
|
!!! tip ""
|
||||||
|
|
||||||
Your `contents` folder should look like this then:
|
To get started with Asphyxia for your specific game(s), you'll need to install the appropriate plugin(s).
|
||||||
|
|
||||||
<img src="/img/extras/asphyxia/2.webp">
|
While **we maintain a collection of plugins in our Discord server, we may not have support for every game and version**.
|
||||||
|
In such cases, **you will need to search for community-developed plugins online yourself**.
|
||||||
|
|
||||||
|
To install plugins from our Discord:
|
||||||
|
|
||||||
|
- Join our Discord server using the logo in the bottom right of the page
|
||||||
|
- Navigate to your game's channel
|
||||||
|
- Check the pinned `Resources` message for potential plugin links
|
||||||
|
- Download and extract the plugin
|
||||||
|
- Place the extracted folders (like `sdvx@asphyxia`) into your `plugins` directory
|
||||||
|
|
||||||
|
If plugin files are scattered across multiple files/folders, create a single directory for them and move everything inside, following the `game@asphyxia` naming scheme.
|
||||||
|
|
||||||
|
```
|
||||||
|
📂 asphyxia
|
||||||
|
┣━ 📂 plugins
|
||||||
|
┃ ┣━ 📂 sdvx@asphyxia
|
||||||
|
┃ ┣━ 📂 iidx@asphyxia
|
||||||
|
┃ ┣━ 📂 etc.
|
||||||
|
┃ ┣━ 📄 asphyxia-core.d.ts
|
||||||
|
┃ ┣━ 📄 package.json
|
||||||
|
┃ ┗━ 📄 tsconfig.json
|
||||||
|
┗━ ▶️ asphyxia-core-x64.exe
|
||||||
|
```
|
||||||
|
|
||||||
|
## Starting and Configuring Asphyxia
|
||||||
|
|
||||||
!!! tip ""
|
!!! tip ""
|
||||||
|
|
||||||
For Asphyxia to run properly, you will need a plugin for each game you want to use it with.
|
Launch `asphyxia-core-x64.exe` to start the server.
|
||||||
|
A browser window will automatically open with the Asphyxia WebUI interface.
|
||||||
|
|
||||||
- Join our Discord server by clicking the Discord logo at the bottom right of the page
|
### Configuring Service URL
|
||||||
- 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
|
|
||||||
|
|
||||||
Note: We can't provide links to plugins for every game, only the ones that have known good plugins.
|
|
||||||
|
|
||||||
!!! tip ""
|
!!! tip ""
|
||||||
|
|
||||||
Run `asphyxia-core-x64.exe` to start the server. It will automatically open a browser tab. This is your `WebUI`.
|
To configure the service URL for your BEMANI game:
|
||||||
|
|
||||||
## Changing Service URL
|
- Open `spicecfg.exe`
|
||||||
|
- Navigate to the `Options` tab
|
||||||
|
- Locate the `EA Service URL` field
|
||||||
|
- Enter the URL shown in Asphyxia WebUI's Dashboard (typically `localhost:8083`)
|
||||||
|
|
||||||
!!! tip ""
|
### Game-specific configuration
|
||||||
|
|
||||||
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.
|
!!! info "Each tab corresponds to steps you need to follow for various games"
|
||||||
|
|
||||||
<img src="/img/extras/asphyxia/3.webp">
|
=== "SDVX"
|
||||||
|
|
||||||
!!! tip ""
|
!!! tip "Settings and WebUI Assets"
|
||||||
|
|
||||||
Here it's `localhost:8083`.
|
- In the WebUI, select `SDVX` in the left sidebar
|
||||||
|
- Under `Plugin Settings`, find `Exceed Gear Data Directory`
|
||||||
|
- Enter the full path to your game's data folder (the folder containing `data`, `modules`, `prop`, etc.)
|
||||||
|
- (Optional) Toggle all four `Unlock` switches to unlock all game content by default
|
||||||
|
- Click `Apply` to save your changes
|
||||||
|
- Close Asphyxia by selecting `Process` > `Shutdown CORE` in the top-right corner of the WebUI
|
||||||
|
|
||||||
<img src="/img/extras/asphyxia/4.webp">
|
Next, update the WebUI assets:
|
||||||
|
|
||||||
## Setting up SDVX
|
- Launch `asphyxia-core-x64.exe` again
|
||||||
|
- Click `Update Webui Assets` in the left sidebar
|
||||||
|
- Click `Update` and confirm the datacode update in `ea3-config.xml`
|
||||||
|
- Wait for the console to show "Done." at the top
|
||||||
|
|
||||||
!!! tip ""
|
!!! warning "About expected errors"
|
||||||
|
|
||||||
On the `WebUI`, click on `SDVX` on the left-hand bar and on the right side under `Plugin Settings`, you should see an option named `Exceed Gear Data Directory`. In here, paste the path of your `contents` folder and press enter. ^^In my case^^, it looks like this:
|
While importing WebUI assets you may see errors like:
|
||||||
|
`- [ifs] MD5 mismatch - /data/graphics/ver06/psd_level.ifs`
|
||||||
|
|
||||||
<img src="/img/extras/asphyxia/5.webp">
|
If you're using the correct plugin and game data, these can usually be ignored.
|
||||||
|
|
||||||
!!! tip ""
|
!!! tip "Final setup"
|
||||||
|
|
||||||
Next, click on `Update Webui Assets` on the left-hand bar. Make sure you're using the correct path as it won't work otherwise. When you've done that, click on `Update` and confirm that you've updated the datacode in your `ea3-config.xml` file. After a few seconds, the text console should say `Done` and say `Successfully extracted textures` if you input your path correctly.
|
- Launch SDVX and create a new profile
|
||||||
|
- Close the game
|
||||||
|
- In the WebUI, navigate to `SDVX` → `Profiles` making sure your new profile appears
|
||||||
|
- Customize additional settings through the WebUI interface and make sure everything works as intended
|
||||||
|
|
||||||
<img src="/img/extras/asphyxia/6.webp">
|
=== "IIDX"
|
||||||
|
|
||||||
!!! tip ""
|
!!! tip ""
|
||||||
|
|
||||||
Next, launch the game and card in. Go through the process of creating a profile, then close the game. After that, 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, you're done and everything should function as intended if you set everything correctly.
|
IIDX setup is straightforward:
|
||||||
|
|
||||||
If they appear broken, completely close Asphyxia and 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.
|
- Launch the game with Asphyxia running
|
||||||
|
- Create a new profile in-game
|
||||||
|
- The profile will automatically appear in the WebUI
|
||||||
|
- You can customize additional settings through the WebUI interface and make sure everything works as intended
|
||||||
|
|
||||||
## Setting up IIDX
|
## Final words
|
||||||
|
|
||||||
!!! tip ""
|
!!! success "Setup Complete!"
|
||||||
|
|
||||||
You have already done all the step required to have it working. Simply create a profile and it will be visible on the `WebUI`.
|
Remember to always make sure Asphyxia is running **before** starting your game!
|
||||||
|
|
||||||
|
If you were following a guide, you can now return to it and proceed with the next steps.
|
||||||
|
|
||||||
|
## Help
|
||||||
|
|
||||||
|
--8<-- "docs/snippets/common/help.md"
|
||||||
@@ -31,7 +31,7 @@
|
|||||||
|
|
||||||
Open your game's `.dll` file in the hex editor.
|
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..
|
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.
|
Pictured below, we've opened up `bm2dx.dll` inside HxD.
|
||||||
|
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
??? warning "If your data doesn't look like this"
|
??? warning "If your data doesn't look like this"
|
||||||
|
|
||||||
If extra files are present next to your folders, such as executables, scripts, etc.. **remove them**.
|
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.**
|
**This also means your data was tampered with and we strongly recommend getting new data from somewhere else.**
|
||||||
|
|
||||||
## Installing spice2x
|
## Installing spice2x
|
||||||
|
|||||||
@@ -42,7 +42,7 @@
|
|||||||
- Create a `modules` folder.
|
- Create a `modules` folder.
|
||||||
- Move all `.dll` files inside of it so you end up with a structure as shown above.
|
- 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**.
|
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.**
|
**This also means your data was tampered with and we strongly recommend getting new data from somewhere else.**
|
||||||
|
|
||||||
!!! info "If you don't need to update your data, you can skip over to the [Installing spice2x](#installing-spice2x) section."
|
!!! info "If you don't need to update your data, you can skip over to the [Installing spice2x](#installing-spice2x) section."
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
Then there's a **problem with your game data**.
|
Then there's a **problem with your game data**.
|
||||||
|
|
||||||
- Make sure there are no DLL files next to the main game directories (`data`, `prop`, etc..)
|
- Make sure there are no DLL files next to the main game directories (`data`, `prop`, etc.)
|
||||||
If there are, **move them all** under the `modules` directory
|
If there are, **move them all** under the `modules` directory
|
||||||
|
|
||||||
For game version `2024-11-05` and newer, check the following files in your `modules` directory:
|
For game version `2024-11-05` and newer, check the following files in your `modules` directory:
|
||||||
|
|||||||
@@ -47,7 +47,7 @@
|
|||||||
┣━📂H005
|
┣━📂H005
|
||||||
┣━📂H011
|
┣━📂H011
|
||||||
┣━📂H031
|
┣━📂H031
|
||||||
┗━ etc..
|
┗━ etc.
|
||||||
```
|
```
|
||||||
|
|
||||||
!!! info "Option numbers don't always follow a sequential pattern<br>It's common to see the numbers jump, for example `H005` then `H011`"
|
!!! info "Option numbers don't always follow a sequential pattern<br>It's common to see the numbers jump, for example `H005` then `H011`"
|
||||||
|
|||||||
@@ -48,7 +48,7 @@
|
|||||||
┣━📂A001
|
┣━📂A001
|
||||||
┣━📂A002
|
┣━📂A002
|
||||||
┣━📂A012
|
┣━📂A012
|
||||||
┗━ etc..
|
┗━ etc.
|
||||||
```
|
```
|
||||||
|
|
||||||
!!! info "Option numbers don't always follow a sequential pattern<br>It's common to see the numbers jump, for example `A001` then `A012`"
|
!!! info "Option numbers don't always follow a sequential pattern<br>It's common to see the numbers jump, for example `A001` then `A012`"
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 6.9 KiB |
|
Before Width: | Height: | Size: 8.3 KiB |
|
Before Width: | Height: | Size: 9.8 KiB |
|
Before Width: | Height: | Size: 4.9 KiB |
|
Before Width: | Height: | Size: 8.7 KiB |
|
After Width: | Height: | Size: 11 KiB |
@@ -1,6 +1,6 @@
|
|||||||
!!! danger "If your data does not look like this"
|
!!! danger "If your data does not look like this"
|
||||||
|
|
||||||
If you have `.dll` files next to your `data`, `prop`, etc.. folders:
|
If you have `.dll` files next to your `data`, `prop`, etc. folders:
|
||||||
|
|
||||||
- Create a `modules` folder if it does not exist already
|
- Create a `modules` folder if it does not exist already
|
||||||
- Move all `.dll` files into it
|
- Move all `.dll` files into it
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
┣━📂A001
|
┣━📂A001
|
||||||
┣━📂A121
|
┣━📂A121
|
||||||
┣━📂A131
|
┣━📂A131
|
||||||
┗━ etc..
|
┗━ etc.
|
||||||
```
|
```
|
||||||
|
|
||||||
!!! info "Option numbers don't always follow a sequential pattern<br>It's common to see the numbers jump, for example `A113` then `A121`"
|
!!! info "Option numbers don't always follow a sequential pattern<br>It's common to see the numbers jump, for example `A113` then `A121`"
|
||||||
|
|||||||