杜巴


我的客厅,下地狱。

我的Noesis转换器现在具有Roomba脚本。 它监视Roomba并存储跟踪数据,这使您可以通过许多不同的方式可视化此数据,包括将它们转变为用于DOOM的随机卡。

有时间在DOOM成立25周年之际做这件事真是太好了,但是事情发生了并且过去了,我仍然在等待在eBay上购买Roomba 980。 这个主意在11月前后传给我,当时我和妻子研究了不同的机器人真空吸尘器。 我发现在Roomba SLAM的新版本中,它在质量上得到了实现,因此我想知道可以从中获取哪些数据以及可以用它们完成什么。

很快,我意识到我有一个方便的机会服务于《黑暗之王》,产生了一大堆邪恶的算法,并将其应用于以他的名字创作的最好的作品之一。 同时,我将能够释放出旨在打败人类的邪恶双关语。 因此,我的工作成果已经准备就绪。 看一个名为DOOMBA的生物-半山羊,半脚本,对代码中最昂贵的部分提供本地二进制支持,在这个美妙的圣诞平安夜,我将牺牲我的头胎而不是我的头胎。


DOOMBA工作流程

返回地狱从未如此简单!


为了使用DOOMBA和其余的Roomba新功能,您需要下载最新的Noesis 。 进入optionalplugins \ python,然后将tool_roomba.py文件复制到plugins \ python。 在Noesis转换器的“工具”菜单中,您将看到一个新的“ Roomba Tracker”项。 激活它以打开Roomba Tracker界面。


Roomba跟踪器界面

该界面可让您自动扫描LAN,查找Roomba机器人(必须启用UDP广播),并显示有关从Roomba接收密码的说明。 收到IP Roomba并设置凭据后,即可开始跟踪。 开始跟踪时,将要求您保存.noeroomba文件。 如果您决定保存它,那么在跟踪完成之后,此文件将包含所有有用的数据。

我仅使用Roomba 980进行过测试,因此不能保证与任何其他Roomba设备兼容。 但是,即使您没有兼容的设备,也可以使用场景Noesis目录中的.noeroomba文件,并使用DOOMBA和其他Roomba相关功能。

生成.noeroomba文件(或获取已完成的文件)后,在查看Noesis文件时转到该文件。 您将拥有新的右键单击上下文菜单项,并可以选择文件类型:


新的Roomba上下文菜单项

NoeRoomba合并选项对于合并多个.noeroomba文件很有用。 有时,在跟踪时,连接会丢失,或者必须停止连接,因为在会话之间给Roomba充电。 这意味着您可以选择生成多个.noeroomba文件,然后将它们组合在一起。

选择DOOMBA项将启动DOOMBA主界面,以从所选的.noeroomba文件生成DOOM PWAD:



如果将“ Seed”值保留为0,则将独立生成电平。 否则,如果您选择适合自己的值,则可以将其保存并再次使用,并设置其他选项。 以上所有选项均指敌人/物体的位置。 编写脚本本身是为了简化新型对象的创建,并通过更改THING ID来增加对其他基于DOOM的游戏的支持。 但是,如果您不喜欢实验,则可以简单地从界面中调整可用的值。 您还可以更改地板/天花板/墙壁纹理的列表,如果将DOOM IWAD加载到Noesis中,您将看到所有纹理名称都在数据查看器中整齐列出。

在右下角,还有许多其他选项会影响生成和简化几何图形的过程。 如果配置不正确,“高级”部分中的选项可能会严重破坏一切,因为我没有特别测试它们,也没有检查引擎端值的有效性。 但是,其他选项也可能会造成严重危害,因此,如果不确定,请不要更改默认值。 还请记住,该接口不能防止visplane,对象等领域的标准DOOM限制。

作为奖励,我将图像添加到NoeRoomba工具中,仅当tool_roomba.py中的ENABLE_TEST_FUNCTIONS变量设置为True时才启用。 它使您可以从常规图像文件生成.noeroomba文件,从而提供一种简单有效的方法将图片转换为随机DOOM卡。 我不能保证为我提供的Roomba卡设计的邪恶算法不会崩溃,如果您将它们提供给各种随机数据,但是对于我选择的图像,系统可以很好地应对:


真人快打!

希望您喜欢这个工具。 他肯定给我带来了很多快乐! 也许有人会说这是没有道理的,但是在我心中却有一个信念,那就是黑暗之王将把这些人从地球表面消灭,并将他们囚禁在永恒的地狱之火中,传说将由他们的苦难组成。

脚本的注释中已经提到了这一点,但是我会再次说dorita980库对于与Roomba协议相关的部分很有用。 我会直接使用它,但是Node.js完全是一场灾难。 我还要感谢Rafael Quine提供的古老的nodebuilder代码,该代码作为DOOMBA功能的一部分包含在此版本中。 这是我发现未被GPL破坏的为数不多的节点构建器之一。

Source: https://habr.com/ru/post/zh-CN434284/


All Articles