- Moderatör
- #1
- Kayıtlı
- 1 Yıl 9 Ay 26 Gün
- Katılım
- 10 Ocak 2025
- Konular
- 163
- Mesajlar
- 257
- Tepkime puanı
- 36
- Online süresi
- 11h 19m
- Puan
- 53
- Konum
- Türkiye
- Web sitesi
- www.zyncra.shop
Merhaba Metin2Games !AutoPatcher - Virüs Yemeyen, Donmayan, Resmi Patcher Yapısına Sadık Patcher + Builder
Hepimizin bildiği hikaye: Yıllardır ortada dolaşan patcher'ların çoğu ya "zip birleştir, üstüne yaz" mantığıyla çalışan eski sistem, ya da başka bir patcher'ın üstüne yapıştırılmış bir şey. Sonuç:
- Antivirüs "bu ne ya, bu virüs" diye bağırıyor, oyuncu patcher'ı açmadan siliyor.
- Güncelleme sırasında arayüz donuyor, oyuncu "çöktü" sanıp Görev Yöneticisi'nden kapatıyor, yarım inen dosyalar sonraki açılışta başka bir derde dönüşüyor.
- Oyun açıkken dosya güncellenmeye çalışılınca "dosya kullanımda" hatası, sonra destek ticket'ı, sonra sen uykusuz.
Ben de bu işin üstüne oturdum ve sıfırdan, resmi patcher yapısını bozmadan yeni bir patcher + bunu tek tıkla üreten bir Builder yazdım. Kısacası: sunucu tarafında hiçbir şey değiştirmiyorsun, oyuncu tarafında bir sürü baş ağrısından kurtuluyorsun.
Nedir, ne değildir?
- Resmi TorrentPatch ile aynı biçim: metin2torrent.config.xml, crclist ve .lz (LZO1X) dosyaları. Elindeki mevcut patch sunucusu ve resmi patcher skin'leri olduğu gibi çalışır. Yani sunucuyu baştan kurmuyorsun.
- Zip birleştirme yok: eski sistemin virüs algılamasına ve takılmalarına yol açan yöntem tamamen bırakıldı. Dosyalar parçalı ve paralel iniyor, CRC ile doğrulanıyor.
- Arayüz donmuyor: indirme işleri arka planda, pencere hep akıcı. İptal edince gerçekten iptal oluyor

- .NET yok, VC++ runtime yok, ek DLL yok: tek exe. Windows 7 SP1 ve üstü.
- "Dosya kullanımda" sorusu: oyun açıkken güncelleme gerekirse patcher dosyayı kimin tuttuğunu bulur, oyuncuya sorar: tekrar dene ya da o programı kapat. Yönetici yetkisi gerekiyorsa UAC ile halleder.
- Kendini günceller: sunucudaki config'e yeni patcher sürümünün adresini verirsen oyuncuların patcher'ı kendi kendine yenilenir.
- Temiz klasör: günlük, önbellek, yarım indirmeler oyun klasöründeki "temp" altına gider, client köküne çöp bırakmaz.
- Birden fazla kaynak: pack'ler bir adresten, koruma dosyaları başka adresten, sırayla işlenir.
- Cloudflare uyumlu: bağlantı sayısı ve parça boyutu ayarlanabiliyor (Cloudflare için 4-6 bağlantı öneriyorum).
- Duyuru penceresi, "oyunu otomatik başlat", "başlayınca patcher kapansın", "güncelleme başarısızsa da Başla açık kalsın", haber sayfası için IE11 modu gibi seçenekler hazır.
Builder (Oluşturucu) ne işe yarıyor?
Patcher'ı elle derlemene, resource editörüyle uğraşmana gerek yok. Builder'a skin zip'ini sürüklüyorsun, adresleri yazıyorsun, "EXE Oluştur"a basıyorsun. Bitti. Canlı önizleme de var, yani patcher'ı oyunculara vermeden önce nasıl görüneceğini görüyorsun.
Kullanım (5 adım)
- Hazırlık: AutoPatcherBuilder.exe ile AutoPatcher.Template.exe aynı klasörde dursun. Builder'ı aç.
- Skin'i sürükle: "Kaynak" sekmesinde pencerenin içine skin .zip dosyasını (ya da klasörünü) sürükle bırak. Paketin içinde resmi patcher tasarımı (Sample_Skin_Official.zip) hazır geliyor, onu sürükleyip hemen deneyebilirsin. Görseller, adresler ve ayarlar otomatik okunur. Tek tek PNG bırakırsan pakete eklenir ya da aynı isimli görselin yerine geçer, yani butonu değiştirmek için zip açmana gerek yok.
- Bağlantılar: "Yama yapılandırma adresi" kısmına kendi metin2torrent.config.xml adresini yaz. "Haber sayfası" ve pencere başlığını doldur. "Davranış" sekmesinden bağlantı sayısını ve başlatma seçeneklerini ayarla. "Kimlik" sekmesinden ikon ve dosya bilgilerini (Özellikler > Ayrıntılar) değiştir.
- Çıktı: "Çıktı ve İmza" sekmesinden exe'nin kaydedileceği yeri seç. Patcher client klasörünün köküne konmalı. İstersen kod imzalama da var (kendi .pfx sertifikan ve Windows SDK gerekir, şart değil).
- Derle: "Derleme" sekmesinde önce "Patcher'ı önizle"ye bak, sonra "EXE Oluştur". Çıkan exe'yi client klasörüne koy, oyunculara dağıt.
Sunucu tarafı (hatırlatma)
Zaten resmi patcher kullanıyorsan yeni bir şey yok. Kullanmıyorsan şu kadar:
Bash:
metin2torrent.config.xml
<torrent_config run_path="metin2client.bin">
<foreground_patch crcpatch_url="http://siteniz.com/patch/" crcversion="0.0.0.1"/>
</torrent_config>
http://siteniz.com/patch/0.0.0.1/crclist -> her satır: "crc32 boyut t1 t2 yol"
http://siteniz.com/patch/0.0.0.1/<yol>.lz -> LZO1X ile sıkıştırılmış dosyaGerçek hayat testi
Bu bir "bende çalıştı" projesi değil: aktif oyunda, yaklaşık 3000 kişi ile kullanıyorum/denedim. Eski sistemdeki donma, "dosya kullanımda" ve virüs algılama derdini çözmek için çıktı zaten. Elbette her ortam farklı, sorun yaşarsanız aşağı yazın.
Dürüst olalım: AI desteği
Saklayacak bir şey yok: yapay zeka desteği aldım, ama ağırlıklı olarak tasarım ve yerleştirme tarafında. Builder'ın ve patcher'ın arayüz tasarımını, yerleşimlerini, ekranların kurgusunu Claude ile birlikte oturttum. Kod kısmında çok fazla destek almadım, fikir, mantık ve test benden.
Kapalı kaynak
Paylaşım kapalı kaynaktır: yalnızca Builder ve şablon exe'si var, kaynak kod paylaşılmıyor. Ücretsizdir, izinsiz satışı ve başka isim altında yeniden dağıtımı yasaktır.
Antivirüs / imza hakkında
Exe'ler imzasız. Bu yüzden bazı antivirüsler nadiren "tanınmayan program" uyarısı verebilir. İmzalı bir patcher için kendi sertifikanla Builder'dan imzalamanı öneririm. İndirdikten sonra VirusTotal'a yüklemekten çekinmeyin.

İndirme:
Indir
Tarama:
VirusTotal
Sorularınızı, hata bildirimlerini ve isteklerinizi aşağı yazın. İyi forumlar, kolay patchlemeler

