<!-- title: 《ogame-vue-ts》页游祖师爷，他复刻成了单机 -->
<!-- domain: games -->
<!-- repo: setube/ogame-vue-ts -->

# 《ogame-vue-ts》页游祖师爷，他复刻成了单机

## 仓库档案

- **仓库**：[setube/ogame-vue-ts](https://github.com/setube/ogame-vue-ts)
- **Star**：468 ⭐（Fork 58）
- **语言**：TypeScript 62.2% + Vue 36.9%，另有少量 Go、CSS
- **License**：CC BY-NC 4.0（署名-非商业性使用）
- **作者**：setube，个人开发者，README 提供简中/繁中/英/德/俄/西/韩/日八种语言版本
- **活跃度**：215 次 commit，11 个 release（最新 v1.6.5，2026 年 1 月），最近更新 2026 年 7 月，项目仍在维护
- **在线试玩**：ogame-vue-ts.wenzi.games，同时上架了 TapTap

## 这游戏是什么

先说它抄的是谁：OGame，2002 年德国 Gameforge 上线的浏览器太空策略页游。这游戏是网页游戏的开山鼻祖级产品——在那个连 Flash 游戏都算新鲜的年代，它让几十万人学会了每天定时上线收资源、攒舰队、打邻居。国内当年代理的名字叫《银河帝国》，是一整代中国玩家的页游启蒙。它比现在满大街的“放置+挂机”手游早了差不多十年，建造倒计时、资源仓库、远征开箱这些设计，它全都是原创者。

而 ogame-vue-ts 干的事是：把这套路过的经典玩法，原样搬进 2025 年的前端技术栈，并且做了一个关键改造——**单机化**。原版是全服玩家共用一个宇宙，你的舰队要飞几个小时去打真人；这个版本里，整个银河只属于你，所有数据存在你自己的浏览器里，断网也能玩。

玩法一句话：**升级矿场攒资源 → 用资源点建筑和科技 → 造舰队 → 派任务 → 结算带回战利品 → 滚雪球滚向下一个星球**。

```mermaid
flowchart TD
    A[资源产出<br/>金属/晶体/重氢] --> B[投入两条队列]
    B --> C[建筑升级<br/>挂倒计时]
    B --> D[科技研究<br/>挂倒计时]
    C --> A
    D --> E[解锁更强舰船]
    B --> F[造舰队和防御]
    F --> G[派舰队出发<br/>攻击/远征/运输]
    E --> G
    G --> H[飞行计时+战斗结算]
    H --> I[战利品入仓<br/>残骸场沉淀]
    I --> A
    H --> J[残骸场概率凝出月球]
    J --> K[月球=第二基地<br/>跳跃门+雷达]
    K --> A
```

整个循环里有三台发动机：建筑和科研两台计时器负责“你总有事可等”，舰队任务负责“你总有事可盼”，月球生成负责“你总有一线希望”。单机化之后，原版靠真人互动提供的反馈（打劫、防守、联盟作战），被 NPC 化的银河视图和这套概率机制接住了。

## 为什么上头

这套玩法能横行二十多年，靠的不是画面，是一台调校得极精密的心理发动机。拆开看：

**第一，双计时器结构：等待本身就是钩子。** 建筑队列和科研队列各挂一个倒计时，短则几十秒，长则几个小时。它的毒辣之处在于“错峰”——你上一件事还有二十分钟，下一件事只要三十秒，于是你“顺手点一下”的频率永远比预想高。后来所有手游的建造倒计时、所有放置游戏的“离线收益”，设计原型都在这里。回游戏从来不需要理由，因为队列里永远有一件事“刚好好了”。

**第二，指数成本曲线：节奏自动换挡。** 每升一级，建筑成本大约乘以 1.5 到 2，而产出只线性增长。这意味着前期升一级只要几分钟，爽点密集；到中期一件建筑要几个小时，玩家被迫开始规划“睡前挂什么、起床收什么”。游戏自己会把你从“爽游”切换成“规划游”，不同性格的玩家都能找到自己的档位。这一条成本曲线，就是这个品类二十年不死的骨架。

**第三，开箱时刻：舰队回来就是抽奖。** 派出去的舰队完成任务返航，结算那一刻是整个游戏最强的多巴胺脉冲——攻击打赢了抢别人的资源，远征会随机开出各种事件，残骸场能回收废舰船。OGame 老玩家管远征叫“开盲盒”，它的随机事件表就是 gacha 机制的史前形态。你要做的是押资源进盲盒，等几小时，撕开。

**第四，概率月球：把战斗的尾巴变成彩票。** 这个仓库忠实还原了原版一个经典设计：战斗过后留下的残骸场，有一定概率凝聚成一颗月球。月球是第二基地，能建跳跃门和雷达，是实力的分水岭。妙就妙在它把“每场战斗”都变成了一张彩票——你打完仗看一眼残骸场，没有月球，心里想的是“再来一把”。希望比奖励更留人，这个机制是教科书级的示范。

**第五，战斗模拟器：出手前先算账。** 游戏内置一个战斗模拟器，打之前把双方舰队丢进去跑一遍，看看是赚是亏。这一下把“要不要打”从赌博变成了最优化问题，玩家会自发地研究收益比、研究配舰，策略深度全从这里长出来。上头游戏的共同点就是给玩家留下“可以算”的空间——算得越深，沉得越深。

## 技术拆解

这是一个值得单独开一期讲的前端工程范本，个人项目里少见地干净：

- **技术栈**：Vue 3 Composition API（`<script setup>`）+ TypeScript 严格模式 + Vite（用的还是相当新的 Rolldown-Vite 7.2.5）+ Pinia 状态管理（带持久化插件）+ Vue Router 4 + shadcn-vue + Tailwind CSS v4。每一件都是当前前端社区的主流选型，没有一处炫技的偏门货。
- **零服务器架构**：所有游戏数据加密（AES）后存浏览器本地，没有账号系统、没有后端数据库。这一刀砍掉的不只是开发量，还有服务器费用、运维和合规负担——个人开发者做策略类游戏，这是最该抄的一条架构决策。
- **一套代码，五条分发路径**：Vite 构建出纯 Web 版；Electron 打包桌面端；Capacitor 打包安卓端（仓库里直接有 `android/` 目录）；Go 写了个跨平台 Web 服务端用于自托管；还配了 Dockerfile 一键部署。README 一份，端出五盘菜，这就是 Web 技术做游戏的杠杆。
- **自研 i18n**：没用重型国际化框架，自己实现了多语言方案，游戏内和 README 覆盖八种语言——个人项目的用户面直接扩到一个量级。
- **可直接搬走的零件**：双队列系统（建筑/科研共用一套调度）、AES 加密存档层、回合制战斗结算引擎（武器/护盾/装甲三层结构）、概率生成器（月球）、战斗模拟器。任何一个做放置、策略、经营类游戏的人，这五样都是绕不开的轮子，而且每个都足够小，读源码半天就能吃透。

## 变现观察

这个仓库的变现痕迹很有意思，因为它自己把最直接的那条路焊死了：License 是 CC BY-NC 4.0，**明确禁止商业使用**。原因不言自明——OGame 是 Gameforge 的 IP，粉丝复刻不能拿去卖，作者在 README 里也专门写了免责声明。

那他图什么？仓库页面挂了爱发电（afdian）的赞助链接，游戏上了 TapTap，配了独立域名。这是国内个人开发者很典型的一条路：**游戏免费，靠打赏 + 平台流量 + 作品集背书**。TapTap 上单机放置类的流量分成和广告变现是被验证过的大盘，一个 468 星、维护到今天的完成品，放在任何简历和账号简介里都是硬通货。

往大了看，OGame 本身就是页游变现的祖师爷——它在 2002 年就靠付费的“指挥官”订阅赚钱，是 Pay-to-Win 商业模式的鼻祖之一，活到今天二十多年还在运营。这类游戏的变现上限早就被原版验证过了，问题从来不是“能不能赚”，而是“版权归谁”。

所以对个人开发者的启示是双面的：**复刻经典循环能让你站在巨人肩膀上，但别踩巨人的脚**。拿它学习、练手、涨星、接活，全是正收益；想收钱，就换皮原创（下一节细说）。

## 给我的灵感

**点子一：换皮复刻“等待型策略”循环。** 把 OGame 的骨架原封不动搬进你熟的题材：武侠版——矿场改田庄、科技改闭关、舰队改镖局、打劫改劫镖、残骸场改黑市回收；餐饮版——升级后厨、研发菜谱、派外卖骑手、差评是残骸场。核心 MVP 就是三件套：资源产出 + 双队列 + 一个任务结算，纯前端 + localStorage，两周量级。变现走网页广告 + 小游戏平台，等待型游戏的广告位（加速、翻倍）是天然适配的。

**点子二：专门做“页游祖师爷单机化”。** 这个仓库证明了一件事：把多人页游改成单机，砍掉服务器后开发成本趋近于零，而原版最劝退的部分（养号、被氪金大佬碾压）也跟着消失了。Travian、Neopets 这批同时代经典，大多还没有像样的单机复刻。选一个、抠出核心循环、用简单 NPC 补上互动，一个月量级。变现走爱发电/itch.io 付费下载，IP 自查后换皮即可。

**点子三：把战斗模拟器拆出来单独做。** “出手前先算收益”这个工具属性极强——做成独立的“舰队规划器”，输入双方配置输出胜率和收益期望，再反哺给本体导流。MVP 只是一个战斗公式加参数面板，几天就能上线，工具页挂广告，顺便给游戏本体带量。工具引流、游戏留存、打赏收尾，是个人开发者最稳的三段式。

**附赠一条工程红利**：这个仓库的“Vue 3 + Pinia + Capacitor 一套代码出 Web/桌面/安卓三端”架构，本身就是放置类独立游戏最低成本的发射架，写下一个项目时值得整套沿用。

## 上手

- 仓库：[https://github.com/setube/ogame-vue-ts](https://github.com/setube/ogame-vue-ts)
- 在线试玩：[ogame-vue-ts.wenzi.games](https://ogame-vue-ts.wenzi.games/)
- 本地跑起来：装 Node 18+ 和 pnpm 10+，`git clone` 后 `pnpm install && pnpm dev`，浏览器开 `http://localhost:25121` 即可；想自托管服务端需要 Go 1.21+（可选）
- 一句提醒：CC BY-NC 4.0，别拿去卖钱，拿去学

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
