# 2.5D 卡通城市放置系统 - 项目需求文档 (PRD)

> by: hexianWeb

## 1. 项目概述与目标

**项目名称:** 2.5D 卡通城市放置系统

**项目目标:**
- 利用 Three.js 构建一个卡通风格的2.5D城市模拟经营游戏
- 玩家通过放置、移动、删除建筑和道路，经营并扩展属于自己的城市
- 通过建筑产出和资源管理，不断扩张地皮，追求更高的城市规模
- 提供排行榜功能，激励玩家竞争和持续优化城市布局

## 2. 目标受众

- 喜欢模拟经营、城市建设类游戏的玩家
- 对 WebGL、Three.js 创意网页游戏感兴趣的用户
- 追求轻度策略与休闲体验的用户
- **主要面向桌面端用户，同时兼容移动端**

## 3. 核心功能与特性

### 3.1 基础玩法与城市建设 【大部分已完成】
- **初始城市与地皮：** 玩家初始拥有16x16格子的空地和一定初始资金【已完成】
- **建筑系统：** 可放置、移动、删除各类建筑【已完成】
- **建筑分类（RCI & ESG）**：已实现主要分类和部分建筑【已完成】
  - **RCI 类**：
    - 住宅（Residential）：提升人口/基础产出
    - 商业（Commercial）：提升金币产出
    - 工业（Industrial）：提升工业产出
  - **ESG 类**：
    - 环境（Environment）：提升城市美观度、生态
    - 社会（Social）：提升居民幸福度、教育、医疗等
    - 治理（Governance）：提升城市管理、政策效率
- **建筑分类示例：**
  - 住宅：住宅楼、公寓等
  - 商业：商店、超市等
  - 工业：工厂、发电站等
  - 环境：公园、绿地等
  - 社会：学校、医院等
  - 治理：市政厅、警察局等
- **道路系统：** 可放置道路，连接建筑，影响城市布局和美观【已完成】
- **建筑产出：** 建筑每秒自动产出金币，金币可用于建造新建筑和扩地【已完成】
- **地皮扩展：** 玩家可花费金币扩展地皮（如3000金币扩展到18x18等），扩展时有概率获得额外资源【已完成】

### 3.2 资源与经济系统 【已完成】
- **金币资源：** 主要资源为金币，来源于建筑产出和地皮扩展奖励【已完成】
- **资源收集：** 金币自动累积，无离线收益【已完成】
- **无数据同步：** 所有数据本地存储，简化游戏规模【已完成】

### 3.3 排行榜与成就【部分已完成】
- **排行榜：** 按当前地皮规模进行本地或简单后端排行【部分已完成】
- **成就系统（可选）：** 达成特定目标可获得成就徽章【未完成】

### 3.4 交互与操作 【大部分已完成】
- **放置/移动/删除建筑与道路：** 拖拽或点击操作，直观易用【已完成】
- **UI 提示与反馈：** 资金不足、扩地条件、建筑产出等有清晰提示【部分已完成】
- **新手指引：** 游戏内置新手引导，帮助玩家快速上手【未完成】
- **响应式设计：** 适配桌面端为主，兼容移动端【桌面端已完成，移动端进行中】

### 3.5 城镇居民系统（新增）【未完成】
- **居民信息展示：**
  - 每个建筑拥有"居民人数"与"状态"属性
  - 玩家点击建筑时，弹出信息面板，显示该建筑当前居民人数及状态（如：正常、拥挤、空置等）
- **居民人数机制：**
  - 住宅类建筑：居民人数随时间自动增长，达到上限后状态变为"拥挤"
  - 商业/公共建筑：居民人数与城市规模或住宅数量相关
- **状态影响：**
  - "拥挤"状态下，建筑产出下降或触发提示
  - "空置"状态下，建筑不产出金币
  - "正常"状态下，建筑产出正常
- **纯文字表现：**
  - 居民系统仅以文字形式展示，无3D角色模型

#### 信息面板示例：
- 建筑名称：高级住宅
- 居民人数：12/15
- 状态：正常
- 说明：居民人数已接近上限，建议扩建或新建住宅

## 4. UI/UX 设计原则【部分已完成】

- **卡通2.5D风格，色彩明快**【已完成】
- **操作直观，反馈及时**【部分已完成】
- **桌面优先，兼容移动**【桌面端已完成，移动端进行中】
- **界面简洁，突出城市布局与成长感**【已完成】
- **新手友好，指引清晰**【未完成】

## 5. 技术选型与考虑【已完成】

- **核心库：** Three.js【已完成】
- **前端框架：** 原生 JS 或 Vue/React（根据团队熟悉度选择）【Vue 已完成】
- **样式：** CSS（含媒体查询，适配不同屏幕）【已完成】
- **排行榜/数据存储：** 本地存储或简单后端（如 Superbase，仅用于排行榜）【本地存储已完成】
- **资源：** 卡通风格3D模型与贴图【已完成】

## 6. 开发阶段/里程碑

1. **阶段一：** 基础场景与地皮、建筑/道路放置、金币产出原型【已完成】
2. **阶段二：** 建筑移动/删除、地皮扩展、金币经济系统完善【已完成】
3. **阶段三：** 排行榜接入、地皮扩展奖励【部分已完成】
4. **阶段四：** 响应式UI与桌面端优化【进行中】
5. **阶段五：** 新手指引、内容丰富（更多建筑、装饰等）、测试与优化【未完成】

## 7. 未来扩展可能性

- 更多资源类型（如木材、电力等）
- 建筑升级与特殊功能
- NPC 互动、任务系统
- 城市美观度评分、成就系统
- 社交互动（访问他人城市、点赞等）
