我的ZX Spectrum 3D迷宫游戏

2021-01-30 06:26:36

我最近偶然发现了一个古怪的Youtube视频,引起了我的兴趣。在视频中,James O&Grady演示了3D迷宫游戏。他从一本听起来很熟悉的书中输入了游戏代码,该书名为《 Spectrum 48k的图形冒险》。

这本书的名义作者理查德·赫利(Richard Hurley)是我的老师之一,他收录了我和我的许多朋友编写的程序。 3D迷宫游戏是我大约在1984年16岁时写的。在视频中,James继续批评该游戏,探索改进它的方法,并阅读了当时杂志上的书评。

在我十几岁的时候,我曾在ZX81和Spectrum上玩过很多游戏,但是随着年龄的增长,我对玩游戏感到无聊,并且对编写游戏更加感兴趣。通过从杂志和书籍中输入代码,我学到了很多有关编程游戏的知识。

我开发的第一批游戏完全是用Sinclair BASIC编写的,例如Sub Hunt出版于较早的书中,但是我很快意识到我需要使用机器代码来获得所需的性能。最初,我编写了一些机器代码来加快游戏的关键速度。但是,视频中的3D Maze游戏是我使用出色的Zeus汇编器以及我可信赖的《 The Spectrum Spectrum ROM Disassemble》完全用Z80机器代码编写的第一款游戏。它紧密基于" Monster Maze" J.K.的游戏Greye软件。

最重要的是,从视频游戏历史的角度来看,ZX81是一台在家用计算机上托管世界上第一个3D游戏的计算机-JK Greye的3D Monster Maze。一个简单的迷宫就产生了,玩家必须找到自己的出路,而这一切却一直受到霸王龙的缠扰。整个体验是通过现在称为“第一人称”的东西呈现的。视图-即,您可以看到迷宫中的角色从眼睛中看到的内容,如ZX81相当块状但仍有效的图形所示。建议《毁灭战士》,《雷神之锤》,《虚幻》,《半条命》和所有现在如此流行的所有其他FPS的迷们都可以在模拟器上快速玩这个游戏,因为这确实是所有游戏中的祖父。现在很难描述这款游戏对从未有过类似经历的公众的影响。 –银河旅行者指南(地球版):克莱夫·辛克莱尔的奇妙电脑

有点令人失望的是,与《 3D怪物迷宫》不同没有"怪物"在我的游戏版本中,或者至少在James所玩的版本中没有。我知道我最终确实在游戏中添加了霸王龙,但是我隐约记得必须赶在出版截止日期之前完成,所以怪物可能错过了晋级!如果我没记错的话,一个比我拥有更好艺术技巧的朋友在一系列" frames"中画了一个T Rex。向观察者走去。然后,我将图纸追溯到方格纸上,并将其转换为用户定义的图形字符。我不知道这些是否可能是詹姆斯在视频中提到的神秘字节。否则我相信程序会使用对ROM的调用,例如这个画线的子程序,画迷宫的墙壁。

James必须非常耐心地输入只有非常基本的校验和的机器代码的所有原始数字。而且,鉴于游戏完全是用机器代码编写的,而汇编程序的源代码却在时间的迷雾中迷失了,我印象深刻的是,詹姆斯成功地运用了大量明智的PEEK和POKE,以几种不同的方式成功地修改了游戏并且显然没有使用反汇编程序。特别是他编写了一个不错的迷宫编辑器程序,该程序可在Spectrum上运行,并允许您设计自己的迷宫。当我得知迷宫必须是正方形时,我感到很开心-我无法想象允许矩形迷宫会更加困难!

詹姆斯对游戏的批评很公正-他的主要观察是玩起来不是很有趣,但是与其他类似游戏相比,它非常快。 我还喜欢阅读他在当时的几本杂志中找到的那本书的评论。 我在YouTube评论中与他进行了愉快的交流,他更改了YouTube视频的标题,以包含我的名字,这是一个很好的手势。 无论如何,这对我来说是一次绝妙的旅程,使我想起了我的编程根基! 如果您觉得自己想要完整的"输入它 经验,可以从Spectrum Computing下载该书的葡萄牙语(!)版本,您可以在" Labirinto"中找到该游戏。 (第105章第4章)。 否则,此GitHub存储库包含一组TAP格式的文件,这些文件可能在Spectrum模拟器中工作,尽管我还没有机会自己尝试一下。