BDIH-Launcher
Builds and packages the macOS launcher app based on Electron, React, and TypeScript.
This section is for maintainers who want to build the Bob-Ddong-Iri-Hoyo Launcher app, Wine runtimes, DXMT runtimes, or understand how those release artifacts are structured. If you only want to install the launcher and play games, you do not need to build these components yourself.
BDIH-Launcher
Builds and packages the macOS launcher app based on Electron, React, and TypeScript.
wine-build
Builds and packages the WineHQ 11.0, WineHQ 11.11, and CrossOver 26.1.0 based Wine runtimes.
dxmt-er-build
Builds a DXMT v0.80 runtime with the Eternal Return specific graphics workaround.
The build commands and patch order in each repository are the source of truth. If the docs and scripts appear to disagree, check the scripts first.
Source changes should live in tracked patch sets and scripts.
Temporary files, experiment logs, and local artifacts under artifacts/ are not release references.
DXMT is managed as an external runtime by default instead of being bundled into the Wine package. That allows the launcher to replace or roll back DXMT without rebuilding Wine.
Release builds should not contain temporary diagnostic counters, tracing code, or local experiment patches. Debug builds used for measurement and release builds shipped to users should be treated separately.
| Component | Baseline |
|---|---|
| Launcher app | Electron 41, React 19, TypeScript 6, Webpack 5 |
| Current WineHQ line | wine-winehq-11.11 |
| WineHQ comparison/fallback line | wine-winehq-11 |
| CrossOver line | wine-crossover-26.1.0 |
| DXMT | v0.80 |
| Eternal Return DXMT patch | sanitizeOutput only |
WineHQ 11.11 is the current WineHQ baseline. WineHQ 11.0 is maintained as a comparison and compatibility fallback. CrossOver 26.1.0 is a separate runtime line focused on Eternal Return validation.
Start by checking these items:
clean.sh.Compatibility-layer projects are sensitive to dependency versions and local prefix state. Small version differences or stale prefix-local DLLs can become runtime issues even after a build succeeds.