I saw the server-side setup tutorial on some Chinese forums, so I will post the original text directly in order to keep the accurate expression of the original meaning. I hope it can give you some help. (I personally do not know if this tutorial is true and effective.)
The original article is as follows:
===================================================================
注意:我们将使用一个绑定的调度服务器,但它只能提供HTTP服务。你将需要通过使用例如mitmproxy来包装来自客户端的HTTPS流量。
注意:提供的捆绑包不包括SDK服务器。你必须自己找一个,否则你将无法登录。 |
-) 安装VirtualBox(或其他虚拟化解决方案)。
-) 在VBox中,创建一个新的虚拟网络
-) 在VBox中,创建一个新的虚拟机,有20Gb的硬盘空间和10Gb的内存(推荐16Gb)。
-) 为这个新的虚拟机添加两个网络适配器,一个NAT用于访问互联网,另一个 "虚拟主机适配器 "用于与主机进行通信。
-) 在VBox中,创建一个共享文件夹,指向所需文件的位置。把这个文件夹分配给虚拟机。
-) 将脚本从 "sql-3.2.7z "档案中移到 "tools/op_tools "子目录下。
-) 将数据从 "welink-pkg.7z "档案的 "welink_3.2_qa "目录移到 "data/"子目录中。
-) 把dev_gio.yaml放到 "tools/op_tools/conf/dev "目录下。记住要改变各地的IP地址,使之与分配给你的虚拟主机适配器IP相匹配。
-) 在 "tools/op_tools/conf/global.xml "中注册这个配置,添加一行<Region name="dev_gio" conf_file="dev/dev_gio.yaml" region_id="9001"/>。
-) 将 "tools/op_tools/bin/build_conf.py "中的第418行从 env="test "改为 env="dev"。评论或删除第161和195行。
-) 将 "tools/op_tools/bin/server_parse.py "中的第109行从 env="test "改为 env="dev"
-) 评论 ready_deploy_dev.py 中的第 #173 行。添加新的第153行,参数auth_plugin='mysql_native_password'。增加第#160行,内容为mycursor.execute("CREATE DATABASE IF NOT EXISTS db_hk4e_deploy_config_{0}".format( suffix_name)
-) 在VBox中,安装Ubuntu服务器22.04(你可以使用任何发行版,只需进行调整)。
接下来的步骤是在虚拟机内进行的
-) 将时区设置为UTC。
-) 为你创建的共享文件夹添加一个/etc/fstab挂载点。挂载它。
-) 通过运行 "dpkg-reconfigure dash "将bash设置为全系统默认的shell。
-) 安装openssh-server,并将其配置为用户的无密码登录(用一个密钥文件)。你也可以在每次脚本需要密码的时候直接输入密码,但这需要大量的输入工作......
-) 安装git和golang
-) 安装mysql-server、libmysqlclient-dev、redis和gawk。
-) 设置MySQL:用户 "work",密码 "GenshinImpactOffline2022",认证方法 "mysql_native_password"。给予该用户所有权限。
-) 设置Redis:默认密码 "GenshinImpactOffline2022"。 增加数据库数量到20个。
-) 安装 python2.7 和 python2.7-dev,建立一个符号链接 /usr/bin/python2。
-) 安装python-pip并使用pip2安装request、Jinja2、enum和pyyaml软件包。
-) 安装一个非常旧的mysql-connector-python包:
You must be registered to see links
("sudo python2 setup.py install "就可以了)。
-) 将
You must be registered to see links
克隆到 "tools/schemalex_tool "目录。
-) 用 "make build "构建它。把二进制文件放到schemalex目录下的 "bin "子文件夹中,如果有必要,可以创建。
-) 现在关闭虚拟机的互联网连接。你可以 "拔掉 "虚拟电缆或关闭你的虚拟机,并完全删除/禁用NAT以太网适配器。只让虚拟主机适配器 "插上"。
-) 以 "python2 ready_deploy_dev.py dev_gio "运行 ready_deploy_dev.py。现在你已经准备好了空的MySQL数据库。
-) 运行 "bash tools/op_tools/bin/deploy_dev dev_gio config"
-) 运行 "bash tools/op_tools/bin/deploy_dev dev_gio reload"。
-) 现在你应该已经准备好了配置和数据。把提供的version.txt文件复制到生成的数据目录中。创建一个新的空的 "res "目录。
-) 进入 "tools/op_tools/bin "目录,运行 "python2 update_sql.py dev_gio"。
-) 到 "tools/op_tools/sql_temp/0.1 "目录,运行 "sudo mysql db_hk4e_deploy_config_gio < hk4e_deploy_config.sql"。
-) 现在你有一个数据库结构,有所有需要的空表。
-) 看看附件中的SQL脚本 "populate_tables.sql",根据你的需要修改客户机版本、UID、RSA密钥和所有URL。通过运行 "sudo mysql < populate_tables.sql "应用脚本。
-) 将所有的二进制文件复制到它们各自的目录中。
-) 运行 "nodeserver -i 9001.3.1.1"
-) 运行 "gateserver -i 9001.1.1.1"。
-) 运行 "dbgate -i 9001.4.1.1"。
-) 运行 "dispatch -i 9001.5.1.1"。
-) 运行 "gameserver -i 9001.2.1.1"。
-) 启动你的SDK服务器仿真器。
现在你应该可以连接和游戏了。享受吧!
===================================================================
You can check the original text by yourselves with the translation software.