TeaCon 茶后談第 391 期
幾乎所有 Minecraft 玩家都十分熟悉包括但不限于合成表等「配方」(Recipe)的概念;然而,這套機(jī)制的技術(shù)實(shí)現(xiàn)其實(shí)產(chǎn)生過(guò)多輪迭代。在 Minecraft 1.12 之前,所有原版配方都寫(xiě)死在代碼里,而早期流行的 Risugami ModLoader 并沒(méi)有做任何修改,這之后的 FML(后合并入 Forge)也只是簡(jiǎn)單包裝了一下原版的代碼。因此,模組開(kāi)發(fā)者們通常也不得不編寫(xiě) Java 代碼將配方「硬編碼」在模組中,而額外添加的其他種類的配方,則需要自行編程實(shí)現(xiàn)。一開(kāi)始這可能不是什么問(wèn)題,但當(dāng)「魔改整合包」的數(shù)量與日俱增,玩家開(kāi)始追求客制化的游戲內(nèi)容時(shí),模組開(kāi)發(fā)者為了允許玩家修改其他種類的配方,往往需要自行設(shè)計(jì)修改手段,并編寫(xiě)復(fù)雜的文檔,從而為魔改帶來(lái)了不少麻煩。這一現(xiàn)象一直持續(xù)到 Minecraft 1.13 才得到較大緩解——從這一版本起,「數(shù)據(jù)包」(Datapack)的正式引入,使得玩家只需要編輯 JSON 文件就能調(diào)整各種配方。同時(shí),模組開(kāi)發(fā)者也可以通過(guò)數(shù)據(jù)包讀取自定義配方類型。數(shù)據(jù)包大大簡(jiǎn)化了整合包的深度定制,極大地解放了模組社區(qū)的創(chuàng)造力?!颈酒诰庉嫞篘oName德里奇,ustc_zzzz】
標(biāo)簽:TeaCon茶后談