| 项目 | 信息 |
|---|---|
| 仓库 | Shirakumo/kandria(GitHub 为归档镜像,主仓库 2025 年 8 月迁至 Codeberg) |
| ⭐ Star | 696 / Fork 32 / 5,558 次提交(2026-10-05 抓取) |
| 语言 | Common Lisp——整个仓库没有一个 .c 或 .js 游戏文件,全是 .lisp |
| License | Zlib |
| 作者 | Shirakumo Games(瑞士苏黎世,全远程、公开宣称“绝不 crunch”的小作坊);核心只有一人:Yukari Hafner(网名 Shinmera),制作人/程序/设计/美术四个头衔挂在同一人身上,外加美术 Blob、编剧 Tim White、作曲 Mikel Dale、音效 Cai Jones 四位合作者,共 5 人 |
| 形态 | 完整商业游戏,2023 年 1 月 11 日上 Steam、itch.io 和官网直销,仓库里挂着免费的 demo-releases |
| 变现痕迹 | 密集——Steam 付费买断、多渠道直销、原声带单独卖、Kickstarter 众筹(仓库里躺着一个 process-backers.lisp 专门处理众筹支持者名单)、瑞士和波兰两笔政府文化资助 |
大部分"GitHub 游戏调研”看的都是网页小游戏、或者开源了源码的商业游戏残骸。这个仓库不太一样:它是一份正在赚钱的商业游戏的完整源码,而这个游戏从头到尾是用一门几乎没人拿来写游戏的语言写的。
一句话:你是一台在世界末日之后醒来的机器人,在一整片地下洞穴网络里跑酷、砍怪、钓鱼、做任务——开放世界动作 RPG,2D 横版精准平台玩法。
官方 press kit 给的数字很具体:250 万平方米以上的可探索世界、250 个手工搭建的平台挑战房、50 条任务线、33 套换装。它出生时的身份其实是个试验品——2019 年底,Shinmera 为了测试自己写的游戏引擎搭了个跑酷场景,结果场景长出了角色、长出了剧情,最后长成了一个游戏。灵感来源写得很明白:Celeste 和其他精准平台游戏。
它最反常规的设计宣言挂在官网第一屏:Zero Ability Gating,零能力门控。银河恶魔城类游戏的经典配方是“这里有一堵墙,拿到二段跳再回来”;Kandria 把导游裁了——从游戏第一分钟起,全地图哪里都能去,去不去得到看你的手,而不是看你的技能表。
玩家的核心循环长这样:
flowchart TD
A[落地废土<br>全图从第一分钟就开放] --> B{选一条路}
B --> C[自由探索洞穴网络]
B --> D[挑一个编号挑战房]
B --> E[找个水潭钓鱼]
C --> F[跑酷/战斗<br>死亡惩罚极轻]
D --> F
E --> G[鱼入图鉴<br>卖钱或换装备]
F --> H[房间通过<br>掉落遗物/推进派系剧情]
G --> H
H --> I[图鉴收集+装备升级<br>手上的技巧也在变强]
I --> J[好奇心:那边我还没去过<br>更难的房间在招手]
J --> B
1. 零门控,把导航权还给好奇心。 传统银河城靠能力墙给你排行程,玩家按攻略图跑图,本质是做任务。Kandria 全图开放之后,“那边那个高台我好像跳得上去”这种念头会自己长脚——你不是在被游戏引导,你是在跟地图较劲。这是把开放世界的“想去”和平台游戏的“能去”焊在一起,引力翻倍。
2. 挑战房把“再来一局”拆成“再来一间”。 250 个独立编号的手工房间,每个几分钟,失败立刻重来,重开成本趋近于零。这就是 roguelike“再来一局”魔性的平台化变体:把一次长冒险切成几百颗胶囊,每一颗都有独立的成败和计时。你告诉自己“最后跑一间”,然后天亮了。
3. 双收集钩,一口喂收集欲一口喂成长欲。 钓鱼系统配图鉴——剑能变鱼竿,钓上来的鱼填百科、卖给商人换钱;探索捡到的旧世界遗物能换装备升级。收集管“我还差三种鱼”,成长管“升级后那片区域能打过了”,两个进度条互相咬合,永远有一条在动。
4. 进度刻在手上,不在数值栏。 精准平台游戏的手感成长是真成长:一周目跳不过去的沟,十小时后你手指自己知道怎么过。这种进步没法被氪金稀释,所以格外上头。
5. 派系剧情的不可挽回感。 开局就被卷进两个幸存者派系的冲突,你是外来者,信任要一点点挣,帮了一边另一边就记仇。选了就不能反悔的设计让玩家的选择有分量,也给了二周目一个正当理由。
这是仓库最有嚼头的部分——用 Common Lisp 写了一整个商业游戏。
quest/ 是独立目录,任务用脚本格式写,编剧 Tim White 不需要碰一行 Lisp。任何引擎都可以抄这套结构:任务=数据文件,引擎只管解释执行。editor/ 目录就是编辑器本体,250 个挑战房是作者在游戏里捏出来的——编辑器和游戏共享同一套运行时,改完即玩。module.lisp 定义模块机制,仓库里挂着 mods/hello-world 教你写第一个 mod。整个游戏本体在架构上就是“第一个 mod”,这种自举设计让创意工坊几乎是免费送的功能。fishing.lisp(钓鱼小游戏)、save-state.lisp + serialization.lisp(存档与序列化)、bvh2.lisp(BVH 空间索引,加速大地图碰撞与渲染剔除)、shadow-map.lisp + lighting.lisp(2D 动态光照)、grass.lisp + water.lisp(场景细节)、achievements.lisp、stats.lisp、language.lisp(本地化)、deploy.lisp(一键跨平台出包)。想抄哪块拆哪块。process-backers.lisp——把众筹支持者名单批量灌进游戏的脚本。变现和技术在同一行代码里会师。可复用件划重点:任务脚本格式(搬到任何引擎都能用)、挑战房管理器(房间编号+重开+计时)、钓鱼小游戏状态机(咬钩窗口-拉竿判定的经典设计)。
这个仓库几乎是“个人开发者如何不靠大厂活下来”的教科书,四条腿同时站着:
1. 买断制+多渠道直销。 官网 Purchase 一排五个入口:Steam、itch.io、Humble、官网直销(Direct)、原声带。Steam 是流量主阵地,但 itch.io 抽成可以自选、官网直销分成是零——小体量游戏多铺一个渠道就多留一份钱,原声带单独卖更是零成本的加售。
2. 众筹对表 Steam 新品节。 2022 年 7 月 14 日,Kickstarter 上线和 Steam 新品节免费 demo 发布是同一天——demo 引流、众筹收钱、愿望单沉淀,一鱼三吃。仓库里的 process-backers.lisp 说明众筹规模不小,大到需要写脚本处理支持者名单。
3. 政府文化资助。 官网页脚明晃晃挂着两个 logo:Pro Helvetia 互动媒体资助(瑞士文化基金会)和 KPT Poland Prize Digital Dragons 加速器。欧洲不少国家把游戏当文化产品补贴,这是中文圈开发者最常忽略的一条腿——游戏不只是商品,也可以申报艺术和文化项目。
4. 开发者个人的长期开源赞助。 仓库挂着 Sponsor 按钮,Shinmera 靠多年开源 Lisp 工具链积累的社区信任,在 GitHub Sponsors 上有持续的赞助收入。引擎免费、工具免费、游戏收费——先用十年免费建立“这人靠谱”的信誉,商业游戏上线时信任直接变现。
同类路径跑通的先例也硬:Celeste 先放免费网页版《Celeste Classic》验证玩法攒口碑,商业正作随后大卖。Kandria 走的正是“免费技术原型 → demo 攒愿望单 → 众筹+新品节 → 多渠道发售”的完整闭环。696 个 star 不算显眼,但一个五人小作坊、一门冷门语言,游戏活到 2026 年还在更新——它跑通的不是流量,是长线。
顺带一提仓库 README 的第一句话:因为“微软对这个平台的持续堕落”,项目 2025 年 8 月整体迁去了非营利平台 Codeberg,GitHub 这边成了只读镜像。个人开发者对平台的议价权,说到底来自“我的东西在哪都能跑”。
1. 极简复刻:“挑战房+计时”网页小游戏(MVP 2-3 周)。 不碰开放世界,只抄最上头的那颗胶囊:20 个手工平台挑战房,每房 1-3 分钟,死亡秒重开,全房计时排行榜。用 Phaser 或 Godot Web 出网页版,itch.io 付费下载或网页挂广告。Kandria 证明了这个形态单独成立——250 个房间就是游戏的核心卖点,20 个就是你的 MVP。
2. 换题材融合:修仙洞穴探秘(MVP 4-6 周)。 跑酷+收集+交易的骨架原封不动,皮换成中式题材:溶洞探秘、采药入图鉴、遇货郎 NPC 用灵草换法宝。零门控设计天然契合“境界不够胆子来凑”的修仙叙事。变现走移动端内购(看广告复活、皮肤)或 Steam 低价买断,中文社区对“洞穴+图鉴+交易”的组合亲和度极高。
3. 加一层钩子:每日一房(MVP 1-2 周,基于前两者)。 每天按日期做种子从房间池里选一间,全球同题计时排行榜。Wordle 靠“每天一道题”做到全民自来水,精准平台游戏的 speedrun 社区是现成的传播渠道——排行榜页面本身就是分享素材,导流回你的主游戏。
最后是这个仓库最反直觉的一课:技术栈冷门从来不是变现的障碍,没人要玩的东西才是。 Common Lisp 写的游戏照样上 Steam 收钱、拿政府资助、养活一个工作室。选型可以任性,核心循环不能含糊。
demo-releases/ 目录有历史版本 demoquest/(任务脚本)和 mods/hello-world(模块机制)入手,这两处最能看懂它的数据驱动架构[!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 等场景全覆盖。
