forked from NewEriduPubSec/JaneDoe-ZS
Server emulator for Zenless Zone Zero 1.1.1
YYHEggEgg
28864ff1e4
## Abstract This PR implements - Showing Teleports on map - Quick Menu usage - Dynamic Wallpaper switching - Settings UP for Bangboo pool (via CLI) ## Support list - The support of Teleport with map. - Unlocking the 3 buttons (Interknow, DMs, Map) as a prerequisite of the previous feature. By pressing 'F' you can also modify the buttons in Quick Menu. - Changing Dynamic Wallpaper to a specific one instead of being randomly chosen. **Notice that you can't use one's Dynamic Wallpaper if you don't own this agent.** - Fixed some Gacha bugs, including: - Obtained items won't be sent to your bag unless you're pulling the standard banner; - Obtained items won't show in bag until relogin; - Alternative command `gacha up` to choose the UP Bangboo. Start with `gacha up [player_uid]` and follow the guide to fill params. ## Principle - Player's `UnlockModelBin` stores Quick Menu data, with the player's chosen buttons and their positions. - Separate Gacha's DTO & Saving model to make it more standardized, and ensure ID validation is always performed. - Player's bag information is now sync to client appropriately after finishing any gacha operations. - `gacha up` search for pools with a `chooseable` Category Guarantee Policy, then list included items if user has provided the target pool's `gacha_schedule_id`. ## Known issues - **Specifically for 1.1 Beta**, teleport may meet these issues leading to a 'black screen', forcing you to restart the client (or use `player kick` command as an alternative). - Don't try to teleport to `治安局光映分署`, it won't succeed. This is the 32nd teleport out of the 31 ones defined visible in assets. - Don't close the page after opening map. Teleport to somewhere. - `gacha up` command is an alternative to in-game operation. You still can not see any bangboos in the collection when choosing Bangboo. Co-authored-by: YYHEggEgg <53960525+YYHEggEgg@users.noreply.github.com> Reviewed-on: NewEriduPubSec/JaneDoe-ZS#2 Co-authored-by: YYHEggEgg <yyheggegg@xeondev.com> Co-committed-by: YYHEggEgg <yyheggegg@xeondev.com> |
||
---|---|---|
assets | ||
nap_common | ||
nap_data | ||
nap_gameserver | ||
nap_proto | ||
nap_sdk | ||
.gitignore | ||
Cargo.toml | ||
LICENSE | ||
README.md | ||
screenshot.png |
JaneDoe-ZS
Zenless Zone Zero 1.1.1 server emulator written in Rust.
Current features
- Logging in
- Fully playable prologue
- HollowDeepDive with Combat and Rally commissions
- Archive (playable cutscenes and battles)
- Open world
- World exploration with any character (can be changed with a command)
- Player progress saving with PostgreSQL
- Player management command system
- Training
Requirements
NOTE: Nightly Rust is required to build the project. To install it, first install Rust itself, then run the following command:
rustup toolchain install nightly
rustup default nightly
Setup
Server
a) building from sources
git clone https://git.xeondev.com/NewEriduPubSec/JaneDoe-ZS.git
cd JaneDoe-ZS
cargo run --bin nap-sdk
cargo run --bin nap-gameserver
b) using pre-built binaries
Navigate to the Releases
page and download the latest release for your platform.
Launch nap-sdk
and nap-gameserver
Database
You have to put your PostgreSQL database credentials in both nap_sdk.toml
and nap_gameserver.toml
configuration files.
[database]
username = "root"
password = "root"
host = "localhost:5432"
name = "nap"
Connecting
Get ZZZ 1.1.1 beta client,
apply encryption patch and follow its instructions.
NOTE: You should create a game account. By default, you can do so at http://127.0.0.1:21000/account/register
Troubleshooting
Visit our discord if you have any questions/issues
Support
If you want to support this project, feel free to send a tip via boosty