REM-9: 梦日记随机化发生器

案:REM-9 是著名英文翻译大佬 vgperson 于 2020 年初 发布的同人作品。之前似乎也有不少人做过相关的实验,但是没有找到代码释出,这个版本相对完善。关于这些随机化发生器的历史,可以参看 Stella Mazeika 在 Roguelike Celebration 2019 时的演讲:
Is This Even Randomized?: Turning Classic Games Into Multiplayer Roguelike Experiences
The BIG List of Video Game Randomizers

REM-9 是一段 C# 代码,每次运行都会产生一个新的梦日记游戏副本,在本站我们选择了一个静态的随机化种子,可以在 这个链接 里进行体验。以下是对 原文 的部分翻译。

REM-9:Yume Nikki 随机化发生器是 vgperson 对 Kikiyama 的 Yume Nikki 创建的一个随机化程序,它推荐给那些玩过原版 Yume Nikki 并知道如何在梦境中游走的人。下载时附带了一个本家游戏,所以不需要任何外部的东西。请务必阅读REM-9的自述,以了解一切如何运作,以及如何生成一个随机的游戏。

免责声明:这是一个粉丝项目,与 Kikiyama 或任何相关方没有关系。

(内容严重性:建议谨慎行事)

支持的平台

该程序、基本游戏和随机游戏只为 Windows 制作,对其他平台没有原生支持。对于Mac,你可以尝试使用WineBottler这样的通用工具。
随机游戏本身可以用多平台的EasyRPG播放器来玩,尽管它的行为可能与原始引擎略有不同。(请确保将Data文件夹作为游戏文件夹,而不是包含文件夹)。

疑难解答

请确保将游戏解压到它自己的文件夹中,而不是直接从ZIP文件中运行。如果你不这样做,你做的任何随机游戏都会被放在一个不起眼的临时文件夹中。

基本功能

  • 效果随机化。你可以让所有效果的位置都随机化。
  • Nexus锁。你可以让某些数量的Nexus门在开始时被封锁,但在获得某个特定的效果时被解锁。如果需要的话,这些锁可以告诉你它们的效果在哪里。
  • 入口随机化。有多种选择来改变出口的位置。你可以只对Nexus中的门进行随机化,或者将其扩展到几乎整个梦境世界。此外,你可以强迫新的布局使用适当的双向连接,或者只是让它们成为单向的扭曲。
  • 自定义目标。你可以将结局设定为需要任何数量的效果,以及任何数量的精华(由显著的 “可选 “副线事件给予的新奖励物品)。

请注意,如果你不想要,可以单独禁用随机化选项和Nexus锁。事实上,如果你不想随机化,只是想对基本游戏进行某些调整,你也可以这么做。

其他功能

  • 速度选项。自定义窗子的移动速度,自行车速度,以及是否允许打破这些限制,使得椅子的速度发生故障。
  • 早期效果。你可以强制将自行车和/或眼球之手的效果放在容易的早期位置,或者直接用它们开始。
  • 取消随机化事件。使所有重要的随机事件以 “公平 “的方式发生。例如,乌波亚保证会在一次特定的尝试中出现–尽管数量是随机预先确定的。
  • 杂项。改变或禁用默认的行走声音 让黑暗的地方变得更亮,(否则就会变得如此黑暗,以至于你真的需要灯的效果),跳过 Teleporter迷宫,以及从游戏中删除地狱迷宫等功能。

Ynoproject 版本考据

版本考古

源起

根据作者 在 reddit 上的帖子,早期版本大概长这样:

随后作者在 Github 上留下了客户端和服务器的代码。

这里的客户端可以看作时 easyrpg player 的直接魔改,在其基础上同步并渲染了其他玩家的位置。而 orbs fork 的代码 go 语言的 websocket 聊天室,为 rm 游戏中的每一个场景都建立了一个独立的聊天室,并且还增加了一个 file server 用于导入导出玩家存档。
好吧,我也认为这里面最困难的地方就是编译这个 easyrpg player

随后作者选择将代码留给了社区并进行了神隐,根据目前查阅的资料,由原始版本随后衍生出 ynoproject 和 yumebooru 两个分支。

ynoproject

这份版本直接继承自 twig33 的版本,其中服务端对原来的 orbs 进行了细化,将服务器模块和网页模块进行了分离,把外面那个框独立了出来,取名 Forest Orb …(不知道是什么梗

另外还做了一个非常酷的门世界的主页,用来在不同的派生之间进行导航。。。

yumebooru

Yumebooru 是一个来自俄罗斯的梦日记同人图床,维护者为 hujle,(对,她还出现在了上面的截图中)
随着 twig33 的神隐,Yumebooru 也几乎和 ynoproject 同时进行了二次开发,两边的版本各具特色,当然最主要的两点修改是:

1 – Yumebooru 的服务器使用了 nodejs(妈妈再也不用担心我编译不起来 Go 语言了)。
2 – Yumebooru 对客户端进行了更多魔改,将聊天室、网络版设置菜单等功能也一并封装在了客户端里。

所以你进去之后会发现游戏里多了一组菜单,可以用于进行调整。

Easyrpg 里的菜单选项是存储在 vector 里,所以上面多出来的菜单并不需要修改游戏的原代码,和之前一样都是在解释阶段加进去的。这样的好处和坏处我觉得一样多,首先额外多出来的菜单的风格可以自动同步游戏内部的 UI,比如当你在 y2k 里切换菜单主题的时候,外面聊天框的主题也会随之变化。但是对于像对于对菜单进行了魔改的游戏,比如 ib 来说,就会出现额外的兼容问题,同时也需要额外的代码来进行本地化。

除此之外两边都处在活跃更新的状态,都加入了对音效的同步,但是都还没有同步其它的 npc。
(例如 y2k 的卧室里开关柜子,其他人就看不到。)

Ynoproject 介绍

Ynoproject 是 Project Yume Nikki Online 的缩写,是基于 EasyRPG 开发的开源软件,除了梦日记及部分派生作品之外,也可以运行其它使用 RPG Maker 2000/2003 开发的作品,但目前并不一定能够做到完美兼容。

目前主要在运行的分支有以下三个版本:

关于 Ynoproject 的更多历史资料,可查阅 Ynoproject 版本考据

本站版本已经得到 yno 开发团队的授权,致力于让玩家更容易的体验到优秀的中文作品。三组开发团队的开发和维护日程虽各有侧重,但所有开发人员日常都在 一个 Discord 群组 里进行交流,并且共同 为上游 EasyRPG 代码提供特性

接上文,经过一番努力,终于成功部署了本站的 yno 版本,做了一些本地化,顺手还修了 easyrpg 的中文 bug。,用以筛选有中文翻译的兼容 easyrpg 的 rm2000 和 rm2003 游戏。(注:游戏档案均来自作者主页或授权翻译的网站,本站不进行任何修改,第一次加载会较慢,还请耐心等待 m(_ _)m

目前支持的游戏列表见下,欢迎留言添加。

梦日记相关

作品名称 作者 相关链接 联机版
梦日记 kikiyama yumenikki_v0.1_chs
梦日记随机版 vgperson yumenikki_v0.1_en_randomizer
梦2记 ゆめにっきっぽいゲームを作るスレ住人 y2k_v0.104g_chs
梦日志 Zenmaigahara yumenisshi_v0.04_cht
.flow lol flow_v0.194_chs
The Looking Glass Bleet Twitter | rm.net tlg_v0.05_chs
九十九之梦 Humiha tsukumonoyume_v0.02_chs
older xom older0.031chs
梦、所诠妄想 へなちょこ yumedelusion020chs
nostAlgic tom nostalgic_0.07_chs
Debris ハリネズミ debris_ver0.07_chs
DreaMarbleng 幸付き dreamarbleng
まどろ梦 tsumehagi madoro_mu_0.06_chs
梦涂鸦 dreamgraffiti_v0.03_chs
Broken Bottles brokenbottles_v0.02_chs
Answered Prayers answeredprayers_v0.03

其它

作品名称 作者 相关链接 联机版
Ib 恐怖美术馆 kouri Blog | Twitter ib_v1.05_chs
Buried Barry buriedbarry_v1.03_chs
赤之世界 ナオ Blog | Twitter akainosekai_chs
怪异症候群 1 ナオ Blog | Twitter paranormal_syndrome_cht
怪异症候群 2 ナオ Blog | Twitter paranormal_syndrome2_cht
Mogeko 城堡 海底囚人 Blog | Twitter mogeko_castle
灰色庭园 海底囚人 Blog | Twitter storygardengray_cht
大海原与大海原 海底囚人 Blog | Twitter wadanohara
Aurora’s Tear aurora’s_tear
Lost Chapters UPRC itch | rm.net lostchapters
最終幻想:黑月預言 UPRC itch | rm.net final_fantasy_blackmoon_prophecy
星云假日 a_vacation_in_nebula
月之歌 moonsong_v1.2
Jasei no In: The Serpent’s Lust Bleet Twitter | rm.net jasei_no_in_v.1.3
Fleshchild Bleet Twitter | rm.net fleshchild_v0.02
The Huntress of the Hollow Bleet Twitter | rm.net the_huntress_of_the_hollow_v1.2
Grimm’s Hollow ghosthunter Twitter | tumblr grimm’s_hollow_v1.1
The Way EP1 LunCasari theway_ep1
The Way EP2 LunCasari theway_ep2
The Way EP3 LunCasari theway_ep3
The Way EP4 LunCasari theway_ep4
The Way EP5 LunCasari theway_ep5
The Way EP6 LunCasari theway_ep6