Commit graph

10 commits

Author SHA1 Message Date
55b7ed3beb Gacha System implementation
## 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.

Co-authored-by: YYHEggEgg <53960525+YYHEggEgg@users.noreply.github.com>
Reviewed-on: #1
Co-authored-by: YYHEggEgg <yyheggegg@xeondev.com>
Co-committed-by: YYHEggEgg <yyheggegg@xeondev.com>
2024-08-04 11:41:23 +00:00
220fbc42f0 Implement bangboo for battles (works in archive quests) 2024-08-01 02:43:13 +03:00
26fe9551d4 MainCity BGM 2024-07-31 14:08:06 +03:00
970dde020a Working OpenUI interacts and Archive battles
Implement OpenUI interacts (currently configs only for Yorozuya and Archive)
Fully working Archive (battles and cutscenes)
2024-07-30 03:04:55 +03:00
cbe169fe1a Implement event configs, more interactions work
Implement interact event-action configurations.
More interactions work now, for more transitions, we just need to generate more configs (soon)
NOTE: this commit BREAKS your nap_gameserver.toml. To fix it, you have to add 'event_config_path' property into [assets] section of your config.
2024-07-26 22:44:44 +03:00
c710716fa1 [WIP] event graph stuff
implementing EventGraph stuff, currently hardcoded interaction for 10000001 (street to workshop transition)
2024-07-25 22:39:59 +03:00
d196ef861a SceneUnitManager: create default scene units 2024-07-25 19:49:39 +03:00
69634fda64 Implement weapons
Implement Weapon add, save, equip
Implement 'item add_weapon' command
2024-07-24 21:36:02 +03:00
370f141f88 more commands, unlock only default avatars at beginning
Implement 'avatar add' command
Implemented 'player procedure' command
2024-07-23 18:12:05 +03:00
2de8ee290a Hi 2024-07-20 15:59:36 +03:00