Metin2 efekt ekleme, bir silaha ışıltı, bir skill'e parçacık patlaması ya da bir NPC'ye sürekli oynayan bir aura kazandırmanın temelidir. İşin püf noktası, efektin aslında ayrı bir varlık olduğunu kavramaktır: .mse uzantılı bir efekt dosyası, içinde particle, mesh ve light bileşenlerini barındırır; siz bu dosyayı önce EffectEditor ile üretir, sonra client paketine koyar ve nihayet bir silaha, skill'e veya karaktere bağlarsınız. Bu rehberde sıfırdan bir efekti planlamadan teste kadar adım adım kuruyoruz.
Metin2'de efekt sistemi nasıl çalışır?
Metin2 client'ı efektleri .mse (Metin2 Special Effect) dosyalarından okur. Bir .mse tek bir görsel olay değildir; içinde birden fazla bileşen bulunabilir:
- Particle — kıvılcım, duman, ışık zerresi gibi parçacık sistemleri; en sık kullanılan bileşendir.
- Mesh — dönen bir halka, kanat, kalkan gibi
.gr2tabanlı küçük model. - Light — sahneyi anlık aydınlatan renkli ışık kaynağı.
- Texture animation — bir doku üzerinde kayan UV ile akan enerji hissi.
Bu bileşenlerin tamamı dokulara (.dds veya .tga) dayanır. Yani bir efekt eklemek aslında üç parçayı bir araya getirmektir: doku + .mse tanımı + bağlama noktası (silah, skill ya da karakter). Üçünden biri eksikse efekt sessizce hiç oynamaz.
EffectEditor ile yeni efekt oluşturma
Efektleri elle metin olarak yazmak yerine, resmi araç zinciri içinde gelen EffectEditor'ı kullanmak en güvenli yoldur; çünkü sayısız parametreyi (yayılım açısı, ömür, hız, renk gradyanı) görsel olarak ayarlayıp anında önizleyebilirsiniz. Tipik akış şöyledir:
- EffectEditor'ı açın ve yeni bir efekt oluşturun.
- Bir particle bileşeni ekleyin; emisyon sayısını, parçacık ömrünü (
life time), başlangıç/bitiş boyutunu ve renk eğrisini ayarlayın. - Gerekirse bir mesh veya light bileşeni ekleyip katmanlayın.
- Efektin toplam süresini ve döngülü (
loop) olup olmadığını belirleyin — silah ışıltısı genelde döngülü, skill vuruşu tek seferliktir. d:/ymir work/effect/...sanal yolu altına.mseolarak kaydedin.
Metin2'nin tüm istemci dosyaları d:/ymir work/ sanal kökünden referanslanır; efektinizi bu mantıkta düzenli bir klasöre koymak (örneğin effect/weapon/ veya effect/skill/) ileride bağlama yollarını yazarken işinizi çok kolaylaştırır.
Particle ve doku ayarları
Bir efektin "ucuz" mu yoksa "kaliteli" mi göründüğünü belirleyen şey çoğunlukla particle ayarlarıdır. Birkaç pratik kural:
- Blend modu: kıvılcım, enerji ve ışık efektleri için
additive(toplamalı) blend kullanın; bu, üst üste binen parçacıkların parlamasını sağlar. Duman ve toz için normal alfa blend daha doğrudur. - Doku boyutu: parçacık dokularını küçük ve kare tutun (örn. 64×64 veya 128×128) ve power-of-two ölçü kullanın; bu hem performans hem de mipmap kalitesi için önemlidir.
- Renk ve alfa eğrisi: parçacığın ömrü boyunca alfasını sona doğru sıfıra indirin; aniden kaybolan parçacıklar göze batar.
- Emisyon sayısı: mobil olmayan bir oyun olsa da abartılı parçacık sayısı kalabalık savaşlarda FPS düşürür. Etkiyi parçacık sayısıyla değil, doku ve hareketle elde etmeye çalışın.
Dokuları .dds formatında (DXT5, alfa kanallı) hazırlamak hem dosya boyutunu küçültür hem de GPU'da daha hızlı yüklenir. Şeffaflık içeren parçacık dokularında alfa kanalını mutlaka temiz tutun; kirli bir alfa, parçacığın kenarında kutu gibi bir çerçeve bırakır.
Efekti pakete ekleme ve client'a tanıtma
Geliştirme sırasında client dosyaları paketlerin (.epk/.eix çiftleri) içinde sıkıştırılır. Yeni .mse dosyanızın ve onun kullandığı dokuların oyunun gerçekten okuduğu pakette bulunması gerekir. İki yaygın yöntem vardır:
- Paketleri açıp yeniden paketlemek: EterNexus gibi bir paket aracıyla ilgili
effectpaketini açar, dosyalarınızı doğru klasör yoluyla ekler ve yeniden paketlersiniz. - Test için paketsiz okuma: birçok client, paket yerine doğrudan disk klasöründen okuyabilir (
indexayarına bağlı). Geliştirme aşamasında dosyaları doğrudan klasöre koyup test etmek, her seferinde yeniden paketlemekten hızlıdır.
Burada en kritik nokta yol tutarlılığıdır: .mse içinde dokuya verdiğiniz yol ile dokunun paketteki gerçek yolu birebir aynı olmalıdır. Tek bir klasör adı farkı bile efektin görünmemesine yol açar ve genelde sessizdir — yani oyun çökmez, sadece hiçbir şey oynamaz.
Silah ve skill efektini bağlama
Efekt dosyası hazır ve pakette olsa bile, bir yere bağlanmadığı sürece oyuncu onu göremez. Bağlama noktası efektin türüne göre değişir:
- Silah ışıltısı: silahın görsel tanımına eklenir. Çoğu serverde silah modeli ile efekt eşleşmesi client tarafındaki silah/efekt tanım dosyalarında tutulur; ışıltı efektini buradan ilgili silah
vnum'una bağlarsınız. - Skill efekti: önceki rehberde anlattığımız gibi
skilltable.txtiçindeki ilgili sütun, skill kullanıldığında hangi.mse'nin oynayacağını belirtir. Yeni efektinizin yolunu buraya yazarsınız. - Karakter/NPC efekti: sürekli oynayan auralar genelde karakterin motion/efekt bağlama tablosundan ya da quest tarafındaki bir affect üzerinden tetiklenir.
İlk testte özgün efektinizi doğrudan bağlamak yerine, önce çalıştığı bilinen bir referans noktası kullanmak akıllıcadır: efekti mevcut bir silaha bağlayıp görüntülenip görüntülenmediğini doğrulayın, sonra hedef silaha/skill'e taşıyın. Böylece sorunun efektte mi yoksa bağlamada mı olduğunu hızla ayırırsınız.
Test etme ve yaygın hatalar
Efekti ekledikten sonra client'ı çalıştırın ve tetikleyin. Hiçbir şey görünmüyorsa şu sırayla kontrol edin:
- Efekt hiç oynamıyor →
.msedosyası ya da dokusu pakette yok veya yol yanlış yazılmış. - Efekt oynuyor ama dokusuz/mor görünüyor → doku yolu bozuk;
.mseiçindeki referans ile gerçek doku konumunu karşılaştırın. - Efekt çok büyük/küçük → particle scale veya mesh ölçeği yanlış; EffectEditor'da yeniden ayarlayıp kaydedin.
- FPS düşüyor → emisyon sayısı veya doku çözünürlüğü gereğinden yüksek.
Metin2'nin pek çok görsel hatası sessizdir; bu yüzden client klasöründeki syserr.txt dosyasını açık tutun. Eksik dosya, okunamayan paket veya bozuk .mse gibi sorunlar genelde buraya yazılır ve oyun içinde hiçbir uyarı görmezsiniz.
Sık Sorulan Sorular
Efekt eklemek için source derlemem gerekir mi?
Hayır. Görsel efektler tamamen client tarafı varlıklardır; .mse, doku ve bağlama dosyaları yeterlidir. Source (sunucu) derlemesi yalnızca efekti tetikleyen yeni bir mekanik (örneğin yepyeni bir affect tipi) eklediğinizde gerekir, efektin kendisi için değil.
Efekt oynuyor ama mor/siyah görünüyor, neden?
Bu neredeyse her zaman bir doku yolu sorunudur: .mse içinde belirtilen doku, pakette o yolda bulunamıyor. Yol farkını ve dokunun gerçekten pakete eklendiğini kontrol edin; .dds formatı ve alfa kanalının doğru olduğundan da emin olun.
Hazır bir efekti kopyalayıp düzenleyebilir miyim?
Evet, en hızlı öğrenme yolu budur. Mevcut bir .mse'yi EffectEditor'da açıp particle, renk ve süre değerlerini değiştirerek kendi varyasyonunuzu üretebilirsiniz; sadece yeni doku kullanıyorsanız onu da pakete eklemeyi unutmayın.
Serverin için özgün silah ışıltıları veya skill efektleri mi istiyorsun? Particle tasarımından .mse üretimine ve client entegrasyonuna kadar Metin2 efekt çalışmalarında yardıma ihtiyacın olursa benimle iletişime geç.