TeaCon 茶后談第 438 期
McJty 在 Minecraft 模組社區(qū)中因以一人之力維護(hù)十余個(gè)模組而獲得了「人工智能」的稱號(見「茶后談#168」)。若要深究這背后的秘訣,其實(shí)也不復(fù)雜:McJty 的所有模組都共用同一個(gè)前置 McJtyLib,這樣一來他就不必把同樣的代碼重復(fù)寫上十幾遍了。實(shí)際上,在 2016 年到 2018 年間,McJty 的模組們還共用另一個(gè)前置模組:CompatLayer。這個(gè)在 2016 年 11 月 17 日發(fā)布1的模組的功能實(shí)際上就在其名字里:兼容層;確切地說,是跨 Minecraft 1.10.2 和 1.11.2。McJty 依靠 CompatLayer 做到了「讓同一個(gè)模組文件能不經(jīng)修改,同時(shí)在 1.10.2 和 1.11.2 上運(yùn)行」。該模組同時(shí)也說明「1.10.2 到 1.11.2 之間的底層代碼差異,相比于其他版本之間的差異來說,算是比較小的」。遺憾的是,在 Minecraft 1.12 發(fā)布后,McJty 嘗試移植其模組時(shí),認(rèn)為 「1.11.2 到 1.12 的變化已經(jīng)大到 CompatLayer 招架不住了」,遂決定放棄令 CompatLayer 兼容 1.12.2。由此,CompatLayer——為數(shù)不多的跨版本模組兼容層的成功案例——在 2018 年 2 月 16 日更新后停更至今?!颈酒诰庉嫞?TUSK】
[1]: https://www.curseforge.com/minecraft/mc-mods/compatlayer [2]: https://redd.it/6gl0i8