日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

Python制作复古地牢文字冒险游戏

發(fā)布時(shí)間:2024/1/1 python 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python制作复古地牢文字冒险游戏 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

巨洞冒險(xiǎn)(Colossal Cave Adventure),又名 ADVENT、Clossal Cave 或 Adventure,是八十年代初到九十年代末最受歡迎的基于文字的冒險(xiǎn)游戲。這款游戲還作為史上第一款“互動(dòng)小說(shuō)(interactive fiction)”類游戲而聞名。在 1976 年,一個(gè)叫 Will Crowther 的程序員開(kāi)發(fā)了這款游戲的一個(gè)早期版本,之后另一位叫 Don Woods 的程序員改進(jìn)了這款游戲,為它添加了許多新元素,包括計(jì)分系統(tǒng)以及更多的幻想角色和場(chǎng)景。

今天的技術(shù)發(fā)展已經(jīng)遠(yuǎn)遠(yuǎn)超越了那個(gè)時(shí)代,但我仍然對(duì)那個(gè)年代的游戲充滿好奇。今天我就來(lái)用Python游戲?qū)崿F(xiàn)一個(gè)復(fù)古風(fēng)格的地牢文字冒險(xiǎn)游戲。

游戲規(guī)則設(shè)計(jì)

游戲主要場(chǎng)景是迷宮,四周的#是墻壁,無(wú)法穿過(guò)。

M表示怪物,G表示哥布林,H表示玩家

遭遇怪物通常有幾率對(duì)你造成一定的傷害,并且遭遇怪物后怪物并不會(huì)消失,下一次再來(lái)到這個(gè)格子時(shí)還會(huì)再遭遇怪物

哥布林是友善的,遭遇不同類型的哥布林有幾率給你不同的增幅,加血,加小蘋果等,哥布林遭遇后會(huì)消失

移動(dòng)一格需要消耗1點(diǎn)血量

血量歸零則游戲失敗

游戲的核心就是:玩家需要合理規(guī)劃路線,在血量歸零前遭遇所有的怪物即可獲得游戲勝利

勝利分?jǐn)?shù)就是通關(guān)時(shí)剩余的小蘋果數(shù)量,小蘋果數(shù)量越多勝利分?jǐn)?shù)越高。排行榜按照勝利分?jǐn)?shù)排名。

地牢生成

地牢的生成算法是一個(gè)遞歸算法,算法過(guò)程有點(diǎn)類似分割房間。

首先,創(chuàng)造一塊邊長(zhǎng)為s的正方形場(chǎng)地,隨機(jī)一對(duì)x和y作為切割點(diǎn),x為橫向切割點(diǎn),y為縱向切割點(diǎn),通過(guò)把x行和y列的值全部設(shè)置為1(墻)把這塊場(chǎng)地切割成4份

兩條切割線構(gòu)成了4面墻(可以看作是從交點(diǎn)延展開(kāi)的四面墻),在其中三面墻上打個(gè)洞(置0表示空)使其整體連通,對(duì)這四個(gè)小房間進(jìn)行遞歸調(diào)用,直到無(wú)法切割為止。

用圖來(lái)解釋,黑色部分的墻是第一次切割,把整個(gè)場(chǎng)地切割成四個(gè)房間,然后留三個(gè)門。綠色則是第二次遞歸切割,一樣是切割成4個(gè)房間然后隨機(jī)留三個(gè)門。循環(huán)往復(fù),直到無(wú)法分割為止。

實(shí)現(xiàn)怪物和哥布林

因?yàn)楣治镏g有共同點(diǎn),哥布林之間也有共同點(diǎn)。所以可以很自然的使用抽象類去定義他們。

按照游戲設(shè)定,我們有富有的哥布林,醫(yī)生哥布林和游戲哥布林。

他們都是哥布林,都有類似的特性,那就是需要初始化概率參數(shù)(init)和發(fā)動(dòng)的能力(ability)。

所以我們可以用一個(gè)抽象類去規(guī)范化具體的哥布林子類。

如下圖所示,這是一個(gè)富有的哥布林的類,它繼承自Goblin,即我們上面的抽象類

這里我們重寫(xiě)了init和ability方法,使其具有特定的功能。

再看一下其他的哥布林也是類似的。

其他怪物也是用類似的方法去定義。

游戲控制器

游戲控制器控制著整個(gè)游戲,負(fù)責(zé)調(diào)用算法生成迷宮,生成怪物,把英雄放進(jìn)地牢,顯示文字提示等,也是游戲的主循環(huán)。

效果展示

最后,歡迎大家通過(guò)微信公眾號(hào)聯(lián)系我們。

微信公眾號(hào):320科技工作室。

總結(jié)

以上是生活随笔為你收集整理的Python制作复古地牢文字冒险游戏的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。