项目地址: https://github.com/Grasscutters/Grasscutter (如果访问不了可以把github.com改成hub.fastgit.xyz) 此项目为开源项目,请不要进行非法使用 ! 如有侵权我会快速删除本文章,可以通过发邮件的方式告诉我,huoshen80@hotmail.com
前言
首先你得先准备一台Linux的云服务器,和一个能连接云服务器的软件
- win和macOS这边推荐使用 finalshell
- 安卓推荐使用juicessh(请自己找资源)
然后准备一个清醒的脑子准备开始部署原神服务器。
ps:如果你连ssh都不知道怎么连接,那这边建议你换win系统。 这边 有win开原神服务器的教程。
ps:这边以centos系统为例子,Ubuntu系统可以把有yum指令的yum改成apt。
一、准备jdk运行环境和芒果数据库
- 请先确保你已经有root权限,没有root权限的话使用
sudo su root
回车然后输入root密码来获取root权限。
1.升级软件源,安装必备软件
yum -y update
yum -y install wget git screen vim
ps:第一条指令运行可能要运行一段时间请耐心等待。
2.安装jdk17
注意下面指令一行一行
用
wget https://mirrors.tuna.tsinghua.edu.cn/Adoptium/17/jdk/x64/linux/OpenJDK17U-jdk_x64_linux_hotspot_17.0.4.1_1.tar.gz
tar zxvf OpenJDK17U-jdk_x64_linux_hotspot_17.0.4.1_1.tar.gz
mv jdk-17.0.4.1+1 /usr/local/java
vim /etc/profile
# 按 i 进入编辑 在文件末尾添加以下内容
export JAVA_HOME=/usr/local/java
export PATH=$PATH:$JAVA_HOME/bin;
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar;
# 添加完成后按 esc 输入 :wq! 保存
source /etc/profile
如果使用java -version
指令然后出现下面这样就说明jdk安装并配置好了
3.获取芒果数据库压缩包
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-5.0.9.tgz
#上面的适用于centos7,如果你是centos8或者ubuntu系统请看下面的教程
然后使用tar zxvf mongodb-linux-x86_64-rhel70-5.0.9.tgz
来解压芒果数据库
ps:上面的解压指令要根据你实际下载到的压缩文件来改名,提示tab键可以快速补全文件名字
二、准备好全部服务端文件
1.获取服务端主体文件和资源文件
git clone -b development https://ghproxy.com/https://github.com/Grasscutters/Grasscutter
git clone https://ghproxy.com/https://github.com/Koko-boya/Grasscutter_Resources
最终使用ls指令输出有的内容中有Grasscutter和Grasscutter_Resources即为正确
2.将服务端资源文件放到正确位置
cd Grasscutter_Resources
mv Resources ~/Grasscutter/resources
完成后你的Grasscutter文件夹下就有resources文件夹了
接下来就可以开始编译服务端。
3.编译服务端
cd ~/Grasscutter
./gradlew jar
ls
倒数第二个指令可能需要运行比较长的时间
,请耐心等待!
最后如果显示这样,就说明编译成功了,即可进入下一步,正式开服。
三、正式开服
1.开芒果数据库
- 由于要让程序一直运行,所以这里我们需要用到screen软件
screen -R db
cd ~/mongodb-linux-x86_64-rhel70-5.0.9
mkdir db
cd bin
wget huoshen80.top/usr/uploads/2022/06/start.sh
sh start.sh
最终完成,然后直接关闭ssh并重连
进入下一步
2.开服务端主体
由于要让程序一直运行,所以这里我们需要用到screen软件
screen -R ys cd ~/Grasscutter java -jar grasscutter-1.2.2-dev.jar
- 选择语言输入chs然后回车。
- 出现下面这个表示开好了
由于第一次开服会生成config.json文件,云服必须
修改此文件,所以说需要先关闭服务端
然后修改此文件。
stop
vim config.json
# 按 i 进入编辑 在文件的这些位置进行修改
# 添加完成后按 esc 输入 :wq! 保存
两个ip
必须换成自己服务器的ip或者域名,两个端口这边不建议
修改- 此外记得一定要去
服务商
那边放行443端口(tcp),22102(udp),如果有宝塔
的话也要放行这两个端口,请根据你自己设置的端口进行放行!!!否则可能会导致客户端无法连接!
然后再开服
java -jar grasscutter-1.2.2-dev.jar
然后就可以开始享受了!
ps:如果服务器重启的话就需要重新创建screen然后先开芒果数据库,再开服务端整体。
四、补充
1.screen软件的用法
- 进入一个screen,如果没有就创建一个:screen -R 名字
- 进入一个指定的screen:screen -r 名字
- 列出现有的screen:screen -ls
- 进入上一次的screen:screen -x
- 关闭指定的screen:screen -S 名字 -X quit
- 你还可以在screen里面输入exit来关闭screen
2.升级服务端
cd ~/Grasscutter
git pull
./gradlew jar
然后耐心等待即可。
接下来就是进入服务器的教程: 点我
jdk13的链接 404了
清华仓库升级了jdk17的版本,下载路径变了,现在博客的那个是最新的jdk17