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

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

哪里可以找到mod的API手冊/文檔?

2022-02-18 22:36 作者:道家深湖  | 我要投稿

沒有API文檔,

即使有人把文檔擺在你面前,

也不要信。

沒有文檔、沒有文檔、沒有文檔。我重復(fù)了很多次了。

嚴謹一些來說,就1.12.2 forge而言,多數(shù)類的API沒有文檔予以闡釋。

當(dāng)然,如果你用的是網(wǎng)易的python MDK,或者高版本的數(shù)據(jù)包,那些可以有文檔,沒問題。

1.12.2forge引入的類,那個也可以有文檔,沒有問題。

但是多數(shù)情況下,你需要跟mc自己的類打交道,那個是真的不存在可信文檔。


為什么?

思考一下forge的歷史和本質(zhì)就明白了了。

Minecraft發(fā)布后,反編譯得到過的代碼是經(jīng)過了混淆的?;煜螅涌诘拿志拖袷?a aa aab這樣,完全不可讀。然而,社區(qū)一部分人,人力解讀這些天書,強行給他們起了新的名字,比如getEntityEquipmentSlot。除此之外,為了讓不同的mod加?xùn)|西時不至于沖突,forge還寫了一些中間層的代碼。這些中間層代碼確實有一定程度的文檔。

既然你知道這些東西是人力解讀的,那它不可避免地就有風(fēng)險。顯然,forge不能保證自己解讀正確,比如1.12.2里實體類的isNonBoss接口,在1.16里,經(jīng)由官方公布正確答案,它就變成了完全不同的名字:canEntityTravelBetweenWorld什么的,具體拼寫我不記得了。

如果你看它的1.12.2名字,你可能會覺得它用于表示是否為boss,然后越走越偏,最終得出釣魚鉤是boss的結(jié)論。如果forge真的寫了文檔,那也勢必是在這種錯誤基礎(chǔ)上把人帶跑。

forge還有一些東西未做解讀,比如,世界生成代碼里大量的局部變量,看著就讓人頭皮發(fā)麻。這些東西自然也不會有文檔。

事實上,商業(yè)游戲在寫代碼的時候,未必會有配套的文檔。往往版本催得很緊,寫代碼本身都來不及了,哪還有時間寫配套文檔。如果Minecraft開發(fā)者自己都沒有文檔,你指望forge的人給你寫一個出來嗎?更不靠譜。

那么為什么總有人求api文檔?

因為很多程序員習(xí)慣于使用既有的游戲開發(fā)引擎,比如Unity3d。這種東西,它的目標一開始就是讓人能用,所以會生產(chǎn)出配套的可靠文檔。這種情況下,參閱文檔就是正確的開發(fā)方式。

如果一個人之前習(xí)慣和這種東西打交道,那么他過去帶來的經(jīng)驗就會促使他去尋求文檔。

Minecraft這種商業(yè)游戲,一開始就沒打算讓第三方去開發(fā),所以毫無文檔。它做到的,也不過是推出了官方的魔改方式——數(shù)據(jù)包,以及官方的變量映射表而已。網(wǎng)易推出了自己的基巖版開發(fā)框架,那個和U3D一樣是給開發(fā)者用的,所以去尋求文檔是正確選擇。

沒有金坷垃,怎么種莊稼?

不用肥料就不能種田嗎?

實際上,如果你想開發(fā)mod,所學(xué)習(xí)的東西主要有三種:

·先驅(qū)者們寫的mod開發(fā)教程。

·其他mod已經(jīng)寫好的同類范例。

·mc和forge自己提供的源碼。

如果你不知道m(xù)c的某個類是干嘛的,那就查找它的所有引用,自己一點點分析。如果你不知道做某個功能該從何下手,那就先找教程,再找同類事物的源碼。當(dāng)然,如果你想做的東西前無古人,那么你自己就是研究者。從零到一的任務(wù),交給你了,加油。


哪里可以找到mod的API手冊/文檔?的評論 (共 條)

分享到微博請遵守國家法律
大同县| 图们市| 霍林郭勒市| 郁南县| 芮城县| 阳城县| 忻城县| 余干县| 阿勒泰市| 望奎县| 南华县| 孝感市| 奎屯市| 保亭| 柞水县| 伊通| 巴东县| 青铜峡市| 涟水县| 沅江市| 益阳市| 淮滨县| 扎囊县| 定安县| 阳谷县| 凭祥市| 巴彦淖尔市| 九寨沟县| 拉孜县| 新巴尔虎右旗| 太湖县| 桂林市| 全南县| 色达县| 普兰店市| 镇坪县| 拜城县| 江都市| 资溪县| 策勒县| 辽阳市|