[Fix] Flaş / Parlaklık / Orta onarım

  • Konbuyu başlatan Konbuyu başlatan Admin
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 113

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0

Kod:
UPDATE item_proto SET specular = '30' WHERE locale_name LIKE '%+4' ; UPDATE item_proto SET specular = '40' WHERE locale_name LIKE '%+5' ; UPDATE item_proto SET specular = '50' WHERE locale_name LIKE '%+6' ; UPDATE item_proto SET specular = '65' WHERE locale_name LIKE '%+7' ; UPDATE item_proto SET specular = '80' WHERE locale_name LIKE '%+8' ; UPDATE item_proto SET specular = '100' WHERE locale_name LIKE '%+9' ; UPDATE item_proto SET addon_type=-1 WHERE vnum>=180 AND vnum<=189; UPDATE item_proto SET addon_type=-1 WHERE vnum>=190 AND vnum<=199; UPDATE item_proto SET addon_type=-1 WHERE vnum>=290 AND vnum<=299; UPDATE item_proto SET addon_type=-1 WHERE vnum>=1130 AND vnum<=1139; UPDATE item_proto SET addon_type=-1 WHERE vnum>=1170 AND vnum<=1179; UPDATE item_proto SET addon_type=-1 WHERE vnum>=2150 AND vnum<=2159; UPDATE item_proto SET addon_type=-1 WHERE vnum>=2170 AND vnum<=2179; UPDATE item_proto SET addon_type=-1 WHERE vnum>=3160 AND vnum<=3169; UPDATE item_proto SET addon_type=-1 WHERE vnum>=3210 AND vnum<=3219; UPDATE item_proto SET addon_type=-1 WHERE vnum>=5110 AND vnum<=5119; UPDATE item_proto SET addon_type=-1 WHERE vnum>=5120 AND vnum<=5129; UPDATE item_proto SET addon_type=-1 WHERE vnum>=7160 AND vnum<=7169; UPDATE item_proto SET socket_pct=0; UPDATE item_proto SET socket_pct=1 WHERE (type=1 or (type=2 and subtype=0)) and limittype0=1 and limitvalue0>= 0 and limitvalue0<= 24; UPDATE item_proto SET socket_pct=2 WHERE (type=1 or (type=2 and subtype=0)) and limittype0=1 and limitvalue0>=25 and limitvalue0<= 44; UPDATE item_proto SET socket_pct=3 WHERE (type=1 or (type=2 and subtype=0)) and limittype0=1 and limitvalue0>=45 and limitvalue0<=255;

[FIX] Flaş / Parlaklık / Orta Onarım

Metin2 sunucularında yaşanan Flaş / Parlaklık / Orta onarım sorunları, oyuncuların karakterlerinde eşya kaybı yaşamaması açısından son derece kritik öneme sahiptir. Bu tür hatalar genellikle veritabanındaki bazı tablolarda meydana gelen eksikliklerden veya hatalı veri girişlerinden kaynaklanmaktadır. Bu makalede, Metin2 veritabanı (SQL, MySQL, MariaDB) üzerinden bu tür onarımların nasıl yapılacağını detaylı şekilde ele alacağız.

Flaş / Parlaklık / Orta Onarımı Nedir?

Bu terimler, Metin2 oyununda karakterin elindeki silah ya da zırh üzerinde yapılan geliştirmeleri ifade eder. Örneğin; +0 dan +1 e çıkarma işlemi bir Flaş onarımıdır. +1 den +2 ye, +2 den +3 e geçiş ise sırasıyla Parlaklık ve Orta onarım olarak adlandırılır. Bu işlemler sırasında sistemsel aksaklıklar yaşandığında, eşyanın seviyesi düşebilir veya eşya tamamen kaybolabilir. Bu da büyük bir can sıkıntısı yaratır.

Onarım Sistemleriyle İlgili Veritabanı Tabloları

Metin2 veritabanında onarım süreçlerini yöneten ana tablolar şunlardır:

- refine_table
- item_table
- item_proto
- player_item
- log_refine

Bu tabloların doğru yapılandırılmış olması, onarım sisteminin sağlıklı çalışması için şarttır. Özellikle refine_table, onarım oranlarını ve hangi eşyanın hangi eşyaya dönüşeceğini belirler. Eğer bu tablo eksikse, Flaş, Parlaklık ve Orta onarımlar düzgün işlemeyebilir.

refine_table Yapısı[/CONTEXT]

refine_table, Metin2 veritabanında şu şekilde tanımlanmıştır:

CREATE TABLE `refine_table` (
`src_vnum` int(11) NOT NULL DEFAULT '0',
`dst_vnum` int(11) NOT NULL DEFAULT '0',
`cost` int(11) NOT NULL DEFAULT '0',
`prob` int(11) NOT NULL DEFAULT '75',
PRIMARY KEY (`src_vnum`, `dst_vnum`)
);

Bu tabloda src_vnum, onarılacak olan eşyanın VNUM değeridir. dst_vnum ise onarımdan sonra elde edilecek eşyanın VNUM'udur. cost, onarım maliyetini belirtir. prob ise onarım başarısını gösteren yüzde değeridir.

Ortak Hata: Eksik refine_table Kayıtları

Bazı sunucularda, özellikle özel item setleri eklenirken, bu setlerin Flaş / Parlaklık / Orta onarım desteği veritabanına eklenmemiştir. Bu durumda, oyuncu onarım yapmaya çalıştığında sistem hata verir veya eşya kaybolur. Bu durumu çözmek için eksik olan verilerin veritabanına eklenmesi gerekir.

Fix Uygulaması: Eksik Kayıtların Eklenmesi

Aşağıdaki örnek sorgu, 10100 numaralı zırh setinin Flaş onarımını desteklemesi için gerekli veriyi ekler:

INSERT INTO `refine_table` (src_vnum, dst_vnum, cost, prob) VALUES (10100, 10101, 50000, 75);

Bu sorgu, 10100 VNUM'lu eşyanın 10101 VNUM'lu eşyaya %75 başarı ile dönüşmesini sağlar. Gerekli tüm onarım seviyeleri için bu işlem tekrarlanmalıdır.

Loglama ve Güvenlik

Her onarım işleminin loglanması önemlidir. Bu sayede hatalı işlemlerde geri izleme yapabilirsiniz. log_refine tablosu, bu işlemleri takip etmek için idealdir. Bu tabloyu düzenli olarak kontrol etmek, olası veri kayıplarını önceden fark etmenizi sağlar.

Önerilen Güvenlik Adımları

1. Her zaman veritabanı yedekleri alın.
2. refine_table üzerinde değişiklik yapmadan önce test ortamında deneme yapılmalıdır.
3. Oyunculara onarım sistemi hakkında bilgi verilmelidir.

Not: Yanlış VNUM kullanımı veya eksik tablo yapılandırması ciddi veri kayıplarına neden olabilir. Bu nedenle, tüm işlemler dikkatli ve bilinçli bir şekilde yapılmalıdır.


[FIX] Flash / Brightness / Medium Repair

Flash / Brightness / Medium repair issues in Metin2 servers are critically important in order to prevent players from losing items on their characters. These types of errors generally stem from missing or incorrect data entries in certain tables within the database. In this article, we will elaborate on how to perform such repairs through the Metin2 database (SQL, MySQL, MariaDB).

What Is Flash / Brightness / Medium Repair?

These terms refer to upgrades made to weapons or armor held by a character in the Metin2 game. For example, upgrading from +0 to +1 is called a Flash repair. Upgrading from +1 to +2 and then +2 to +3 are referred to as Brightness and Medium repairs respectively. When system glitches occur during these processes, the item level may decrease or the item might be completely lost, which causes significant frustration.

Database Tables Related to Repair Systems

The main tables managing repair processes in the Metin2 database are as follows:

- refine_table
- item_table
- item_proto
- player_item
- log_refine

Correct configuration of these tables is essential for the repair system to function properly. Specifically, refine_table determines the upgrade rates and specifies which item turns into another. If this table is incomplete, Flash, Brightness, and Medium repairs may not function correctly.

Structure of refine_table

In the Metin2 database, refine_table is defined as follows:

CREATE TABLE `refine_table` (
`src_vnum` int(11) NOT NULL DEFAULT '0',
`dst_vnum` int(11) NOT NULL DEFAULT '0',
`cost` int(11) NOT NULL DEFAULT '0',
`prob` int(11) NOT NULL DEFAULT '75',
PRIMARY KEY (`src_vnum`, `dst_vnum`)
);

In this table, src_vnum represents the VNUM of the item being upgraded. dst_vnum is the VNUM of the resulting item after the upgrade. cost indicates the upgrade cost, and prob shows the success percentage of the upgrade.

Common Error: Missing refine_table Entries

In some servers, especially when custom item sets are added, Flash / Brightness / Medium repair support for those sets may not be included in the database. In such cases, when players attempt to upgrade, the system may return an error or cause the item to disappear. To resolve this issue, the missing data must be added to the database.

Fix Implementation: Adding Missing Entries

The following example query adds the required data for Flash repair support of armor set number 10100:

INSERT INTO `refine_table` (src_vnum, dst_vnum, cost, prob) VALUES (10100, 10101, 50000, 75);

This query allows item with VNUM 10100 to upgrade to VNUM 10101 with a 75% success rate. This process must be repeated for all necessary upgrade levels.

Logging and Security

It is important to log every upgrade operation. This way, you can trace back in case of faulty operations. The log_refine table is ideal for tracking these processes. Regularly checking this table helps detect potential data losses early on.

Suggested Security Steps

1. Always take database backups.
2. Before making changes to refine_table, test in a safe environment.
3. Inform players about the repair system.

Note: Incorrect VNUM usage or incomplete table configurations can lead to serious data losses. Therefore, all operations should be carried out carefully and consciously.
 

Şuan Bu Konuyu Görüntüleyen Kullanıcılar (Toplam : 0, Üye : 0, Misafir : 0)

Benzer konular

Geri
Üst Alt