完成后,进行本地编译:
.\gradlew.bat
.\gradlew.bat jar
编译完成后,在项目目录内即可找到名为 grasscutter-<version>.jar 的服务器核心。
游戏资源除了服务端本身以外,还需要游戏的相关资源放置于目录内。本指南基于游戏版本 2.7,资源来自Grasscutter Resources (Commit 20ced72),将 Resources 目录内的全部文件夹拷贝到 resources 目录内即可,其中包含了 2.7 版本的全部资源。 运行服务器
java -jar .\grasscutter-<version>.jar.jar
首次运行时需要选择语言,输入 chs 即可。
服务器默认数据库连接地址为 mongodb://localhost:27017,若需要修改则直接改动 config.json即可。
服务器默认使用端口 8888、443、80 和 22102,若出现端口绑定错误,请检查是否有相关端口被占用并检查相关进程:
netstat -ano | findstr /r /c:":8888.*LISTENING"
netstat -ano | findstr /r /c:":443.*LISTENING"
netstat -ano | findstr /r /c:":80.*LISTENING"
netstat -ano | findstr /r /c:":22102.*LISTENING"
在服务端需要更新时,直接替换新核心或者拉取最新的源码重新进行本地编译,最后提供新的游戏资源即可。游戏资源的获取可以关注Genkit TG 群组,频道中还有一些非官方的 Grasscutter 包可用,本指南仅关注 Grasscutter 官方源。 客户端在运行客户端之前,首先需要将客户端请求代理至本地服务器 (同理可代理至运行服务端的云服务器)。使用类似 mitmproxy 和 Fiddler Classic 的软件均可,本指南使用 mitmproxy 8.0 版本。 安装完成后,以代理至端口 12345 为例运行项目目录内的 proxy.py 即可:
mitmdump -s proxy.py --ssl-insecure --listen-port 12345
如果需要让外部主机连接 (如公共服务器) 需要设置参数 --set block_global=false。代理运行后,首先关闭现有的 Clash 等系统代理软件,前往系统网络设置,手动设置代理为 127.0.0.1:12345。
设置完成后,需要添加 mitmproxy 生成的证书才可以正常进行连接,使用浏览器访问 http://mitm.it/,下载对应平台的证书,并根据网页教程添加至 “受信任的根证书颁发机构” 即可。若为服务器运行,此处的证书需要保存并发送给所有需要连接服务器的人添加。 在进入游戏之前,首先要创建账户,在服务端控制台运行如下指令:
account create [username] {playerid}
完成账户创建后,即可在 MongoDB 中看见新创建的账户。
服务端的全部控制台指令可以通过 help 指令获取。
最后,运行对应游戏资源版本的游戏客户端即可,本指南使用国际服 2.7 版本客户端。输入注册的用户名并随便设置一个密码即可进入游戏。进入游戏后代理可以关闭,推荐在连接公共服务器时尽快关闭代理以节约服务器流量。
相关资源指令列表工具箱圣遗物生成网页控制面板ID 列表角色、武器、物品、NPC、场景等均有对应的 ID,示例:
10000037: 甘雨11502: 天空之刃393137: 重型餐馆专用炉灶通过服务端核心可以如下生成列表:
java [color=var(--color-prism-orange)]-jar grasscutter.jar [color=var(--color-prism-orange)]-handbook中文列表见资源整合 中的 Handbook_CHS.txt 文件。
卡池列表卡池 ID 于上面的 ID 不同,示例:
A080 武器 雾切/无工A079 角色1 神里绫华详细列表见资源整合 中的 卡池顺序.xlsx 文件。
卡池修改卡池配置文件为 data\Banners.json,内容为一个对象数组,其中包括:
- 常驻池:gachaType = 200, scheduleId = 893
- 角色限定池一:gachaType = 301, scheduleId = 903
- 角色限定池二:gachaType = 400, scheduleId = 913
- 武器池:gachaType = 302, scheduleId = 903
若需要添加更多卡池,新增更多的 gachaType 即可。
数组中的对象属性如下:
- rateUpItems1:当前 UP 五星
- rateUpItems2:当前 UP 四星
- prefabPath:卡尺大图
- previewPrefabPath:卡池预览图
- titlePath:卡池标题
- costItem:抽卡消耗的道具
- softPity:最少抽数
- hardPity:保底最多抽数
- eventChance:非 UP 的概率