Gacha System implementation #1

Merged
xeon merged 7 commits from YYHEggEgg/JaneDoe-ZS:master into master 2024-08-04 11:41:24 +00:00
Contributor

Abstract

This PR implements

  • The Gacha System for client. Player can pull in defined pools with a similar experience to zenless & mihoyo gacha, and these status can be saved through player save and recovered.
  • player kick command in extra. Command player kick [player_uid] (optional: [reason_id]) can be used to kick a player to offline.

Support list

  • Similar probability to mihoyo gacha
  • QingYi & Jane Doe's Agent & W-Engine banner
  • Standard Banner:
    • Get a S Agent in the first 50 pulls
    • Get a 20% discount for the first 5 10-pulls
    • Choose a S Agent once you pulled for 300
  • Bangboo Banner (not working due to other reasons)
    • Choosing your demanded S bangboo for 100% UP

Principle

  • A complex configuration file gacha.jsonc is introduced to define all behaviours.
  • Gacha status is saved via GachaModelBin.

For more informations about the config and save, an article is available here.

Known issues

  • You can not see any bangboos in the collection when choosing Bangboo.
  • Specifically for 1.1 Beta, performing gacha may lead to random client issues, including:
    • The TVs showing rarity ending up in blank after its flash.
    • Game become black screen.
    • If clicking 'Skip' but not fast enough, game'll stuck and not able to do anything. You may try to click 'Skip' scarcely when 'REC' shows, or after all animations has stopped.
## Abstract This PR implements - The Gacha System for client. Player can pull in defined pools with a similar experience to zenless & mihoyo gacha, and these status can be saved through player save and recovered. - `player kick` command in extra. Command `player kick [player_uid] (optional: [reason_id])` can be used to kick a player to offline. ## Support list - Similar probability to mihoyo gacha - QingYi & Jane Doe's Agent & W-Engine banner - Standard Banner: - Get a S Agent in the first 50 pulls - Get a 20% discount for the first 5 10-pulls - Choose a S Agent once you pulled for 300 - ~~Bangboo Banner~~ (not working due to other reasons) - Choosing your demanded S bangboo for 100% UP ## Principle - A complex configuration file `gacha.jsonc` is introduced to define all behaviours. - Gacha status is saved via `GachaModelBin`. For more informations about the config and save, an article is available [here](https://yyheggegg.github.io/mihomo-gio-blogs/zzz-gacha-impl-en/). ## Known issues - You can not see any bangboos in the collection when choosing Bangboo. - **Specifically for 1.1 Beta**, performing gacha may lead to random client issues, including: - The TVs showing rarity ending up in blank after its flash. - Game become black screen. - If clicking 'Skip' but not fast enough, game'll stuck and not able to do anything. You may try to click 'Skip' scarcely when 'REC' shows, or after all animations has stopped.
YYHEggEgg added 7 commits 2024-08-04 11:30:11 +00:00
Owner

nice

nice
xeon merged commit 55b7ed3beb into master 2024-08-04 11:41:24 +00:00
xeon referenced this pull request from a commit 2024-08-04 11:41:26 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: NewEriduPubSec/JaneDoe-ZS#1
No description provided.