在制作材質之前,我們要先知道…
什麼是材質(資源)包
哪些文件(材質包裡的)可以更動
了解材質(資源)包
資源包可以放置在 .minecraft 裡面的 resourcepacks 文件夾。每個資源包都由一個子文件夾或一個 .zip 文件,這個文件裡面有 resourcepacks 文件夾。
Minecraft 是通過根目錄里的pack.mcmeta來識別一個資源包的,這個文件的格式為JSON格式。
根目錄
pack.png: 可選圖像,這個圖像將會在資源包選擇菜單中作為資源包的縮略圖顯示。
pack.mcmeta: 這個文件讓 Minecraft 知道這個文件夾是一個資源包。
pack: 保存資源包的信息
pack_format: 資源包版本。如果數值與當前需要的數值不匹配,則資源包就會顯示一個錯誤,進行附加確認後才能加載資源包。在1.9之前需要的數值為1,在1.9至1.10.2為2,在1.11和1.12中為3,在1.13為4。
description: 在資源包菜單里要顯示的資源包名稱。該文字將會顯示為2行。如果文字太長,那麼超長的部分就會被砍掉。
language: 包含了要向語言菜單里添加的附加語言
A language 一個語言的語言代碼,其與文件夾里.lang的名字相同assets/minecraft/lang
name: 語言的完整名稱
region: 國家或地區名稱
bidirectional: 若為 true,語言將會從右到左顯示。
accets: 材質文件存放處
在accets資料夾中的minecraft資料夾裡,可更動的東西有:
blockstates: 方塊在遊戲中,處於不同的條件下所呈現的材質或方塊模型
model: 方塊在遊戲中的方塊模型
lang: 物品在遊戲中的名稱
texts: 包函終末之詩、鳴謝名單、閃爍標語
textures: 材質的圖片檔
知道這些東西後,準備一下,就可以開始制作了!
準備材料與補助網址
電腦一台
此文章一篇
Nova Skin - Minecraft Resource Pack Creator(如果沒有PhotoShop就用這個吧!)
開始制作(待補)
textures |
model |
首先,我們要先獲得資料夾,有兩個方法: 一、一個須要有耐心的方法,一個一個自己建立;二、直接用7-zip打開位在AppData\Roaming\.minecraft\中versions的jar.檔(minecraft的核心檔案),只留下pack.png、pack.mcmeta、accets三個檔案,我基本是後者(我那麼沒耐心,當然只能是後者)
有了檔案,就開始改制
★ 有些檔案位置不能改動
textures
位於accets\minecraft\的資料夾,用於儲存材質的圖片檔,內容為:
blocks: 方塊材質
colormap: 芒草、草地…等在不同的生態域中呈現的顏色
effect: (求用途)
entity: 實體材質
environment: 雲、終界的天空、月亮、雨、雪、太陽的材質
font: 所有字形
gui: 圖形始用者界面
items: 物品材質
map: 地圖和地圖圖標
misc: 遊戲中的遮照
models: 盔甲材質
painting: 掛畫材質
praticle: 粒子效果
blocks: 方塊材質
基本上除了在entity中可以看到的方塊材質(箱子、床…等),皆可在這找到
假如想做一個橡木原木(log_oak)的材質
首先,用PhotoShop開一個16×16(或倍數)的檔案,並開始繪制出想像中的橡木原木。
繪制完後,將檔案另存並設檔名成log_oak,扔進資料夾中,你就有了屬於自己的橡木原木了!
在有些檔案中,有附帶一文件檔(檔名+副檔名.mcmeta),而圖片會呈現16×(16×n)(或倍數),這種的就叫動態材質。
以下是minecraft wiki的範例:
{
"animation":{
"width":1,
"height":7,
"interpolate": true,
"frametime":1,
"frames":[{
"index":0,
"time": 0 },
1,2,3,4,5,6,4,2]
}
}
width 和 height 是每一幀的尺寸(單位:像素)[1] interpolate(true/false)決定了 Minecraft 是否在2幀內是否生成更多幀。frametime 是兩幀之間的默認延遲,為50毫秒。 frames 是幀列表,按照要播放的順序進行排列。index 和 time 都可被用來指定一個幀,這一幀比默認幀的時間間隔都不同。
注:如果你真的需要製作一個動態材質,使用下列代碼,這將會一幀一幀地播放。
{
"animation": {}
}
保存文件,把文件名改成你想動畫化的材質文件的名稱(就像你想動畫化 stone.png,你應該保存它為 stone.png.mcmeta)。然後把這個文件放置到與材質相同的文件夾(或許是 stone.png)。
個人言論:其實我覺得直接從其他地方複製不是比較快嗎?
colormap: 芒草、草地…等在不同的生態域中呈現的顏色
這些東西是我從plant minecraft抓下來的color map的原本的minecraft是非常不實用,通常是用opifine的color map。
entity: 實體材質
在entity中可以看到"可互動式"的方塊材質(箱子、床…等),以及所有實體
因為所有實體的大小都不盡相同,所以圖片的大小也不會一樣。
於是如果要做材質的話,就用PhotoShop把檔案打開,並更變且繪制出想像中樣子。
也可以把檔案打開後,用PS的功能調整大小,再繪制。
順帶一提,實體材質,也可以做成動態材質;把實體材質的高×n,加上附帶文件檔(檔名+副檔名.mcmeta),就可以了。
langs:語言(翻譯修補
可以用來把一個物品的名稱改成另一個名字
例如:我把一個弓的樣子改成了十字弩(ㄋㄨˇ),配方不說(不是材質包的範圍),你總不叫它“弓”吧!!
所以就須要用.lang把它的名字改成十字弩。
所以:在zh_TW.lang中找到 item.bow.name,把“弓”更改成“十字弩”就好了。
其它檔案
在textures資料夾中,除了上述較特別的使用方式以外(待補)
其他的圖片只要依原本圖片覆蓋的地方再覆蓋上去就可以了
model
如果你打開過model(用wordpad)就知道,它其實很復雜
軟體主要推薦是MrCrayfish's Model Creator
以下是個人見解---
model主要依賴JSON格式為生
而JSON對任何的"字串"非常敏感
只有 " : { } [ ] , ; \等等的JSON才會進行形式上的區別
且minecraft 於JSON 中的關鍵單詞又是一門學問
個人還在拚(ㄆㄢˋ)命了解中...
-------------------
以上是本次的教學文
若有問題、怪怪的地方,請至下方留言
留言列表