Files
ogame-vue-ts/README.zh-CN.md
谦君 705ee8c3db feat: 初始化项目结构与核心功能
引入项目基础目录结构,包含多语言支持、主要页面与组件、核心游戏逻辑、UI 组件库、加密与本地持久化、自动化 Docker 构建流程、GitHub issue 模板(中英文)、README(中英文)、LICENSE 及开发配置文件。实现 OGame 单机版主要功能模块,为后续开发和扩展奠定基础。
2025-12-11 14:49:25 +08:00

9.1 KiB

OGame Vue TS Logo

OGame Vue TS

一个基于 Vue 3 和 TypeScript 构建的现代化 OGame 太空策略游戏 Web 实现。

License: CC BY-NC 4.0 Vue 3 TypeScript Vite

English | 简体中文

📖 关于项目

OGame Vue TS 是一款受经典 OGame 游戏启发的单机版、基于浏览器的太空策略游戏。在银河系中建立你的帝国,研究科技,建造舰船,参与史诗般的太空战斗。本项目采用现代 Web 技术构建,完全在浏览器中运行,提供流畅且响应迅速的游戏体验,所有数据都存储在本地。

核心特性

  • 🌍 多语言支持 - 支持 6 种语言:英语、简体中文、繁体中文、德语、俄语和韩语
  • 🏗️ 建筑管理 - 在行星和月球上建造和升级各种建筑
  • 🔬 科技研究 - 解锁先进科技来增强你的帝国
  • 🚀 舰队管理 - 建造舰船、派遣任务、参与战术太空战斗
  • 🛡️ 防御系统 - 部署防御设施来保护你的殖民地
  • 👨‍✈️ 军官系统 - 招募军官以获得战略优势
  • ⚔️ 战斗模拟器 - 在投入资源前测试战斗场景
  • 🌌 银河视图 - 探索宇宙并与其他星球互动
  • 💾 本地数据持久化 - 所有游戏数据都经过加密并存储在浏览器本地
  • 🌓 深色/浅色主题 - 选择你喜欢的视觉主题
  • 📊 队列管理 - 管理多个建造和研究队列
  • 🌙 月球生成 - 基于概率的月球从残骸场生成机制

🛠️ 技术栈

🚀 快速开始

环境要求

  • Node.js (推荐 18 或更高版本)
  • pnpm (版本 10.13.1 或更高)

安装

# 克隆仓库
git clone https://github.com/setube/ogame-vue-ts.git

# 进入项目目录
cd ogame-vue-ts

# 安装依赖
pnpm install

开发

# 启动开发服务器 (运行在端口 25121)
pnpm dev

在浏览器中访问 http://localhost:25121

生产构建

# 构建应用
pnpm build

# 预览生产构建
pnpm preview

📁 项目结构

ogame-vue-ts/
├── public/               # 静态资源
│   └── logo.svg         # 应用图标
├── src/
│   ├── assets/          # 动态资源
│   ├── components/      # Vue 组件
│   │   └── ui/         # shadcn-vue UI 组件
│   ├── composables/    # Vue 组合式函数
│   ├── config/         # 游戏配置
│   ├── lib/            # 工具库
│   ├── locales/        # 国际化翻译文件
│   ├── logic/          # 游戏逻辑模块
│   │   ├── buildingLogic.ts      # 建筑逻辑
│   │   ├── buildingValidation.ts # 建筑验证
│   │   ├── fleetLogic.ts         # 舰队逻辑
│   │   ├── moonLogic.ts          # 月球逻辑
│   │   ├── moonValidation.ts     # 月球验证
│   │   ├── researchLogic.ts      # 研究逻辑
│   │   ├── researchValidation.ts # 研究验证
│   │   ├── shipLogic.ts          # 舰船逻辑
│   │   └── shipValidation.ts     # 舰船验证
│   ├── router/         # Vue Router 路由配置
│   ├── stores/         # Pinia 状态存储
│   ├── types/          # TypeScript 类型定义
│   ├── utils/          # 工具函数
│   ├── views/          # 页面组件
│   │   ├── OverviewView.vue        # 概览页面
│   │   ├── BuildingsView.vue       # 建筑页面
│   │   ├── ResearchView.vue        # 研究页面
│   │   ├── ShipyardView.vue        # 船坞页面
│   │   ├── DefenseView.vue         # 防御页面
│   │   ├── FleetView.vue           # 舰队页面
│   │   ├── GalaxyView.vue          # 银河页面
│   │   ├── OfficersView.vue        # 军官页面
│   │   ├── BattleSimulatorView.vue # 战斗模拟器
│   │   ├── MessagesView.vue        # 消息页面
│   │   └── SettingsView.vue        # 设置页面
│   ├── App.vue         # 根组件
│   ├── main.ts         # 应用入口
│   └── style.css       # 全局样式
├── .github/
│   └── ISSUE_TEMPLATE/ # GitHub issue 模板
├── CLAUDE.md           # AI 助手说明文档
├── LICENSE             # CC BY-NC 4.0 许可证
├── package.json        # 项目依赖
├── tsconfig.json       # TypeScript 配置
└── vite.config.ts      # Vite 配置

🌐 支持的语言

  • 🇺🇸 English (英语)
  • 🇨🇳 简体中文
  • 🇹🇼 繁體中文
  • 🇩🇪 Deutsch (德语)
  • 🇷🇺 Русский (俄语)
  • 🇰🇷 한국어 (韩语)

🎮 游戏特性

资源管理

  • 金属 - 主要建筑材料
  • 晶体 - 高级科技组件
  • 重氢 - 燃料和研究资源
  • 暗物质 - 高级资源
  • 能量 - 为设施供电

建筑类型

  • 资源建筑 - 金属矿、晶体矿、重氢合成器、太阳能发电厂
  • 设施建筑 - 机器人工厂、船坞、研究实验室、仓储设施
  • 特殊建筑 - 纳米机器人工厂、行星改造器等

科技系统

  • 能量技术 - 提高能量效率
  • 激光技术 - 增强武器系统
  • 离子技术 - 高级推进和武器
  • 超空间技术 - 实现更快的旅行
  • 等离子技术 - 终极武器系统
  • 还有更多...

舰船类别

  • 民用舰船 - 小型/大型货船、殖民船、回收船
  • 战斗舰船 - 轻型/重型战斗机、巡洋舰、战列舰、轰炸机
  • 特殊舰船 - 死星、战列巡洋舰、毁灭者

防御系统

  • 火箭发射器、轻型/重型激光炮、高斯炮
  • 离子炮、等离子炮塔
  • 小型/大型防护罩

🔒 数据安全

所有游戏数据在存储到浏览器的本地存储之前都会使用 AES 加密自动加密。您的游戏进度是安全且私密的。

🎨 自定义

应用支持通过 src/style.css 中定义的 Tailwind CSS 变量进行完整的主题自定义。您可以轻松地在浅色和深色模式之间切换。

🤝 贡献

欢迎贡献!请随时提交 issue 或 pull request。

Issue 模板

我们提供以下中英文 issue 模板:

  • 🐛 BUG反馈 / Bug Report
  • 功能请求 / Feature Request
  • 📚 文档改进 / Documentation Improvement
  • 💡 反馈建议 / Feedback & Suggestion

📄 许可证

本作品采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。

您可以自由地:

  • 共享 — 在任何媒介以任何形式复制、发行本作品
  • 演绎 — 修改、转换或以本作品为基础进行创作

惟须遵守下列条件:

  • 署名 — 您必须给出适当的署名,提供指向本许可协议的链接,同时标明是否对原始作品作了修改
  • 非商业性使用 — 您不得将本作品用于商业目的

原作者: Jun Qian (谦君)

👨‍💻 作者

💬 社区

中文社区

  • QQ 群: 920930589

国际社区

🙏 致谢

本项目受原版 OGame 浏览器游戏启发。所有游戏机制和设计元素都是为了教育和娱乐目的而重新实现的。

⚠️ 免责声明

本项目与 Gameforge AG 或官方 OGame 游戏没有任何关联、认可或联系。这是一个独立的粉丝项目,创建目的仅用于教育和个人娱乐。


❤️ 制作,作者:谦君
© 2025 - 保留所有权利(除 CC BY-NC 4.0 许可证授予的权利外)