A minimal private server for simulating Memory of Chaos through Calyx.
MIT
- configs: Utility for parsing config files
- game-server, sdk-server, sr-proto: Should be obvious
- srtools-manager: An app to help with managing config.jsons(s) from https://srtools.pages.dev/
- uni-server: game-server & sdk-server as one binary
This tutorial assumes you have basic knowledge of a terminal and proxies.
-
Download the
FireflySR.Tool.Proxy
from here. No need to configure anything, you can just extract and run. When asked about root certificate, let it install. -
If you experience internet connectivity issues after playing, manually disable the proxy in your Windows settings.
- Install
mitmproxy
and their certificate. Set HTTP_PROXY and HTTPS_PROXY env var of the game to themitmproxy
server. Run it with this script:
from mitmproxy import http
def request(flow: http.HTTPFlow) -> None:
target_hosts = [
".hoyoverse.com",
".mihoyo.com",
".bhsr.com",
".starrails.com",
".mob.com",
".hyg.com"
]
if any(flow.request.pretty_host.endswith(host) for host in target_hosts):
flow.request.scheme = "http"
flow.request.host = "127.0.0.1"
flow.request.port = 21000
-
Download the prebuilt version that matches your SR version from here.
-
Extract the ZIP file.
-
Edit configuration files in the
_configs_
folder as needed (refer to the README in that folder). The server will fallback to default config when a file in_configs_
is invalid or missing. -
Run
uni-server
-
Make sure game traffic is being redirected by your proxy, launch the game and finally, have fun.
-
If you want to see the logs when the server panics, run the binary through terminal.
-
You can use
srtools-manager
to easily manage the config.json(s) from https://srtools.pages.dev/
-
Install the following tools:
- Rust
protoc
(Protocol Buffers compiler)
-
Clone the repository:
git clone --recursive https://github.com/yuvlian/qingque-sr
-
cd into
qingque-sr
-
Edit configuration files in the
_configs_
folder as needed (refer to the README in that folder). You can do this after compiling, doesn't matter. -
Build and run the server:
cargo run --release --bin game-server
cargo run --release --bin sdk-server
Or if you prefer a single binary,
cargo run --release --bin uni-server
-
Build and run SRTools Manager (optional):
cargo run --release --bin srtools-manager
-
Make sure game traffic is being redirected by your proxy, launch the game and finally, have fun.