95 lines
5 KiB
Markdown
95 lines
5 KiB
Markdown
# FireflySR
|
|
|
|
A Server emulator for the game [`Honkai: Star Rail`](https://hsr.hoyoverse.com/en-us/)
|
|
<!-- ![screenshot](https://git.xeondev.com/reversedrooms/FireflySR/raw/branch/master/screenshot.png) -->
|
|
...BUT I edited this text to make it easier to run, for goobers.
|
|
|
|
# I just want to run the server! I don't care about modifying the code.
|
|
- First, get [MongoDB](https://www.mongodb.com/try/download/community)
|
|
- Go to [Reversedrooms FireflySR Releases Tab](https://git.xeondev.com/reversedrooms/FireflySR/releases)
|
|
- On that page download "FireflySR-win64.zip". DO NOT DOWNLOAD SOURCE CODE!!!
|
|
![screenshot](https://git.endernon.com/endernon/fireflySR-goober-edition/raw/branch/master/tutorial/tutorial-1.png)
|
|
- Unzip the compressed archive to a NEW folder with nothing else in it.
|
|
- Run "start_all.bat"
|
|
- Allow admin permission for all three tabs that should open
|
|
- Now, scroll down to [Connecting](https://git.endernon.com/endernon/FireflySR-goober-edition#connecting)
|
|
|
|
On later occasions, if you want to run the server again, run "start_all.bat" again.
|
|
|
|
|
|
|
|
# I want to edit the code and build the project to how I like it!
|
|
First, get these prerequesites:
|
|
- [Rust](https://www.rust-lang.org/tools/install)
|
|
- [MongoDB](https://www.mongodb.com/try/download/community-edition)
|
|
- [Git](https://git-scm.com/download/win)
|
|
- [Protobuf Compiler (protoc)](https://github.com/protocolbuffers/protobuf/releases/download/v26.1/protoc-26.1-win64.zip) (ONLY IF YOU ARE USING MICROSOFT WINDOWS). You should manually extract it to somewhere and add `bin` subfolder to the system environment variable `PATH`. Look online for how to add a folder to "path"
|
|
Then, open file explorer and create a new folder somewhere. Make sure it's empty. Then, at the file path thing at the top of file explorer, click it, delete the text, replace with "cmd" and click enter.
|
|
Now, you should have Command Prompt running. Inside this window, run `git clone https://git.endernon.com/endernon/FireflySR-goober-edition ./FireflySR` .
|
|
Now, Git will start cloning the repo locally. Once it's done, open the newly created "FireflySR" folder. You now have a local copy of the code.
|
|
|
|
#### Building
|
|
|
|
Now, make your changes to the code.
|
|
When you wish to compile, run the `BUILD.bat` I provided in the root folder of FireflySR. You will need to run the script again every time you make a change to the code and want to run your changes.
|
|
|
|
|
|
## Usage
|
|
|
|
To begin using the server, you need to run three servers: `sdkserver`, `dispatch` and `gameserver`
|
|
|
|
If you installed from pre-built binaries, navigate to the directory where you downloaded
|
|
the binaries and either a) double-click on the following executable names or b)
|
|
run the following in a terminal:
|
|
|
|
```sh
|
|
./gameserver
|
|
./dispatch
|
|
./sdkserver
|
|
```
|
|
|
|
##### Note: the `assets` folder should be in the same directory with the `gameserver`, otherwise it will not boot up.
|
|
|
|
## Configuration
|
|
By default, servers will try to use local mongodb (at 127.0.0.1:27017),
|
|
this should work out of box if you installed MongoDB on your machine.
|
|
<br>
|
|
You can change this in configuration file of specific server.
|
|
Currently only sdkserver and gameserver communicate with database, so if you **need** to configure it,
|
|
edit sdkserver.json and gameserver.json files.
|
|
|
|
<a name="connecting"></a>
|
|
## Connecting
|
|
|
|
### For the latest 2.3 Beta patch
|
|
|
|
If you want to play the latest Beta patch, the `mhypbase.dll` patch for 2.2.51 OS is not usable. You should use a separate proxy like [FireflySR.Tool.Proxy](https://git.xeondev.com/YYHEggEgg/FireflySR.Tool.Proxy) (Prebuilt binary can be downloaded [here](https://git.xeondev.com/YYHEggEgg/FireflySR.Tool.Proxy/releases)).
|
|
|
|
Also, you need to configure `disable_password_check` in `sdkserver.json`. That is to say, if you have used a older version, you should go to the configuration file **in the root directory** and check if it's `true`.
|
|
|
|
Clients (2.3 Beta v3):
|
|
|
|
- [CN - 2.2.53](https://autopatchcn.bhsr.com/client/beta/20240517110535_d7lJoh4jYXkVGXI1/StarRail_2.2.53.zip)
|
|
- [OS - .2.53](https://autopatchos.starrails.com/client/Beta/20240517111205_PZfNSHVLH509e76v/StarRail_.2.53.zip)
|
|
|
|
Notice: **CN Package may not have languages other than Chinese, and vice versa**. Be careful when choosing which to download; luckily they are all compatiable with this server.
|
|
|
|
### For v1 Players
|
|
|
|
[Get 2.3 beta client v1(.51)](https://autopatchos.starrails.com/client/Beta/20240501125700_dUBAjS7YiX9nF7mJ/StarRail_2.2.51.zip),
|
|
replace [mhypbase.dll](https://git.xeondev.com/reversedrooms/FireflySR/raw/branch/master/mhypbase.dll)
|
|
file in your game folder, it will redirect game traffic (and disable in-game censorship)
|
|
|
|
## Contributing
|
|
|
|
Pull requests are welcome. For major changes, please open an issue first to discuss
|
|
what you would like to change, and why.
|
|
|
|
## Bug Reports
|
|
|
|
If you find a bug, please open an issue with as much detail as possible. If you
|
|
can, please include steps to reproduce the bug.
|
|
|
|
Bad issues such as "This doesn't work" will be closed immediately, be _sure_ to
|
|
provide exact detailed steps to reproduce your bug. If it's hard to reproduce, try
|
|
to explain it and write a reproducer as best as you can.
|