Xs of Y – 每局自动命名的roguelike游戏,用4千行代码编写

Hacker News Top 产品

摘要

Xs of Y 是一款用名为 let-go 的自定义Lisp方言编写的roguelike游戏,每局都会生成新的标题、任务和符文映射。游戏具有独特的基于s表达式的魔法系统,可以原生运行或通过WASM在浏览器中运行。

暂无内容
查看原文 导出为 Word 导出为 PDF
查看缓存全文

缓存时间: 2026/05/13 18:15

nooga/xsofy

来源:https://github.com/nooga/xsofy

X 的 Y

一个用我的 Lisp(https://github.com/nooga/let-go)编写的类 Rogue 游戏,其中的魔法系统本身就是一个 Lisp。

注意:这还没完成!可以玩,但请做好心理准备,可能会遇到轻度危险和计划外的爆炸。

在浏览器中游玩(https://nooga.github.io/xsofy/)

截图

每次运行都会生成一个新的标题(《畏怖装载的凉亭》)、一个新的任务(《取回无用的锅铲》)以及一套新的符文映射。符文其实是符号,咒语是 S 表达式。你拥有地牢现实引擎的 root 访问权限,但 man 手册的语言已死,且每次启动都会变化。

能力曲线是倒置的——早期是绝望求生,晚期则是在安全边际不足的情况下实践应用神学。

同时,地牢正试图用更传统的方式杀死你。蜘蛛射出蛛网锥体困住你,而哥布林则趁机逼近。黏液怪被击中后会分裂。巨魔会再生。点燃某样东西,它会恐慌地穿过草丛,引燃草地,进而引燃更多生物——没事,一切都好。把食人魔推进岩浆。把一个哥布林撞向另一个哥布林。不小心把自己推进深渊。深渊能教人成长。

代码约 6900 行 let-go(https://github.com/nooga/let-go)——一种运行在 Go 字节码 VM 上的 Clojure 方言。底层全部使用持久化数据结构。零依赖。6ms 启动。原生运行或通过 WASM 在浏览器中运行(https://nooga.github.io/xsofy/)。

如果你喜欢这个游戏的外观,可以看看 Brogue(https://sites.google.com/site/broguegame/)——这是我的主要灵感来源。

运行

lg main.lg  

从 let-go(https://github.com/nooga/let-go)获取 lg,或者:

brew tap nooga/let-go https://github.com/nooga/let-go  
brew install let-go  

相似文章

G-Zero:从零数据开始的无界生成自博弈方法

Hugging Face Daily Papers

本文介绍了 G-Zero,这是一个无需验证器的框架,通过基于内在奖励和提示引导的协同进化训练,实现大型语言模型的自主自我改进。旨在通过从内部分布动态中推导监督信号,克服代理 LLM 评判者在无界任务中的局限性。