Learn · mappings

Minecraft Haritaları Nedir? Açıklama

Minecraft haritalamaları, bulanıklaştırılmış kodu (örneğin a.b.c) okunabilir isimlere dönüştüren isim tablolarıdır, böylece modlar ve istemciler oyunu okuyup müdahale edebilirler.

TRtrolPublished 4 min read

Minecraft mapping'leri nelerdir?

Minecraft mapping'leri, oyunun bulanıklaştırılmış sembollerini insan tarafından okunabilir isimlerle eşleştiren çeviri tablolarıdır. Perakende sürümü, sınıfların, metotların ve alanların a, bk veya c.d.e gibi anlamsız küçük dizelerle yeniden adlandırıldığı şekilde gelir. MCP, Yarn veya Mojang mapping'leri gibi bir mapping seti, bu karmaşanın üzerine gerçek isimleri bindirir, böylece bir geliştirici kodu okuyabilir ve ona bağlanabilir.

Bir mapping olmadan, oyun teknik olarak açık olsa da pratik olarak okunamazdır. Bir mapping uygulayın ve field_71090_bL olarak etiketlenmiş bir alan experienceLevel gibi bir şey olarak okunur ve tüm kod tabanı aniden normal bir yazılım gibi görünür.

Neden Minecraft'a hiç mapping'lere ihtiyaç var?

Mapping'ler, Mojang'in her sürüm öncesinde Minecraft'ı bulanıklaştırması nedeniyle vardır. Derleme adımı, her sınıfı ve üreyi kısa token'lara kadar yeniden yazar. Bu, jar dosyasını biraz küçültür, ancak çoğunlukla kodu takip etmeyi zorlaştırır. Her mod ve istemcinin aşması gereken duvar budur.

Bir mapping, o duvara açılan anahtardır. Bir bir-bir listesidir: sol tarafta bulanıklaştırılmış isim, sağ tarafta okunabilir isim. Bunu oyunun üzerine uygulayın ve karıştırılmış jar dosyası tekrar çalışılabilir bir kaynak ağacına dönüşür.

Üç Harita Seti Hakkında Duyacağınız

Birçok haritalama projesi var, ancak üçü konuşmayı domine ediyor. Her biri farklı bir çağa ve farklı bir sahibine ait.

MCP (Mod Kodlayıcı Paketi)

MCP, 1.14 öncesinde modlamayı destekleyen topluluk haritalamasıdır. İki katmanda çalışıyordu. Searge projesi, func_70071_h_ gibi kararlı ancak çekici olmayan ara isimler üretirken, MCP bunları onUpdate gibi dostane isimlerle giydiriyordu. Çoğu eski 1.8.9 bağımsız istemci hala MCP haritalı bir ağaç üzerinde derleniyor ve yansımalarını MCP veya Searge isimlerine yöneltiyor.

Yarn

Yarn, Fabric ekosistemi için FabricMC tarafından bakımı yapılan açık kaynaklı haritalamadır. Topluluk tarafından yazılmış, özgür lisanslıdır ve yeni bir Minecraft sürümü yayınlandığında hızlı bir şekilde güncellenme eğilimindedir. Bu hızlı dönüş, Fabric modlarının yeni sürümlere erken ulaşmasının önemli bir nedenidir.

Mojang haritalamaları

Mojang haritalamaları, genellikle Mojmap olarak kısaltılır, Mojang'ın her sürümle birlikte yayınladığı resmi isimleridir (1.14.4'ten beri). Kaynağa doğrudan geldikleri için, isimler Mojang'ın geliştiricilerinin şeyleri aslında nasıl adlandırdığıyla uyumlu. Etkili bir şekilde MCP ve Searge'ı modern istemciler için varsayılan başlangıç noktası olarak değiştirmişlerdir.

MCP vs Yarn vs Mojang haritalamaları

Hızlı versiyon: MCP, eski araç zinciridir, Mojang mappings ise resmi yerini alandır ve Yarn, Fabric projelerinin çoğunun kullandığı açık kaynak topluluk setinin arasına oturur. İşte önemli noktalarda bu üçünün karşılaştırması.

MCPYarnMojang mappings
Bakımını yapanTopluluk (Searge + MCP)FabricMCMojang
Dönem1.14 öncesi (1.7 ila 1.12)1.14 ve sonrası1.14.4 ve sonrası
KökenTopluluktan türetilmişTopluluktan türetilmişİlk parti resmi
Tipik kullanımEski istemciler, eski modlamaFabricFabric, Forge, NeoForge
DurumMojmap lehine emekliye ayrılmışAktifAktif varsayılan

Mappings, mod araç zincirine nasıl uyum sağlar

Mappings, derleme zamanında çalışır, çalışma zamanında değil. Derleme aracı, karartılmış oyunu alır, mapping'i onun üzerinde çalıştırır ve geliştiriciye yazmak için okunabilir bir kopyasını verir. Mod tamamlandığında, araç zinciri onu yeniden eşler, böylece referansları oyuncunun gerçek jar'ındaki karartılmış adlarla eşleşir.

Yükleyiciler buna farklı yaklaşıyor. Fabric, projeye bağlı olarak Yarn veya Mojang tarafından eşlenmiş bir tabana göre derlenir. Forge tarihsel olarak işi böldü, bir mapping üzerinden kodu okurken başka bir mapping üzerinde çalıştırdı. Mojang mappings'in lisansı, derleme zamanında kullanmak için yeterince izin vericidir, bu nedenle çoğu mevcut araç zinciri ona dayanır.

Aracı: Modları dengede tutan katman

Bilmeniz gereken dördüncü bir isim var. Aracı, derlenmiş bir modun okunabilir eşlemeler değiştiğinde bile çalışmaya devam etmesini sağlayan Fabric'in istikrarlı orta katmanıdır. Okunabilir isimler (Yarn veya Mojmap) insanlar için en üstte yer alırken, Aracı çalışan oyun için sürekli olarak aşağıda kalır. Searge, MCP dünyasında aynı rolü dolduruyordu. Fikir basit: ikili için sabit bir katman, geliştirici için dost bir katman.

Sıkça Sorulan Sorular

Terminus'u yakala

Built to track Minecraft's mappings so its modules keep working across versions.