春節(jié)過后返工的第一月工作還未下達闽铐,自我加強的時間較為充裕 所以打算將許久未動的編程重新拾起。但是又不想去些一些枯燥的內容所以 選擇了MC? 的mod開發(fā) 作為練手并學習。
學習的教程來源于:https://www.mcbbs.net/forum.php?mod=viewthread&tid=1034476&extra=page%3D1%26filter%3Dtypeid%26typeid%3D1028
大佬的愛發(fā)電
以下主要為概念摘出
大概接觸過MC MOD 的玩家都多多少少的見過 Forge .
Minecraft的兩大特性:應為Minecraft是java 編寫的商業(yè)應用
1.Minecraft相對容易修改;
2.代碼本身是不開源而且是被混淆過的。
MCP
MCP就利用這兩個特性党晋,實現(xiàn)了一套工具,可以讓開發(fā)者可以直接修改Minecraft jar包里的內容
隨之演化出了:srg名徐块、notch名未玻、mcp名?
notch名:
Minecraft直接反編譯、反混淆之后的名稱胡控,通常是無意義的字母數(shù)字組合扳剿。你從名稱Notch就可以看出,這個名字是直接來自Minecraft(以及對Notch的怨念)昼激,舉例來說?j就是一個典型的notch名庇绽。
srg名:
這個名字是和notch名是一一對應的,srg名在一個版本里是不會變動的橙困,之所以叫做srg名瞧掺,是為了紀念MCP項目開發(fā)的領導者Searge。在srg名中凡傅,Minecraft中的類名已經是可讀了辟狈,變量方法等名稱雖然還是不可讀,但是有相對應的前綴和尾綴來區(qū)分了夏跷。以上面的j為例哼转,它的srg名是func_70114_g。
mcp名:
在mcp名中槽华,代碼已經是可讀的了壹蔓。和我們正常寫java程序中的名稱沒什么兩樣。但是mcp名是會變動的猫态。舉例來說上面的func_70114_g它的mcp名是getCollisionBox佣蓉。mcp名中的類名和srg名中的類名是相同的煮纵。