mirror of
https://github.com/djhackersdev/bemanitools.git
synced 2025-02-22 05:09:36 +01:00
132 lines
5.8 KiB
Markdown
132 lines
5.8 KiB
Markdown
# ddrhook1
|
|
|
|
## Supported games
|
|
|
|
The following games are supported with this hook library:
|
|
|
|
- Dance Dance Revolution X
|
|
- Dance Dance Revolution X2 (US/EU regions)
|
|
|
|
The games must be bootstrapped using [inject](../inject.md).
|
|
|
|
## Data setup
|
|
|
|
Ensure your folder with your unpacked data looks like this:
|
|
|
|
- `conf`
|
|
- `data`
|
|
- `ddr`
|
|
- `ddr_YYYYMMDDRR` where `YYYYMMDDRR` corresponds to different datecodes of different versions.
|
|
Multiple folders of these possible
|
|
|
|
`DDR.exe` files should be in `ddr` and `ddr_YYYYMMDDRR` folders.
|
|
|
|
Unpack the distribution package `ddr-11.zip` into one of the folders containing a `DDR.exe` file. We
|
|
recommend using the one with the latest datecode which denotes the latest version of the game
|
|
including bugfixes etc.
|
|
|
|
`gamestart-11.bat` as well as `ddrhook1.dll` are now expected to be located in the same folder as
|
|
(one) `DDR.exe` file.
|
|
|
|
## Running
|
|
|
|
Run `gamestart-11.bat` as administrator. For the US version of the game, run `gamestart-11-us.bat`
|
|
instead. This can be done by either by double clicking or running it from `cmd.exe`. The latter is
|
|
recommended to have any debug output kept on screen after closing the game.
|
|
|
|
This will run [inject](../inject.md) with the `ddrhook1.dll`. On first run, if you don't have a
|
|
conguration file, e.g. `ddr-11.conf`, available in the same folder, a default one will be created
|
|
and the game exits. Simply re-run `gamestart-11.bat` again.
|
|
|
|
## Configuration ddrhook
|
|
|
|
The hook library can be configured via cmd arguments or a configuration file. The latter is
|
|
generated (*ddr-11.conf* in the same directory) on the first start of the game using the
|
|
gamestart-XX.bat file. It contains default values for all available parameters and comments
|
|
explaining each parameter. Please follow the comments when configuring your setup.
|
|
|
|
Add the argument *-h* when running gamestart-XX.bat (e.g. *gamestart-XX.bat -h*) to print help/usage
|
|
information with a list of all available parameters. Every parameter can be either set as command
|
|
line argument or using a configuration file.
|
|
|
|
To set a parameter from the command line, just add it as an argument after the bat file like this
|
|
|
|
```
|
|
gamestart-11.bat -p gfx.windowed=true
|
|
```
|
|
|
|
The syntax for the "key=value" is the same as in the config file. Make sure to have a pre-ceeding
|
|
"-p" for every parameter added.
|
|
|
|
However, if a parameter is specifed in the configuration file and as a command line argument, the
|
|
command line argument overrides the config file's value.
|
|
|
|
## Configure USB memory cards and edit data
|
|
|
|
You can setup actual USB thumb drives mapped to a drive letter, e.g. `E:\` for player 1 and `F:\`
|
|
for player 2, or just have them point to any local directory, e.g. `usbmem_p1` and `usbmem_p2`.
|
|
|
|
Set-up your folder mappings in the [conf file or via command line args](#configuration-ddrhook) like
|
|
follows:
|
|
|
|
- Enable USB memory data emulation: `ddrhook1.usbmem_enabled=true`
|
|
- Set P1 USB memory data path pointing to local folder `usbmem_p1` next to `DDR.EXE`:
|
|
`ddrhook1.usbmem_path_p1=usbmem_p1`
|
|
- Set P1 USB memory data path pointing to local folder `usbmem_p2` next to `DDR.EXE`:
|
|
`ddrhook1.usbmem_path_p1=usbmem_p2`
|
|
- Have/create a subfolder called `DDR_EDIT` on any location/USB drive you want to use
|
|
- Name your edit data file either `DDR_EDIT_J.DAT` (for JP version) or `DDR_EDIT_U.DAT` (for US
|
|
version) and place it in the `DDR_EDIT` directory.
|
|
|
|
For the example setup above, the full relative path of the edit file should be
|
|
`usbmem_p1\DDR_EDIT\DDR_EDIT_J.DAT` for player 1.
|
|
|
|
Note that USB memory cards are not detected by the game and the game stays silent about that if they
|
|
do not contain edit data, your path mapping does not resolve or you misplaced or named your edit
|
|
data file incorrectly.
|
|
|
|
## Grey and glitchy arrows
|
|
|
|
This is a known issue with many GPUs, typically non-Radeon GPUs.
|
|
|
|
There is currently not patch available in Bemanitools for that. We assume this is an issue with
|
|
incompatible shader code.
|
|
|
|
There are solutions to hard-patch the code available elsewhere.
|
|
|
|
## Troubleshooting and FAQ
|
|
|
|
### Issues with background videos (not) playing
|
|
|
|
The game expects you have the `CLVSD.ax` file registered for decoding videos.
|
|
|
|
Grab the `CLVSD.ax` file and go to *Start* > *Run* > enter `regsvr32 clvsd.ax` and execute. Make
|
|
sure to run as Administrator, otherwise you will get errors due to invalid permissions.
|
|
|
|
### Game crashes during boot
|
|
|
|
If you have played a newer version of DDR, e.g. DDR 2014+, you might have the `k-clvsd.dll` codec
|
|
registered which crashes DDR X and likely X2 (EU/US) as well.
|
|
|
|
Unregister `k-clvsd.dll`, e.g. `regsvr32 /u k-clvsd.dll`, and
|
|
[registering `CLVSD.ax`](#issues-with-background-videos-not-working).
|
|
|
|
Note that `CLVSD.ax` will likely hang any newer/more recent DDR versions on startup and require you
|
|
to use the `k-clvsd.dll` that came with the respective version instead. See
|
|
[this section](ddrhook2.md#video-codecs-for-background-videos) for further details.
|
|
|
|
### Black screen/render window without a response
|
|
|
|
This symptom might have many causes, here is a list of known issues and what can be done:
|
|
|
|
- If not done already, try installing
|
|
[DirectX Redist (June 2010)](https://www.microsoft.com/en-us/download/details.aspx?id=8109)
|
|
- If you have an integrated/second GPU, ensure it is disabled
|
|
- External (USB) audio devices could cause issues. Ensure you are running on on-board/integrated
|
|
sound cards and unplug any external audio devices.
|
|
- [Disable fullscreen optimizations](https://devblogs.microsoft.com/directx/demystifying-full-screen-optimizations/):
|
|
Right click on `DDR.exe`, *Properties* > *Compatibility* > *Disable fullscreen optimizations*
|
|
- Check if you can run `DDR.exe` without Bemanitools by simply launching it. It should at least boot
|
|
into a startup screen. If that isn't even possible, then it's likely not an issue with
|
|
Bemanitools. Note that your data path needs to be `D:\HDX` for that to work though.
|