Files
FunConnect/client/README.md
FunMC 4f8d6211bb refactor: 客户端和服务端分离为独立项目
- server/: 中继服务端 + Web管理面板 + 部署脚本(独立项目)
- client/: Electron桌面客户端(独立项目)
- web/ 和 deploy/ 移入 server/ 目录
- 各项目独立 README.md 和 .gitignore
- 顶层 README 作为项目总览
2026-02-23 07:51:34 +08:00

95 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# FunConnect Client
Minecraft 联机桌面客户端,基于 Electron 构建,支持 Windows / macOS / Linux。
## 功能
- **连接服务器** - 输入中继服务器地址一键连接
- **浏览房间** - 查看所有在线联机房间
- **创建房间** - 将本地 MC 服务器共享给好友
- **加入房间** - 输入房间号,自动建立本地代理
- **设置持久化** - 记住服务器地址、玩家名、端口等偏好
- **系统托盘** - 最小化到托盘,后台运行
- **自动重连** - 连接断开后自动尝试重新连接
## 快速开始
### 安装依赖
```bash
npm install
```
> 如果 Electron 下载慢,使用国内镜像:
> ```bash
> ELECTRON_MIRROR=https://npmmirror.com/mirrors/electron/ npm install
> ```
### 开发模式
```bash
npm run dev
```
### 打包发布
```bash
npm run dist
# 输出到 release/ 目录
```
## 使用方法
### 房主(创建房间)
1. 启动客户端,输入中继服务器地址并连接
2. 进入「创建房间」页面
3. 填写房间名称、本地MC端口默认25565、游戏版本等信息
4. 点击「创建房间」,获得房间号
5. 将房间号分享给好友
### 玩家(加入房间)
1. 启动客户端,输入中继服务器地址并连接
2. 进入「加入房间」或在「房间列表」中点击加入
3. 输入房间号和中继服务器地址
4. 连接成功后,在 Minecraft 中添加服务器 `127.0.0.1:25566`
5. 开始联机!
## 项目结构
```
client/
├── src/main/
│ ├── index.ts # Electron 主进程
│ ├── preload.ts # 预加载脚本IPC桥接
│ ├── api-client.ts # REST API 客户端
│ ├── relay-client.ts # TCP 中继连接
│ └── local-proxy.ts # 本地代理服务器
├── renderer/
│ ├── index.html # 客户端界面
│ ├── style.css # 样式
│ └── app.js # 交互逻辑
├── package.json
└── tsconfig.json
```
## 配置说明
设置页面中可配置:
| 设置项 | 默认值 | 说明 |
|--------|--------|------|
| 玩家名称 | Player | 在房间中显示的名字 |
| 本地端口 | 25566 | MC连接的本地代理端口 |
| 自动重连 | 开启 | 连接断开后自动重连 |
| 最小化到托盘 | 开启 | 关闭窗口时隐藏到系统托盘 |
## 技术栈
- **Electron 28** - 跨平台桌面框架
- **TypeScript** - 主进程开发
- **electron-store** - 设置持久化
- **Axios** - HTTP 请求
- **electron-builder** - 打包发布