Puan
0
Çözümler
0
- Katılım
- 18 Ocak 2025
- Mesajlar
- 52
- Tepkime puanı
- 2
- Konum
- Bursa
- Web sitesi
- ko-turkey.net
Konu Sahibi
Herkese Merhaba!
Bu rehberimizde, Knight Online Private Server’ınızda oyuncuların NP (National Point) karşılığı item alabilecekleri bir quest sistemini sıfırdan nasıl kuracağınızı adım adım anlatacağım.
Bu sistem ile oyuncular, belirli bir NP karşılığında kendi sınıflarına uygun Chitin 9 setini seçip alabilecekler. Proje v18xx–v21xx arası sunucularda sorunsuz çalışır.
Öncelikle görev verecek NPC’yi oyun dünyasına tanıtıyoruz.
NPC ile etkileşimi sağlayacak görev bağlantısı.
Aşağıdaki LUA kodları, oyuncunun NP’sine göre sınıfına özel item seti almasını sağlar. 150,000 NP karşılığı verilecek olan Chitin 9 setleri oyuncunun çantasına otomatik aktarılır.
Bu sistem sayesinde oyuncuların sınıfına göre otomatik item alma işlemleri basitleşmiş olur. Event ödülleri, NP shop ya da özel görev senaryoları için çok işlevseldir.
Not: Her zaman scriptleri canlı sunucuya uygulamadan önce test sunucusunda deneyin ve veritabanınızın yedeğini alın.
Bu rehberimizde, Knight Online Private Server’ınızda oyuncuların NP (National Point) karşılığı item alabilecekleri bir quest sistemini sıfırdan nasıl kuracağınızı adım adım anlatacağım.
Bu sistem ile oyuncular, belirli bir NP karşılığında kendi sınıflarına uygun Chitin 9 setini seçip alabilecekler. Proje v18xx–v21xx arası sunucularda sorunsuz çalışır.
Bölüm 1 – NPC Tanımlaması (SQL)
Öncelikle görev verecek NPC’yi oyun dünyasına tanıtıyoruz.
SQL:
-- NPC Tanımı
INSERT INTO K_NPC VALUES
('29100','Vsro.ORG','31200','100','0','0','3','4','33','1','3','3','0','90','100','500','120000','0','0','20000','497','497','4000','1500','0','0','1000','0','0','0','250','250','250','250','250','250','250','90','7','14','35','32000','21510','0',);
-- NPC Pozisyonu (Moradon koordinatları örnek)
INSERT INTO K_NPCPOS VALUES
('21','29100','100','0','0','0','0','824','552','824','552','824','552','824','552','1','1800','0','0','NULL21');
Bölüm 2 – Quest Helper Tanımı
NPC ile etkileşimi sağlayacak görev bağlantısı.
SQL:
-- Quest Helper Tanımı
INSERT INTO QUEST_HELPER VALUES
('27100','2','1','0','5','3','1','21','29100','0','0','100','0','0','0','Vsro.ORG')
Bölüm 3 – LUA Kodları (Görev Mantığı)
Aşağıdaki LUA kodları, oyuncunun NP’sine göre sınıfına özel item seti almasını sağlar. 150,000 NP karşılığı verilecek olan Chitin 9 setleri oyuncunun çantasına otomatik aktarılır.
SQL:
local UserClass;
local QuestNum;
local Ret = 0;
local NPC = 27100;
if EVENT == 100 then
SelectMsg(UID, 3, -1, 6038, NPC, 7200, 150, 7201, 151, 7203, 152, 7217, 153);
end
-- Rogue Chitin 9 Set
if EVENT == 150 then
Loyalty = CheckLoyalty(UID, 150000);
if Loyalty > 150000 then
RobLoyalty(UID, 150000)
GiveItem(UID, 255001071)
GiveItem(UID, 255002071)
GiveItem(UID, 255003071)
GiveItem(UID, 255004071)
GiveItem(UID, 255005071)
NpcMsg(UID, 4886, NPC)
end
end
-- Warrior Chitin 9 Set
if EVENT == 151 then
Loyalty = CheckLoyalty(UID, 150000);
if Loyalty > 150000 then
RobLoyalty(UID, 150000)
GiveItem(UID, 215001011)
GiveItem(UID, 215002011)
GiveItem(UID, 215003011)
GiveItem(UID, 215004011)
GiveItem(UID, 215005011)
NpcMsg(UID, 4886, NPC)
end
end
-- Mage Chitin 9 Set
if EVENT == 152 then
Loyalty = CheckLoyalty(UID, 150000);
if Loyalty > 150000 then
RobLoyalty(UID, 150000)
GiveItem(UID, 275001041)
GiveItem(UID, 275002041)
GiveItem(UID, 275003041)
GiveItem(UID, 275004041)
GiveItem(UID, 275005041)
NpcMsg(UID, 4886, NPC)
end
end
-- Priest Chitin 9 Set
if EVENT == 153 then
Loyalty = CheckLoyalty(UID, 150000);
if Loyalty > 150000 then
RobLoyalty(UID, 150000)
GiveItem(UID, 295001041)
GiveItem(UID, 295002041)
GiveItem(UID, 295003041)
GiveItem(UID, 295004041)
GiveItem(UID, 295005041)
NpcMsg(UID, 4886, NPC)
end
end
Ekstra Bilgiler:
- CheckLoyalty(UID,150000) → Oyuncunun yeterli NP’ye sahip olup olmadığını kontrol eder.
- RobLoyalty(UID,150000) → Belirtilen NP miktarını düşer.
- GiveItem(UID, ITEM_ID) → Belirtilen itemi oyuncuya verir.
- NpcMsg → NPC'den mesaj gösterimi sağlar (oyuna özel lokalize mesaj).
Sonuç:
Bu sistem sayesinde oyuncuların sınıfına göre otomatik item alma işlemleri basitleşmiş olur. Event ödülleri, NP shop ya da özel görev senaryoları için çok işlevseldir.
