Metin2 refine_proto Nasıl Düzenlenir? Yükseltme Setleri
Hazırlayan: Metin2VIP Editörleri Yayın: 5 dk okuma
İçindekiler
refine_proto, Metin2'deki yükseltme tariflerinin tablosudur. Her satır bir settir: en çok beş malzeme ve adetleri, Yang bedeli (cost) ve başarı şansı (prob). Bir eşya bu satıra item_proto'daki RefineSet sütunuyla bağlanır; artı basılınca hangi eşyaya dönüşeceğini ise RefinedVnum belirler. Tablo player veritabanında durur ve oyun çekirdeğine yalnız çekirdek açılırken gelir.
Aşağıdaki kurallar oyun çekirdeğinin kodundan çıkarıldı; resmî yapıdan türeyen sunucuların çok büyük çoğunluğunda aynıdır. Tablodaki şans ve bedeller sunucu ayarıdır. Oyuncunun gördüğü taraf yükseltme sistemi, varsayılan şans serileri yükseltme şansları yazısında.
refine_proto nerede durur, kim okur?
Tablo txt dosyası değildir, player veritabanındaki refine_proto MySQL tablosudur. db açılışta şu sorguyu çalıştırır:
SELECT id, cost, prob, vnum0, count0, vnum1, count1, vnum2, count2,
vnum3, count3, vnum4, count4 FROM refine_proto
Tablo boşsa db yine açılır, ama hiçbir eşya yükseltilemez. db tabloyu her oyun çekirdeğine açılış paketinde gönderir. /reload p db'nin tabloyu yeniden okumasını sağlar, fakat çalışan çekirdeklere yalnız eşya, canavar ve beceri tablolarını yollar. Bu yüzden şans ya da bedel değişikliğinden sonra oyun çekirdeklerini yeniden başlatmak gerekir; yeniden açılan çekirdek yeni tabloyu db'den alır.
İstemcide bu tablonun kopyası yoktur. Yükseltme penceresindeki bedel, malzemeler ve şans sunucunun gönderdiği paketten gelir; tarif değişikliği için istemciye yama gerekmez.
Sütunlar
| Sütun | Anlamı | Not |
|---|---|---|
| id | Set numarası | item_proto'daki RefineSet bunu gösterir |
| vnum0..vnum4 | Malzeme eşyası | İlk 0'da liste biter |
| count0..count4 | Malzeme adedi | |
| cost | Yang bedeli | Tam sayı |
| prob | Başarı şansı | 1-100 arası anlamlıdır |
| src_vnum, result_vnum | Eski alanlar | db okumaz |
Malzeme listesi soldan okunur ve ilk boş vnum'da biter. vnum0 boş bırakılıp vnum1'e malzeme yazılırsa set hiç malzeme istemez. Varsayılan tablodaki 405 setin hiçbiri ikiden fazla malzeme kullanmaz; en sık malzemeler İstiridye, Kılçık ve üç inci türüdür.
Örnek iki satır şöyledir:
id vnum0 count0 vnum1 count1 cost prob
1 0 0 0 0 600 90
508 30083 2 27992 1 340000 45
1 numaralı set Kılıç+0'ın +1 basamağıdır: malzeme yok, 600 Yang, %90. 508 numaralı set iki Bilinmeyen İlaç+ ile bir Beyaz İnci, 340.000 Yang ve %45 ister.
RefinedVnum ve RefineSet nasıl bağlanır?
Set, yükseltilen eşyaya aittir, çıkacak eşyaya değil. Kılıç+0'ın satırında RefinedVnum 11, RefineSet 1 yazar: Kılıç+0, 1 numaralı setin bedeli ve şansıyla 11 numaralı Kılıç+1'e döner. Kılıç+1'in satırı 12'yi ve 2 numaralı seti gösterir; +0'dan +9'a zincir böyle kurulur. Sütunların tamamı item_proto yazısında.
Hata durumları farklı mesajlar verir:
| Durum | Sonuç |
|---|---|
| RefinedVnum 0 | "Daha fazla geliştirilemez"; Demirci eşyayı almaz |
| RefineSet 0 ya da tabloda olmayan set | "Bu eşya daha iyi hale gelemez"; günlükte NOT GET REFINE SET |
| RefinedVnum var olmayan bir eşyayı gösteriyor | Günlükte DoRefine NOT GET ITEM PROTO |
Varsayılan veride 5.004 eşya satırı 563 farklı seti gösterir; bunlardan 174'ünün tabloda karşılığı yoktur. Zodyak serileri gibi sonradan gelmiş eşyalar bu yüzden yükseltilemez. Tersine, 16 satır hiçbir eşyaya bağlı değildir. RefinedVnum'u dolu ama RefineSet'i 0 olan 121 eşya da vardır.
Set numarası hangi NPC'yi belirler?
Set numarası yalnız tarifi seçmez, eşyayı kimin kabul edeceğini de belirler:
| NPC | Kabul kuralı | Bedel |
|---|---|---|
| Demirci | RefinedVnum dolu ve RefineSet 500'den küçük | Tarif |
| Seon-Pyeong | RefineSet 500 ve üstü | Tarif |
| Lonca ustaları | Türe göre: silah, gövde zırhı, kalkan ve kask ya da takılar | 4,5 ile 15 kat, şans +10 |
| Şeytan Kulesi ustaları | RefineSet 1-499 | Yalnız Yang, malzeme yok, şans +10 |
Yeni bir set eklerken bu sınırı bilerek seç. 500'ün altında açılan bir set köydeki demircide, üstünde açılan Seon-Pyeong'da çalışır. Lonca ve Şeytan Kulesi kuralları yükseltme sistemi yazısında.
Şans, malzeme ve Yang hangi sırayla uygulanır?
Demircide oyun önce Yang'a bakar, sonra malzemeleri envanterin tamamında sayar: aynı eşyanın birden çok yığını toplanır, oyuncunun kendi pazarında satışta olan yığınlar sayılmaz. Yeterliyse malzemeler zar atılmadan önce silinir. Ardından 1-100 arası zar tutulur ve zar prob'a eşit ya da küçükse yükseltme başarılıdır; lonca ustası ve Şeytan Kulesi'nde zardan 10 düşülür. Yang deneme sonunda ödenir, başarısız denemede de.
Başarılı yükseltmede yeni eşya efsunsuz yaratılır, eski eşyanın efsunları ve taşları üzerine kopyalanır. Bu yüzden RefinedVnum'un gösterdiği eşyanın efsunlu düşme şansı yükseltmede hiçbir şeyi değiştirmez.
Kağıtlar tarifin hangi alanını kullanır?
Kağıtla yükseltmede de bedel ve malzeme her zaman tariften gelir; lonca katları uygulanmaz. Şansı ise kağıdın türü belirler. Tür, kağıdın item_proto'daki Value0 değeridir:
| Value0 | Varsayılan eşya | Şans | Başarısız denemede |
|---|---|---|---|
| 0 | Kutsama Kağıdı | Tarifin prob'u | Bir seviye düşer |
| 1 | Büyülü Metal | Tarifin prob'u | Aynen kalır |
| 2 | Ejderha Parşömeni | Çekirdekteki sabit tablo | Bir seviye düşer |
| 3 | Savaş Kağıdı | %100, yalnız +0..+3 | |
| 4 | Demircinin El Kitabı | Çekirdekteki sabit tablo | Bir seviye düşer |
| 5 | Demircinin Notu, Erdemli Adamın Notu | %100, artı Value1'e eşitse | |
| 6 | Varsayılanda eşya yok | %80, yalnız 702 numaralı setli +4 zihin taşı | Bir seviye düşer |
Yani refine_proto'daki prob'u değiştirmek normal demirciyi, Kutsama Kağıdı'nı ve Büyülü Metal'i etkiler; Ejderha Parşömeni ve El Kitabı'nın şansı değişmez. Kağıtların oyuncu tarafı yükseltme kağıtları yazısında. 702 numarası çekirdeğe gömülüdür; varsayılan tabloda 702 satırı hiçbir eşyaya bağlı değildir ve zihin taşlarının RefinedVnum zinciri de boştur.
"Bir seviye düşer", RefinedVnum'u bu eşyayı gösteren eşyaya dönmek demektir; oyun bu eşlemeyi item_proto'dan açılışta kurar. Zincirin başındaki +0'ı gösteren bir eşya yoksa eşya aynen kalır. Dönüşüm zincirlerinde sonuç beklenmedik olabilir: Muharebe Kılıcı+9'un RefinedVnum'u Triton Kılıcı+0 olduğu için Triton Kılıcı+0'da başarısız bir Kutsama denemesi eşyayı Muharebe Kılıcı+9'a döndürür. İki eşya aynı RefinedVnum'u gösterirse düşüş numarası küçük olana gider.
Yeni yükseltme seti nasıl eklenir?
- refine_proto'da kullanılmayan bir id seç. Demircide çalışacaksa 500'ün altında, Seon-Pyeong'da çalışacaksa 500 ve üstünde olsun.
- Satırı yaz; malzemeleri vnum0'dan başlayarak boşluksuz doldur, kullanılmayanları 0 bırak.
- item_proto.txt'de yükseltilecek her artı seviyesinin satırına RefineSet'i ve bir sonraki eşyanın numarasını RefinedVnum'a yaz. Son seviyede RefinedVnum 0 kalır.
- item_proto değiştiyse db'yi, yalnız refine_proto değiştiyse oyun çekirdeklerini yeniden başlat.
- Eşyayı NPC'ye vererek pencerede bedelin ve malzemelerin doğru göründüğünü kontrol et.
INSERT INTO refine_proto (id, vnum0, count0, vnum1, count1, vnum2, count2,
vnum3, count3, vnum4, count4, cost, src_vnum, result_vnum, prob)
VALUES (760, 27992, 1, 0, 0, 0, 0, 0, 0, 0, 0, 250000, 0, 0, 40);
Bu örnek set bir Beyaz İnci ve 250.000 Yang ister, %40 şanslıdır ve 500'ün üstünde olduğu için Seon-Pyeong'da çalışır.
Sık yapılan hatalar
- refine_proto'yu değiştirip yalnız
/reload pyazmak. - Seti çıkacak eşyanın satırına yazmak; set yükseltilen eşyanın satırındadır.
- vnum0'ı boş bırakıp malzemeyi vnum1'den başlatmak: set malzemesiz kalır.
- Seti yanlış aralıkta açmak: 500 ve üstü set köy demircisinde çalışmaz.
- prob'u 0 bırakmak: normal demircide deneme hiç tutmaz, malzeme ve Yang yine gider.
- Malzeme olarak yükseltilen eşyanın kendi numarasını yazmak: oyun malzemeyi envanterde ararken eşyanın kendisini de sayar ve onu malzeme diye silebilir. Aynı eşyadan iki tane isteyen tarifleri başka bir malzemeyle kur.
- src_vnum ve result_vnum'a güvenmek; dönüşümü yalnız RefinedVnum belirler.
- İki farklı eşyaya aynı RefinedVnum'u verip kağıtla düşüşün hangi eşyaya gideceğini hesaba katmamak.
Yükseltme penceresinde şansın görünüp görünmemesi istemci ayarıdır; ayrıntı yükseltme şansları yazısında. Protoların dosya ve veritabanı düzeni proto araçları yazısında.
Sık sorulan sorular
- refine_proto'da prob'u değiştirdim, /reload p yetmedi. Neden?
- /reload p db'nin tabloyu yeniden okumasını sağlar, ama çalışan oyun çekirdeklerine yalnız eşya, canavar ve beceri tablolarını gönderir. Yükseltme tarifleri çekirdeğe açılışta gelir; değişikliğin oyunda görünmesi için oyun çekirdeklerini yeniden başlatmak gerekir.
- src_vnum ve result_vnum sütunlarını doldurmak gerekir mi?
- Gerekmez. db bu iki sütunu hiç okumaz; varsayılan tabloda 405 satırın hepsinde 0'dır. Eşyanın neye dönüşeceğini item_proto'daki RefinedVnum belirler.
- Ejderha Parşömeni'nin şansını refine_proto'dan değiştirebilir miyim?
- Hayır. Ejderha Parşömeni ve Demircinin El Kitabı tarifteki prob'a bakmaz, eşyanın artısına göre çekirdekteki sabit tabloyu kullanır. Tarifin şansı normal demirciyi, Kutsama Kağıdı'nı ve Büyülü Metal'i etkiler.
- Bir eşyanın kaç numaralı seti kullandığını nasıl bulurum?
- item_proto.txt'de eşyanın satırındaki RefineSet sütununa bak. Set, yükseltilen eşyaya aittir: Kılıç+0'ın satırındaki set Kılıç+0'dan +1'e geçişin bedelidir.
İlgili sayfalar
- Metin2 item_proto Rehberi: Sütunlar, Türler ve Bayraklar (Server kurma)
- Metin2 Proto Dönüştürme: dump_proto ve Mysql2Proto Nasıl Kullanılır? (Server kurma)
- Metin2 Yükseltme Kağıtları: Kutsama Kağıdı, Ejderha Parşömeni ve Diğerleri (Wiki)
- Metin2 +9 Basma Şansı: +1'den +9'a Başarı Oranları (Wiki)
- Metin2 Yükseltme Sistemi: Artı Basma Nasıl Çalışır? (Wiki)
Kategori: Server Kurma Proto ve Veri Dosyaları artı basma yükseltme sunucu dosyaları proto refine_proto
Bu sayfadaki bilgiler Metin2'nin sunucu yazılımındaki hesaplamalara ve standart oyun dosyalarına dayanır. Oyun dosyalarını değiştiren sunucularda değerler farklı olabilir. İçerikleri nasıl hazırlıyoruz?