跳转至

登录器配置与使用

本文档详细介绍游戏登录器(Launcher)的配置、编译及使用说明。

简介

Launcher 是基于 .NET Framework 4.8 开发的 Windows 桌面应用程序,主要负责: - 账号注册与登录 - 服务器列表获取与选择 - 游戏客户端自动更新 - 启动游戏主程序(UE4 客户端)

开发环境

  • IDE: Visual Studio 2022
  • 框架: .NET Framework 4.8
  • UI 库: SunnyUI, AlphaForm
  • 项目路径: D:\CQYH\Mir3D_Code_GitHub\Launcher

核心配置

登录器的主要配置目前通过代码中的静态类进行管理,部分支持外部文件配置。

1. 服务器连接配置

主要配置位于 游戏登录器/自定义类.cs游戏登录器/网络类/网络通信.cs

硬编码方式(默认):自定义类.cs 中修改:

public static string 账号服务器IP => "127.0.0.1"; // 修改为你的服务器公网IP
public static ushort 账号服务器端口 => 8001;    // 默认端口

外部文件方式(可选): 登录器启动时会尝试读取根目录下的 updateConf.txt 文件(需取消代码注释启用): 文件格式:IP:端口 例如:127.0.0.1:8001

2. 客户端路径配置

登录器默认假定以下目录结构:

登录器.exe
├── Binaries/
│   ├── Win32/
│   │   └── MMOGame-Win32-Shipping.exe
│   └── Win64/
│       └── MMOGame-Win64-Shipping.exe
├── MMOGame/
│   └── Config/
│       └── 00000.pak (配置文件)
└── Temp/ (缓存目录)

相关代码位置: - 自定义类.启动文件 - 自定义类.X64启动文件

3. 版本验证

登录器包含强制版本检查逻辑,确保客户端与服务器版本一致。

检查逻辑: - 读取 Binaries\Win64\MMOGame-Win64-Shipping.exe 的文件版本信息。 - 要求版本必须为 1.0.4.24。 - 如果版本不匹配,会提示下载最新客户端。

修改位置: 游戏登录器/登录界面.cs 中的 Main 或构造函数部分:

FileVersionInfo fv = FileVersionInfo.GetVersionInfo(自定义类.X64启动文件);
var versionArr = fv.FileVersion.Split('.');
// 修改此处的版本号判断逻辑
if (versionArr.Length != 4 || versionArr[0] != "1" || ...)

编译指南

  1. 使用 Visual Studio 打开 Launcher/Launcher.csproj
  2. 确保已安装 NuGet 包:SunnyUI, Costura.Fody (用于将 DLL 打包进 EXE)。
  3. 选择 Release 模式和 x86 平台(通常登录器为 32 位以兼容更多系统)。
  4. 点击“生成解决方案”。
  5. 生成的 游戏登录器.exe 位于 bin/x86/Release 目录下。

常见问题

Q: 启动提示“找不到启动程序”?

A: 请确保登录器放在游戏客户端的根目录下,并且 Binaries 文件夹结构完整。

Q: 连接服务器失败?

A: 1. 检查 自定义类.cs 中的 IP 是否指向正确的账号服务器地址。 2. 检查服务器防火墙是否放行 8001 端口。 3. 检查 updateConf.txt 是否存在且配置正确。

Q: 界面显示不全或错位?

A: 登录器包含“精简模式”适配低分辨率屏幕(宽<1440 或 高<900)。检查 Program.cs 中的分辨率判断逻辑。