Konunun temeli Veltor88'e aittir, direkt alıntıdır diyemeyeceğim bazı yerleri eksik bulduğumdan bir hayli ekleme ve düzenleme gerçekleştirdim. Kendisine buradan teşekkürler...
Gerekenler:
- Server tarafına ssh ya da ftp erişimi.
- Client paketlerini açmak için araç ( eternexsus, etermanager, eterpack Archiver ) Bu konudaki paket programları kısmından edinebilirsiniz...
- Ekleyeceğiniz item için
.tgauzantılı bir ikon - Ekleyeceğiniz item model ihtiyacı varsa ekstra olarak;
- İteme ait
.gr2uzantılı model dosyası - Modele ait bir ve ya daha fazla texture dosyası. (
.tgaya da.ddsuzantısında, imkanınız varsa.ddsuzantısını tercih edin daha yüksek sıkıştırma ve performans sağlar texture alanında )
- İteme ait
Client Tarafında yapılması gereken işlemler
- Paket programlarının yardımıyla, eklemek istediğiniz iteme göre aşağıdaki paketleri açın.
locale_xxPaketi (xxkısmı kullandığınız yerel ayar kodudur.tr,en,devb.)iconPaketiitemPaketi ( Saç stilleri ve silahlar için...)rootPaketi ( Zırh, kostüm ve saç stilleri için...)- Player Character Paketleri ( Zırh, Kostüm ve saç stilleri için...)
pc(Erkek Savaşçı - Erkek Sura - Kadın Ninja - Kadın Şaman)pc2(Kadın Savaşçı - Kadın Sura - Erkek Ninja - Erkek Şaman)pc3(Lycan)
- Açtığınız
iconpaketinin içindeicon/itemlokasyonuna eklemek istediğiniz itemin.tgauzantılı ikonunu atın
Eğer gr2 dosyası içermeyen bir item ekliyorsanız 2. aşamayı yaptıktan sonra direkt 6. aşamaya atlayın...
.gr2uzantılı granny dosyanızı, eklemek istediğiniz item tipine göre aşağıda verilen hiyerarşiye uygun şekilde atın.- Silahlar için
item/weapon - Zırhlar ve Kostümler için
- Erkek Savaşçı :
ymir work/pc/warrior/ - Kadın Savaşçı :
ymir work/pc2/warrior/ - Erkek Ninja :
ymir work/pc2/assassin/ - Kadın Ninja :
ymir work/pc/assassin/ - Erkek Sura :
ymir work/pc/sura/ - Kadın Sura :
ymir work/pc2/sura/ - Erkek Şaman :
ymir work/pc2/shaman/ - Kadın Şaman :
ymir work/pc/shaman/ - Lycan :
ymir work/pc3/
- Erkek Savaşçı :
- Saç Stilleri için;
- Erkek Savaşçı :
ymir work/pc/warrior/hair/ - Kadın Savaşçı :
ymir work/pc2/warrior/hair/ - Erkek Ninja :
ymir work/pc2/assassin/hair/ - Kadın Ninja :
ymir work/pc/assassin/hair/ - Erkek Sura :
ymir work/pc/sura/hair/ - Kadın Sura :
ymir work/pc2/sura/hair/ - Erkek Şaman :
ymir work/pc2/shaman/hair/ - Kadın Şaman :
ymir work/pc/shaman/hair/ - Lycan :
ymir work/pc3/hair/
- Erkek Savaşçı :
- Diğer itemler için herhangi bir pakete koyabilirsiniz ancak genel olarak
item/etciçine koyulmaktadır...
- Silahlar için
- Granny Viewer ile
.gr2uzantılı model dosyanızı açın,Texture Listsekmesinde her texture'ın bulunması gereken yol yazar.

Modele ait texture dosyalarını örnek resimde işaretli alanda gösterildiği gibi aynı lokasyona aynı isimde olacak şekilde atmanız gerekiyor5. Aşama sadece zırh, kostüm, saç stili eklerken geçerlidir, aksi durumda direkt olarak 6. aşamaya atlayın...
- Zırh, kostüm ve saç stili gibi iskelet içeren modellerini oyun içerisinde gösterebilmek için
.msmuzantılı scriptleri kullanıyoruz...rootpaketi içerisinde eklemeye çalıştığınız modelin ait olduğu karakter sınıfı ve cinsiyet tipine göre aşağıdaki dosyaları düzenliyoruz...- Erkek Savaşçı :
warrior_m.msm - Kadın Savaşçı :
warrior_w.msm - Erkek Ninja :
assassin_m.msm - Kadın Ninja :
assassin_w.msm - Erkek Sura :
sura_m.msm - Kadın Sura :
sura_w.msm - Erkek Şaman :
shaman_m.msm - Kadın Şaman :
shaman_w.msm - Lycan :
wolf_m.msm
Zırh ve ya Kostüm ekliyorsanız
Group ShapeDatasatırını arayın- Biraz aşağıya kaydırdığınızda
ShapeDataCountve takibinde bir tamsayı ( integer ) değer bulunan bir satırla karşılaşırsınız. - O tamsayı değerini 1 arttırın ( 1 model eklediğinizi varsayarak )
Kuşak ekliyorsanız
Group AcceDatasatırını arayın- Biraz aşağıya kaydırdığınızda
AcceDataCountve takibinde bir tamsayı ( integer ) değer bulunan bir satırla karşılaşırsınız. - O tamsayı değerini 1 arttırın ( 1 model eklediğinizi varsayarak )
Saç stili ekliyorsanız
Group HairDatasatırını arayın- Biraz aşağıya kaydırdığınızda
HairDataCountve takibinde bir tamsayı ( integer ) değer bulunan bir satırla karşılaşırsınız. - O tamsayı değerini 1 arttırın ( 1 model eklediğinizi varsayarak )
- Spoiler içerisindeki bu üç durumlar için ayrı ayrı
PathNamedeğeri bulunur bu değer client'in varsayılan olarak gr2 dosyasını çekmeye çalışacağı lokasyonu tutar. Eğer eklediğiniz modeli bu varsayılanPathNamelokasyonuna eklemediyseniz, yani başka bir lokasyonda bulunuyorsa gr2 dosyası bir sonraki aşamada verilen örneklerdeki gibi special path tanımlamanız gerekir. - Ekleyeceğiniz iskeletli model için yeni bir grup oluşturmanız gerekiyor. iki tane örnek üzerinden anlatacağım ikinci örnek bir önceki aşamada bahsettiğim gr2 dosyasının varsayılan lokasyonda olmaması durumu içindir.
Örnek 1:
Sadece örnekteki renkli kısımları düzenleyin.Group ShapeData01 { ShapeIndex 1 Model "warrior_novice.gr2" SourceSkin "warrior_novice_red.dds" TargetSkin "warrior_novice_blue.dds" }
ShapeData01Eklediğiniz grubun adı ( benzersiz olmalıdır !!! ) [ bir arttırarak ilerleyin eklerken temiz olur ve hata yaptığınızda geriye dönük kontrol ederken nokta atışı yapmanız kolay olur...]1eklediğiniz modelin index numarası, bir yere not etmekte fayda var server tarafında value3 kısmına buradaki değeri yazacağız."warrior_novice.gr2"eklediğiniz modelin tam yolunu oluşturabilmek için uzantısı ile birlikte dosya adı. Bu örnekte varsayılan lokasyona ekledğimizi düşünürsek bu karakterin erkek olduğunu varsayarsak aslında bu tam yol olarak"d:/ymir Work/pc/warrior/warrior_novice.gr2"demek. Varsayılan lokasyon stringinin sonuna dosya adının eklenmesi gibi düşünebilirsiniz."warrior_novice_red.dds"Modelin orjinal texture dosyası"warrior_novice_blue.dds"Modelin oyun içerisinde renderlanacak texture dosyası... Ymir'in bunu ekleme amacının aynı zırh ya da saçın farklı renklerde texturelar ile kullanmak için tekrardan export etmek zorunda kalmamaları için eklediğini düşünüyorum. Bir örnekle açıklayayım,

bu iki item tek bir gr2 dosyasını kullanır farklı renkte aynı itemi eklemek istediğimizde ikinci bir gr2 dosyası daha ekleyerek paket boyutunu şişirmenin önüne geçmiş oluruz.
Örnek 2:
Birinci örnekten farklı olarakGroup ShapeData12 { SpecialPath "d:/ymir work/monster/wild_boar/" ShapeIndex 101 Model "wild_boar.gr2" SourceSkin "wild_boar.dds" }"d:/ymir work/monster/wild_boar/"kısmı ile varsayılan lokasyonda olmayan gr2 dosyalarını belirtiyoruz.
- Erkek Savaşçı :
locale_xxpaketinde bulunanitem_protodosyasını oluşturmamız gerekiyor. Günümüz client-server sistemleinde Dump Proto programı ile oluşturuyoruz. Server tarafında bulunanitem_proto.txtveitem_names.txtdosyalarını bu programa sürükleyerek oluşturabilirsiniz. Oluşturduğunuz proto dosyasını locale paketindeki ile değiştirin...Proto metin belgelerini düzenleme server tarafında anlatılmakta.locale_xxpaketinde bulunanitem_list.txtdosyasını açıp uygun bir yere yeni satır oluşturarak aşağıdaki formata uygun şekilde ekleme yapın;
Kod:27054 ETC icon/item/27103.tga d:/ymir work/item/etc/medicine_V.GR227054sütunu eklediğiniz itemin vnum değeri.ETCsütunu eklediğiniz itemin tipi, önem arz etmiyor sadece itemin hangi tipe ait olduğunun bir göstergesi istediğinizi yazabilirsinizicon/item/27103.tgasütunu eklediğiniz itemin ikon dosyasının lokasyonu, eğer belirtilen lokasyonda o ikon bulunmazsaicon/item/27995.tga
ikonu varsayılan olarak gözükürd:/ymir work/item/etc/medicine_V.GR2sütunu ise modelin gr2 lokasyonu sakın kemikli modeller için buraya değer girmeyin onları msm scriptleri ile ekliyoruz önceki aşamalarda anlattığım gibi, silahlar sandıklar gibi kemik içermeyen yere atıldığında yerde gözüken itemlerde bu kısmı dolduruyoruz. boş durumda ise item yere atıldığında varsayılan olarakymir work/item/etc/item_bag.gr2modeli renderlanır bu sebeple zırhları yere attığımızda yerde gözükmezler.
- Tüm işlem yaptığınız paketleri tekrar kapatarak pack kalsörüne atın. Client ile işimiz bitti...
Server Tarafında yapılması gereken işlemler
- Server tarafına WinSCP ve ya Filezilla gibi programlar vasıtasıtla bağlanın.
- Server klasörünüzde proto metin belgelerini bulmanız gerekiyor. Her server sisteminde farklı olduğundan tam yol veremiyorum, genellikle
dbkanal klasöründe bulunurlar.item_proto.txtveitem_names.txtdosyasını herhangi bir editör ile açınızın... item_names.txtdosyasında yeni bir satır oluşturup formata uygun şekilde iteminizin bilgilerini ekleyin;
Kod:20759 Altın Giysi +920759sütunu ekleyeceğiniz itemin VNUM değeridir. bu değer benzersiz olmalıdır. Eklerken CTRL+F ile olup olmadığını kontrol etmekte fayda var.Altın Giysi +9sütunu ise itemin ismidir bu isim oyun içerisinde gözüken isimdir. Dahada detaylandıracak olursak server tarafında20759vnum değerindeki itemeAltın Giysi +9yazıp client tarafında dump proto ile oluşturukenPlatin Giysi+9yazarsak, client tarafından işlenen kısımlarda platin olarak gözükecek server tarafından işlenen kısımlarda ise altın olarak yazacaktır, mesela mausu itemin üzerine getirdiğinizde çıkan hover popup kısmında platin yazacaktır ancak itemi yerden alma gibi durumlarda sohbet penceresinde çıkan itemi kazandın yazısında altın olarak yazacaktır, umarım anlatabilmişimdir...
item_proto.txtdosyasında her item için bir satır bulunur ve iteme ait tüm bilgileri içerir, yeni bir satır oluşturun ve kendi iteminiz için ayarlayın, bu işlemde genellikle var olan satırlardan faydalanılmakta, çok fazla tab ve ayar bulunduğundan sizde bu yöntemi kullanabilirsiniz, zırh ekleyecekseniz herhangi bir zırh satırını kopyalayıp kendi yeni satırınıza yapıştırarak ilgili alanları düzenleyin,- Oluşturduğunuz satırda önemli noktalar; ilk sütun değeri olan
VNUMnumarasıitem_names.txtdosyasındaki ile aynı olmalı. Bir diğeri 3. sütun olantypedeğeri ve 4. sütunsubtypedeğeri... 2.sütun ve diğer fazla bilinmeyen sütunların anlamları ve detaylı bilgi için yaklaşık 2 yıl önce hazırladığım bu amatör videoyu izlemenizde fayda var burada uzun uzun yazıp konuyu şişirmeye gerek yok...
- Ayrıca iskelet içeren modelleriniz (zırh,kostüm,saç) için value3 sütununu düzenlemeyi unutmayın... Sağlıcakla kalın...


