【新人必看】原神私服服务端Grasscutter搭建实战

Posted on 2022-05-04  6442 Views


原神私服服务端Grasscutter搭建实战

【新人必看】原神私服服务端Grasscutter搭建实战

原神私服服务端Grasscutter搭建实战

2022/5/11 更新了文章细节

搭建参考视频

视频链接: https://www.bilibili.com/video/BV1Ba411a7V2【求个三连】

第一部,安装环境

[mark_a]Java17:下载Java17 [/mark_a]

(这个我不用多说,正常安装就行)

[mark_a]mongodb:下载mongodb [/mark_a]

(这个安装比较慢,我安装等了快30分钟,注意如果安装后没有界面说明你需要到mongodb.org官网下载gui)

[mark_a]git:下载git密码:69st[/mark_a]

(这个是为了方便cloneGitHub项目)

 

第二部,开始clone

创建文件夹,并右键选择git bash here

【新人必看】原神私服服务端Grasscutter搭建实战
输入指令

[qzdypre]git clone https://github.com/Grasscutters/Grasscutter.git -b development[/qzdypre]

【如果显示

Cloning into 'Grasscutter'...
fatal: unable to access 'https://github.com/Grasscutters/Grasscutter.git/': Failed to connect to github.com port 443 after 21098 ms: Timed out

说明没有连接到仓库,重新执行上面的指令】

【新人必看】原神私服服务端Grasscutter搭建实战

【如果显示

Cloning into 'Grasscutter'...
remote: Enumerating objects: 9458, done.
remote: Counting objects: 100% (270/270), done.
remote: Compressing objects: 100% (148/148), done.
remote: Total 9458 (delta 98), reused 193 (delta 71), pack-reused 9188
Receiving objects: 100% (9458/9458), 33.17 MiB | 2.02 MiB/s, done.
Resolving deltas: 100% (4795/4795), done.说明是成功了

图片示例:

【新人必看】原神私服服务端Grasscutter搭建实战

 

第三部,开始构建核心

(开始前请查看你的文件夹路径是否有中文,如果有请移动的磁盘根目录)

图片示例:

【新人必看】原神私服服务端Grasscutter搭建实战

 

 

然后同样在刚才的右键的git bash here窗口输入

[qzdypre]cd Grasscutter[/qzdypre]

然后输入

[qzdypre]./gradlew.bat[/qzdypre]

等加载完后输入

[qzdypre]./gradlew jar[/qzdypre]

就可以了,如果你在这部报错请确认一下

Java版本是17,是在英文路径目录

如果还是不行可以按住shift键右键,选择win10是【Windows PowerShell】win11是【Windows终端】

然后再输入上面的指令,确认文件夹里面生成了这个文件就算成功了一大部

【新人必看】原神私服服务端Grasscutter搭建实战

 

[mark_b]

当然如果你还是不会构建,可以去https://discord.gg/9fSwCHhs

如果你懒的构建可以去https://ci.grasscutter.ga/job/Grasscutter-Dev/下载别人自动构建好的

[/mark_b]

第四部,覆盖资源包

[mark_a]

为了方便,我进行了打包

链接:下载覆盖资源包

[/mark_a]

直接覆盖到Grasscutter文件夹里面

【新人必看】原神私服服务端Grasscutter搭建实战

 

第五部,进行抓包

[mark_a]

下载安装Fiddler

链接:下载Fiddler

[/mark_a]

安装好后点击tools,点击options

【新人必看】原神私服服务端Grasscutter搭建实战

点击https并勾选打开第2个选项

【新人必看】原神私服服务端Grasscutter搭建实战

点击connections,8888改成8181,并勾选第2个选项

【新人必看】原神私服服务端Grasscutter搭建实战

然后点击ok进行保存,点击fiddlerscript把所有删除改成下面这个

 

[qzdypre]

/* Original script by NicknameGG, modified for Grasscutter by contributors. */
import System;
import System.Windows.Forms;
import Fiddler;
import System.Text.RegularExpressions;

class Handlers
{
static function OnBeforeRequest(oS: Session) {
if(oS.host.EndsWith(".yuanshen.com") || oS.host.EndsWith(".hoyoverse.com") || oS.host.EndsWith(".mihoyo.com")) {
oS.host = "127.0.0.1"; //This can also be replaced with another IP address.
}
}
};

[/qzdypre]

【注意如果你是玩别人服务器或者是在云服务器搭建的,127.0.0.1可以改成你的公网】

 

第六部,开启服务器创建账号

双击start.bat启动

[mark_d]注意:因为核心版本更新的问题,

请自行右键点击编辑改动

java -jar grasscutter-1.0.0-dev.jar

把java -jar grasscutter-1.0.0-dev.jar的grasscutter-1.0.0-dev.jar改成对应的版本

例如目前5/11最新的版本是grasscutter-1.1.1-dev.jar

则改成java -jar java -jar grasscutter-1.0.0-dev.jar

[/mark_d]

在start.bat的窗口上输入

account create admin 1314520

解释一下这个指令

account create 用户名(就是平常手机邮箱登录的位置) uid(这个不用我多说)

【注意:这个指令创建的账号是默认有所有权限的】

 

第七部,打开原神

打开原神时有一个协议,点击yes,国服可能有个报错乱码的协议,不用管,确认就行

之后正常登录上面的创建账号就行,密码随便填,目前不具备密码功能,所以创建的用户名是个重要问题

之后就可以正常游玩了,指令在好友聊天的server那边打,/giveall指令可以获取全部东西角色武器等都是满级

【查看指令参考我上一个帖子】

 

第八部,云服务器开服内容补充

在服务器开服时,游玩会报4206错误

在开启start.bat,会生成一个config.json文件,用记事本打开

如果没有正常排序请其他编程软件打开【个人建议notepad++】

请把两个PublicIp值改成你的公网IP,分别在17行和61行

(可能Grasscutter更新后位置会有变动,一般在在17行和61行左右)

 

第九部,目前不能做到的功能以及config.json设置内容补充

目前做不到功能有剧情,任务是做不到的,而秘境及副本都多少有点bug

config.json因为dev更新很快,所以不会包括所有

注意一下true是开启的意思,false是关闭的意思

(其实玩过服务器的应该都知道的)

config.json设置内容:【注意请不要乱删除】

DatabaseUrl是代表连接的数据库,默认不用动就行

DatabaseCollection是代表数据库文件夹,默认不用动就行

RESOURCE_FOLDER是代表服务端读取资源的文件夹

DATA_FOLDER是字面意思,代表各种默认数据,例如生成,卡池,商店等

PACKETS_FOLDER暂时不知道什么作用,猜测是纹理,后续可能有大佬搞

DUMPS_FOLDE暂时也不知道什么作用

KEY_FOLDER字面意思,是连接原神验证的东西

SCRIPTS_FOLDER是识别lua的,就是秘境之类的

PLUGINS_FOLDER字面意思,是插件的地方

LANGUAGE_FOLDER字面意思,添加多语言用处

DebugMode暂时不知道

RunMode暂时不知道

GameServer是游戏服务器参数

Name是服务器名字【仅多个服务器时才可以看到】

Ip没有什么好说的,不要改

PublicIp别人连接IP[注意不是自定义,是你服务器的IP]

Port没有什么好说的服务器游戏端口

PublicPort没有什么好说的,不用改

DispatchServerDatabaseUrl是游戏服务器连接的数据库

DispatchServerDatabaseCollection是游戏服务器连接的数据库的文件夹

InventoryLimitWeapon
InventoryLimitRelic
InventoryLimitMaterial
InventoryLimitFurniture
InventoryLimitAll

暂时目前我不清楚

MaxAvatarsInTeam最大队伍人数,但是目前测试没有用,没有实装

MaxAvatarsInTeamMultiplayer最大多人队伍人数,但是目前测试没有用,没有实装

MaxEntityLimit是地图上实体最多多少个

WatchGacha是观测抽卡,但是实测没有什么作用,这不是抽卡记录

ServerNickname服务器控制台在好友页面的名称

ServerAvatarId服务器控制台在好友页面的头像

WelcomeEmotes每次进入服务器服务器控制台发送的表情

WelcomeMotd每次进入服务器服务器控制台发送的文字

WelcomeMailContent新账号的初始邮件文字

WelcomeMailItems新账号的初始邮件送的东西

EnableOfficialShop字面意思商店

ADVENTURE_EXP_RATE
MORA_RATE
DOMAIN_DROP_RATE

暂时我不知道什么用,但是不能改

DispatchServer原神的验证服务器

Ip不用问我说,不要改

PublicIp别人连接IP[注意不是自定义,是你服务器的IP]

Port验证服务器的端口,一般不用改,除非你的公网建不了网站

PublicPort没有什么好说的,不用改

KeystorePath验证证书位置

KeystorePassword证书密码,这里请不要改

UseSSL是否启用SSL

FrontHTTPS是否启用HTTPS

AutomaticallyCreateAccounts是登录时候没有该账号,自动创建账号【注意:这个自动创建的账号没有权限】

defaultPermissions暂时不知道什么用处

GameServers可以添加其他服务器连接

Language是服务器的语言,这个小白不建议改

OpenStamina是开启体力,如果关掉就不会限制体力

[mark_d]注意:因为核心版本更新的问题,可能有些东西已经不一样了,请自行更改!!![/mark_d]

 

查看指令:https://hbj2457.cn/?p=107 [目前gc/lc服务端已经支持/help指令中文介绍]

手机进服教程:https://hbj2457.cn/?p=122

带密码的Grasscutters—Leekcutter:https://hbj2457.cn/?p=128