Show HN:一款包含物理沙盒和 Excel 克隆迷你游戏的 Roguelike 游戏
1 分•作者: yutokure•8 个月前
嗨 HN,
我是这个项目的创建者。在过去的几年里,我独自开发了这个项目,它最初只是一个简单的 roguelike 游戏,后来发展成了……嗯,现在这样。它是一个庞大的、开源的、基于浏览器的游戏/平台,完全使用原生 JavaScript、HTML 和 CSS 构建。
演示:<a href="https://yutokure.github.io/yu-roguelike/site/" rel="nofollow">https://yutokure.github.io/yu-roguelike/site/</a>
GitHub (MIT 许可证):<a href="https://github.com/yutokure/yu-roguelike/tree/main" rel="nofollow">https://github.com/yutokure/yu-roguelike/tree/main</a>
该项目有三个核心支柱:
1. Roguelike 游戏:一个深度、回合制游戏,具有“地牢制作”系统。你不是玩随机生成的关卡,而是组合预设来构建具有特定属性的地牢,并且相同的组合总是生成相同的种子。游戏的终局是解锁一个开发者控制台,用于编写游戏世界的脚本。
2. 75+ 个“迷你游戏”:这真正展现了我的痴迷。为了刷经验值,你可以玩各种各样的侧边内容,包括:
* 一个物理/化学沙盒:我从头开始编写了一个 2D 引擎,模拟刚体、布料、流体(SPH)、热力学和化学反应。你甚至可以通过组合元素周期表中的元素来设计自定义材料。
* 一个电子表格应用程序:一个功能惊人的 Excel 克隆,具有公式引擎(=SUM、VLOOKUP 等)、格式设置,甚至支持 XLSX 导入/导出。
* 其他工具:一个文字处理器、绘图程序、电路模拟器,以及大量的经典游戏(国际象棋、俄罗斯方块等)。
3. 待办事项列表:这是我关于游戏化的实验。这是一个真实的待办事项列表,你可以在其中设置自己的现实生活任务。完成它们会给你游戏内的奖励(经验值、稀有物品),而负面任务(如“熬夜太晚开发这个游戏”)可能会施加惩罚。
这对我来说是一次巨大的学习经历,也是一项真正的热爱之作,不受商业限制。我想看看我可以用最基本的东西在浏览器中做到什么程度。
我很乐意回答关于实现、设计理念的任何问题,或者为什么我认为为 roguelike 游戏构建一个 Excel 克隆是个好主意。非常欢迎反馈!
查看原文
Hi HN,
I'm the creator of this project. For the last few years, I've been solo-developing what started as a simple roguelike and evolved into... well, this. It's a massive, open-source, browser-based game/platform built entirely with vanilla JavaScript, HTML, and CSS.
Demo: <a href="https://yutokure.github.io/yu-roguelike/site/" rel="nofollow">https://yutokure.github.io/yu-roguelike/site/</a>
GitHub (MIT): <a href="https://github.com/yutokure/yu-roguelike/tree/main" rel="nofollow">https://github.com/yutokure/yu-roguelike/tree/main</a><p>The project has three core pillars:<p>1. The Roguelike: A deep, turn-based game with a "dungeon crafting" system. Instead of playing random levels, you combine presets to compose a dungeon with specific properties, and the same combination always generates the same seed. The endgame involves unlocking a developer console to script the game world.<p>2. The 75+ "Minigames": This is where my obsession really shows. To grind EXP, you can play a huge variety of side content, including:
A physics/chemistry sandbox: I wrote a 2D engine from scratch that simulates rigid bodies, cloth, fluids (SPH), thermodynamics, and chemical reactions. You can even design custom materials by combining elements from a periodic table.
A spreadsheet app: A surprisingly functional Excel clone with a formula engine (=SUM, VLOOKUP, etc.), formatting, and even XLSX import/export.
Other tools: A word processor, paint program, circuit simulators, and tons of classic games (Chess, Tetris, etc.).<p>3. The To-Do List: This is my experiment in gamification. It's a real To-Do list where you set your own real-life tasks. Completing them gives you in-game rewards (EXP, rare items), while negative tasks (like "stayed up too late developing this game") can apply penalties.
This has been a massive learning experience and a true labor of love, free from commercial constraints. I wanted to see how far I could push what's possible in a browser with just the basics.
I'd be happy to answer any questions about the implementation, the design philosophy, or why I thought building an Excel clone for a roguelike was a good idea. Feedback is deeply appreciated!