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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

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

發布時間:2024/1/1 python 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python制作复古地牢文字冒险游戏 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

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

今天的技術發展已經遠遠超越了那個時代,但我仍然對那個年代的游戲充滿好奇。今天我就來用Python游戲實現一個復古風格的地牢文字冒險游戲。

游戲規則設計

游戲主要場景是迷宮,四周的#是墻壁,無法穿過。

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

遭遇怪物通常有幾率對你造成一定的傷害,并且遭遇怪物后怪物并不會消失,下一次再來到這個格子時還會再遭遇怪物

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

移動一格需要消耗1點血量

血量歸零則游戲失敗

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

勝利分數就是通關時剩余的小蘋果數量,小蘋果數量越多勝利分數越高。排行榜按照勝利分數排名。

地牢生成

地牢的生成算法是一個遞歸算法,算法過程有點類似分割房間。

首先,創造一塊邊長為s的正方形場地,隨機一對x和y作為切割點,x為橫向切割點,y為縱向切割點,通過把x行和y列的值全部設置為1(墻)把這塊場地切割成4份

兩條切割線構成了4面墻(可以看作是從交點延展開的四面墻),在其中三面墻上打個洞(置0表示空)使其整體連通,對這四個小房間進行遞歸調用,直到無法切割為止。

用圖來解釋,黑色部分的墻是第一次切割,把整個場地切割成四個房間,然后留三個門。綠色則是第二次遞歸切割,一樣是切割成4個房間然后隨機留三個門。循環往復,直到無法分割為止。

實現怪物和哥布林

因為怪物之間有共同點,哥布林之間也有共同點。所以可以很自然的使用抽象類去定義他們。

按照游戲設定,我們有富有的哥布林,醫生哥布林和游戲哥布林。

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

所以我們可以用一個抽象類去規范化具體的哥布林子類。

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

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

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

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

游戲控制器

游戲控制器控制著整個游戲,負責調用算法生成迷宮,生成怪物,把英雄放進地牢,顯示文字提示等,也是游戲的主循環。

效果展示

最后,歡迎大家通過微信公眾號聯系我們。

微信公眾號:320科技工作室。

總結

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

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。