本文已过时,请前往 原神私服游玩教程 查看最新文章
本文仅供学习交流,严禁用于商业用途,侵权联系或评论我删除
解压密码均为:rainkavik.com
本文使用的是3.2的服务端进行搭建示范,以下所有文件都能在我的个人网盘找到。
如果你是小白,请在进行环境安装之前,重启一次电脑,把后台奇奇怪怪的软件关掉(新服务器忽略)。
关于本机和服务器的区别,我会在文章之中注明区别(没有标注的都需要操作),请关注好每一个字。
碰到问题请转到 Grasscutter-常见问题
1.修改客户端文件
下载补丁:RainKavik网盘/客户端/3.x-x服-UserAssembly.zip
解压后得到 UserAssembly.dll
打开官服路径:Genshin Impact Game\YuanShen_Data\Native
官服路径下自带一个 UserAssembly.dll
把他重命名为:UserAssembly-官服.dll
重命名的目的是为了备份 没有官服游玩需求可以直接覆盖
把补丁包里面解压的 UserAssembly.dll放到此路径
2.下载代理:RainKavik网盘\代理软件\mhy代理转向
下载完成 解压 以管理员方式打开mhy代理转向
下面地址输入进去
gc.rainkavik.com:320
下方代理端口留空!!!!!!!!!
进入游戏后记得关闭代理,否则电脑会出现无网络情况,服务器压力也大~!
指令搭配Tools指令箱使用 下载路径:网盘\其他\GrasscutterTools-v1.6.6.exe
服务端安装
安装环境:
下载安装jdk和mongodb:
文件下载路径:RainKavik网盘/环境
完整文件名:jdk-17.0.2_windows-x64_bin.exe
完整文件名:mongodb-windows-x86_64-5.0.8-(仅限win10及以上使用).msi
1.网盘路径下有两个 mongodb
,根据自己的系统版本下载对应版本。
2.如果你是小白,请勿更改任何设定。
服务端下载:
文件下载路径:RainKavik网盘/服务端/full-grasscutter-3.x-#####_RainKavik.zip
运行服务端:
必改:"server-accessAddress": "127.0.0.1"
必改:"game-accessAddress": "127.0.0.1"
两个 127.0.0.1
,更改为服务器公网IP或者局域网IPV4地址
IPv4地址获取:任务管理器-性能-以太网(WIFI)-右下角IPV4
修改完成切记保存关闭
运行 run.bat
显示 加载完成!输入 "help" 查看命令列表
即代表开服成功,显示其他请看常见问题。
登录你的服务器管理后台-防火墙-添加防火墙规则
TCP443
(Windows和Android免证书登录端口)
UDP22102
(游戏数据交互)
注意:有个别服务器可能还需要在系统界面防火墙放行端口。
WIN+R
打开运行,输入 wf.msc
,在入站规则选项最右侧,新建规则-端口,添加以上三个端口。
出站规则不需要更改,默认全开。
完成以上,服务端教程到此结束,接下来是客户端教程。
客户端
自行准备客户端(即你现在的官服)。
补丁安装:
RK的两个代理软件都支持自动安装和还原补丁,这里我还是用手动安装为教程。
补丁下载路径:RainKavik网盘/客户端/3.x-x服-UserAssembly.zip
下载完成解压得到:UserAssembly.dll
打开以下路径
国服:Genshin Impact Game\YuanShen_Data\Native
国际服:Genshin Impact Game\GenshinImpact_Data\Native
此目录下面有一个 UserAssembly.dll
,请把它重命名为 UserAssembly-官服.dll
,否则你将无法进入官服。
复制刚才解压得到的 UserAssembly.dll
到此目录代替原先的文件。
Native
文件夹应该有以下两个文件
Windows连接服务器:
这里一共提供多种方法,任选其一,切记所有代理软件都需要已管理员身份运行。
下载地址:网盘/代理软件/mhy代理转向.zip
地址:
127.0.0.1:443
代理端口:留空!!!!!!!!!!
地址填写说明:IP:443端口(Dispatch端口),切记使用英文符号
。
下载地址:网盘/代理软件/Genshin代理助手.zip
地址:本机搭建填写 127.0.01
服务器搭建填写 服务器公网IP
端口 443
填写完成-启动代理
客户端连接
双击打开 YuanShen.exe
或 GenshinImpact.exe
,启动客户端
在服务器 run.bat
运行窗口输入以下语法进行账户注册
语法:account create 登录账号 UID
例如:account create rainkavik 10000
返回客户端输入你注册的账号,密码可随便填
进到游戏内,立即关闭代理 :长时间代理,你流量全走服务器,你电脑和服务器都累,而且还可能会被服务商 ban 机!
补充说明:
以下两种方式都需要对应插件的支持,网盘服务端已经内置。
PC玩家请搭配 GrasscutterTools指令工具
使用
下载地址:网盘\其他\GrasscutterTools-v1.6.6.exe
手机玩家在游戏内输入/wt获得指令邮件(pc端适用)
最新版本需要使用指令点亮地图:/prop unlockmap 1
网盘内的视频教程可能已经过时,请添加频道获得安卓和pc视频
(频道只有链接服务器视频,没有搭建视频,懒癌晚期,别叫了!)
其他
{
"folderStructure": {
"resources": "./resources/", //资源
"data": "./data/", // 数据配置
"packets": "./packets/", //数据包
"scripts": "./resources/Scripts/", //资源脚本
"plugins": "./plugins/" //插件目录
},
"databaseInfo": {
"server": {
"connectionUri": "mongodb://localhost:27017", //MongDB 服务器数据库
"collection": "grasscutter" //MongDB数据表:默认grasscutter
},
"game": {
"connectionUri": "mongodb://localhost:27017", //MongDB 服务器数据库
"collection": "grasscutter" //MongDB数据表:默认grasscutter
}
},
"language": {
"language": "zh_CN", //当前本地语言chs
"fallback": "en_US", //备用回退语言en
"document": "EN" //文件语言 默认EN 可选CHS CHT 例:"document": "CHS"
},
"account": {
"autoCreate": false, //登录任意账户自动创建账户 默认关闭 开启例: "autoCreate": true,
"EXPERIMENTAL_RealPassword": false, //自动创建账户时候固定密码不再是随意密码登录(4benj哥哥写的感觉不好用)
"defaultPermissions": [], //默认的权限组 可选例: "defaultPermissions": [player.*,server.*],
"maxPlayer": -1 // 服务器在线最大人数 -1 表示关闭
},
"server": {
"debugLevel": "NONE", //调试模式 类型说明:"NONE","MISSING","ALL" ->NONE: 不显示调试信息,MISSING: 仅显示未知请求,ALL: 全部显示
"DebugWhitelist": [], //调试白名单
"DebugBlacklist": [], //调试黑名单
"runMode": "HYBRID", //运行模式 类型说明: "HYBRID","DISPATCH_ONLY","GAME_ONLY" -> HYBRID: 同时运行负载均衡服务器和游戏服务器,DISPATCH_ONLY: 仅运行负载均衡服务器,GAME_ONLY: 仅运行游戏服务器
"http": {
"bindAddress": "0.0.0.0", //监听(所有)IP地址 0.0.0.0
"accessAddress": "127.0.0.1", // 访问(本地)IP地址 127.0.0.1 可选C类IP地址 :192.0.0.0 ~ 223.255.255.255 或者 AB类地址 A:1.0.0.0 ~ 127.255.255.255 B:128.0.0.0 ~ 191.255.255.255
"bindPort": 443, //监听端口 443
"accessPort": 0, // 访问端口 自动返回
"encryption": {
"useEncryption": true, //使用加密
"useInRouting": true, //使用开启
"keystore": "./keystore.p12", //密钥路径
"keystorePassword": "123456" //密钥密码
},
"policies": { //策略
"cors": { //CORS 跨域
"enabled": false, //开关 false 关闭
"allowedOrigins": [ //允许的来源 "*" 全部
"*"
]
}
},
"files": {
"indexFile": "./index.html", /// web 主页界面文件路径
"errorFile": "./404.html" //无法访问 web 404 界面文件路径
}
},
"game": {
"bindAddress": "0.0.0.0", //监听(所有)IP地址 0.0.0.0
"accessAddress": "127.0.0.1", // 访问(本地)IP地址 127.0.0.1
"bindPort": 22102, //监听端口 443
"accessPort": 0, // 访问端口 自动返回
"loadEntitiesForPlayerRange": 100, //玩家加载范围 据说调低40左右 降低负载 对低性能机器很友好
"enableScriptInBigWorld": false, //大世界脚本 默认false 开启true
"enableConsole": true, //启用控制台 true
"gameOptions": {
"inventoryLimits": { //库存限制
"weapons": 2000, //武器最大数量
"relics": 2000, //圣遗物最大数量
"materials": 2000, //材料最大数量
"furniture": 2000, //家具最大数量
"all": 30000 //总库存最大数量
},
"avatarLimits": { //人物上限
"singlePlayerTeam": 4, //单人队伍共限制4人
"multiplayerTeam": 4 //联机队伍共限制4人
},
"sceneEntityLimit": 1000, //玩家生成怪物上限
"watchGachaConfig": false, //监控Gacha配置修改
"enableShopItems": true, //商店开关:true
"staminaUsage": true, //体力条开关:true
"energyUsage": false, //元素充能开关:false
"resinOptions": { //树脂选项
"resinUsage": false, //树脂使用开关:false
"cap": 160, //树脂上限160
"rechargeTime": 480 //补给树脂间隔时间
},
"rates": { //爆率
"adventureExp": 1.0, //冒险EXP 1.0
"mora": 1.0, //摩拉 1.0
"leyLines": 1.0 //地脉 1.0
}
},
"joinOptions": {
"welcomeEmotes": [ //欢迎表情
2007,
1002,
4010
],
"welcomeMessage": "Welcome to a Grasscutter server.", //欢迎消息
"welcomeMail": { // 欢迎游戏
"title": "Welcome to Grasscutter!", //游戏标题
"content": "(//邮箱内容//)Hi there!\r\nFirst of all, welcome to Grasscutter. If you have any issues, please let us know so that Lawnmower can help you! \r\n\r\nCheck out our:\r\n\u003ctype\u003d\"browser\" text\u003d\"Discord\" href\u003d\"https://discord.gg/T5vZU6UyeG\"/\u003e\n",
"sender": "Lawnmower", //发件人署名
"items": [ //发送物品
{
"itemId": 13509, //id[武器] 13509 雾切之回光
"itemCount": 1, //给予数量
"itemLevel": 1 //给予等级
},
{
"itemId": 201, //id[物品] 原石
"itemCount": 99999, //给予数量
"itemLevel": 1 //给予等级
}
]
}
},
"serverAccount": { //服务器帐户好友设置
"avatarId": 10000007, //人物ID
"nameCardId": 210001, //名片ID
"adventureRank": 1, //冒险等级
"worldLevel": 0, //世界等级
"nickName": "Server", //昵称
"signature": "Welcome to Grasscutter!" //签名
}
},
"dispatch": {
"regions": [ //服务器列表区域
{
"Name":"Grasscutter",//名称
"Title":"Grasscutter", //标题
"Ip":"127.0.0.1", //IP地址默认本地127.0.0.1
"Port":"22102" //game.bindPort 22102 端口
},
{
"Name":"Grasscutters",//名称
"Title":"Grasscutter",//标题
"Ip":"127.0.0.1",//IP地址默认本地127.0.0.1
"Port":"22102"//game.bindPort 22102 端口
},
],
"defaultName": "Grasscutters" //默认加载Grasscutters 名称服务器
}
},
"version": 3 //版本 3
}
推荐使用 Grasscutter Tools工具箱 (仅 Win) 或 GrasscutterTools(网页版) 等生成指令
游戏登陆后默认有一个名为 Server
的好友,此为游戏控制台,可向其发送指令
游戏内 Server
好友输入示例:/give all
run.bat
运行窗口输入示例:give @10001 all
更多指令请使用 GrasscutterTools
工具箱查看
如果你是手机党玩家,不清楚指令,游玩别人的服务器,这里推荐两条指令
1.获得所有物品 /give all
2.获取毕业圣遗物 /give 76524 lv20 10001 999002 999001 201062,100 201091,100 989001,2 301241,120
用鱼钩(最后一个图标)在地图上标记一个点位并点击确认即可传送至目标上空;在名称填写数字可更改传送高度。
问题解答/取得支持
加入密碼:yJLCmrkO7i7C@eKP
关于
本服务端基于开源项目 Grasscutter。
本文作者:Kazuha Hub
本文链接:https://kazuhahub.com/archives/254/
版权声明:本Blog所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。非商业转载及引用请注明出处(作者、原文链接),商业转载请联系作者获得授权。
829 comments
大佬, run.bat 打开游戏自动关了什么原因
先打开服务端再打开游戏
海染套触发不了被动
大佬,我需要怎样修改才能实现十连十金呢,那个文件我尝试了很多方法最多只能做到十连五金。
嗯,不错的
怎样切换回官服
请问为什么本地开启的服务器 大不了深渊呢?(进入深渊掉虚空)
大佬,那个全UP池文件放进去导致全部卡池都没有啦,顺便问问有没有抽卡统计工具
大佬,想问一下 1.该如何点亮限时地图?使用/prop unlockmap 1后,提瓦特地图是亮了,但是其他地图还是黑的。
2.该如何解锁时装?试过直接发和商店购买,也去官方Github找了,但发现当时5月份的解决了的回答现在解决不了问题。∠( ᐛ 」∠)_
进门之后显示连接超时,看常见问题说是UDP协议的问题,这个怎么搞?
放通端口
我的也是,端口都放通了,但是还是进门连接超时,感觉是配置文件的问题,配置文件导致游戏服务器的真实ip和run.bat显示出来的不一样,但是登录服务器的是对的,能登录不能进游戏
进门之后每次都显示连接超时,看常见问题说检查UDP协议的端口,这个要怎么搞?
[...]原神私服搭建教程-Private Server/Rain Kavik使用Grasscutter服务端搭建原神私服/Eulaの小破站[...]
6
6
大佬,怎么改主角元素啊o(*////▽////*)q
参考一下链接https://github.com/RainKavik-Group/SwitchElementTraveller
下载插件并放入根目录下plugins文件夹内
大佬,求教,为啥我玩私服今天一直被回档,获得所有之后一退游戏再上除了角色,其他的基本啥都没了,这个后面再刷也没用
自己的服务器?
1
Exception in thread "main" com.mongodb.MongoTimeoutException: Timed out after 30000 ms while waiting to connect. Client view of cluster state is {type=UNKNOWN, servers=[{address=localhost:27017, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketOpenException: Exception opening socket}, caused by {java.net.ConnectException: Connection refused: no further information}}]
at com.mongodb.internal.connection.BaseCluster.getDescription(BaseCluster.java:177)
at com.mongodb.internal.connection.SingleServerCluster.getDescription(SingleServerCluster.java:41)
at com.mongodb.client.internal.MongoClientDelegate.getConnectedClusterDescription(MongoClientDelegate.java:127)
at com.mongodb.client.internal.MongoClientDelegate.createClientSession(MongoClientDelegate.java:87)
at com.mongodb.client.internal.MongoClientDelegate$DelegateOperationExecutor.getClientSession(MongoClientDelegate.java:258)
at com.mongodb.client.internal.MongoClientDelegate$DelegateOperationExecutor.execute(MongoClientDelegate.java:182)
at com.mongodb.client.internal.MongoCollectionImpl.executeCreateIndexes(MongoCollectionImpl.java:847)
at com.mongodb.client.internal.MongoCollectionImpl.createIndexes(MongoCollectionImpl.java:830)
at com.mongodb.client.internal.MongoCollectionImpl.createIndexes(MongoCollectionImpl.java:825)
at com.mongodb.client.internal.MongoCollectionImpl.createIndex(MongoCollectionImpl.java:810)
at dev.morphia.annotations.builders.IndexHelper.createIndex(IndexHelper.java:220)
at dev.morphia.annotations.builders.IndexHelper.createIndex(IndexHelper.java:210)
at dev.morphia.DatastoreImpl.ensureIndexes(DatastoreImpl.java:186)
at emu.grasscutter.database.DatabaseManager.ensureIndexes(DatabaseManager.java:89)
at emu.grasscutter.database.DatabaseManager.initialize(DatabaseManager.java:70)
at emu.grasscutter.Grasscutter.main(Grasscutter.java:118)
大佬这是怎么回事
数据库问题
你的优化软件把服务端启动必要的软件环境启动项优化掉了 检查启动项吧
大佬 怎么换主角元素吗
参考以下链接https://github.com/RainKavik-Group/SwitchElementTraveller
下载插件并放入根目录下plugins文件夹内
常见问题密码是什么啊,求告诉。拜托拜托
现在没有密码喽(///▽///)
大佬,按照你的方法弄完后游戏可以玩,但是我现在Windows自动代理会自动打开咋办啊?