Pratik tsql kodları

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

Admin

Knight Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
45,967
Konu link görüntülemek için konuya cevap yazmalısınız.
Pratik TSQL Kodları

Knight Online Private Server geliştirme sürecinde, veritabanı işlemleri büyük önem taşır. Özellikle KO DB üzerinde çalışırken, sıklıkla karşılaşılan ihtiyaçlar için pratik TSQL kodları üretmek, geliştiriciye zaman kazandırır. Bu makalede, Knight Online sunucularında yaygın olarak kullanılan bazı veritabanı sorgularını derledik. Bu sorgular, item.bin, mob.bin, npc.bin, karakter verileri, sunucu ayarlamaları gibi alanlarda kullanılır. KO Development yaparken işinize yarayacak bu kodları not almanız önerilir.

Karakter Bilgilerini Listeleme

Sunucudaki tüm aktif karakterleri listelemek için aşağıdaki sorguyu kullanabilirsiniz:

Kod:
[COLOR=#0000cc]SELECT CharName16, Level, Class, Exp, Gold FROM USERDATA.dbo.CHARINFO ORDER BY Level DESC;[/COLOR]


Bu sorgu, KnightOnLine.exe üzerinden oynanan karakterlerin isimlerini, seviyelerini, sınıflarını ve sahip oldukları altın miktarını listeler. ORDER BY ile seviyeye göre sıralama yapılmıştır.

Belirli Bir Seviye Üzeri Karakterleri Filtreleme

Cap 83 sunucularda, belirli seviye üzerindeki karakterleri görmek isterseniz şu sorguyu kullanabilirsiniz:

Kod:
[COLOR=#0000cc]SELECT CharName16, Level, Class FROM USERDATA.dbo.CHARINFO WHERE Level >= 83 ORDER BY Level DESC;[/COLOR]


Bu sorgu, cap 83 sunucular için çok kullanışlıdır. Özellikle KO PvP sunucularında güçlü karakterleri takip etmek için idealdir.

Silinmiş Karakterleri Geri Getirme

Bazı durumlarda oyuncular yanlışlıkla karakter siler. Bu karakterleri geri getirmek için aşağıdaki sorguyu kullanabilirsiniz:

Kod:
[COLOR=#0000cc]UPDATE USERDATA.dbo.CHARINFO SET DelDate = NULL WHERE CharName16 = 'KarakterAdı';[/COLOR]


Bu işlem, silinmiş sayılan karakterin tekrar aktif olmasına olanak tanır. Ancak bu işlem dikkatli yapılmalıdır.

Item Ekleme veya Güncelleme

Sunucuya özel item eklenecekse ya da mevcut itemler üzerinde değişiklik yapılacaksa şu sorgu örnek alınabilir:

Kod:
[COLOR=#0000cc]INSERT INTO ITEMDATA.dbo.ITEMS (ItemID, ItemName, Type, Grade) VALUES (1001, 'Özel Kılıç', 1, 5);[/COLOR]


Bu sorgu, item.bin dosyasına entegre edilecek yeni bir öğeyi veritabanına ekler. KO Source Code üzerinde çalışırken bu tür sorgular çok işe yarar.

NPC veya Mob Verilerini Kontrol Etme

NPC veya mob verilerini kontrol etmek için aşağıdaki sorgu kullanılabilir:

Kod:
[COLOR=#0000cc]SELECT Name, HP, Level, Attack FROM SMDATA.dbo.MONSTER;[/COLOR]


Bu sorgu, mob.bin ve npc.bin dosyalarındaki verilerle eşleşen monsüterleri listeler. KO Emulator geliştirirken bu verileri kontrol etmek önemlidir.

Sunucu Ayarlarını Değiştirme

Sunucu ayarları genellikle farklı bir tabloda tutulur. Örneğin drop oranlarını değiştirmek için şu sorguyu kullanabilirsiniz:

Kod:
[COLOR=#0000cc]UPDATE SERVERDATA.dbo.DROP_SETTINGS SET DropRate = 5.0 WHERE ZoneID = 1;[/COLOR]


Bu tür ayarlar, zone server yapılandırmasında kullanılır. USKO ya da ROFD tabanlı sunucularda önemli rol oynar.

Zamanlanmış Görevler İçin Cron Benzeri Sorgular

Bazı sunucular, belirli zaman aralıklarında veritabanında otomatik temizlik yapar. Örnek olarak, 7 günden eski kayıtları silmek için şu sorguyu kullanabilirsiniz:

Kod:
[COLOR=#0000cc]DELETE FROM USERDATA.dbo.LOGS WHERE LogTime < DATEADD(day, -7, GETDATE());[/COLOR]


Bu sorgu, log tablosunda 7 günden eski kayıtları temizler. Sunucu performansını artırmak için önerilir.

DİKKAT: Tüm bu sorgular, Knight Online Database yapısına uygundur. Ancak her sunucu farklı yapılar kullanabilir. Uygulamadan önce yedek almayı unutmayın. KO Files ve KO Server Files üzerinde çalışırken dikkatli olmak gerekir.

Bu tür TSQL sorguları, hem KO Dev hem de KO Bot geliştiricileri için faydalıdır. Kobot veya KO Bot Development süreçlerinde veritabanı bağlantısı kurulması gerektiği zaman bu kodlar referans alınabilir.


Practical TSQL Codes

Knight Online Private Server development involves critical database operations. Especially when working with KO DB, practical TSQL codes save developers valuable time. In this article, we compiled commonly used database queries for Knight Online servers. These queries are useful for areas like item.bin, mob.bin, npc.bin, character data, and server configurations. It's recommended to note these codes which can be helpful during KO Development.

Listing Character Information

To list all active characters on the server, you can use the following query:

Kod:
[COLOR=#0000cc]SELECT CharName16, Level, Class, Exp, Gold FROM USERDATA.dbo.CHARINFO ORDER BY Level DESC;[/COLOR]


This query lists character names, levels, classes, and gold amounts from KnightOnLine.exe. The ORDER BY clause arranges them by level in descending order.

Filtering Characters Above a Certain Level

On cap 83 servers, if you want to view characters above a specific level, you can use the following query:

Kod:
[COLOR=#0000cc]SELECT CharName16, Level, Class FROM USERDATA.dbo.CHARINFO WHERE Level >= 83 ORDER BY Level DESC;[/COLOR]


This query is very useful for cap 83 servers. It is ideal for tracking strong characters especially on KO PvP servers.

Restoring Deleted Characters

In some cases, players may accidentally delete their characters. To restore those characters, you can use the following query:

Kod:
[COLOR=#0000cc]UPDATE USERDATA.dbo.CHARINFO SET DelDate = NULL WHERE CharName16 = 'CharacterName';[/COLOR]


This action allows the deleted character to become active again. However, this must be done carefully.

Adding or Updating Items

If special items need to be added to the server or existing items modified, the following query can serve as an example:

Kod:
[COLOR=#0000cc]INSERT INTO ITEMDATA.dbo.ITEMS (ItemID, ItemName, Type, Grade) VALUES (1001, 'Special Sword', 1, 5);[/COLOR]


This query adds a new entry into the database that will be integrated into the item.bin file. Such queries are very useful when working on KO Source Code.

Checking NPC or Mob Data

To check NPC or mob data, you can use the following query:

Kod:
[COLOR=#0000cc]SELECT Name, HP, Level, Attack FROM SMDATA.dbo.MONSTER;[/COLOR]


This query lists monsters that match data from mob.bin and npc.bin files. It is crucial when developing KO Emulator.

Changing Server Settings

Server settings are usually stored in a different table. For example, to change drop rates, you can use the following query:

Kod:
[COLOR=#0000cc]UPDATE SERVERDATA.dbo.DROP_SETTINGS SET DropRate = 5.0 WHERE ZoneID = 1;[/COLOR]


Such settings are used in zone server configuration. They play a key role in USKO or ROFD-based servers.

Cron-like Queries for Scheduled Tasks

Some servers automatically clean old records at certain intervals. For example, to delete logs older than 7 days, you can use the following query:

Kod:
[COLOR=#0000cc]DELETE FROM USERDATA.dbo.LOGS WHERE LogTime < DATEADD(day, -7, GETDATE());[/COLOR]


This query clears records older than 7 days in the log table. It is recommended to improve server performance.

CAUTION: All these queries are compatible with Knight Online Database structure. However, each server might use different structures. Always take a backup before applying any changes. When working on KO Files and KO Server Files, caution is essential.

These types of TSQL queries are beneficial for both KO Dev and KO Bot developers. During processes such as Kobot or KO Bot Development, where database connections are required, these codes can serve as reference.
 

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

Benzer konular

Geri
Üst Alt