客户端游戏 活跃维护

Minima

Feneric/Minima

Minima 是对 8 位 Ultima 游戏(特别是 Ultima II 到 Ultima V)的致敬,这些游戏是在 PICO-8 环境中编写的。

102
Stars 标星
8
Forks 分支
3
Watchers 关注
0
Open Issues
Lua
主要语言
GPL-3.0
开源协议
44.3 MB
仓库大小
4 年前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:Feneric/Minima
git clone https://github.com/Feneric/Minima.git
git clone git@github.com:Feneric/Minima.git
README.md master

机器翻译正文由机器翻译自项目原始文档(英文),排版经程序统一处理,可能存在偏差,请以原项目仓库为准。

最小值

我对8位Ultima游戏的致敬。

它是什么?

Minima是一款冒险角色扮演游戏,风格类似老式的Ultima游戏,在康懋德8位计算机上运行。就像原版Ultima游戏一样,它包括世界观、可进入的城镇和3D地下城显示。同时,它还具有图形、音效和音乐,这些都能让人回忆起那些经典作品。更重要的是,这是一款完全可玩的(并且可以获胜的)游戏,拥有自己的背景故事、情节、设定和角色。

你可以在Lexaloffle上的Minima页面上在线玩,或通过任何PICO-8环境使用splore工具直接游玩。你还可以通过发布链接或Minima Itch.io页面获取Linux、macOS和Windows的可执行文件。

Minima世界视图截图。西北方有一个城镇,东北方有山脉,南方是平原。

Minima某个城镇的城镇视图截图。城镇内有喷泉、商人和小丑。

Minima某个地下城的地下城视图截图。玩家正受到一个兽人(正前方显示)和一只幽灵(从后方)的攻击。哎呀!

它讲的是什么?

弄清这一点是游戏的一部分。你在Miskatonia大陆,刚开始时可以看到一个城镇和一个地下城。建议你先探索城镇。此外,你一开始没有任何武器或盔甲,这是一种非常危险的状态,你需要尽快改正。如果你还没有这么做,应该阅读游戏手册,获取在Miskatonia生存的技巧、关于Faxon的警告以及游戏控制的基本信息。如果你太心急不想浏览手册,游戏暂停菜单中也可以查看基本游戏控制。按下p键(或某些平台上的enter键)应该可以调出该菜单。

起源(是的,我知道这是一个双关语)

小时候,我喜欢在C64和C128上玩8位的[Ultima游戏]( https://en.wikipedia.org/wiki/Ultima_(series )。首先是Ultima II,它有多个世界、时间旅行,以及《传奇时代》的挑战。然后是Ultima III,空间更小,但图形和玩法更好,并且有围绕Exodus的神秘故事。接着是Ultima IV,空间更大,故事更精彩,并且早期显著使用了“avatar”这个词。随后是稍晚发布的Ultima I,为那些想了解更多背景故事的人提供。然后是Ultima V,不仅改进了Ultima IV的故事讲述,还充分利用了C128硬件,我认为提供了系统上最好的游戏体验之一。接着是Ultima VI,在C128上表现令人失望,基本无法游玩。对此,少说为妙。

Ultima VI之后,我再也没有玩过Ultima,但我仍然怀念玩它的时光。我注意到GOG重新上线了Ultima IV,正好是在我开始在[PocketC.H.I.P.]( https://en.wikipedia.org/wiki/CHIP_(computer )#Pocket_CHIP_and_Pockulus 上玩PICO-8的时候。与此同时,在将xu4移植到PocketC.H.I.P.作为PocketInstaller的一部分时,我产生了一个疯狂的想法:何不尝试在PICO-8的限制条件下,制作一款受老式Ultima启发的完整游戏呢?这个项目就是我努力的结果,是对所有老8位Ultima游戏的致敬,尤其是第II至V代。

状态

该项目处于1.1版本。从头到尾完全可以游玩。

C128上《终极》系列的许多功能依然有效。你可以自由移动,探索世界地图,进入城镇和地下城。城镇视图和地下城视图都可行,地下城需要火把才能看到。查看和搜索可以。状态查询可以。生物的移动和行为也可以。战斗可以在世界视图和地下城视图中进行。与镇民对话可以。在城镇购买可以。法术也能用。捕获海盗船可以,有了海盗船还可以探索世界地图的水域。升级功能正常。音效功能完善。游戏内帮助界面正常。保存和加载游戏可以,尽管存在一些不可避免的限制(最明显的是只有你角色所在的船只会被保存)。背景音乐可以。提升属性也可以。喷泉能用。是可以赢的。

与早期1.0版本相比,1.1版本改进了生物移动、公会商店配备可用的钥匙和火把、更多城镇居民和更多线索、可开启的宝箱、更具挑战性的地下城、塔谜题、可进入的神殿以及许多小BUG修复。

主要由于宝箱和额外的地下城关卡,这个版本比1.0版本需要更少的刷级;主要由于角色数量更多,这个版本的故事也更丰富。它更接近我最初想要打造的版本。

支持平台

Minima可以运行在PICO-8运行的所有平台。设计上它不需要最新版本的PICO-8,因此甚至可以在PocketC.H.I.P.上运行。

Minima在PocketC.H.I.P.上运行的照片。

Minima在GPD Pocket Ubuntu笔记本上运行的照片

挑战

在PICO-8环境中构建内容的限制使得这样的项目相当困难。这款游戏几乎将PICO-8的容量最大化;空间不多,我可能需要删减一些已有功能来硬塞进其他内容。所有PICO-8的图形空间(无论是精灵还是地图)都被充分利用了。除了少数几个音效槽外,其他都被充分利用了。最终版本在最大化令牌数量和压缩尺寸之间取得了谨慎平衡。原始尺寸已经太大,无法不进行最小化,即使如此,也需要大量手动调整,使代码在某些地方显得相当难看。

建筑最小值

通常 PICO-8 应用程序用 Lua 的特殊方言编写,并在 PICO-8 环境中立即解释,无需特殊构建步骤。Minima 比大多数 PICO-8 应用程序稍大且复杂,且体积太大,无法直接运行,除非有特殊的最小化步骤。[picotool]( https://github.com/dansanderson/picotool ) 工具完成了大部分所需工作,但目前除非这个 [picotool]( https://github.com/Feneric/picotool ) 的特殊分支带着 luamin2 参数运行,否则它会破坏 Minima。

您也可以替换为 triplefox 版本的音乐。它不像原始 Commodore 版本的《Ultima》游戏那样,但在 PICO-8 环境中更好地利用了可用资源。它在 alt_music.p8 文件中。使用方法是,将 minima.p8 中现有的 __sfx__andmusic__ 部分替换为 alt_music.p8 中对应的版本。

设计说明

Minima 主要是数据驱动的。它使用 JSON 数据结构来定义人物、生物和物品,并使用另一个 JSON 数据结构来定义所有地图和地下城。命令序列使用协程以避免过于复杂的状态机。"Minima 引擎" 可以在无需修改过多代码的情况下用于其他游戏;如果目标游戏与 Miskatonia 的世界类似,在代码端基本只需更改胜利条件。截至目前,至少已有另一款游戏使用了 Minima 引擎。

其他说明

我在制作这个游戏时,对原始《Ultima》系列怀有极大的尊重和热爱。我不声称拥有与该系列相关的任何知识产权。希望即便我选择将其命名为“Minima”(而不是“Ultima”,懂吗?)也能传达这一理念。

其中的图形和音效基于我对原始游戏无疑不完整的记忆,并刻意尝试传达我在 C64/128 上体验这些游戏的感觉,而不是像素级地再现其原貌。我所有的绘图和音效均为手工制作,因此虽然深受原游戏影响,但如果进行对比可能会有很大差异,所以如果您认为某些元素看起来或听起来不太对,请不要抱怨。

音乐尝试再现 Commodore 版本《Ultima III》中出现的一些音乐。这是通过查看我在网上找到的零散音符并听 Commodore SID 文件的录音完成的。我无法完全匹配原作使用的拍号,因为原作相当长、相当复杂,并且做了一些相当巧妙的处理,它们有时也会超出 PICO-8 可用的音高范围。再次强调,更重要的是捕捉其精神而不是忠实重现。

该版本使用 Tyler Neylon 的 json.lua 例程解析 JSON 数据;感谢 freds72 提供的参考。

额外的 Lua 工具脚本 convert.lua 用于更容易地布局地下城地图并将其转换为游戏可用的格式。

本站来源与版权声明
  • 本文标题:Minima - Minima 是对 8 位 Ultima 游戏(特别
  • 本文链接:https://cn121.com/clientgame/feneric-minima.html
  • 原项目:Feneric/Minima 版权归原作者 Feneric 及贡献者所有
  • 收录信息:本站于 2026-10-18 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
  • 开源协议:收录时本项目采用 GPL-3.0(查看 LICENSE 原文),本站译文为其衍生内容;使用、修改、分发请以该仓库 LICENSE 原文为准。基于本页内容形成的衍生作品, 须同样以该协议发布。
  • 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 Feneric/Minima。
  • 翻译说明:本页正文为人工智能生成内容——由机器翻译对原项目 README 初译、经程序校验排版,可能存在错漏,请以原项目文档为准。
  • 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
  • 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。