Knight Online Yeni Upgrade Effect Ekleme (2025) – Başarılı & Başarısız Efekt Sistemi

DeltaSoft

Yönetici
MAREŞAL
Katılım
12 May 2026
Mesajlar
55
Tepkime puanı
34
Knight Online Upgrade Effect Sistemi

Başarılı Upgrade Efekti & Global Notice Sistemi



━━━━━━━━━━━━━━━━━━━━━━

Merhaba dostlar,

Bu rehberde sizlere Knight Online serverınıza özel upgrade efekt sistemi nasıl eklenir detaylı şekilde anlatacağım.

Özellikle son dönem PvP serverlarında gördüğünüz:

Başarılı upgrade efekti
Ekranda patlayan görseller
Global notice sistemi
+8 / +9 basınca çıkan efektler
Oyuncuya özel upgrade duyuruları

gibi sistemlerin mantığını burada öğrenmiş olacaksınız.

Hazırladığım sistem sayesinde oyuncular item bastığında:
hem görsel efekt çalışacak hem de tüm server duyuru görecek.

Özellikle:

PvP server sahipleri
Developerlar
Source edit yapan kişiler
GameServer düzenleyenler

için oldukça kullanışlı bir sistemdir.

━━━━━━━━━━━━━━━━━━━━━━

Sistem Nasıl Çalışıyor?

Knight Online içerisinde upgrade işlemleri yapılırken sistem:

Kod:
UpgradeResult

değişkeni ile sonucu kontrol eder.

Burada:

UpgradeResult == 1 → Upgrade başarılı oldu
UpgradeResult == 0 → Upgrade başarısız oldu

Biz bu kontrolü kullanarak:

Özel efekt çalıştırabiliyoruz
Global duyuru gönderebiliyoruz
Notice sistemi yapabiliyoruz
Discord log sistemi bağlayabiliyoruz

━━━━━━━━━━━━━━━━━━━━━━

Kullanılacak Kod

Aşağıdaki kodu:
ItemUpgrade.cpp
yada upgrade işlemlerinin bulunduğu alana eklemeniz gerekiyor.

Genellikle:

Kod:
GameServer
src/server
ItemUpgrade

bölümlerinde bulunur.

━━━━━━━━━━━━━━━━━━━━━━

C++:
// DeaFSoft Upgrade Effect - SUCCESS
if (UpgradeResult == 1)
{
    ShowEffect(490092); // Başarılı efekt

    if (is_upgrade || pItem.m_ItemType == 11 || pItem.m_ItemType == 12 || scroll_id == 379159000)
    {
        Packet result(WIZ_LOGOSSHOUT, uint8(0x02));
        result.SByte();
        result << uint8(0x05) << uint8(UpgradeResult) << GetName() << pItem.m_iNum << GetLoyaltySymbolRank();
        g_pMain->Send_All(&result);
        return;
    }
}

// FAIL DURUMU
else if (UpgradeResult == 0)
{
    if (is_upgrade || pItem.m_ItemType == 11 || pItem.m_ItemType == 12 || scroll_id == 379159000)
    {
        Packet result(WIZ_LOGOSSHOUT, uint8(0x02));
        result.SByte();
        result << uint8(0x05) << uint8(UpgradeResult) << GetName() << pItem.m_iNum << GetLoyaltySymbolRank();
        g_pMain->Send_All(&result);
        return;
    }
}

━━━━━━━━━━━━━━━━━━━━━━

Kod Ne İşe Yarıyor?

ShowEffect(490092)

C++:
ShowEffect(490092);

Bu bölüm:
upgrade başarılı olduğunda efekt çalıştırır.

Örneğin:

Patlama efekti
Alev efekti
Yılbaşı efekti
Parlama efekti
Işık patlaması

gibi efektleri burada kullanabilirsiniz.

━━━━━━━━━━━━━━━━━━━━━━

WIZ_LOGOSSHOUT

C++:
Packet result(WIZ_LOGOSSHOUT, uint8(0x02));

Bu sistem:
server geneline duyuru geçer.

Yani oyuncu item bastığında:

Tüm oyuncular notice görür
Global chat mesajı çıkar
Server heyecanlanır

━━━━━━━━━━━━━━━━━━━━━━

GetName()

C++:
GetName()

Bu bölüm:
upgrade basan oyuncunun nickini alır.

Örnek:

Kod:
Ayhan +9 Raptor bastı!

━━━━━━━━━━━━━━━━━━━━━━

pItem.m_iNum

C++:
pItem.m_iNum

Bu alan:
item ID bilgisini getirir.

Yani hangi itemin basıldığını sistem burada öğrenir.

━━━━━━━━━━━━━━━━━━━━━━

Sistemin Avantajları

Bu sistemi kullanınca serverınız daha profesyonel görünür.

Oyuncular upgrade basarken heyecan yaşar
Server daha kaliteli görünür
Global notice sistemi aktif olur
PvP havası oluşur
Oyuncular rare item basınca dikkat çeker

Birçok büyük KO serverında bu sistem kullanılmaktadır.

━━━━━━━━━━━━━━━━━━━━━━

Geliştirme Önerileri

Sistemi daha da geliştirebilirsiniz.

Örneğin:

+8 ve +9 için ayrı efekt
Rare itemlarda özel duyuru
Fail durumunda kırmızı efekt
Discord webhook sistemi
Upgrade log sistemi
Notice renk sistemi
Clan duyurusu

eklenebilir.

━━━━━━━━━━━━━━━━━━━━━━

Sonuç

Knight Online içerisinde:
upgrade efekt sistemi

server kalitesini ciddi şekilde yükselten sistemlerden biridir.

Özellikle:

PvP serverlar
Farm serverlar
Edit serverlar
Fun serverlar

için oldukça güzel bir görsellik sağlar.

Umarım PvpServerleri.com üyelerine faydalı olur

İyi forumlar dilerim.

━━━━━━━━━━━━━━━━━━━━━━
 

Konuyu Görüntüleyen Kullanıcılar (Toplam:2)