首页 › games › 《Isleward》一个人把MMO开进浏览器

《Isleward》一个人把MMO开进浏览器

仓库档案

Isleward,仓库地址 Isleward/isleward(早年挂在作者个人账号 BigBadWaffle 名下,后来迁到同名组织下继续维护),一套全栈 JavaScript 写成的开源网页 MMORPG。作者是一个人,动工于 2016 年前后,这些年一直在更新,官方在线服一直开着,浏览器输入网址就能进世界(以上据仓库页面)。Star 数、License 等具体数据以仓库页面标注为准,此处不引。

在“开源游戏仓库”这个物种里,小游戏一抓一大把:贪吃蛇、2048、扫雷……但由一个人长期运营、多人在线、还活着的网页 MMO,稀有得多。MMO 是出了名的“团队游戏”——服务器、数据库、网络同步、内容管线、运营客服,哪一样都不是省油灯。这个仓库的价值不在“又一个能玩的 demo”,而在它示范了一件事:一个人,也能把一座岛开进浏览器,而且一开好多年。

这游戏是什么

一句话:一个像素风的 2D 多人在线 RPG,打开网页就玩,打怪、捡装备、做任务、下副本、跟陌生人聊天组队,角色数据存在服务器上,明天回来你的小人还在。

它的气质更像“把roguelike的掉落爽感,装进一个常驻世界”。玩家分职业、加属性点、学法术,怪物按区域分布,装备掉落带稀有度颜色,白绿蓝紫橙的配色一闪,心跳就快半拍。银行仓库、玩家交易、组队副本这些 MMO 标配一样不少——只不过这一切都发生在浏览器标签页里,没有任何安装步骤。

核心循环长这样:

flowchart TD
    A[打开网页 登录小岛] --> B[打怪 / 做任务]
    B --> C[随机掉落 按稀有度着色]
    C --> D{出好货了吗?}
    D -- 出了 --> E[变强 存仓库 向路人炫耀]
    D -- 没出 --> B
    E --> F[组队副本 / 玩家交易 / 聊天]
    F --> G[作者持续添新岛新任务]
    G --> H[明天再来 世界还在长]
    H --> B

注意这个循环里的第 7 步——“作者持续更新”被焊死在了循环里。这是它和一次性小游戏最大的区别:小游戏的循环靠机制自转,MMO 的循环靠“世界在变”。作者把地图编辑器直接内建在游戏里,内容生产工具就是游戏本身的一部分,所以他一个人也能常年往海面上添新岛。这是全仓库最值得盯的设计。

为什么上头

拆开看,它的每一层钩子都对应一种被验证过的人性:

1. 随机掉落:赌徒的多巴胺。 掉落表+稀有度,是 roguelike 和暗黑系反复验证过的最强组合。玩家杀第十只螃蟹时掉出一件蓝色装备,大脑给出的奖励信号和拉老虎机中了一个小奖完全同构——关键是“下一个可能更好”,这正是“再来一只”的全部动力。Isleward 把这套机制做得很克制:装备词条不多,但颜色分级足够刺激,捡起来那一瞬间有明确的爽点。

2. 持久世界:登录变成看老朋友。 一次性游戏下线即终局,而 Isleward 的角色、仓库、等级都躺在服务器里。第二天打开网页,你的小人站在原地,可能还多了几个新玩家在城里跑来跑去。这种“世界没有因为我下线而暂停”的感觉,是单机游戏给不了的留存力。网页 MMO 的留存靠的不是内容量,是存在感。

3. 同屏陌生人:天然的社交攀比。 你穿一件橙装在城里走,路过的人看得见。没有排行榜,NPC 不会夸你,但屏幕上晃动的其他小人本身就是参照系。多人在线把“收集欲”和“攀比欲”打包在一起——装备好一档,社交存在感就高一档。

4. 打开即玩:把进入成本压到零。 没有下载、没有安装、没有注册门槛(据仓库页面,网页直接玩),一个标签页就是一整个世界。这个“零摩擦入口”对碎片时间玩家极其致命:本想“就看一眼”,结果一行了。对开发者来说这也是宝贵的启示——网页游戏的上头,一半是游戏设计,一半是“随时能玩”这个分发形态。

5. 世界在长:给老玩家一个回来的理由。 单机游戏通关即弃,而 Isleward 隔三差五多出一块新陆地、新任务线。对独居开发者来说,“持续供内容”通常是最大的运营瓶颈,而这个仓库用内置编辑器把瓶颈磨薄了——这一点下一节细说。

技术拆解

这是全仓库对独立开发者最有抄头的部分。它的所有技术选型都指向同一个原则:一个人维护得动。

全栈一门语言。 Node.js 服务端 + 浏览器端 JS 客户端,前后端同构,数据结构、工具函数甚至校验逻辑都能两端复用。对个人项目来说,“只装一种语言的工具链”省下的心智成本是实打实的。

SQLite 做持久化。 整个世界的账号、角色、仓库、进度,落在单个 SQLite 文件里。不碰 MySQL 集群、不碰 Redis、不碰 ORM 迷宫——备份就是复制一个文件,部署就是把文件带走。对于并发量在几百人量级的网页游戏,SQLite 的性能绰绰有余,而它换来的运维简单性是个人开发者最需要的。想做出下一个“一个人的 MMO”,这一条几乎是标准答案。

WebSocket 实时同步。 位置移动、战斗结算、聊天、掉落广播,全走一条长连接。有意思的是它的同步粒度做得很“省”:基于瓦片的 2D 世界,只需要广播视野范围内的实体,服务端按区域切图管理状态。这套“视野同步”写法直接照搬就能用在任何 2D 联机小游戏上,是最值得读源码的模块之一。

模块化架构。 仓库里服务端和客户端都按模块切分,银行、交易、任务、副本这类功能各自成块,像插件一样挂进主循环。对想复用代码的人来说,这意味着你可以只抽“背包+掉落”模块,不用背上整个世界。对想学架构的人来说,它示范了单人项目如何避免长成一团面条:不是靠文档和纪律,是靠“每个功能都是一个可插拔模块”这条硬规矩。

编辑器内建。 传统游戏工作室的内容管线是“美术出图→策划配表→程序打包→发版”,一个人根本跑不动这个流程。Isleward 的解法是把地图编辑器做进游戏客户端,作者直接在自己世界里铺地形、摆怪、放任务。这条经验可以泛化成一句口诀:独居开发者要把“内容生产工具”当成游戏功能来开发,而不是当成团队才配拥有的内部设施。

可直接复用的组件清单: WebSocket 视野同步、SQLite 存档层、掉落稀有度表、网格背包 UI、内置地图编辑器、模块化服务端骨架。以上任何一个单拎出来,都够你开一个周末项目。

变现观察

先说仓库本身:据仓库页面,这是一个完全免费、没有明显付费墙或内购入口的项目,代码开源,官方服免费玩,顶多有捐赠渠道。它更像作者的“作品集旗舰”——十年之约式的手艺证明,直接收入未必多,但它带来的行业声誉、社区、可能的职业机会,是典型的“开源攒人脉”路径。

再看同类有没有跑通的钱——网页 MMO 这条赛道,恰恰是个人开发者跑通过真金白银的:

对 Isleward 这种开源结构,其实还藏着一个被低估的玩法:代码开源≠不能赚钱。服务器代码在你手里,你完全可以自建一个私服,靠外观、仓库扩容、会员标识这类“不吃平衡性的付费点”回收成本——只要守住不碰原作官方服的玩家,这条路在开源游戏社区是体面且常见的。

变现方式排序建议:Steam 断制(拿到正反馈最快)> Patreon 更新订阅(长线)> 网页广告(量级太小,别指望)。

给我的灵感

点子一:两周做一个“迷你 MMO”。 砍掉一切:一张 32×32 的小地图、三种怪、一套白绿蓝三档掉落、聊天和组队。技术栈照抄 Isleward:Node.js + WebSocket + SQLite,客户端一个 Canvas。第一周搭骨架(登录、移动、同步、存档),第二周填内容(地图、怪、掉落表)。MVP 总工作量对熟手就是两周,变现走 itch.io 免费+打赏试水,数据好看再上 Steam。

点子二:换题材——把“常驻世界”搬进中文语境。 同一套骨架,皮可以整个换掉:修仙门派的浏览器 MMO(灵石掉落=装备稀有度,洞府=银行仓库,宗门任务=副本线),或者办公室题材(摸鱼大厦里打工怪、捡绩效装备)。MMO 框架是通用的,题材才是你 differentiation 的地方。注意别做成放置游戏——钩子在“同屏有活人”,不在挂机。变现同上,且中文题材在爱发电/公众号引流这条路走得通。

点子三:加一层钩子——把“更新”做成节目。 学它最聪明的那部分:编辑器内建+持续供内容。你可以更进一步,把每周内容更新固定成一个仪式——“每周五晚八点,新大陆开荒,全服集合”。运营动作本身变成游戏事件,玩家为“见证更新”而登录,这是一个人能做到的、大公司反而做不了的亲密感。成本几乎为零,全靠自律,而自律恰好就是你最大的护城河。

上手

读它的源码,建议按这个顺序:先看服务端启动和 SQLite 层,再看 WebSocket 同步,最后啃模块系统——走完这一趟,你对“一个人怎么撑起一个在线世界”就不会再有任何神秘感。剩下的,就轮到你在浏览器里开自己的岛了。

[!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学通信知识星球海报-扫码加入