by: hexianWeb
项目名称: 2.5D 卡通城市放置系统
项目目标:
- 利用 Three.js 构建一个卡通风格的2.5D城市模拟经营游戏
- 玩家通过放置、移动、删除建筑和道路,经营并扩展属于自己的城市
- 通过建筑产出和资源管理,不断扩张地皮,追求更高的城市规模
- 提供排行榜功能,激励玩家竞争和持续优化城市布局
- 喜欢模拟经营、城市建设类游戏的玩家
- 对 WebGL、Three.js 创意网页游戏感兴趣的用户
- 追求轻度策略与休闲体验的用户
- 主要面向桌面端用户,同时兼容移动端
- 初始城市与地皮: 玩家初始拥有16x16格子的空地和一定初始资金【已完成】
- 建筑系统: 可放置、移动、删除各类建筑【已完成】
- 建筑分类(RCI & ESG):已实现主要分类和部分建筑【已完成】
- RCI 类:
- 住宅(Residential):提升人口/基础产出
- 商业(Commercial):提升金币产出
- 工业(Industrial):提升工业产出
- ESG 类:
- 环境(Environment):提升城市美观度、生态
- 社会(Social):提升居民幸福度、教育、医疗等
- 治理(Governance):提升城市管理、政策效率
- RCI 类:
- 建筑分类示例:
- 住宅:住宅楼、公寓等
- 商业:商店、超市等
- 工业:工厂、发电站等
- 环境:公园、绿地等
- 社会:学校、医院等
- 治理:市政厅、警察局等
- 道路系统: 可放置道路,连接建筑,影响城市布局和美观【已完成】
- 建筑产出: 建筑每秒自动产出金币,金币可用于建造新建筑和扩地【已完成】
- 地皮扩展: 玩家可花费金币扩展地皮(如3000金币扩展到18x18等),扩展时有概率获得额外资源【已完成】
- 金币资源: 主要资源为金币,来源于建筑产出和地皮扩展奖励【已完成】
- 资源收集: 金币自动累积,无离线收益【已完成】
- 无数据同步: 所有数据本地存储,简化游戏规模【已完成】
- 排行榜: 按当前地皮规模进行本地或简单后端排行【部分已完成】
- 成就系统(可选): 达成特定目标可获得成就徽章【未完成】
- 放置/移动/删除建筑与道路: 拖拽或点击操作,直观易用【已完成】
- UI 提示与反馈: 资金不足、扩地条件、建筑产出等有清晰提示【部分已完成】
- 新手指引: 游戏内置新手引导,帮助玩家快速上手【未完成】
- 响应式设计: 适配桌面端为主,兼容移动端【桌面端已完成,移动端进行中】
- 居民信息展示:
- 每个建筑拥有"居民人数"与"状态"属性
- 玩家点击建筑时,弹出信息面板,显示该建筑当前居民人数及状态(如:正常、拥挤、空置等)
- 居民人数机制:
- 住宅类建筑:居民人数随时间自动增长,达到上限后状态变为"拥挤"
- 商业/公共建筑:居民人数与城市规模或住宅数量相关
- 状态影响:
- "拥挤"状态下,建筑产出下降或触发提示
- "空置"状态下,建筑不产出金币
- "正常"状态下,建筑产出正常
- 纯文字表现:
- 居民系统仅以文字形式展示,无3D角色模型
- 建筑名称:高级住宅
- 居民人数:12/15
- 状态:正常
- 说明:居民人数已接近上限,建议扩建或新建住宅
- 卡通2.5D风格,色彩明快【已完成】
- 操作直观,反馈及时【部分已完成】
- 桌面优先,兼容移动【桌面端已完成,移动端进行中】
- 界面简洁,突出城市布局与成长感【已完成】
- 新手友好,指引清晰【未完成】
- 核心库: Three.js【已完成】
- 前端框架: 原生 JS 或 Vue/React(根据团队熟悉度选择)【Vue 已完成】
- 样式: CSS(含媒体查询,适配不同屏幕)【已完成】
- 排行榜/数据存储: 本地存储或简单后端(如 Superbase,仅用于排行榜)【本地存储已完成】
- 资源: 卡通风格3D模型与贴图【已完成】
- 阶段一: 基础场景与地皮、建筑/道路放置、金币产出原型【已完成】
- 阶段二: 建筑移动/删除、地皮扩展、金币经济系统完善【已完成】
- 阶段三: 排行榜接入、地皮扩展奖励【部分已完成】
- 阶段四: 响应式UI与桌面端优化【进行中】
- 阶段五: 新手指引、内容丰富(更多建筑、装饰等)、测试与优化【未完成】
- 更多资源类型(如木材、电力等)
- 建筑升级与特殊功能
- NPC 互动、任务系统
- 城市美观度评分、成就系统
- 社交互动(访问他人城市、点赞等)