Skip to content
Bloga Dön
ProjBobcat: Özel Minecraft Başlatıcılarını Nasıl Destekliyor

ProjBobcat: Özel Minecraft Başlatıcılarını Nasıl Destekliyor

Alexandru Maftei
Alexandru Maftei
@ice
Updated
2 görüntüleme
TL;DR:ProjBobcat, özel Minecraft başlatıcıları geliştiren yazılımcılar için C# tabanlı bir başlatıcı çekirdeği kütüphanesidir. Kimlik doğrulama, sürüm yönetimi ve Windows, macOS, Linux'ta indirmeleri NativeAOT desteğiyle yönetir.

"C# ile yazılmış, en özgür, en hızlı ve en kapsamlı deneyimi sunan yeni nesil Minecraft başlatıcı çekirdeği."

Corona-Studio/ProjBobcat · github.com
⭐ 258 yıldız💻 C#📄 MIT

Hiçbir zaman kendi Minecraft başlatıcısını yapmak istediğin oldu mu? ProjBobcat, kimlik doğrulama, sürüm yönetimi ve indirmeler gibi arka plandaki tüm karmaşıklıkları yöneten bir C# kütüphanesidir. Başlatıcı altyapısını her seferinde sıfırdan yapmaktan bıkmış bir yazılımcıysan, bu proje dikkatini çekecek.

Başlatıcı Çekirdeğini Anlamak

Çoğu insan sadece resmi başlatıcıyı kullanır. Anlaşılabilir. Fakat özel bir şey inşa etmek istersen - belki özel sunucu topluluğun için bir başlatıcı ya da belirli bir kullanım durumuna özelleştirilmiş bir şey - temel altyapıya ihtiyacın var. İşte burada ProjBobcat devreye giriyor.

İndirip kuracağın bir başlatıcı değil. Diğer başlatıcıların üzerine inşa edildiği bir C# kütüphanesidir. Bunu motora benzetebilirsin: sen direksiyonu ve gösterge panelini (kullanıcı arayüzünü) yazarsın, ProjBobcat da tekereklerin gerçekten döndüğünden emin olur.

Corona Studio bunu geliştiricilerin Minecraft'ın kimlik doğrulama sistemini tersinden mühendislik yapmasını, doğru sürüm dosyalarının nasıl indirileceğini bulmalarını veya inanılmaz derecede karmaşık Minecraft sürüm manifestini yönetmelerini engellemek için yaptı. Bu çok fazla iş. ProjBobcat bunu yapıyor.


Bunun 2026'da Neden Önem Taşıdığı

Proje aktif olarak bakım görmektedir. Commit etkinlik göstergeleri son çalışmaları gösterir ve bakım yapanlar açıkça son .NET LTS sürümünü (şu anda 10.0) destekler. Bu önem taşır - birçok açık kaynak kütüphanesi terk edilir ve Microsoft framework'ü güncellediğinde sessizce kırılır.

ProjBobcat ayrıca NativeAOT derlemesini destekler. Bu, uygulamanızı runtime'a güvenmek yerine önceden derleyen, nispeten yakın tarihli bir .NET özelliğidir. Çeviri: özel başlatıcın daha hızlı başlar ve daha az hafıza kullanır. Kullanıcılar makinelerinde .NET kurulu olmasına ihtiyaç duymaz. Düzenli oyunculara dağıtıyorsan bu gerçekten faydalıdır.

258 yıldız ve istikrarlı katkılarla, orada en popüler proje değil. Fakat "Minecraft başlatıcıları inşa etmeni sağlayan kütüphaneler" niş segmentinde, oldukça sağlam.


Çok Platformlu Destek

Proje Windows, macOS ve Linux'u destekler - üçünün tamamı stabil olarak işaretlenmiştir. Her yerde çalışması gereken bir başlatıcı inşa ediyorsan, platforma özgü kodu üç kere yazman gerekmez.

Ari, Minecraft'ta kediye soruyor
Ari, Minecraft'ta kediye soruyor

Bu, kulağa gelen şeyden daha fazla önem taşır. Kimlik doğrulamanın tüm platformlarda eşit şekilde çalışmasını sağlamak, bekleyeceğinden daha az basittir. Dosya yolu işleme, bağlantı yönetimi ve oyun dosyalarını indirir ve yönetirken ortaya çıkan tüm küçük işletim sistemine özgü özellikler de öyle.


Ne Yaptığı

Somutlaştıralım. ProjBobcat bu temel işlevleri yönetir:

Kimlik doğrulama muhtemelen en büyük parça. Yani çevrimdışı modu destekler (özel sunucular veya test için faydalı) ve Microsoft hesabı kimlik doğrulamasını yönetir. Projenin belgeleri her ikisinin de zaten uygulandığını gösterir, bu da seni Microsoft'un OAuth akışını anlamaktan kurtarır.

İndirme yönetimi sonra gelir. Minecraft sürümleri karmaşıktır - kütüphaneler, varlıklar, yerel öğeler vardır, her birinin kendi URL'leri ve sağlama toplamları vardır. ProjBobcat bunu organize eder. 26.2 sürümünü talep edersin (2026 ortasında geçerli), ve hangi dosyaların var olması gerektiğini ve bunları nasıl getireceğini anlar.

Sürüm manifest ayrıştırması, görkemli olmayan üçüncü parçadır. Minecraft, tüm mevcut sürümlerin bir manifestini JSON olarak yayınlar - yapılandırılmış, ancak kenar durumlarla dolu. ProjBobcat onu ayrıştırır, böylece sen yapmak zorunda kalmazsın.


Başlarken

Kurulum, .NET ile rahat iseniz basittir. GitHub deposunu klonlayabilir veya (daha kolay) NuGet aracılığıyla kurabilirsin:

Ari, Minecraft'ta kediyi okşuyor
Ari, Minecraft'ta kediyi okşuyor
bash
Install-Package ProjBobcat

Proje belgesinden bir uyarı: bağlantı limitini .NET varsayılanından daha yüksek ayarla. Bunu App.xaml.cs'e veya program giriş noktasına ekle:

csharp
using System.Net;
ServicePointManager.DefaultConnectionLimit = 512;

Maksimum 1024'tür, fakat 512 çoğu durumda işe yarar. Ve bu önem taşır çünkü bu adımı atlasan takdirde bazı indirme işlemleri sessizce düşük performans gösterecek - yeni kullanıcıların bunu kaçırdıklarını ve sürüm indirmelerinin neden yavaş olduğunu merak etmelerini gördüm.

Henüz C# ve .NET ile rahat değilsen, bu muhtemelen başlangıç noktan değildir. Önce onları öğren. Ama zaten C#'ta çalışıyorsan, doğru yerde sin.


Gerçek Kullanım Durumları

Belirli bir topluluk için bir başlatıcı inşa etmek, açık seçenektir. ProjBobcat'in temel motorunu alırsın, kendi kullanıcı arayüzünü eklersin, kendi markanı eklersin, belki topluluğun için özel mantık da eklersin. Hazır!

Büyük grupları yöneten sunucu yöneticileri bazen belirli sürümleri, mod paketlerini veya ayarları oyuncuları arasında uygulamak için özel başlatıcıları kullanırlar. ProjBobcat bunun temeli.

Hobist ve küçük stüdyo deneysel başlatıcı projeleri de burada yer alır. Oyuncuların oyunlarını yönetme şeklinde bir şeyler deneyebilmek ister misin? ProjBobcat seni altyapı detaylarından kurtarıp ilginç kısma getiriyor.


Bilmen Gerekenler

Proje özellikle .NET 10.0 LTS gerektirir. Daha eski .NET sürümlerini hedefliyorsan, başka bir şeye ihtiyacın var. Fakat dürüst olmak gerekirse, 2026'da yeni bir proje başlatıyorsan, son LTS sürümünü kullanmak zaten doğru hamle.

Ari, Minecraft'ta kediyi okşuyor
Ari, Minecraft'ta kediyi okşuyor

Bahsettiğim bağlantı limitini - onu atlama. Geliştirme sürecinde erken ayarla.

Kütüphane aktif geliştirme aşamasındadır. Bu iyi bir şey (hatalar düzeltilir), fakat sürümleri güncellediğinde yayın notlarını izle. Kırıcı değişiklikler sık olmasa da, ara sıra olur.


Sunucu Toplulukları için Pratik Kurulum

Bir sunucu için başlatıcı inşa ediyorsan, muhtemelen onu uygun sunucu yapılandırmasıyla birleştirmek istersin. MOTD oluşturucu aracımız, oyuncular sunucunu eklediklerinde onları karşılayan bir mesaj oluşturmayı kolaylaştırır. Aynı dikkat ayrıntısı başlatıcına da uygulanmalı - onu cilalı ve niyet sahibi hissettirir.

Sunucuna kimin katılamayacağını yönetmek de önem taşır. Whitelist oluşturucu aracımız, erişim kontrolünü korumak için sıkıcı kısmı yönetir, bu da istersen başlatıcının kimlik doğrulama akışıyla entegre edebilirsin.


Alternatifler (Kısa Versiyon)

Bakım yapanlar minecraft-launcher-core-node bağlantısını yaparlar, TypeScript eşdeğeri. C# yerine JavaScript/Node'de inşa ediyorsan, o senin açık seçeneğin.

Bunun ötesinde, gerçekten karşılaştırılabilir birçok seçenek yoktur. Çoğu Minecraft başlatıcısı, kapalı kaynak ticari ürünler veya son kullanıcı uygulamalarıdır, yeniden kullanılabilir kütüphaneler değildir. C#'ta başlatıcı çekirdeğine ihtiyacın varsa, liste küçüktür. ProjBobcat, az sayıdaki katı seçenekten biri.


Söz Edilmeye Değer Bir Şey

Halka açık bir başlatıcı inşa ediyorsan, birçok sunucunun anti-hile yazılımı çalıştırdığını unutma. Özel bir başlatıcı bunu tetiklemeyecek (başlatıcılar müşteriler veya modlar gibi değildir), fakat araştırma yap. Bunu belirli bir topluluk veya sunucu için yapıyorsan, önce kurallarını kontrol et.

MIT lisansı, bu kütüphaneyi herhangi bir ödeme yapmadan veya izin istemeden ticari veya kişisel projeler için serbestçe kullanabileceğin anlamına gelir. Bundan endişe duymamak için bir şey daha az.


Zamanına Değer Mi?

C# geliştirici ve başlatıcı altyapısı inşa ediyorsan, evet. ProjBobcat gerçek bir sorunu sağlam bir uygulamayla çözer. Sadece Minecraft'ı bazı ayarlamalarla oynamak istersen, bu senin için değildir - bunun yerine mevcut bir başlatıcı kullan.

Aktif bakım, çok platformlu destek ve NativeAOT uyumluluğu, bunu 2026 projesi için inandırıcı bir seçim yapıyor. Belgeler daha derinlemesine olabilir (README kütüphanesi yüklemeye odaklanır, onunla inşa etmeye değil), fakat kod orada ve MIT lisanslı, yani okuyarak öğrenebilirsin.

Corona-Studio/ProjBobcat - MIT, ⭐258
About the author
Alexandru Maftei
Alexandru MafteiLead Writer

Lead writer at minecraft.how. Long-time Minecraft player running a small SMP server, testing every build, mod, and seed before writing about it.

Share with your friends!