This commit is contained in:
ChuXun
2025-10-26 16:37:22 +08:00
parent fba64f7100
commit e287aadd3c
5 changed files with 408 additions and 0 deletions

29
项目愿景与范围.md Normal file
View File

@@ -0,0 +1,29 @@
# **1\. 项目名称**
C++ 在线回合制对战游戏 (Project: OnlineRpg)
# **2\. 项目背景与目标**
本项目旨在为《C++程序设计》课程开发一个结课作业。目标是创建一个C/S架构的、多玩家在线的、控制台界面的回合制对战游戏。
项目**首要目标**是展示对 C++ 核心特性和库的深度理解和综合运用,特别是**多态、模板、STL、链表、网络编程**和**数据库**技术。
项目的**次要目标**是实现一个功能完整、可玩性高的小型游戏原型。
# **3\. 核心功能范围 (MVP)**
为确保在 8 周的开发周期内完成,我们的最小可行产品 (MVP) 范围如下:
1. **用户系统 (C/S \+ DB)**:玩家可以通过客户端注册和登录服务器,数据必须持久化。
2. **游戏大厅 (C/S \+ Chat)**:玩家登录后进入大厅,可以看到大厅的公共聊天信息,并可以发送聊天。
3. **玩家列表与邀请 (C/S)**:玩家在大厅可以查看当前所有在线玩家列表,并向指定玩家发起“对战邀请”。
4. **1v1 战斗 (C/S \+ Polymorphism)**:玩家接受邀请后,双方进入一个独立的战斗房间。战斗在服务器上进行,客户端只负责收发指令和战报。
5. **战斗回放 (Template \+ Linked List)**:战斗结束后,服务器能生成一份该场战斗的完整日志(战报回放)。
# **4\. 关键约束**
1. **开发语言**:必须使用 C++。
2. **运行环境**:必须是**控制台 (Terminal)** 应用,不涉及图形化界面 (GUI)。
3. **技术强制要求**:必须在项目中明确使用(并能在报告中阐述)所有 6 项关键技术。
4. **平台**应能跨平台编译Windows Winsock / Linux POSIX Sockets
5. **依赖**:除 SQLite3 的 C 语言库外,**禁止**使用任何大型第三方网络库或游戏引擎(如 Boost.Asio, libevent, Unreal, Unity 等)。