Paylaş :
Selamlar dev.mmooyun.com, ben DEV EMOJİ. Bugün sizlere, özellikle farm odaklı sunucularınızda oyuncularınızın klavye kırmasını engelleyecek, o saç baş yolduran meşhur sorunu kökünden çözen muazzam bir sistem paylaşıyorum. Geliştirdiğiniz projelerde oyuncu deneyimini bir üst seviyeye taşımak istiyorsanız, bu altyapı eklentisi tam aradığınız kan olacak.
Nedir Bu Sorun ve Neyi Çözüyoruz?
Metin2 oynayan veya sunucu yöneten herkes bu acı senaryoyu çok iyi bilir. Oyuncu saatlerce uğraşıp Razador, Nemere, Meley veya Jotun gibi zorlu bir boss’un karşısına dikilir. Yan çar şamanından Kutsama (Hosin) ve Ejderha Yardımı alınmış, asıl karakterin Hava Kılıcı (Jeongwi) veya Büyülü Keskinlik gibi sınıf yetenekleri son seviyede açılmış, potlar basılmıştır. Tam boss ile kıran kırana bir mücadele dönerken, boss’tan yenilen kritik bir hasar veya anlık bir gecikme (lag) sonucu karakter yerde kalır.

İşte oyunun en sinir bozucu anı burada başlar. Oyuncu “Burada Başla” butonuna basıp ayağa kalktığında karakter dımdızlak ortadadır! Bütün o değerli bufflar, şebnem etkileri, hız iksirleri ve açık olan skiller silinip gitmiştir. Hadi baştan şaman bekle, skillerin bekleme süresinin (cooldown) dolmasını bekle, tekrar buff at… Bu durum, özellikle zorlu PvM haritalarında insanı oyundan soğutan, akıcılığı baltalayan bir işkencedir. Paylaştığım bu sistem sayesinde artık bu eziyete bir son veriyoruz.
Sistem Nasıl Çalışıyor? (Teknik Mantık)
Sistemin çalışma mantığı aslında karakterin kimin veya neyin tarafından öldürüldüğünü (killer target) kontrol etmeye dayanıyor. Source tarafında ufak ama etkili bir sorgu bloğu ile bu ayrımı kusursuzca yapıyoruz.
- PvM Durumu (Canavara Ölmek): Eğer karakter bir boss, metin taşı veya normal bir slot (canavar) tarafından öldürülürse, ayağa kalktığında üzerindeki hiçbir buff silinmez. Karakter kaldığı yerden, tüm gücüyle savaşmaya devam eder.
- PvP Durumu (Oyuncuya Ölmek): Oyunun doğasını ve düello (Ws) dengesini bozmamak çok önemlidir. Eğer karakter başka bir oyuncu tarafından öldürülürse, sistem oyunun orijinal hali gibi davranır ve tüm buffları temizler. Yani lonca savaşlarında veya köy basmalarında sistem tamamen deaktif durumdadır.
Önemli Detay: Süre İstismarı (Bug) Yok
Sistemi kodlarken sürelerin dondurulması veya sıfırlanması gibi oyunun ekonomisini bozacak açıkları tamamen kapattım. Karakter öldüğünde yeteneklerin süreleri arka planda akmaya devam eder.

Yani Hava Kılıcı yeteneğinizin bitmesine 30 saniye varken boss sizi keserse ve siz 10 saniye yerde beklerseniz, ayağa kalktığınızda yeteneğinizin bitmesine 20 saniye kalmış olur. Eğer yerde yatarken yeteneğin süresi tamamen biterse, kalktığınızda doğal olarak o yetenek silinmiş olur ve tekrar basmanız gerekir.
Hangi Bufflar Koruma Altında?
Sistem varsayılan olarak oyuncunun temel yeteneklerini ve hareket/saldırı hızı avantajlarını koruma altına alır:
- Tüm aktif sınıf yetenekleri (Hava Kılıcı, Güçlü Beden, Kutsama, Ejderha Yardımı, Büyülü Keskinlik vb. kod karşılıklarıyla Jeongwi, Jumagap, Hosin…)
- Hareket Hızı (Movement Speed) bonusları
- Saldırı Hızı (Attack Speed) bonusları
Tabii ki kaynak kodları elinizde olacağı için, char_affect.cpp üzerinden korumak istediğiniz ekstra özellikleri, şebnemleri veya kostüm bufflarını listeye kendiniz de rahatlıkla dahil edebilirsiniz.
Nesne Market İçin Fırsat: Premium Affect Entegrasyonu
Bu sistemin en güzel yanlarından biri, dilerseniz herkese açık yapmak yerine sadece “Premium” oyunculara özel bir VIP hizmetine dönüştürebilmenizdir. Sistemi, oyuncuların Nesne Market’ten satın alabileceği bir Premium Sticker (AFFECT_STICKER) öğesine bağlayabilirsiniz. Sadece bu etikete sahip olan oyuncular PvM’de öldüklerinde bufflarını kaybetmezler. Bu da sunucunuz için harika bir gelir modeli ve oyuncular için dişe dokunur bir VIP ayrıcalığı yaratır.
Aşağıda bu entegrasyonu yapabilmeniz için gerekli Premium sistem dosyalarını da bırakıyorum:
- Premium Affect Sistemi İndir:
- Alternatif Link 1
- Alternatif Link 2
- Premium Sticker Sistemi İndir:
- İndirme Link’i
- Kanıt Videosu:
- Video Link’i
![[DEV] EMOJİ](https://dev.mmooyun.com/wp-content/uploads/2026/03/cropped-cropped-Gemini_Generated_Image_r2ljj1r2ljj1r2lj-1.png)
