Ekran Kartlı Sunucu Satışları Başladı. İncele
Eklenti, Mod ve Plugin

Minecraft Sunucusuna Resource Pack Ekleme

server.properties üzerinden resource pack tanımlama, SHA-1 hash oluşturma, dosya barındırma ve zorunlu doku paketi ayarları.

  • 9 dk okuma
  • Güncelleme:
  • Yayın:
  • Batihost Teknik Ekibi

Kısaca Özet

  • Sunucuya resource pack eklemek için paketin .zip halini doğrudan indirilebilir bir HTTPS adresine koyar, adresi ve SHA-1 özetini server.properties içindeki resource-pack ve resource-pack-sha1 satırlarına yazarsınız.
  • SHA-1 hash zorunlu sayılmalıdır: Windows’ta certutil -hashfile pack.zip SHA1, Linux’ta sha1sum pack.zip komutuyla üretilir. Hash yanlışsa istemci paketi reddeder.
  • Paketi zorunlu kılmak için require-resource-pack=true kullanılır; reddeden oyuncu sunucudan atılır. Diğer tüm anahtarlar için server.properties ayarları listesine bakın.
  • Paketi her güncellediğinizde dosya adını ve SHA-1 değerini birlikte değiştirin; aksi halde oyuncular önbellekteki eski dokuyu görmeye devam eder.

Minecraft sunucusuna resource pack ekleme işlemi üç adımdan oluşur: paketin .zip dosyasını doğrudan indirilebilir bir adrese yüklemek, dosyanın SHA-1 özetini üretmek ve bu iki değeri server.properties dosyasındaki resource-pack ile resource-pack-sha1 satırlarına yazmak. Sunucu yeniden başlatıldıktan sonra bağlanan her oyuncuya paket otomatik olarak önerilir; isterseniz require-resource-pack=true ile zorunlu hâle getirebilirsiniz.

Bu rehberde doku paketini sıfırdan paketlemeyi, barındırma seçeneklerini, hash üretmeyi, zorunlu paket davranışını, güncelleme sırasında herkesin takıldığı önbellek sorununu ve “Failed to download resource pack” hatasının gerçek sebeplerini adım adım anlatıyoruz. Anlatılanlar Minecraft 26.2 “Chaos Cubed” dâhil tüm modern sürümler için geçerlidir; sunucu yazılımınızın Paper, Purpur, Spigot ya da vanilla olması bu ayarları değiştirmez.

BilgiSunucu tarafındaki resource pack, oyuncunun istemcisine öneri olarak gider. Sunucu dosyaları hiçbir şekilde değişmez; paket yalnızca dokuları, sesleri, modelleri ve yazı tiplerini istemci tarafında değiştirir. Oyun mekaniğini değiştirmek istiyorsanız datapack kurulumu ya da eklenti kurulumu gerekir.

Resource Pack Dosyasını Doğru Biçimde Hazırlama#

Sunucuya göndereceğiniz paket, kök dizininde pack.mcmeta dosyası bulunan bir ZIP arşivi olmalıdır. En sık yapılan hata paketin bulunduğu klasörü sıkıştırmaktır: bu durumda ZIP’in kökünde pack.mcmeta değil bir klasör adı görünür ve istemci paketi geçersiz sayar.

Doğru arşiv yapısı şöyledir:

pack.zip
 ├── pack.mcmeta
 ├── pack.png            (isteğe bağlı, 128x128 önizleme görseli)
 └── assets/
     └── minecraft/
         ├── textures/
         ├── models/
         ├── sounds/
         └── font/

pack.mcmeta dosyası, paketin hangi oyun sürümüyle uyumlu olduğunu bildiren küçük bir JSON dosyasıdır. pack_format değeri her Minecraft sürümüyle değişir; hedeflediğiniz sürümün karşılığını mutlaka doğrulayın. 1.20.2’den itibaren tek bir sayı yerine aralık belirtebilirsiniz:

{
  "pack": {
    "description": "Batihost Sunucu Doku Paketi",
    "pack_format": 55,
    "supported_formats": { "min_inclusive": 46, "max_inclusive": 80 }
  }
}
DikkatYukarıdaki sayılar yalnızca biçimi göstermek içindir. Yanlış pack_format yazarsanız oyuncu “Incompatible pack” uyarısı görür ve paket yine de yüklenir ama uyarı can sıkıcıdır. supported_formats aralığı kullanmak, sunucunuzu bir sonraki sürüme yükselttiğinizde paketi yeniden düzenleme ihtiyacını azaltır.

Arşivi oluştururken dikkat edilecekler#

  • Dosya ve klasör adlarında Türkçe karakter, boşluk veya büyük harf kullanmayın; oyun kaynak yollarını küçük harfle çözer.
  • Arşivi .zip olarak üretin. .rar ve .7z desteklenmez.
  • Kullanmadığınız dokuları paketten silin. Vanilla dokularla birebir aynı dosyaları paketin içinde tutmanın hiçbir faydası yok, sadece boyutu şişirir.
  • Paket içinde __MACOSX veya Thumbs.db gibi artık dosyalar kalmasın.
Bu işlem için gereken araçlar
  • 7-ZipÖnerilen Windows / LinuxArşivleyiciÜcretsiz
    İndir
  • Notepad++ Windowspack.mcmeta ve properties düzenlemeÜcretsiz
    İndir
  • WinSCP WindowsSFTP yüklemeÜcretsiz
    İndir
  • FileZilla Client Her platformFTP / SFTPÜcretsiz
    İndir

Bağlantılar resmî kaynaklara gider. Doku paketlerini üçüncü taraf aynalardan değil, hazırlayan kişinin resmî sayfasından indirin.

Paketi Barındırma: Doğrudan İndirme Bağlantısı Şart#

Minecraft istemcisi bir tarayıcı değildir. Verdiğiniz adrese GET isteği atar ve gelen yanıtın doğrudan ZIP içeriği olmasını bekler. Ara sayfa, reklam, “indirme birazdan başlayacak” ekranı ya da oturum çerezi isteyen bir servis kullanırsanız paket asla inmez.

Barındırma yöntemiÇalışır mı?Not
Kendi web hosting hesabınız (public_html altında)EvetEn kararlı seçenek; adres kalıcı, hız kontrolü sizde
Sunucunuz üzerinde Nginx/Apache ile yayınlanan dizinEvetEk maliyet yok, ancak oyun sunucusuyla bant genişliğini paylaşır
GitHub Releases dosya bağlantısıEvetDoğrudan dosya adresi verir, ücretsizdir
Google Drive, Yandex Disk, MediaFireHayırÖnce bir indirme sayfası açar, istemci HTML alır
Discord CDN bağlantısıHayırBağlantılar süreli imza taşır ve bir süre sonra ölür
Resource pack barındırma seçeneklerinin karşılaştırması

Kendi alan adınız üzerinden yayınlamak istiyorsanız web hosting hesabınızın public_html dizinine bir pack klasörü açıp dosyayı oraya yüklemeniz yeterli. cPanel dosya yöneticisiyle veya WinSCP/FileZilla ile yükleyebilirsiniz. Adresin HTTPS olması için SSL sertifikasını kurmayı ihmal etmeyin; sertifikası geçersiz olan adresten paket inmez.

Sunucu tarafında doğru MIME türü#

Bazı web sunucuları .zip dosyasını yanlış içerik türüyle sunar. Nginx kullanıyorsanız aşağıdaki gibi bir konum bloğu hem türü hem de önbelleği doğru ayarlar:

location /pack/ {
    root /var/www/html;
    types { application/zip zip; }
    add_header Cache-Control "public, max-age=604800";
    autoindex off;
}
İpucuAdresi test etmenin en hızlı yolu: bağlantıyı tarayıcının gizli sekmesine yapıştırın. Hiçbir sayfa açılmadan dosya inmeye başlıyorsa adres doğrudur. Bir sayfa açılıyorsa istemci de o sayfayı indirir ve “geçersiz paket” hatası verir.

SHA-1 Hash Oluşturma ve Neden Zorunlu Sayılmalı#

resource-pack-sha1 alanı teknik olarak boş bırakılabilir, ama boş bırakmayın. Hash iki işi birden yapar: indirilen dosyanın bozulmadan geldiğini doğrular ve istemcinin paketi önbellekten mi yoksa yeniden mi indireceğine karar vermesini sağlar. Hash olmadan istemci paketi her girişte yeniden indirebilir; bu hem oyuncuyu bekletir hem bant genişliğinizi tüketir.

Hash’i paketi yükledikten sonra, sunucuya konan dosyanın son hâli üzerinden üretin.

  1. Windows tarafında hash üretme#

    Komut istemini açıp dosyanın bulunduğu dizinde şu komutu çalıştırın:

    certutil -hashfile pack.zip SHA1

    PowerShell kullanıyorsanız Get-FileHash pack.zip -Algorithm SHA1 komutu da aynı sonucu verir. Çıktıdaki boşlukları temizleyip 40 karakteri tek parça hâlinde alın.

  2. Linux tarafında hash üretme#

    sha1sum /var/www/html/pack/pack.zip

    Çıktının ilk sütunu 40 karakterlik SHA-1 özetidir. Dosya adını kopyalamayın, yalnızca hash değerini alın.

  3. Uzaktaki dosyanın hash’ini doğrulama#

    Yüklediğiniz dosyanın gerçekten aynı dosya olduğundan emin olmak için sunucudan indirip tekrar hesaplayın:

    curl -sL https://ornek.com/pack/pack.zip | sha1sum

    İki değer aynı çıkmıyorsa yükleme sırasında dosya bozulmuş ya da web sunucusu farklı bir içerik döndürüyor demektir.

UyarıHash değerini büyük harfle yazmayın ve içine boşluk/tire karıştırmayın. certutil çıktısı ikişer karakter arasında boşluk bırakır; bu boşluklar kalırsa istemci paketi reddeder ve require-resource-pack=true açıksa oyuncular sunucuya hiç giremez.

server.properties Ayarları#

Sunucuyu durdurun, kök dizindeki server.properties dosyasını açın ve aşağıdaki satırları düzenleyin. Sunucu çalışırken yapılan düzenlemeler kapanışta üzerine yazılır.

resource-pack=https://ornek.com/pack/pack-v3.zip
resource-pack-sha1=9c1f7a4be2d0c58a6e3b90f21d47ac8351b6e0d2
resource-pack-prompt={"text":"Sunucumuzun özel doku paketi. Kabul etmeden oynayamazsınız.","color":"gold"}
require-resource-pack=true
resource-pack-id=
AnahtarDeğerAçıklama
resource-packURLPaketin doğrudan indirme adresi. Boşsa paket gönderilmez.
resource-pack-sha140 karakter hexDosyanın SHA-1 özeti. Doğrulama ve önbellek için kullanılır.
resource-pack-promptJSON metin bileşeniKabul ekranında oyuncuya gösterilecek mesaj.
require-resource-packtrue / falsetrue ise paketi reddeden oyuncu sunucudan atılır.
resource-pack-idUUID1.20.3 ile geldi; pakete sabit kimlik verir. Tek paket kullanıyorsanız boş bırakabilirsiniz.
Resource pack ile ilgili server.properties anahtarları

Bu dosyadaki diğer tüm anahtarların ne işe yaradığını server.properties tam ayar listesi sayfasında bulabilirsiniz. Değişiklikten sonra sunucuyu yeniden başlatın; konsol komutlarıyla yapılan reload bu ayarları tazelemez.

Zorunlu Paket Kullanmak Mantıklı mı?#

require-resource-pack=true ayarı, özel item modelleri, kendi GUI’si ya da özel font kullanan sunucular için gereklidir. Paketi olmayan oyuncu, custom model data ile üretilmiş bir eşyayı sadece “boyalı kitap” olarak görür ve sunucu deneyimi bozulur.

Buna karşılık zorunlu paket, ilk giriş sırasında ek bir engel oluşturur. Pratikte işe yarayan yaklaşım şudur:

Zorunlu tutun#

  • Özel eşya modelleri, custom GUI, özel menü kullanıyorsanız
  • Roleplay ya da mini oyun sunucusu işletiyorsanız
  • Paket 20 MB’ın altındaysa

İsteğe bağlı bırakın#

  • Paket yalnızca estetik doku değişikliği yapıyorsa
  • Survival sunucusu işletiyor ve yeni oyuncu akışına öncelik veriyorsanız
  • Paket boyutu büyükse ve düşük bağlantılı oyuncularınız varsa

resource-pack-prompt alanına yazdığınız JSON metin bileşeni, kabul ekranındaki açıklamayı değiştirir. Bu alan geçerli bir JSON olmalıdır; tırnak işaretlerini kaçırırsanız sunucu açılışta uyarı basar ve varsayılan metni gösterir. Türkçe karakter kullanabilirsiniz, dosyanın UTF-8 kaydedildiğinden emin olun.

Paketi Güncelleme ve Önbellek Sorunu#

Doku paketini güncelleyip aynı adrese aynı adla yüklerseniz, oyuncuların bir kısmı yeni paketi görmez. İstemci, indirdiği paketleri hash değerine göre saklar; adres ve hash aynı kaldığı sürece yeniden indirme yapmaz.

Doğru güncelleme akışı şu şekildedir:

  1. Yeni sürüme farklı bir dosya adı verin#

    pack-v3.zip yerine pack-v4.zip gibi. Eski dosyayı bir süre daha sunucuda bırakın; bağlantı kopan oyuncular eski adresi yeniden deneyebilir.

  2. Yeni SHA-1 değerini üretin#

    sha1sum pack-v4.zip
  3. İki satırı birlikte güncelleyip yeniden başlatın#

    resource-pack ve resource-pack-sha1 satırlarını aynı anda değiştirin. Sadece birini değiştirmek, en sık görülen “paket indirilemedi” hatasının kaynağıdır.

İpucuSunucu adresinizi bir alt alan adına bağlarsanız (örneğin pack.sunucunuz.com) paketin adresi IP değişikliklerinden etkilenmez. Alan adı yönlendirmeleri için Minecraft sunucusuna domain bağlama ve DNS kayıtları sayfalarına göz atın.

Eklentilerle Gelişmiş Kullanım#

server.properties tek bir global paket tanımlar. Dünyaya, gruba ya da oyuncuya göre farklı paket göndermek istiyorsanız eklenti tarafına geçmeniz gerekir. Paper API’si Player nesnesi üzerinden paket gönderme metotları sunar; bu sayede bir eklenti, oyuncu belirli bir dünyaya girdiğinde farklı bir paket yollayabilir.

Tipik kullanım senaryoları:

  • Mini oyun başına paket: Oyuncu lobiden arena dünyasına geçtiğinde arenaya özel paket gönderilir.
  • Yetki grubuna göre paket: LuckPerms grubuna bağlı olarak VIP oyunculara ek kozmetik doku paketi verilir.
  • Menü ve arayüz paketleri: Özel GUI dokuları yalnızca ilgili menüyü açan oyunculara yüklenir.

Kendi paket yönetim eklentinizi yazmak isterseniz Java ile Minecraft eklentisi geliştirme rehberi başlangıç için yeterli temeli veriyor. Hazır çözümler için 2026 eklenti listesine bakabilirsiniz.

Bedrock ve Geyser tarafı#

Geyser ile Bedrock oyuncularını kabul eden bir sunucu işletiyorsanız, Java biçimindeki resource pack Bedrock istemcilerine hiçbir şey ifade etmez. Bedrock için ayrı bir paket hazırlanır ve Geyser’ın packs klasörüne konur. İki platformda görsel bütünlük istiyorsanız paketi iki formatta üretmeyi baştan planlayın. Bedrock tarafındaki kurulum ayrıntıları için Minecraft PE / Bedrock sunucu kurulumu sayfasına bakın.

Sık Karşılaşılan Hatalar ve Çözümleri#

BelirtiOlası nedenÇözüm
Failed to download resource packAdres doğrudan dosyaya gitmiyorGizli sekmede test edin; sayfa açılıyorsa adres yanlış
Paket indi ama uygulanmadıZIP kökünde pack.mcmeta yokKlasörü değil, klasörün içindekileri sıkıştırın
Hash mismatch / geçersiz paketSHA-1 değeri dosyayla uyuşmuyorYüklenmiş dosya üzerinden hash’i yeniden üretin
Oyuncular sunucuya hiç giremiyorrequire-resource-pack=true + bozuk adresGeçici olarak false yapıp adresi düzeltin
Bazı oyuncularda eski doku görünüyorİstemci önbelleğiDosya adını ve hash’i birlikte değiştirin
Incompatible pack uyarısıYanlış pack_formatSürüme uygun değeri yazın veya supported_formats aralığı verin
SSL/sertifika hatasıHTTPS sertifikası geçersiz veya süresi dolmuşSertifikayı yenileyin; zincir eksikse tamamlayın
Resource pack sorunları için hızlı teşhis tablosu

Sunucu konsolunda görünen istisnaları okumakta zorlanıyorsanız Minecraft sunucu hataları ve çözümleri sayfası genel bir teşhis akışı sunuyor.

Bant Genişliği ve Donanım Tarafı#

Resource pack, oyun sunucusunun değil web sunucusunun yükünü artırır. 30 MB’lık bir paketi günde 500 kez indirmek yaklaşık 15 GB trafik demektir. Paketi oyun sunucunuzla aynı makinede yayınlıyorsanız bu trafik oyun portuyla aynı hattı paylaşır ve yoğun saatlerde ping’i etkileyebilir.

Pratik öneri: paketi ayrı bir web hosting hesabından ya da sunucunun ayrı bir sanal ana bilgisayarından servis edin, 1 Gbit port kullanın. Oyun sunucusu tarafında ise doku paketi RAM tüketimini artırmaz; asıl belirleyici oyuncu sayısı ve eklenti yüküdür.

Oyuncu sayısıRAMİşlemciDisk
2-10 oyuncu, hafif eklentili8 GBAMD Ryzen 9 7900X50 GB NVMe SSD
10-30 oyuncu, özel paketli Paper10-12 GBAMD Ryzen 9 7900X50 GB NVMe SSD
30-60 oyuncu, mini oyun / çok dünyalı16 GBAMD Ryzen 9 7950X100 GB NVMe SSD
60+ oyuncu veya proxy’li sunucu ağı32 GB ve üzeriAMD Ryzen 9 7950X100 GB+ NVMe SSD
Özel doku paketi kullanan sunucular için önerilen donanım

Minecraft’ın ana tick döngüsü tek çekirdekte çalıştığı için çekirdek sayısı değil saat hızı belirleyicidir; bu yüzden yüksek frekanslı Ryzen işlemciler tercih edilir. Ayrıntılı seçim kriterleri için Minecraft sunucusu için doğru donanım seçimi sayfasına bakabilir, hazır paketleri Minecraft sunucu paketleri sayfasından karşılaştırabilirsiniz.

Özetle#

Resource pack eklemek teknik olarak iki satırlık bir iştir, ama işi bozan ayrıntılar bellidir: paketin ZIP kökünde pack.mcmeta bulunmalı, adres doğrudan dosyaya gitmeli, SHA-1 değeri boşluksuz ve dosyanın son hâline ait olmalı, güncelleme yaparken dosya adı ile hash birlikte değişmelidir. Zorunlu paket kullanacaksanız boyutu düşük tutun; 50 MB üzerindeki paketler yeni oyuncu kaybettirir.

Kurulumu tamamladıktan sonra farklı bir hesapla sunucuya girip paketin gerçekten indiğini ve uygulandığını test edin. Sorun yaşarsanız önce adresi gizli sekmede, sonra hash’i curl … | sha1sum ile doğrulayın; vakaların büyük çoğunluğu bu iki kontrolde çözülür.

Sıkça Sorulan Sorular#

Minecraft sunucusuna resource pack nasıl eklenir?

Paketin .zip dosyasını doğrudan indirilebilir bir HTTPS adresine yükleyip server.properties içindeki resource-pack satırına o adresi, resource-pack-sha1 satırına da dosyanın SHA-1 özetini yazarsınız. Sunucuyu yeniden başlattıktan sonra giriş yapan her oyuncuya paket otomatik olarak önerilir.

Resource pack SHA-1 hash nasıl bulunur?

Windows’ta certutil -hashfile pack.zip SHA1, Linux’ta sha1sum pack.zip komutu 40 karakterlik onaltılık bir değer üretir. Bu değeri boşluksuz ve küçük harfle resource-pack-sha1 alanına yazın. Hash, paketin bozulmadan indiğini doğrular ve istemci önbelleğinin doğru çalışmasını sağlar.

Resource pack neden indirilmiyor, “Failed to download” hatası veriyor?

En yaygın üç neden: adres doğrudan dosyaya değil bir indirme sayfasına gidiyor, SHA-1 değeri dosyayla uyuşmuyor ya da sunucu HTTPS sertifikası geçersiz. Adresi tarayıcıya yapıştırdığınızda hiçbir sayfa açılmadan .zip inmeye başlıyorsa adres doğrudur. Uyuşmazlıkta hash’i yeniden üretin.

Oyuncuları resource pack kullanmaya zorlayabilir miyim?

Evet. require-resource-pack=true yaptığınızda paketi reddeden oyuncu sunucuya alınmaz. resource-pack-prompt alanına JSON metin bileşeni yazarak oyuncuya neden zorunlu olduğunu açıklayabilirsiniz. Zorunlu paket kullanan sunucularda paketi küçük tutmak katılım oranı için önemlidir.

Resource pack dosyasını nerede barındırmalıyım?

Kendi web hosting hesabınız ya da sunucunuzun üzerindeki bir web dizini en sağlıklısıdır; adres kalıcı olur ve bant genişliğini siz yönetirsiniz. Google Drive, MediaFire gibi indirme sayfası açan servisler çalışmaz. Paylaşım servisi kullanacaksanız doğrudan dosya bağlantısı verdiğinden emin olun.

Resource pack boyut sınırı var mı?

İstemcinin kabul ettiği üst sınır sürümler boyunca yükseltildi, ancak asıl kısıt oyuncunun sabrıdır. 50 MB üzerindeki paketler ilk girişte belirgin bekleme yaratır ve zorunlu pakette oyuncu kaybettirir. Doku çözünürlüğünü 32x veya 64x tutmak, kullanılmayan dosyaları silmek boyutu ciddi biçimde düşürür.

Bedrock oyuncuları Java resource pack’ini görebilir mi?

Hayır. Geyser üzerinden bağlanan Bedrock istemcileri Java biçimindeki paketi okuyamaz; Bedrock için ayrı bir .mcpack/.zip paketi hazırlanıp Geyser’ın kendi packs klasörüne konur. İki platformda aynı görünümü istiyorsanız paketi iki formatta da üretmeniz gerekir.

Paketi güncelledim ama oyuncular eski dokuları görüyor, ne yapmalıyım?

İstemci paketleri SHA-1 değerine göre önbelleğe alır. Aynı adres ve aynı hash görüldüğünde yeniden indirmez. Çözüm: yeni dosyaya farklı bir ad verin (örneğin pack-v4.zip), yeni SHA-1 değerini üretin ve iki satırı birlikte güncelleyip sunucuyu yeniden başlatın.

Eklenti, Mod ve Plugin — Tüm Rehberler#

  1. Minecraft Sunucusuna Plugin Kurulumu
  2. En İyi Minecraft Pluginleri: 2026 Sunucu Eklenti Listesi
  3. EssentialsX Kurulumu ve Yapılandırması
  4. LuckPerms ile Minecraft Yetki Sistemi Kurma
  5. WorldEdit ve WorldGuard ile Bölge Koruma ve Harita Düzenleme
  6. AuthMe Kurulumu ve Giriş Sistemi Yapılandırması
  7. Minecraft Skript Rehberi (Başlangıçtan İleri Seviyeye)
  8. Minecraft Mod Kurulumu: İstemci ve Sunucu Tarafı
  9. En İyi Minecraft Modpackleri (2026) ve Sunucu Kurulumu
  10. Minecraft Datapack Kurulumu
  11. Minecraft Sunucusuna Resource Pack Ekleme
  12. Minecraft Plugin Yazma: Java ile Sıfırdan Eklenti Geliştirme

Bu rehber Batihost teknik ekibi tarafından hazırlanmış ve tarihinde güncellenmiştir. Eksik veya hatalı bulduğunuz bir bilgi varsa bize bildirin.

Başa dön