最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

《植物大戰(zhàn)僵尸》自定義地圖 簡易教程

2021-11-12 20:46 作者:SunnieShine  | 我要投稿

如何實現(xiàn)一個自定義地圖呢?比如這樣:

可以看到圖片里原本的地圖是中間兩行是泳池,可現(xiàn)在變成了下面三行全是泳池了。這個怎么做到呢?下面我們按照這個地圖規(guī)則來給大家介紹,如何實現(xiàn)一個自定義地圖并能夠玩起來。

第一部分 編輯存檔文件

這部分是整個里面比較難的一部分,因為尚未學過編程基本知識的同學們可能不太好理解一些定義。我們這里盡量不介紹任何的術語詞匯,照著做就可以做。

注意,本文按照游戲在電腦上為基礎介紹內容。所有下面介紹的東西均為電腦程序,請勿在手機的應用商店上下載和搜索這些東西。

第一步 下載 WinHex 軟件

這里我們介紹一個軟件,叫做 WinHex。軟件長這樣:

WinHex 軟件網上有下載,雖然是付費的,但是也有免費的版本。請下載一個并安裝到你的電腦上。安裝軟件的細節(jié)就不介紹了,因為基本上下載好之后,就是綠色版軟件,下載下來一般都是壓縮包,解壓之后直接就可以打開。

第二步 找到你的游戲存檔文件

為了能夠讓我們的程序能夠直接使用這樣的地圖,我們先要知道一點的是,整個程序會把基本的地圖數(shù)據(jù)保存至存檔文件里。存檔文件是以 dat 結尾的文件,它保存在你的游戲程序的相關位置下。

  • XP 系統(tǒng)以及之前的版本:游戲的程序文件同一個目錄下就有一個叫 userdata 的文件夾,里面就保存了游戲的存檔文件;

  • 其它的 Windows 系統(tǒng)版本:路徑位于 C 盤:C:\ProgramData\PopCap Games\PlantsVsZombies\userdata。

原版的游戲版本里,我們用的是 13 號存檔,這個存檔是生存模式(無盡)的存檔。所謂的存檔編號,是你打開 userdata 文件夾之后看到的類似 game1_xx.dat 的文件名的這個 xx 部分。如果沒有的話,你可以先打開無盡模式,先選卡之后,開始游戲。開始游戲后,僵尸會有一段時間之后才會出來。我們這段時間就不要繼續(xù)玩下去了,因為存檔還沒有修改。這個時候(僵尸還沒有出現(xiàn)之前)就退出游戲,并選擇保存游戲進度。

然后你就會發(fā)現(xiàn),userdata 文件夾下多了一個叫 game1_13.dat 的文件。這個文件就是我們現(xiàn)在要用到的無盡存檔。

第三步 把 game1_13.dat 拖到 WinHex 里打開

這一步就直接用 WinHex 打開。打開方式有很多,比如把存檔文件直接拖進程序里,也可以在 WinHex 里選擇打開文件,然后找到 game1_13.dat 文件,然后確定。

如果要想 WinHex 是中文版的話,可以下載之后,選擇上面菜單欄里 Help 下的 Settings,選擇中文就可以了。

打開之后,就跟前面那個圖片里顯示的內容一致了。下面我們需要修改這個存檔。

第四步 編輯存檔文件的地圖部分

我們找到左側 Offset(偏移量)位于 00000010 到 000000E0 期間的這些數(shù)據(jù)。這些我們地圖的數(shù)據(jù)。至于為什么是這些,這個是游戲規(guī)定的,這個我們記住就可以了。

另外,我這里介紹的是原版的存檔,它們位于這里。如果你玩的是別的改版,或者是新版的 PVZ,可能地圖信息就不是這一段了。這個可能你需要網上搜一下。我這里說的是原版的存檔的情況。

選中的這些數(shù)據(jù),是一組四個兩位數(shù)構成,其中第一個數(shù)是 01 到 03 的數(shù)據(jù),而剩下三個數(shù)都是 00。我們只改前面是 01 到 03 的這些數(shù)。這個 01 到 03 分別對應了如下信息:

  • 01:普通的地面

  • 02:無草皮的地面

  • 03:水

這個數(shù)據(jù)對應的是一格一格的數(shù)據(jù),而并非是一整行或一整列的數(shù)據(jù)??梢詳?shù)一下這一段數(shù)據(jù)里的非 00 的數(shù)據(jù),剛好是 54 個數(shù),對應到游戲地圖一共 6 行、每行 9 個格子構成的地圖完整地形。

請注意順序。從 00000010 行開始的第 8 列開始,每讀一個數(shù),代表的是從左上角開始,從上往下、從左往右的數(shù)據(jù)。比如第一個數(shù)據(jù)的 01 對應的是整個游戲地圖的左上角的第一個格子。然后第二個數(shù)對應的是整個地圖第二排的左起第一格。

我們按照水陸對半的地圖介紹,那么地圖修改應該改成這樣:

是的,連續(xù)重復 9 組的 01、01、01、03、03、03,因為這樣對應的才是水陸對半的地圖。

改變完成后,可以按下 Ctrl + S 保存文件,也可以在上面的菜單欄里第一列找到保存。宣告第一階段的修改完成。

第五步 編輯存檔文件的出怪部分

當然了,地圖修改完成后,游戲還需要改變出怪類型。我們找到 Offset 位于 00000480 行第 8 列的地方開始:

我們選擇的這部分是我們需要修改的部分。注意這一段數(shù)據(jù)表示出怪到底是陸地僵尸還是水路特有的僵尸。和剛才的地圖數(shù)據(jù)結構差不多,也是四個兩位數(shù)一組,第一個數(shù)表示出怪信息,后面三個保持 00 即可。改變的數(shù)據(jù)可以是 00 到 02 里的數(shù)據(jù)。其中:

  • 00:這一行不出怪

  • 01:這一行出陸地僵尸

  • 02:這一行出水路特有的僵尸

請看到這一段。這一段我們要按照游戲地圖順序從上到下修改,水陸對半的地圖出怪是上面三行是陸地僵尸,后面三行是水路特有僵尸,因此我們改成這樣才行:

可以看到,修改后的數(shù)據(jù)依次是 01、01、01、02、02、02。這是顯然的。

好了,存檔修改完成。記得保存。保存后,WinHex 就可以關掉了。

第二部分 編輯游戲地圖(背景)

第一步 下載打包解包工具

當然,我們是自己改變的數(shù)據(jù),因此背景圖片不可能不改吧。這里我們需要使用一個程序工具來解鎖編輯游戲的背景圖片。這個程序叫“植物大戰(zhàn)僵尸 輔助工具 V3.1”,長這樣。

它自帶一些修改器的功能,不過我們一個都用不上。我們這里只用下面的打包和解包模式。這個軟件可以在貼吧里找到,你可以去找一個下載下來。下載下來之后我們需要解包 pak 文件。

第二步 解包 pak 文件

我們找到游戲目錄下,有一個叫 main.pak 文件。

這個文件是游戲的各個素材的加密壓縮包文件。這個地方我們需要解包這個文件,才能查看里面的東西。我們使用剛才下載的軟件,選擇解壓模式。然后在“PAK 目錄”里輸入和選擇你接下來把各個素材保存到哪個文件夾里,然后“PAK 文件”里輸入和選擇這個 pak 文件的路徑。

選擇好之后,我給一個參考結果:

這個就是最終結果,你可以按照你電腦的樣子靈活變動這里的結果。接著點擊執(zhí)行即可。一會兒,程序會彈出“解包 PAK 文件完成”的內容,這樣就表示你解包操作成功了。然后我們打開剛才選擇的各種素材的保存文件夾,就可以找到各個素材的具體內容。

第三步 自由發(fā)揮地圖背景圖片

我們打開文件夾,然后里面是使用若干文件夾列舉的素材。我們用到的背景圖片使用的是 images 文件夾。打開 images 文件夾,我們可以找到 background3.jpg 文件:

請注意這個圖片的中間是白色的,因為你在玩游戲的時候可以發(fā)現(xiàn),泳池在游戲期間是“晃動”的,水是在里面有動態(tài)效果。不過我們自定義地圖可能不再需要這樣的效果了,因為我們改變地圖之后,水不一定在這里了。

我們使用 PhotoShop、畫圖工具等等你喜歡的圖片編輯工具來修改這個圖片。這里需要你至少會畫圖工具來編輯一個圖片。我們把它改成大概可以放三行陸地三行泳池的效果就可以了。

改成這樣就可以了。這個圖片是我自己用畫圖工具做的,很多地方都有瑕疵(比如地圖第一列左邊明顯有修改痕跡),但是不妨事我們玩游戲,因為游戲地圖的泳池和草皮已經夠我們使用了。然后,把這個編輯的新文件覆蓋掉原來的 background3.jpg 文件。注意是覆蓋,要完全把原來的泳池地圖給替換掉。你的編輯的圖片甚至必須是 jpg 格式的,一定不能是 png 等別的格式,否則不生效,因為游戲程序只讀取 jpg 文件。

第四步 消除泳池里的水晃動特效

編輯完成后,我們還需要去除游戲自帶的晃動水的特效。如果不去掉的話,你玩游戲即使地圖成功替換了,但是你還是會發(fā)現(xiàn)水的晃動特效仍然在地圖原本的中間兩行地面上,而且特效會蓋掉你原來地圖中間兩行的圖片,因此這樣的特效我們現(xiàn)在不需要,因此我們要消去它們。

仍在 images 文件夾下,在后面有一系列以 pool 開頭的圖片文件:

這些文件是我們要替換過去的文件。請注意,這是我修改后的樣子,你需要把這些圖改成我上面這樣。請注意,特別是 pool_shading_.jpg 這個文件,它原本是自帶波光粼粼的效果的圖片,這里我們要給圖片改成全黑的。

最后要注意一下,在修改圖片的時候,不管你怎么改,圖片原本的尺寸大小都不要改變。你只需要在基礎上,涂黑的涂黑,涂白的涂白即可。編輯完成后,圖片和上一步差不多,也得覆蓋掉原來的圖片。

第五步 重新打包文件

剛才我們修改完成了圖片后,我們得重新打包回去,然后程序才可以識別。于是我們現(xiàn)在仍然使用剛才的程序,這次選擇打包模式而不是解包模式了。這次,我們要把這個文件夾作為基礎文件夾,然后生成 pak 文件。文件路徑隨便選一個地方就行。

參考結果是這樣的。然后按執(zhí)行即可。然后 pak 文件就會在指定的路徑下保存下來。和剛才一致,如果看到彈窗寫的是“打包完成”的字樣就說明保存成功了。

至此,整個 pak 文件也編輯完成了。

第六步 替換掉原來游戲目錄下的 pak 文件

下面我們把剛才的 pak 文件直接替換掉原本的 main.pak 文件。注意這里是直接替換,如果你覺得可能會不成功的話,可以改掉原來游戲目錄下的 main.pak,隨便改個名字,這樣游戲就識別不了了,你再把剛才產生的 main.pak 文件給粘貼進目錄下即可。

最后,啟動游戲。期待結果成功吧!

如果你看到了這樣的結果,那么恭喜你,自定義地圖完成!

第三部分 疑問解答

前面兩個部分我們完成了地圖的自定義,下面我們介紹一些可能你會遇到或者會想到的問題。

一、既然地圖按格子為單位,那么同一行同時有水和草皮會如何?

實際上,游戲可以做到這樣的效果,不過要看情況。我們剛才說到,地圖數(shù)據(jù)修改和出怪信息是分開的,如果出怪是 01(出陸地僵尸)的話,那么普通的那幾種僵尸(普通、旗幟、路障、鐵桶和紗窗門僵尸)遇到水會自動下水,但其它陸地僵尸遇到水則直接當成陸地一樣直接走過去。正是因為這個游戲有這類 bug,因此我們不建議你這樣編輯地圖信息:請盡量保持單行的所有格子的類型一致。

二、能否全地圖水路?

可以,但也有 bug。游戲機制導致不建議你這么編輯。如果所有陸地都改成水,并且六行都改成出水路特有僵尸的話,正常的地方都挺正常的,確實六路都會正常出水路特有僵尸。但 bug 會使得最后一行(最下面這一行)仍然會出陸地僵尸。換句話說,陸地僵尸仍會從最后一行出現(xiàn),并且按照剛才的 bug 一樣,那幾種僵尸會有下水效果,但其它僵尸會自動按陸地一樣直接走過這一行的每一個格子。而且,它們甚至還不會傷害你的植物。但我們強烈不建議你這么編輯地圖數(shù)據(jù)。

三、可否修改僵尸的具體出現(xiàn)種類?

對不起,不行。因為每一輪的僵尸是程序隨機生成的,因此你無法從存檔層面修改它們。即使你能夠找到它們的具體數(shù)據(jù)位置,使用 WinHex 改掉,但這 2 flags 通過后,僵尸又會隨機生成新的結果,因此無法達到你想要的長期效果。

四、能否修改僵尸和植物血量?

呃……我們講的是怎么自定義地圖,這些都不在我這個文章的討論范疇。實際上也做不到,你甚至也不能更改每一次選卡后能夠打多少 flags 這類信息。因為它們是程序控制的,不是存檔控制的。

五、如果我把泳池地圖替換成本來就只有五行的那些地圖,會怎樣?

我們剛才的操作是基于六行的地圖修改的。如果你變更游戲地圖的背景圖片的話,可能植物種植就不會按照我們預期的放在植物的對應格子上去了。如果我們要模擬出那樣的效果(只有五行的地圖,但用泳池的地圖來改),我們需要保留最后一行是無草皮的狀態(tài)——按照剛才無草皮的數(shù)據(jù)對應地圖和出怪信息改掉它們,然后圖片同步改成最后一行無草皮即可。


《植物大戰(zhàn)僵尸》自定義地圖 簡易教程的評論 (共 條)

分享到微博請遵守國家法律
建水县| 巩义市| 民县| 仁寿县| 潮安县| 偃师市| 平潭县| 乡城县| 紫金县| 平和县| 武夷山市| 盐津县| 贵港市| 分宜县| 曲阜市| 濮阳县| 迁西县| 汉阴县| 遂川县| 合肥市| 海林市| 郎溪县| 林甸县| 邢台市| 隆回县| 乌鲁木齐市| 渑池县| 司法| 邓州市| 华蓥市| 苗栗市| 沙河市| 高邑县| 弋阳县| 平泉县| 九江县| 吐鲁番市| 澄江县| 阿克苏市| 韶山市| 博罗县|