本页目录

Spashal:HTML 浏览器打外星人射击小游戏

spashal · MrRar/spashal

Spashal 是一个用 HTML 编写的浏览器射击小游戏,README 中给出了 GitHub Pages 在线试玩入口。桌面端用 WASD 移动、空格开启护盾、鼠标瞄准并射击;移动端通过滑动屏幕移动,蓝色按钮开启护盾,红色按钮朝最近的外星人开火。仓库描述与...

RPG 文字冒险 无明确引擎 TypeScript 对话系统 存档系统 游戏状态管理 UI 系统 中级
★ Stars 240 Forks 28 License 未明确 更新 2026-11-03

国内开发环境适配

Windows
官方声明支持
Linux
AI 推断/待核验
macOS
官方声明支持
引擎 / 框架:无明确引擎 暂无中文教程标记 未标记站长实测
需 Node.js 22+ 与 npm 依赖;本地文本模型需通过 Ollama 拉取(如 gemma4:12b-it-qat),国内下载模型与 FLUX 权重体积大、速度受限,可能需镜像或代理;连接 OpenAI 兼容后端时注意网络可达性。具体可用性待核验。

中文项目介绍

Open Dungeon 是一个面向个人创作的本地化 AI 角色扮演与互动小说应用,采用 TypeScript 与 Next.js 编写,以本地 Web 服务的形式在浏览器中运行(默认 http://localhost:3000)。它的目标不是做一款规则驱动的传统游戏,而是把「文字冒险」的叙事主动权交给用户与本地大模型共同完成:玩家用动作、对白或自写旁白推进剧情,模型负责续写世界反应,并在需要时调用图像工具为当前场景绘制插图。整个项目以 MIT 协议开源,作者明确表示不设账号体系、不需要 API 密钥、不依赖云端服务,故事内容与生成结果全部留在本机。

文本侧的核心是接入本地推理后端。默认路径是通过 Ollama 拉取 Gemma 4 的量化版本(README 中给出的命令为 ollama pull gemma4:12b-it-qat)作为叙述者;同时提供「Connect a server」模式,可以指向任何 OpenAI 兼容接口,例如 llama.cpp、LM Studio、vLLM、远程部署的 Ollama,或者 OpenRouter 之类的托管服务。模型输出以流式方式逐字呈现在页面上,读者能看到叙述正在被写出来的过程,而不是等待一次性返回。这种设计让应用在「完全离线」与「借用更强算力」之间保留了自由度,用户可按自己的硬件条件选择。

图像侧的思路是把插图变成叙述流程的一部分:模型可以调用一个 generate_image 工具,场景配图随即内联渲染在故事文本之间。默认使用 FLUX 系列模型(README 提到 FLUX.2-klein),支持 Apple Silicon、NVIDIA 显卡以及部分受支持的 AMD Radeon;如果本机已有 ComfyUI 实例,也可以把应用指向自己的 ComfyUI 后端来完成出图。与文本后端一样,图像生成同样可以完全在本机完成,不上传任何提示词或剧情内容。需要注意的是,图像生成本质上比纯文本更吃显存与算力,README 并未给出统一的硬件门槛,实际可用的分辨率、速度与稳定性仍需按自身设备核验。

核心功能

核心特性

交互层面提供了一套写作型编辑器常见的控制项:输入框区分 Do(玩家动作)、Say(角色对白)与 Story(用户自己写旁白)三种模式,上方还有 Continue(继续)、Retry(重试)与 Erase(擦除)按钮;任意一条已生成的消息在悬停后可以就地编辑,直接在原文上改写,而不必重新生成整段。新建故事时提供快速开局预设,可以生成一段自定义开场,减少从零起步的阻力。所有改动都会即时写入本地数据库,刷新或重启后仍可继续。

长故事的记忆管理是这类应用的关键难点。Open Dungeon 的做法是让历史消息尽量填满模型的上下文窗口(README 称可覆盖 128K–256K 区间),当内容超出后,较早的段落会被压缩成一段滚动的「story so far」摘要继续保留,而不是被直接丢弃。角色方面支持保存立绘,同一张肖像既作为视觉上下文提供给叙述模型,也作为参考图提供给图像生成器,从而在多幕剧情中维持人物外观的一致性。

隐私与数据布局上,故事、角色与配置都存放在本地 SQLite 数据库和磁盘目录中,作者还提到可以通过 Tailscale 从手机访问运行在电脑上的实例,实现「本机推理、移动端阅读」的用法。这种架构意味着没有服务器端账号,也没有跨设备同步服务,数据备份与迁移需要用户自行处理本地文件。

技术架构分析

技术要点

安装方式按平台区分。macOS(Apple Silicon)可以直接下载 Releases 中的 DMG 拖入「应用程序」,首次打开需要右键选择打开(未签名);Windows 下载发行压缩包或克隆仓库后双击 Launch-Windows.bat,脚本会检查 Node.js、构建应用并启动本地服务,Ollama 与图像生成是可选步骤,另有专门的 Windows 指南说明诊断与调优;任何系统都可以克隆仓库后执行 npm install 与 npm run dev,要求 Node.js 22 及以上,仅进行文字游玩时不需要额外配置。文档以仓库内 docs 目录的形式组织,分别覆盖文本后端、图像生成、Windows 细节与配置项。

从学习角度看,这个项目适合研究「本地 LLM + 本地扩散模型 + Web 前端」如何拼成一条完整的交互产品链路:包括流式输出的前端处理、工具调用触发图像生成、上下文窗口管理与滚动摘要压缩、角色参考图在视觉与生成两侧的复用,以及基于 SQLite 的本地持久化。它也可以作为 Next.js 全栈应用接入本地推理服务的参考实现。需要提醒的是,README 允许默认叙述提示中出现成年人之间的自愿成人内容,用户可修改 src/lib/story-prompt.ts 调整默认值;同时模型质量、生成速度与硬件可行性高度依赖具体机型与所选模型,文中未给出实测数据,相关指标均应以自测为准。

开源许可证与版权说明

许可证标识:未明确。源码、资源与依赖许可可能不同,请以官方仓库为准。本站仅做索引,不托管源码。

相似项目