Geliştirme Kaynakları - minecraft.fandom.com

Gezinti kısmına atla Arama kısmına atla
Treść tej podstrony pochodzi z artykułu „Geliştirme Kaynakları” w domenie minecraft.fandom.com na licencji CC BY-NC-SA 3.0

Minecraft, Java ve C++ dilleri ile yazılmıştır ve "class" dosyaları şifrelenmiş ve bozulmuş olmasına rağmen, topluluk Minecraft'ın çoğunun nasıl çalıştığını anlamıştır. Notch ta kendisi Minecraft'ın kullandığı bir format ile ilgili notlar vermiştir ve bu notlat NBT formatı ile ilgilidir. Bu şekilde topluluk, NBT formatı kullanan bir çok dosyanın içinden bilgiler çıkarmıştır.

NBT Formatı[]

NBT formatı, Minecraft'ın içindeki neredeyse tüm dosyalarda kullanılır. "Gzip" sıkıştırma yöntemiyle sıkıştırılmış bir hiyerarşi yapısında etiketler bulunur, her etiketin bir türü, adı ve türe bağlı olmak üzere bir yükü vardır. 1.2 sürümündeki 12w07 deneysel sürümünde ve üstünde Indev'den beri olan orijinal etiket türlerine ek olarak bir etiket türü daha eklenmiştir.

Dünya Formatları[]

Her Minecraft sürümü, dünya depolamak için kendi dosya formatını kullanır. Aşağıdaki bilgiler yazılım geliştiricilerinin harita düzenleyicileri, sunucular, dünya oluşturucular ve diğer programları yapma sürecinde yardımcı olacaktır. Bloklar, eşyalar, veri değerleri ve varlıklar tüm harita türlerinde ortaktır.

Java Sürümü[]

  • Java Sürümü klasik dünya formatı, Classic tarafından kullanılır.
  • Java Sürümü Indev dünya formatı, Indev tarafından kullanılır.
  • Java Sürümü Alpha dünya formatı, Alpha tarafından kullanılır (önceden Infdev).
  • Java Sürümü dünya formatı, 1.0 tarafından kullanılır:
    • Anvil dosya formatı, 1.0 tarafından kullanılır. (1.2'den itibaren)
      • Region dosya formatı, Beta'dan beri kullanılır. (Beta 1.3'den itibaren).
        • Chunk formatı 16x256x16'lık yığınlar için kullanılır.
    • Map item formatı haritalardaki renkleri depolamak için kullanılır.
    • player.dat formatı oyuncuların konumlarını depolamak için kullanılır.
    • Structure block dosya formatı "structure block" tarafından kaydedilen yapıları depolamak için kullanılır.
    • villages.dat formatı bir dünyadaki köylülerin durumunu depolamak için kullanılır.

Bedrock Sürümü[]

Diğer Formatlar[]

  • Servers.dat formatı kaydedilen çok oyunculu sunucuları depolamak için kullanılır.
  • Schematic dosyaları, üçüncü parti uygulamalarla kullanılan NBT dosyalarıdır ve haritada belirli şekilleri göstermek için kullanılabilir.

Kütüphaneler[]

Aşağıda gördüklerinin topluluk tarafından oluşturulan ve Minecraft tarafından kullanılan bazı dosyalarla etkileşime geçebilen kütüphanelerdir.

Ad/Bağlantı Dil Description
MCModify Java/C++ Tüm Minecraft formatlarını yüklemek, değiştirmek ve kaydetmek için kullanılan kütüphane.
nbt Java Minecraft'ın NBT formatını JVM üzerinde okumak ve değiştirmek için kullanılan kütüphanedir, özel-etiketler bulunur.
Example NBT Class Java NBT yapılarını okuyan ve yazan temel brute-force Java sınıfı.
Example Classic Level Class Java Classic dünyalarını okuyan ve değiştiren basit Java sınıfı(ları).
Substrate C# Dünyaları yüklemek ve düzenlemek için C# sınıfları.
Craft.Net C# Sunucu yazılımı yazmak ve dünyalarla oynamak için C# kütüphanesi.
c10t C++ Açık kaynaklı bir haritacılık aleti.
libnbt++ C++ NBT yapılarını okuyup düzenlemek için C++ kütüphanesi.
CNBT C NBT yapılarını okuyup düzenlemek için C kütüphanesi.
Minecraft-Perl Perl Minecraft dosyalarını düzenlemek için Perl kütüphanesi.
Python NBT Parser Python NBT yapılarını düzenlemek için Python kütüphanesi.
pymclevel Python Minecraft dünyalarını düzenlemek için Python kütüphanesi. MCEdit bu kütüphane üzerine inşa edildi.
J2Blocks Java Minecraft dünyalarını kolay oluşturmak için Java kütüphanesi.
nbtlib Python NBT verilerini okuyup düzenlemek için modern Python kütüphanesi.

Mod Oluşturma Aletleri[]

  • Mcreator - Kullanması oldukça basittir ve basit modlar için idealdir, arayüzü kullanıcı dostudur. Yaptığınız modları doğrudan .jar dosyası olarak dışarı aktarabilirsiniz, ücretsizdir. Gelişmiş modlar için biraz daha uğraşmak veya farklı programlar kullanmak gerekebilir.
  • ModCoderPack - Bu paketlerle mod yapmanız için Java bilmeniz gereklidir. Ayrıca maalesef ModCoderPack modern sürümleri desteklememektedir. Ayriyetten Eclipse IDE gibi bir Java düzenleyici program kullanmanız gerekir.
  • Microsoft MakeCode - Bu alternatif yalnızca basit kod mantığını anlamak için kullanılır yani bunla beraber ciddi bir mod yapmanız zor olabilir. Eğer ki kodlamanın basit mantığını anlamak isterseniz deneyebilirsiniz fakat Minecraft Eğitim Sürümü sahibi olmanız gerekir.

Sunucu Protokolü[]

Classic sunucu protokolü, Minecraft Classic Yaratıcı Çok Oyunculu sunucusu tarafından kullanılır.

Güncel çok oyunculu protokolü üzerinde bilgi almak için MCDevs wiki (wiki.vg)'e bakınız.

Kaynaklar[]

Bağlantı Program İşletim Sistemi Notlar
http://www.delorie.com/djgpp/ Djgpp, GCC Windows için Windows
http://www.cygwin.com/ Cygwin, Windows üzeri Linux (Unix Ortamı) Windows Windows kullanıcıları için iyi.
http://www.microsoft.com/express/ Microsoft Visual Studio Express Windows Visual Studio'nun bedava sürümü, bir IDE ve C++, C#, Visual Basic dilleri için derleyici.
http://java.sun.com/javase/downloads/index.jsp Java Geliştirici Kiti Çok platformlu Java kodunu çevirmek istiyorsanız önemlidir.