MCP (Mod Coder Pack)
Mod Coder Pack (kısa MCP) başlangıçta Minecraft için modların geliştirilmesini kolaylaştırmak için senaryoların, araçların ve eşleşmelerin bir koleksiyonu olarak yaratılmıştır. Minecraft açık kaynak olmadığı ve çoğunlukla karmaşık olduğu için, orijinal kod neredeyse okunaklı olmadığından gelişmeler kötü durumdaydı. MCP, geliştiricilerin decompiled, deobuscated (insani okunabilir) Minecraft kodunu kullanarak mod oluşturabileceği bir çalışma alanı olarak tasarlandı.
İş Akışı
MCP’yi kullanmak, eklentileri geliştirme iş akışına ek adımlar ekleyerek aşağıda basitleştirilmiştir:
- MCP çalışma alanını ayarla
Minecraft istemci/sunucu dosyalarını indirin
Deobfüssiyon kodunu (okunamayan isimleri okunabilir olanlara çevirin)
Decompile kod çözme (ikili sınıflardan kaynak dosyalar üretme)
Deobfuscated Minecraft kaynak kullanarak bir eklenti oluşturun
Re-obfuscate the plugin code so it can be used with the obfuscated code at runtime
Eşleşmeler
MCP, çalışma alanı kurulumu sırasında ayrı olarak uygulanan iki eşleme kümesi kullanır. Notch *, * Searge * ve * MCP * eşlemeleri arasındaki fark aşağıdaki örnekte görülebilir:
// Notch
boolean a(rw ☃);
// Searge
boolean func_72838_d(Entity p_72838_1_);
// MCP
boolean spawnEntityInWorld(Entity entityIn);
** Notch eşlemeleri **, obfuscated Minecraft ikili dosyasındaki orijinal adlardır. Yeni Minecraft sürümleriyle düzenli olarak değişirler.
** Searge eşlemeleri **, obfuscated yöntemler, alanlar ve parametreler ile sınıflar için okunabilir isimler için benzersiz adlar içerir. Notch eşleştirmelerinin aksine, yöntem imzaları değişmedikçe genellikle Minecraft güncellemelerinde aynı kalırlar. SpongeVanilla ve SpongeForge için ayrıca üretimde (IDE’nizin dışında) kullanılırlar.
** MCP eşlemeleri **, çoğunlukla topluluk tarafından katkıda bulunan okunabilir isimleri içerir. Genellikle yalnızca geliştirme ortamında kullanılırlar ve daha sonra Searge veya Notch eşlemelerine tekrar okunamaz hale getirilirler.
Not
When you create a plugin, you work with MCP mappings in your development environment. To run the plugin in production (outside of your IDE) you need to re-obfuscate it to Searge mappings.
MCPBot’u kullanma
The MCPBot is available in the Sponge and MCP IRC channels, or in the #bot-spam
channel on Discord,
and allows you to lookup MCP mappings or contribute new names.
You can send commands to the bot by sending messages in one of the supported channels (e.g. #spongedev
).
Tüyo
Mevcut tüm komutların bir listesi için MCPBot help page sayfasına göz atın.
Yeni isimlere katkıda bulunmak
Hâlâ adlandırılmamış sınıf üyeleri için adlar da katkıda bulunabilirsiniz. Daha fazla talimat için MCPBot yardım sayfasını gözden geçirin.
Not
Mevcut isimleri değiştiremezsiniz. Mevcut bir eşlemeyi değiştirmeyi öneriyorsanız, GitHub’daki MCPBot sorun izleyicisinde yeni bir konu oluşturun <https://github.com/ModCoderPack/MCPBot-Issues/issues>`_.
Ayrıca bakınız
- Mod Kodlayıcı Paketi
Mod Coder Pack’in resmi internet sitesi.
- MCPBot yardım sayfası
MCPBot kullanımı hakkında daha fazla bilgi.