Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用Python随机生成的地下城_Python - Fatal编程技术网

用Python随机生成的地下城

用Python随机生成的地下城,python,Python,我想知道如何为我正在开发的一个小文本游戏创建一个完全随机的迷宫/地牢。我真的不知道从哪里开始,因为我以前从未做过这样的事情。我该怎么做?我需要这些房间知道里面有什么暴徒,地上有什么东西,出口在哪里,还有他们要去的其他房间。感谢您的帮助 因为这是一个非常宽泛的问题,我只给你一个一般性的回答。您可能需要创建一个新类,该类将包含房间的数据。在这个类中,您可以使用变量存储随机生成的数字(使用随机模块),然后让方法使用这些数字来确定每个房间中的布局、怪物和物品。然后,您需要做的就是创建一个二维或三维网格(

我想知道如何为我正在开发的一个小文本游戏创建一个完全随机的迷宫/地牢。我真的不知道从哪里开始,因为我以前从未做过这样的事情。我该怎么做?我需要这些房间知道里面有什么暴徒,地上有什么东西,出口在哪里,还有他们要去的其他房间。感谢您的帮助

因为这是一个非常宽泛的问题,我只给你一个一般性的回答。您可能需要创建一个新类,该类将包含房间的数据。在这个类中,您可以使用变量存储随机生成的数字(使用随机模块),然后让方法使用这些数字来确定每个房间中的布局、怪物和物品。然后,您需要做的就是创建一个二维或三维网格(可能使用房间类别列表),并用每个包含随机数据的房间随机填充网格。

您可以创建一个二维整数数组(您的地图)。每个“对象”(如项目或出口)都会获得另一个编号。 例如:

0 = no object
1 = knife
2 = sword
3 = helm
当您需要在一个场地上组合对象时(例如,在一个场地上放置一把剑和一个头盔),您可以创建一个3d阵列。因此,您可以将一个对象添加到另一个对象的顶部

可以在数组维度中生成和随机生成x和y,并在对象范围内给它一个随机数(在本例中为-1和4之间)


希望这有帮助;-)

这是一个相当广泛的问题。你可能得不到答案。我建议您将数据合并到类中。但是首先要定义你想要如何表现你的世界,基本上现在一个房间只有一个名字,描述,物品和怪物。我想找出一种方法来创建一个随机的房间“迷宫”,有些是连接的,有些不是。它需要记住哪个出口去哪里。我知道它很宽泛,但我不知道如何简化它。到目前为止你做了什么?你们有功能齐全的单人房游戏吗?听起来你连创建对象和定义它们的交互的基础知识都还没有搞清楚。我就要这个了。现在时间还早,我只是把这个扔了,看看能不能弄点东西让它咔嗒咔嗒响。我会花一些时间来建立一个工作,然后我就可以更清楚。非常感谢。非常感谢。我在想,我可以只使用二维网格,但情况可能并非如此。我不能将房间里的物品添加到列表中吗?房间里可以有物品列表、怪物列表、陷阱列表或任何你想要的东西。例如,如果您希望在一个房间中有多个项目,您可以创建一个项目列表并将每个项目附加到列表中。您的职能部门只需通读列表即可确定房间内的时间。这也是一个选项。但我看到问题已经回答了,竖起大拇指:-D