开服路途艰难,你的时间宝贵。

请注意:每个人或许步骤相同但也许也会遇到各种各样神奇的问题
如果您不会高级一点的上网手法那本教程可能帮不到你,您可能会卡在安装环境或下载服务端。
该问题无解,请自行解决。

时常回来以追踪服务端与OTA功能更新,或前往TG频道跟踪更新:Genkit~
如果你已经能成功开启本地服务器那欢迎你阅览原神 2.6 私服多人联机教程~
多人联机教程必须要有本地成功开服的基础!如果你尚未成功开启本地服务器请继续努力再接再厉~

该教程已暂时停止跟踪最新版本,但是欢迎查阅由其他大佬合力创作的GenKit Wiki获取版本支持

功能支持

  • 登录
  • 战斗
  • 好友列表
  • 传送系统
  • 祈愿系统
  • 从控制台生成魔物
  • 多人游戏 部分 可用
  • 物品栏相关 (接收物品/角色, 升级角色/武器等)
    该内容更新滞后,未来得及展示的功能还请各位旅行者自行探索啦~

注意事项

本文已重写,以本人开服成功经验出发。
本文以Windows环境编写教程,推荐使用.exe.msi等图形化安装界面安装文中所提环境,如果您是以命令行的方式安装恕我无法提供建议。
本文默认您环境都安装在默认目录,例如Java。如果修改了安装目录请自行修改脚本文件!
中文汉化过的服务端在后台可能显示中文时乱码,但请放心游戏内肯定是正常的!

标准步骤

环境要求
Java17
MongoDB
Python3.8+
Mitmproxy
再度提示,以命令形式安装将在本文得不到任何帮助

文件下载
原神 国际服

Mega:原神2.6私服服务端 基于Wansn大佬的zip包进行内容更新替换替换
蓝奏云分流:原神2.6Grasscutter服务环境 密码hwlj 教程目录以Mega为主,蓝奏云仅分流必要文件,如有更多需求请自备魔法上Mega
下载文件夹 Java16&17端版本 内的内容
文件夹内含有 GrasscutterGameServer.7z -服务器环境
grasscutter.jar -服务端文件 如果文件名为grasscutterZH-dev-......或其他请自行改名,或者修改run.bat启动脚本
keystore.p12 -服务器通信证书 证书文件来源Github Dev分支
服务端文件可能过时,请下滑阅览 服务器更新

MD5与SHA256校验码

GrasscutterGameServer.7z
MD5 05f1fa55370007811c507604dff24e5f
SHA256 b48160c89a615110dd5bf79cc775e3c5e72b2132c14edd97892f0d5f37b0afc5

grasscutter.jar 汉化@March 7thTG跟踪更新 网盘不定时更新,可前往TG频道追踪更新
grasscutterZH-dev-1df5574.jar
MD5 2b0468280fa28c5da21b8f5c054c9da4
SHA256 d33359792982bfbcdc944da0bc617bc9f02daa671b25961406a4415634dcc93a
更新时间:2022/05/02 PM

keystore.p12
MD5 1cdc5378b9b25abe8e1c6e211b30afe5
SHA256 6a915b1ad59a704dc68d753fea1db2b1eb2402ca1bd1773f35612edae0b4bf73

如何验证?CMD> certutil -hashfile <文件路径> <md5/sha256>

服务器启动与代理

解压 GrasscutterGameServer 并将 keystore.p12grasscutter.jar 拷入该目录
启动程序 run.bat
该步骤启动服务器,如需停止或关服推荐控制台输入stop

C:\Program Files\BellSoft\LibericaJDK-17\bin\java.exe

这是使用文中Java17安装的默认目录,不管如何我都推荐您去校对一下与您实际安装是否有出处。如果您的Java不是默认目录或有出处请自行修改一下!
启动 proxy.bat
该步骤启动 Mitmproxy 代理

电脑代理设置

设置 > 网络和 Internet > 代理 > 手动设置 > 使用代理服务器[设置]
进行以下配置
代理IP地址:127.0.0.1 端口:8080
关闭选项 -> 请勿将代理服务器用于本地(Intranet)地址

证书安装

设置好电脑代理并启动proxy.bat后方可访问
访问 mitm.it 点击并下载 Get mitmproxy-ca-cert.p12 在下载文件夹双击该文件安装证书
安装证书时请修改证书存储目录,具体操作如下:

  • 安装时点击下一步直到证书存储页面。将所有的证书都放入下列存储 浏览并选择 受信任的根证书颁发机构
    其余步骤直接默认点击下一步即可

一个IP一个证书!例如远程联机和本地局域网 <该内容存疑

账号创建与服务器连接

run.bat 启动的CMD控制台输入 account create 账户ID 游戏UID 以创建账号
例:account create Paimon 2020
启动 原神2.6国际服
登录账号是你自己创建的账户ID,密码随便填即可
给自己权限:permission add 登录账号 *
例:permission add Paimon *
*代表着全部权限
如果给不了权限请先进入游戏看完CG后再给予权限
账户ID不分大小写,实际使用时不用去刻意大小写

服务器更新

由于本教程现在是按着Dev分支进行编译,并且采用March 7th大佬的汉化文件
所以请前往TG跟踪更新或是原神2.6私服服务端/Java16&17端版本进行跟踪更新
网盘不定时更新,可前往TG频道追踪更新
或是自行编译或自行寻找他人编译的grasscutter.jar
使用他人编译的端时请注意安全!
最后您仅需要替换同名文件 grasscutter.jar 即可
如果文件名不是grasscutter.jar请重命名,或修改run.bat
必要时可删除 config.json ,服务器会重新生成!
由更新造成的错误务必尝试重新生成配置文件!

OTA升级注意事项

旧服务端可能不支持该功能,请前往网盘更新!

OTA升级文件下载地址及其目录原神2.6私服服务端/Java16&17端版本/OTA升级,请根据提示下载指定文件以及按照指定步骤操作!
OTA内容均可还原,即使是被覆盖了您也可以通过旧文件覆盖还原回去!

OTA升级 · 大世界刷生物

下载 Spawns.json 文件 支持DIY v0.1
将该文件拷贝到目录.\data
本教程暂不提供该OTA内容修改教程,如有能力可以自行研究文件进行修改

OTA升级 · 服装替换修复

下载 AvatarCostumeExcelConfigData.json 文件
替换此json到.\resources\ExcelBinOutput下即可解决无法替换服装的问题

OTA升级 · 商店尝鲜&战利品掉落

下载 Shop.jsonDrop.json 文件 支持DIY
将该文件拷贝到目录.\data
大部分商店都已支持并且为原版内容 v0.2 这个文件真的很神奇,大伙有兴趣可以打开看看
战利品掉落已支持更多生物 v0.3
本教程暂不提供该OTA内容修改教程,如有能力可以自行研究文件进行修改

OTA升级 · 抽卡历史

下载 OTA抽卡历史.7z 文件
使用压缩包 .\data 将服务环境 .\data 覆盖

深入 · 卡池修改

卡池配置文件在服务器环境文件 \data\Banners.json 中,其中:
gachaType=200,scheduleId=893的为常驻池
gachaType=301,scheduleId=903的为角色UP池
gachaType=302,scheduleId=903的为武器UP池
gachaType=400,scheduleId=913的为角色UP池2
多卡池:增加 gachaType 为非以上四个值的成员即可,注意客户端只识别以上四个 `gachaType 值,添加的其他卡池不会显示类型
rateUpItems1为UP五星,rateUpItems2为UP四星,对应物品IDHandbook_CHS.txt中可以找到
可选 修改卡池封面需修改prefabPath previewPrefabPath titlePath中的 A0** 为对应的卡池 id(在卡池顺序.xlsx中)
costItem为抽卡耗费的货币名称 223纠缠之缘,224相遇之缘 202摩拉(整活)
beginTime endTime为卡池开始 / 结束的时间戳
softPity最少几次出hardPity最多几次出eventChance歪的概率 %
如果没有的话可以自己加上

游戏资源更新及热门疑问

仅供参考,不一定能解决。
Q:登录后游戏资源更新不动
A:推荐使用 羽翼城:UsbEAm Hosts Editor 多平台hosts修改 V3.62 解决
使用教程:点击左下角手柄 > 游戏内相关 > 原神国服外服加快下载及更新速度 > 检测延时 > 双击hosts节点测速 > 选择合适的节点应用选中

Q:启动服务器后控制台乱码
A:本问题汉化端限定
右键编辑run.bat按如下代码框修改文中代码

@echo off
chcp 936 //插入本条指令,双斜杠和后面的这一段话别复制!
set JAVA_EXE="C:\Program Files\BellSoft\LibericaJDK-17\bin\java.exe"
%JAVA_EXE% -jar grasscutter.jar

Q:服务端启动报错
A:请注意 VMWare 或 Nginx 会导致443端口被占用,如果无法解除占用请尝试修改 config.json 中的端口,同时修改 proxy_config.py 中的端口
报错详细图片请前往该大佬的博客查阅#常见故障TomyJan's BLOG:GenshinTJ

Q:run.bat 启动的CMD控制台无法输入
A:该问题如图下主要原因是连接不到数据库,解决方法为重新安装数据库、重启电脑
才不是因为我不会手动启动数据库呢,不过可以问问度娘
Genshin_Lsdascsacs.webp
A:如果还有遇到其他报错行为可以尝试复制控制台输出的日志到翻译软件比如彩云小译自查原因,务必复制报错的原因,翻译器可翻译不了代码!

Q:开启代理后还是登录了官服,跳验证码等
A:魔法把端口占用了导致代理失败

Q:4206
A:电脑与Mitmproxy代理问题、keystore.p12证书问题,如果代理没有报错,则应为服务端问题,检查服务端配置或者更新服务端,具体内容请自查。

Q:502 / 4301 / 无法连接服务器
A:绝对是你没正确配置,自行检查

Q:4201
A:检查是否正确安装并信任证书

Q:-9203
A:一般为代理问题,已知 iOS 使用小火箭会存在此问题
A:使用https解密生成并信任证书解决 < 来自群友

Q:进门后连接超时
A:他奶奶滴,为什么不开放UDP22102端口!

UQ:有一位旅行者表示:按步骤以安装包形式把环境都装好了,run.bat可以正常运行,注册了账号,可以给权限。但是proxy.bat点开就闪一下就自动关闭了,然后手动把mitmproxy打开、设置好系统代理后,只有默认浏览器可以连接mitm.it(其他浏览器不行),然后用默认浏览器安装好了证书,但是进国际服后还是会跳验证,显示密码错误,不知道问题出在哪儿,Python、Java环境变量都检查了是对的。
UA:最后这位旅行者是这样解决的:python版本问题,3.10跑不了,换了3.8
A:温馨提示该问题目前也只发现一例,但可以参考参考
该评论存在于评论区,但已没有超链接能定位的到了

Q:我需要一直开着电脑代理和Mitmproxyproxy.bat代理吗?
A:在你成功登录游戏并开门加载完后是可以关闭这两项代理的,但你如果想回到主菜单并重新登录请重新打开代理!

Q:我使用安卓或苹果手机该如何连接同在局域网的服务器?
A:这个问题属于局域网联机的范畴~
如果你已经能成功开启本地服务器那欢迎你阅览原神 2.6 私服多人联机教程~
安卓需要MagiskROOT

Q:仍有其他问题
A:欢迎查看其他大佬制作的私服启动教程,请注意不同教程可能文件参数不同等问题,更换教程后请跟随新的指引完成开服!也可以单独查看大佬们制作的疑难解答,基本是适用的!
A:TomyJan's BLOG:GenshinTJ
A:虚冇的避风港:Grasscutter 电脑端详细安装教程(不定期更新)
A:或是评论提问,随缘回答。

指令大全

请与您的虚拟好友“Server”交谈,指令同样适用于其他聊天频道
游戏内指令请添加前缀 " ! " 例如 !help
没有权限?往上翻一下,上面讲了!
物品ID列表前往原神2.6私服服务端下载

本指令大全可能过时! 推荐查看Dev分支中文指令列表如是中文汉化端可在游戏内!help获取指令列表!

请注意,<playerId>指你设置的UID
使用 " | " 隔开的指令代表两者皆可,等同于 或、and 的意思 

broadcast
   向所有玩家发送一条信息
   用法: broadcast <message>
   别名: b
drop
   在你附近丢弃一个物品
   用法: drop <itemId|itemName> [amount
   别名: d dropitem
setstats
   为你当前的活动角色设置战斗属性
   用法: setstats|stats <stat> <value>
   属性: hp 生命值 def 防御力 atk 攻击
         em 元素精通 er 元素充能 crate 暴击率
         dmg 暴击伤害 epyro 火伤 ecryo 冰伤
         ehydro 水伤 egeo 岩伤 edend 草伤
         eelec 雷伤 ephys 物伤
   别名: stats
setworldlevel
   设置你的世界等级 (需要重新登陆以正确显示)
   用法: setworldlevel <level>
   别名: setworldlvl
givechar
   给予玩家一个指定的角色
   用法: givechar <playerId> <avatarId> [level]
   别名: givec
clearartifacts
   删除所有未装备和未锁定的0级神器,包括你库存中的黄色稀有神器
   用法: clearartifacts
   别名: clearart
killall
   杀死所有实体
   用法: killall [playerUid] [sceneId]
reload
   重新加载服务器配置
   用法: reload
heal
   治疗你当前团队中的所有角色
   用法: heal|h
   别名: h
weather
   改变天气
   用法: weather <weatherId> [climateId]
   别名: w
godmode
   防止你受到伤害
   用法: godmode [playerId]
give
   给予你或指定玩家一件物品
   用法: give [player] <itemId|itemName> [amount]
   别名: g item giveitem
restart
   重启当前会话
   用法: restart
changescene
   改变你的场景
   用法: changescene <scene id>
   别名: scene
permission
   给予或删除用户的权限
   用法: permission <add|remove> <username> <permission>
say
   以服务器的身份向玩家发送一条信息Yakl
   用法: say <player> <message>
   别名: sendservmsg sendservermessage sendmessage
list
   列出在线玩家
   用法: list
help
   发送帮助信息或显示关于指定命令的信息
   用法: help [command]
spawn
   在你附近生成一个实体
   用法: spawn <entityId|entityName> [level] [amount]
kick
   将指定的玩家踢出服务器(WIP)
   用法: kick <player>
stop
   停止服务器
   用法: stop
position
   获取坐标
   用法: position
   别名: pos
account
   修改用户账户
   用法: account <create|delete> <username> [uid]
resetconst
   重置你当前活动角色的星座等级,使用该命令后需要重新登录才能看到任何变化
   用法: resetconst [all]
   别名: resetconstellation

冷知识 > 地图标点传送可以通过修改标点的名字来自定义高度传送

参考存储库
Github:Grasscutter Dev
参考文章
Telegram:Genshin Impact Chat Group #13190
TomyJan's BLOG:GenshinTJ
引荐
虚冇的避风港:Grasscutter 电脑端详细安装教程(不定期更新)

参考TG < 要是有魔法,推荐进群问大佬们,比评论区问我有用多了
Telegram:Genshin Impact Chat Group
Telegram:Genkit | Telegram:Genkit Chat

发评论寻求帮助时请注意,我也仅是个懂得比较多的小白,可能无法解决您提出的问题。
评论时如不填写正确的邮箱地址可能导致无法及时得知您的评论收到回复,当然这是您的自由~
评论提交点一次就行了!连续点击会提交多条评论刷屏!不过还是不小心多提交的我会删除多余的qwq
评论有层数限制,达到限制后从中间新起一层或者另起一条评论吧~