Orijinalleri değiştirmeden özel tablolar ve müzik diskleri
Her ikisi de artık veri paketi kayıt defteri (registry) hâline geldi, böylece vanilyanın üzerine yazmak yerine yenilerini ekleyebilirsiniz. İşte her birinin ihtiyaç duyduğu iki dosya ve tabloların uyması gereken boyut kuralı.
Özel bir tablo elde etmenin eski yolu paintings_kristoffer_zetterstrand.png dosyasının üzerine yazmak ve bir vanilya tablosunu kaybetmekti. Artık hem tablolar hem de müzik diskleri birer kayıt defteri (registry), yani değiştirmek yerine ekliyorsunuz.
Tablolar iki dosya gerektirir
Tabloyu tanımlayan bir veri paketi girdisi:
data/<namespace>/painting_variant/my_art.json
{
"asset_id": "my_pack:my_art",
"width": 2,
"height": 2,
"title": { "text": "My Art" },
"author": { "text": "Me" }
}
Ve görseli sağlayan bir kaynak paketi:
assets/my_pack/textures/painting/my_art.png
width ve height blok cinsindendir ve doku bu orana uymak zorundadır. Vanilya blok başına 16 piksel çizer, yani 2×1 bir tablo 32×16'dır — ama 64×32 de aynı derecede işe yarar. Oranı yanlış yaparsanız görsel esner; otomatik sığdırma yoktur.
Vanilya boyutları 1×1'den 4×4'e kadardır. Daha büyüğü çalışır ama uygun bir duvar gerektirir.
Elde edilebilir kılmak
Varyantı eklemek onu oyuna koymaz. İki yol var:
- Yerleştirme etiketi — normal bir tablo eşyasının rastgele buna dönüşebilmesi için
#minecraft:placeabledosyasına ekleyin. - Doğrudan —
/give @p painting[entity_data={id:"minecraft:painting",variant:"my_pack:my_art"}]
Çoğu harita yapımcısı ikincisini ister: rastgele bir tablo değil, belirli bir tablo.
Müzik diskleri üç dosya gerektirir
data/<namespace>/jukebox_song/my_song.json
{
"sound_event": { "sound_id": "my_pack:music/my_song" },
"description": { "text": "My Artist - My Song" },
"length_in_seconds": 154,
"comparator_output": 12
}
Ayrıca o ses kimliğini bir dosyayla eşleştiren sounds.json ve .ogg dosyasının kendisi:
assets/my_pack/sounds.json
assets/my_pack/sounds/music/my_song.ogg
Üç ayrıntı önemlidir:
length_in_secondsdoğru olmalı. Müzik kutusunun ne zaman duracağını bu belirler — parçacıklar, redstone çıkışı ve o noktada kesilen ses. Çok uzun olursa sonda sessizlik kalır; çok kısa olursa parça erken kesilir.comparator_output0–15 arasındadır ve karşılaştırıcının (comparator) okuduğu değerdir. Vanilyada 22 disk ama yalnızca 15 değer var, yani yedi çift zaten aynı değeri paylaşıyor; redstone'unuzun birbirinden ayırması gereken disklerin hiçbirinin kullanmadığı bir değer seçin.- Ogg dosyasını akış olarak verin. Müzik uzunluğundaki her şey için
sounds.jsoniçinde"stream": truekullanın.
Sonra ona şunu verin:
/give @p music_disc_13[jukebox_playable="my_pack:my_song"]
Taşıyıcı olarak herhangi bir disk eşyası işe yarar — neyin çalınacağını bileşen belirler.
Bu neden üzerine yazmaktan daha iyi
Vanilya varlıklarını değiştiren bir paket, aynısını yapan diğer her paketle çakışır ve Mojang bir dosyayı yeniden adlandırdığında bozulur. Kayıt defteri eklemeleri ad alanlıdır (namespaced), böylece tablo ekleyen iki paket bir arada var olur. Ayrıca düzenleme yapmadan sürüm atlamasını atlatan tek yaklaşımdır.
Tablo varyantlarını, müzik kutusu şarkılarını, totemleri ve sohbet emojilerini Custom Content Pack Makers ile tek bir hazır kaynak paketi zip dosyasında oluşturun.