Files
thomasasfk_drs2dd/README.md
T

84 lines
2.2 KiB
Markdown

# DANCERUSH STARDOM to Dance Dash
Convert videos & data of [DANCERUSH STARDOM](https://remywiki.com/AC_DRS) tracks into [Dance Dash](https://store.steampowered.com/app/2005050/Dance_Dash/) beat maps
Curious? @thomasasfk on discord or join [drs2dd](https://discord.gg/JVWx6zmtft) and ask!
## Stuff
### Completed:
- Video converter:
- [x] Detect right & left notes, including position & timing
- [x] Define models based on dd & drs schemas
- [x] Fetch metadata from data store (https://arcade-songs.zetaraku.dev/drs/)
- [x] Simple BepinEx plugin to launch Dance Dash w/o VR
- Parser
- [x] Parse XML files into JSON files
- [x] Parse JSON files into DD info metadata
- [x] Create DD beat map folder structure with song & cover
### To-Do:
- Video converter (don't know if we'll even do this now...)
- [ ] Detect down and jump notes (?)
- [ ] Detect hold notes (? hard)
- [ ] Write tests based on total note count (?) (https://remywiki.com/AC_DRS)
- [ ] Generate other metadata json file
- Parser
- [ ] Actually parse notes & lines into DD beat map
- [ ] Parse down and jump notes into DD beat map
- [ ] Test folder structure, sort bmp, note speed, order, etc.
---
### Setup:
- Install Python 3.10 (pyenv recommended)
- Install the required Python packages
```bash
python -m venv .venv
. .venv/bin/activate # or .venv\Scripts\activate.bat on Windows
python -m pip install -r requirements.txt
```
- Install pre-commit hooks
```bash
pre-commit install
```
---
### Usage:
Convert a DRS track video to a DD beat map
```bash
# grab video of DRS track from youtube
yt-dlp -f bv[ext=webm] https://youtu.be/o7I0scmptmo -o "drs_video.webm"
# grab song-id from "resources\data.json" or https://arcade-songs.zetaraku.dev/drs/
.venv/Scripts/python drsvideo2dd.py "drs_video.webm" --song-id "BOOMBAYAH-JP Ver.-"
```
Generate json files from xml files (needs xml files and a brave soul)
```bash
HAS_XML=1 .venv/Scripts/python drsxml2json.py
```
Generate full DD Beat Map from json files in repository (does not map notes atm, todo)
```bash
.venv/Scripts/python drs2dd.py --song-id 187
```
Generate all DD Beat Maps from json files in repository (does not map notes atm, todo)
```bash
.venv/Scripts/python drs2dd_all.py
```