/genius-invokation-gym

原神七圣召唤模拟环境 Simulator of Genius Invocation

Primary LanguagePythonMIT LicenseMIT

Genius Invokation Gym

A simple simulator of the Genius Invokation TCG in Genshin impact

API will be designed based on rlcard

Simulator framework references fireplace

Package name gisim stands for both Genshin Impact and Genius Invokation

一个简易的七圣召唤仿真器(如果不弃坑的话)

希望可以实现类似openai-gym的API,用于训练ai&评估卡组强度

简单介绍请参考该Notion页面

Get Started

Prerequisites:

Installation: enter the project directory and execute the following command:

poetry install

(Optional) You can also try to install this package with pip:

pip3 install .

Runnable basic demo locally: give the following a try:

poetry run python3 -u tests/test_framework.py

Roadmap

  • Encode the game status into a dictionary
  • Define all kinds of messages for communication
  • Use message queue (with priority) to buffer all messages
  • Enable judging validity of a proposed action
  • Add message handler to every character, summon, status, ...
    • Finish normal attack, elemental skill, elemental burst of KamisatoAyaka (as a template to generate more characters in the future)
    • Add Summon and Elemental Infusion based on KamisatoAyaka
  • Currently available roles
    • Kamisato Ayaka
    • Maguu Kenki
    • Sucrose

Logs

应该会采用rlcard相近的API接口进行设计,参考DouZero,目前正在调研中

参考炉石传说模拟器fireplace完成了卡牌及框架的初始化(目前仍为空文件)

顺便好奇一下为什么用invokation而不是invocation,求懂哥指点

新建QQ交流群613071650,欢迎感兴趣的同学入群,欢迎成为Contributor!

Works Cited

RLCard: A Toolkit for Reinforcement Learning in Card Games

DouZero: Mastering DouDizhu with Self-Play Deep Reinforcement Learning