本文根据Github Grasscutters的开源项目Grasscutter形成的搭建指南文件
开源地址 https://github.com/Grasscutters/Grasscutter
为避免产生利益纠纷,本教程不提供Grasscutter整合包
本教程为 Liunx 服务搭建教程 Windows 基本差不多 不做解释
本教程 不会手把手教你怎么搭建 很多指令和过程会做我认为的适当缩减
有时间再给补上,但都使用Liunx 搭建了 应该不是个超级小白
这种架构一定要有公网IP 可用在百度输入IP查询 对比在路由器WAN口的IP是否一致,一致说明是公网IP
啰嗦了那么多,主要是讲明白原理,这是一个学习文档,知其然知其所以然,授人鱼不如授人渔,干货开始!
进入Liunx 打开控制台
#升级软件源 记得换国内源 换源方法百度吧
sudo apt update && sudo apt upgrade -y
#安装jdk
sudo apt-get install openjdk-17-jdk
#检查是否安装成功
java --version
|-----------------/APP------------------
├── config.json
├── data
│ ├── Banners.json
│ ├── Drop.json
│ ├── query_cur_region.txt
│ ├── query_region_list.txt
│ ├── Shop.json
│ └── Spawns.json
├── grasscutter.jar
├── keys
│ ├── dispatchKey.bin
│ ├── dispatchSeed.bin
│ ├── secretKey.bin
│ └── secretKeyBuffer.bin
├── keystore.p12
├── logs
│ └── latest.log
├── plugins
├── README_zh-CN.md
├── resources
│ ├── BinOutput
│ ├── ExcelBinOutput
│ ├── proto
│ ├── Readable
│ ├── Scripts
│ ├── Subtitle
│ └── TextMap
└── run.bat
#升级软件源
sudo apt update && sudo apt upgrade -y
#安装 MongoDB:
sudo apt install mongodb
#设置自动启动
sudo systemctl enable mongodb
............................................
"DatabaseUrl": "mongodb://127.0.0.1:27017", //这里写数据库地址
"DatabaseCollection": "grasscutter",
"RESOURCE_FOLDER": "./resources/",
"DATA_FOLDER": "./data/",
"PACKETS_FOLDER": "./packets/",
"DUMPS_FOLDER": "./dumps/",
"KEY_FOLDER": "./keys/",
"SCRIPTS_FOLDER": "./resources/Scripts/",
"PLUGINS_FOLDER": "./plugins/",
"DebugMode": "NONE",
"RunMode": "HYBRID",
"GameServer": {
"Name": "Test",
"Ip": "0.0.0.0",
"PublicIp": "你的公网IP或者域名",
"Port": 22102,
"PublicPort": 0,
"DispatchServerDatabaseUrl": "mongodb://127.0.0.1:27017",//这里写数据库地址
"DispatchServerDatabaseCollection": "grasscutter",
"InventoryLimitWeapon": 2000,
.............................
"DispatchServer": {
"Ip": "0.0.0.0",
"PublicIp": "你的公网IP或者域名",
"Port": 443, //如果你是DDNS的部署 1000以下的端口不一定能用 可能被运营商封了
"PublicPort": 0,
"KeystorePath": "./keystore.p12",
"KeystorePassword": "123456",
"UseSSL": true,
"FrontHTTPS": true,
"AutomaticallyCreateAccounts": false,
"defaultPermissions": [
"player"
],
"GameServers": []
#cd 到Grasscutter 目录
cd /App
#启动 Grasscutter
java -jar grasscutter.jar
#出现 Listening at 22102 后代表服务器启动成功
#使用以下指令添加 abc账户 uid 100001
account abc 100001
Grasscutter 命令问题参考这里
安装准备
YS 国际版
Python3
mitmproxy
安装过程不再赘述
配置好代理脚本
创建Proxy文件夹 将开源项目中的 代理脚本 如下放置
文件结构为
–/Proxy
----proxy.bat
----proxy.py
----proxy_config.py
特别提示
"DispatchServer": {
"Ip": "0.0.0.0",
"PublicIp": "你的公网IP或者域名",
"Port": 443(请注意这里 如果改成10443), //如果你是DDNS的部署 1000以下的端口不一定能用 可能被运营商封了
"PublicPort": 0,
上方的443 端口 有时候不能用 更换了其他端口 比如 10443
我们需要同步修改 proxy_config.py 的Port
修改后如下
proxy_config.py
# This can also be replaced with another IP address.
USE_SSL = True
REMOTE_HOST = "你的公网IP"
REMOTE_PORT = 10443(与Grasscutter Config相同)
为了更好的部署 我修改了proxy.bat 设置了他的证书目录
proxy.bat
@echo off
mitmdump -s proxy.py --ssl-insecure --set block_global=false --set confdir=./keyconfig --listen-port 54321
pause
启动代理脚本 proxy.bat 后
在目录中生成 keyconfig文件夹
├── resources
│ ├── mitmproxy-ca-cert.cer
│ ├── mitmproxy-ca-cert.pem
│ ├── mitmproxy-ca.pem
│ ├── mitmproxy-ca-cert.p12
│ ├── mitmproxy-ca.p12
│ └── mitmproxy-dhparam.pem
将 mitmproxy-ca-cert.p12 安装在Windows中
途中如果出现错误 请观摩其他教程的解决办法 什么时候我有时间了 我就来更新 BUG 解决的问题
2022/5/12 刘先森