巴哈姆特

哈啦區 Minecraft 我的世界(當個創世神)
查看全文
ivon852 (ivon852) 2016-08-24 12:39:58
#1
大家好,我是Ivon。

今天 為各位介紹的是,不需要額外啟動器、在Minecraft裡就可以直接運作的模組格式:「json」

嚴格說來,它只能被動修改遊戲數值,也不太算模組,不過以前的.mod何嘗不是如此?

它的運作原理是什麼?如何導入?簡單來說,材質包

所以它是跨平台的:Windows 10、Android、iOS都可以通用。



PC的材質包可以做到改怪物聲音,而PE的材質包,裡面有幾個.json的檔案,它們就是關鍵。
0.15.0的材質包架構,一般最外層有以下檔案:
  • blocks.json —— 方塊材質的設定值
  • items.json —— 物品材質的設定值
  • resource.json —— 所有材質的索引
  • models(資料夾)/mobs.json —— 實體材質的設定值
這些是關鍵,如果設定不好有可能會讓系統抓不到材質而在遊戲中顯示原版。如果沒有這些檔案,系統會使用預設值。

原本他們的功用是索引,即指出每個材質的路徑;不過卻也提供一些附加值,可以自由修改。



我們從各個檔案下手,讓我們看看可以改些什麼。
  • blocks.json



目前知道,可以這是部分方塊的設定值。
官方寫法很整齊,每個方塊材質就切一行;目前可以對每個方塊增減的值有:
texture、isotropic、blockshape、carried_texture

圖中的功用寫得很清楚了,這裡我做個範例,讓我們把「鵝卵石」外型改成水、讓它隨生態系變化、材質換成泥土:

雖然沒有水的流動特性,但是行為會改變。



  • items.json



寫到這裡我都覺得自己在做插件了.......

這是部分物品的設定值。

物品的屬性很多,大屬性有:
name、id、icon、use_animation、foil、use_duration、food

food下的小屬性有nutrition、saturation_modifier、is_meat、effects

一樣來舉個範例,不改ID,我們把金蘋果的部分屬性複製給麵包:



吃了就有金蘋果的效果。




  • resource.json


只是單純的索引而已,一般你只需要改前3行的東西,好讓你在選擇材質包時方便辨識。


  • models/mobs.json



最後是實體材質的設定,比較麻煩的是,每種實體的屬性都不太一樣,一般來說,主要有:

  • gemoetry.xxx  ——指定生物的代碼
  • texturewidth ——皮膚寬度
  • textureheight ——皮膚高度
接著就是個別部位的設定,恕這裡無法詳述。
MCPEDL日前推出了一個以這種方式修改而成的模組:Mega Mobs,透過修改這些部位屬性裡的大小來讓怪物放大:




結語

json因其特性、只能被動修改,不能做到JS上的實質新增物品,
因此目前的主要用途,是用在材質包的輔助上

不過,它跟JS的函數多少其實是有點重疊的部分在。

看較舊的 7 則留言

亞加尼西: B8 2016-08-25 10:29

如果跟一般手機版一樣多樣,做地圖就輕鬆了=w=

濕漉漉鵪鶉蛋: B9 2016-08-25 10:48

根本是做材質包嘛!XD

YinMo 隱歿: B10 2016-08-25 16:55

3D版材質包手機也有Ouo原理跟電腦一樣圖層拼貼

黑鐵瘋: B11 2016-11-01 10:01

那能不能新增全新的方塊物品生物等?

ivon852: B12 2016-11-04 08:51

@黑鐵瘋 目前只能用取代的方式

開啟 APP

face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】