NetHack游戏简介
这款游戏非常容易让你上瘾。你可能需要花费一生的时间来掌握它。许多人玩了几十年也没有通关。
NetHack的前身是Rogue游戏,主要流行于上世纪80年代,主要在大学生中流行,但是当时游戏源码并未公布,因此由一群不同国家的开发者通过网络交流开发了NetHack这款游戏。
1987年7月28日,Mike Stephenson发行了原始NetHack。直到1989年,同样在7月发行的3.0版本,开始凝聚了一班人组成开发团队。NetHack是开源软件,今时今日,成为了其中一款最古老而仍在活跃开发的游戏,由于是开源软件,所以很多调试和新内容开发工作都会有同样身为玩家的志愿者参与。
FaceBook开源环境
The NetHack Learning Environment (NLE) 采用的ASCII字符组成图形界面,代表不同的角色、物品。旨在提供一个强化学习接口,促进深度强化学习算法研究。与Atari游戏相比,其动作空间巨大,与环境的交互也更加复杂,更偏向一种策略游戏。
NetHack Gym EnvironmentNetHack游戏玩法
玩家需要选择自己所扮演的角色并指定性别、种族、职业和阵营,或者选择让系统随机产生一个角色。游戏者可以扮演经典奇幻角色,比如骑士、野蛮人、巫师、游侠、女武神、僧侣和武士,也可以选择一些比较少见的角色,诸如考古学家、游客和洞穴人。玩家的角色和阵营决定了其在游戏中需要侍奉的神灵。
玩家的目标就是在地下城的最底层获取Yendor的项链并将其供奉给自己的神灵。作为回报,角色会成为不朽的半神。此外,一系列的支线任务也必须完成,其中包括各职业所特有的任务。
游戏开始的时候,玩家通常会有一只宠物伴随,一般是小猫或者小狗,但骑士会有一匹马以及一副马鞍。
游戏中的大部分怪物都可以用魔法或喂食等方式转化为宠物。
NetHack的地下城大约总共有50层,其中大多数都是玩家进入时随机生成的。所有层基本上都有一个向上或向下的通道(包括楼梯、梯子、陷阱或者其他形式)、一些用走廊连接起来的房间,房间里面可能有祭坛、商店、喷泉、陷阱甚至水槽。一些比较特别的层有固定的形式。游戏有几个分支路线,包括一个推箱子游戏和弗拉德之塔。
初步使用
NLE依赖Python版本3.7及以上,还依赖libzmq和flatbuffers这两个包,使用conda命令安装起来也是非常方便:
$ conda create -n nle python=3.7
$ conda activate nle
$ conda install zeromq flatbuffers
$ pip install nle
其它终端的更详细的安装介绍参考其官方介绍:https://github.com/facebookresearch/nle/。
与Gym类似,python调用如下:
>>> import gym
>>> import nle
>>> env = gym.make("NetHackScore-v0")
>>> env.reset() # each reset generates a new dungeon
>>> env.step(1) # move agent '@' north
>>> env.render()
更多学习资料
- 也许是有史以来最好的游戏:NetHack:https://linux.cn/article-4668-1.html
- Github:https://github.com/facebookresearch/nle/
- 官网:http://nethack.org/
- NetHack中文维基(有游戏详细介绍):https://nethackcn.fandom.com/zh/wiki/%E9%A6%96%E9%A1%B5
网友评论