今天 為各位介紹的是,不需要額外啟動器、在Minecraft裡就可以直接運作的模組格式:「json」
嚴格說來,它只能被動修改遊戲數值,也不太算模組,不過以前的.mod何嘗不是如此?
它的運作原理是什麼?如何導入?簡單來說,材質包。
所以它是跨平台的:Windows 10、Android、iOS都可以通用。
PC的材質包可以做到改怪物聲音,而PE的材質包,裡面有幾個.json的檔案,它們就是關鍵。
0.15.0的材質包架構,一般最外層有以下檔案:
- blocks.json —— 方塊材質的設定值
- items.json —— 物品材質的設定值
- resource.json —— 所有材質的索引
- models(資料夾)/mobs.json —— 實體材質的設定值
這些是關鍵,如果設定不好有可能會讓系統抓不到材質而在遊戲中顯示原版。如果沒有這些檔案,系統會使用預設值。
原本他們的功用是索引,即指出每個材質的路徑;不過卻也提供一些附加值,可以自由修改。
目前知道,可以這是部分方塊的設定值。
官方寫法很整齊,每個方塊材質就切一行;目前可以對每個方塊增減的值有:
texture、isotropic、blockshape、carried_texture
圖中的功用寫得很清楚了,這裡我做個範例,讓我們把「鵝卵石」外型改成水、讓它隨生態系變化、材質換成泥土:
最後是實體材質的設定,比較麻煩的是,每種實體的屬性都不太一樣,一般來說,主要有:
- gemoetry.xxx ——指定生物的代碼
- texturewidth ——皮膚寬度
- textureheight ——皮膚高度
接著就是個別部位的設定,恕這裡無法詳述。
MCPEDL日前推出了一個以這種方式修改而成的模組:Mega Mobs,透過修改這些部位屬性裡的大小來讓怪物放大:
結語
json因其特性、只能被動修改,不能做到JS上的實質新增物品,
因此目前的主要用途,是用在材質包的輔助上。
因此目前的主要用途,是用在材質包的輔助上。
不過,它跟JS的函數多少其實是有點重疊的部分在。