Branch | master | dev | release |
---|---|---|---|
drone-ci | nil | ||
github-action | nil |
这里是原神(Genshin Impact)的《七圣召唤》模拟器,是参考原神3.3版本的「七圣召唤」玩法重新实现的后端(服务端),包括所有的原神内的游戏内容,并拓展一些米哈游没有做的内容。
具体游戏内容的实现(卡牌、角色、技能等)将会以sub-module的形式发布,本项目仅为后端框架
本环节(How to use)暂时不可用,只是先更新文档占个坑
- 确保您的设备上正常安装了
go 1.19
或以上版本,您可以通过在命令行执行下面的语句查看您的go版本与安装情况:
go version
- 选择一个存放代码的地方,Clone本仓库,选择一个源即可:
git clone https://github.com/sunist-c/genius-invokation-simulator-backend.git # GitHub源
git clone https://code.sunist.cn/sunist-c/genius-invokation-simulator-backend.git # 作者私有源
- 进入本项目的目录,然后构建本项目,请根据操作系统情况与实际情况替换掉
${output_name}
:
go mod tidy # 同步依赖关系
go build -o ${output_name} # 构建可执行文件
- 您可以在当前目录下发现新增了一个名为
${output_name}
的可执行文件,执行这个可执行文件:
./${output_name} -mode cli # 以命令行模式启动模拟器
- 您可以使用
-h
参数来获取更多执行帮助:
$ ./${output_name} -h
> Usage of ${output_name}:
> -conf string
> setup the backend configuration file, highest priority
> -mode string
> setup the startup mode, available [backend, cli, ai] (default "backend")
> -port uint
> setup the http service port (default 8086)
- 转到本项目的release页面,根据您的设备、平台与操作系统,下载对应的二进制可执行文件,这个文件等价于
From source
环节中 3. 步骤产生的可执行文件 - 参考
From source
环节的 4. 和 5. 步骤进行下一步操作
// todo
本环节(How to modify)暂时不可用,只是先更新文档占个坑
- 进入
data
目录,这是模拟器自动扫描的目录 - 找到一个您中意的mod,然后将其下载至
data
目录下 - 修改项目根目录下的
main.go
文件,在imports区块内,将您获取的mod匿名引入 - 启动模拟器,模拟器将自动加载mod
以下的内容供开发者参考
- master 主要的分支,将在发生重要功能修改时与dev分支进行同步
- dev 开发中的分支,将频繁地进行更改与新功能测试
- release 稳定的分支,仅会在重大版本更新时进行功能合并
请转到gisb's feature development查看项目进度
- 战斗框架: Battle Framework of GISB
- 事件框架: Mkdir...
- MOD制作: Mkdir...
本模拟器侧重于提供自定义的七圣召唤对局,比如每次投十二个骰子/每回合摸四张牌/加入自定义角色、卡牌等功能,短期内没有 项目稳定后尽快针对ai训练进行优化、适配。
考虑设计接口时兼容RLcard。
相关的genius-invokation-gym项目侧重于提供ai相关接口,请根据需求选择。
本模拟器接口尽量和genius-invokation-gym保持一致,其项目完善后本项目也尽量拓展相应的ai接口。
同时感谢@Leng Yue实现的前端项目genius-invokation-webui。
本项目的交流群(QQ)为530924402
,欢迎讨论与PR!
如果您想增加一个功能或想法:
- 加入本项目的交流群或genius-invokation-gym的交流群或在本项目的Discussion/Ideas中分享您的想法
- 在取得Contributor的广泛认可后将为您创建一个WIP的issue
- 按照正常的流程fork->coding->pull request您的修改
如果您想为项目贡献代码,您可以转到gisb's feature development查看这个项目目前在干什么,标有help wanted
的内容可能需要一些帮助,处于design
阶段的内容目前还没有进行开发,您可以直接在GitHub Projects/Project Issue页面与我们交流
本项目有意向从Jetbrains申请开源项目的All Products License,将会提供给Code Contributors
- 游戏基本玩法
- 元素反应
- 角色与技能
- 圣遗物与武器
- 场景和伙伴
- 召唤物
- 卡牌与元素转化
- 游戏拓展玩法
- 多人游戏(玩家
N>=2
,队伍N>=2
) - 创建对局
- 匹配对局
- 游戏内通信
- 观战模式
- 比赛模式
- 作战记录
- 多人游戏(玩家
- 自定义Mod支持
- Go/Lua支持
- 自定义角色与卡牌
- 自定义规则
- 多种通信协议连接
- websocket接口
- http/https接口
- udp/kcp接口
- rpc接口
- 分布式支持
- 自动化部署
- 服务注册与服务发现
- 服务端负载均衡
- 管理功能
- 公告与通知
- IP追踪/封禁
- QPS/TPS限制器
MIT License
本项目不含任何原神(Genshin Impact)的美术素材,原神(Genshin Impact)的相关版权归米哈游(miHoYo)所有