DeathKO | v.24xx Light Farm | ORION | Beta: 17 Kasım | Official: 24 Kasım

WMKO 15xxlerdeki Quest mantığı

J Çevrimdışı

JustforYou

Kayıtlı Üye
18 Mayıs 2012
235
9
18
29
İçerik Açılmıştır Teşekkürler :)
aslında evt sistemiyle aynı mantıkta çalışıyor ama bana göre bu sistem daha kullanışlı serveri kapatmadan questlerde oynayabiliyorsunuz ve tbl editlemenize gerek yok ayrıca sınırsız buton ekleyebiliyoruz



kodlar ve açıklamaları​





addloyalty = np ekleme

break = ara vermek

giveexp = exp vermek

nationchange = ırk değiştirme

close = kapatma

disguise = değiştirmek (kullanmadım)

setvalue = değer ayarlama (daha hiç kullanmadım)

setsign = işaret (kullanmadım )

setdate = tarihi ayarlamak

giveitem = item vermek

givegold = para vermek

decjifen = bilinmiyor

addjifen = bilinmiyor

modifycloak = pelerin değiştirme

takeitemall = tüm itemleri alma

takeitem = item alma

addmember = üye ekleme

takegold = para alma

mapmove = harita'da koordinat değiştirme

goto = zone değiştirme

checknation = ırk kontrolu

checkitemcount = item sayısı kontrolu

checkmonnum = bilinmiyor

checktimebetween = iki zaman arasını kontrol eder

checklevelbetween = iki level arası kontrol

checkusernum = kullanıcı numarasını kontrol eder (sayısı da olabilir denemedim hiç )

checkhour = saati kontrol eder

checkloyalty = np yi kontrol eder

checkexp = exp i kontrol eder

checklevel = level kontrol eder

dayofweek = haftanın günü

isknightmember = bilinmiyor

checkvalue = değeri kontrol etme

checksign = işareti kontrol etme

checkdate = tarihi kontrol etme

checkjifen = bilinmiyor

checkguildgrade = kolluk kontrol etme (grade 1 2 3 vs vs)

isguildchief = bilinmiyor

isvalidmember = bilinmiyor

checkitem = item kontrol etme

ismember = bilinmiyor

checkgold = para kontrol etme

random..%s%d%d%d%d..%s%d% d..%s%d = rastgele değişken (bilinmiyor nerede kullanılacağı

if:%s ......%s%d%d%d = bilinmiyor

then:%s = bilinmiyor

$ALLYGUILDS = bilinmiyor

$SCORE = bilinmiyor

runsay: = bilinmiyor

%d: = değişken

@exit = çıkış butonu

@main = npcsaylerin başında kullanılır [@main] olarak

C.:szlen=%d = bilinmiyor

pproc->elsepart.says:%s = bilinmiyor

elsepart.runlist:%s = bilinmiyor

pproc->thenpart.says:%s = bilinmiyor

thenpart.runlist:%s = bilinmiyor

ifpart.condlist:%s = bilinmiyor

#elsesay = kendisinden önce gelen komuta uyuşmayan durum varsa tersinde yazılacak say komutu

#elseact = kendisinden önce gelen komutlara uyuşmayan durum varsa veya tersinde yapılacak işlemler bütünü

#say = yazı yazar

#act = komutları çalıştırır

#if = eğer ...

#:%s = bilinmiyor

1:%s = bilinmiyor

filename:%s = bilinmiyor


örnek:

[@main] # @main komutu ana dizini ifade eder kullanıcı NPCyi açtıgında yapılıcak işlemdir

#IF

#SAY

<Gold Shell Cek/@Gold>\ Gold shell cek bölümü butonda yazan yazı @gold ise butona tıklandıgında gidilecek main şimdi aşagı inip @gold mainine bakalım ;)

<Silah/@Sil>\

<Scroll/@Sc>\

<Str Takylar/@T1>\

<Dex Takilar/@DT2>\

<Cykys/@exit>\



[@T1]

<Ring of Courage/@Roc>\

<Amulet of Strength /@Aos>\

<Platinum Earring /@Pe>\

<Belt of Strength /@Bos>\

<Obur Sayfa/@T2>\

<Exit/@exit>\



[@T2]

<Glass Belt /@Gbt>\

<Iron Belt /@Ibt>\

<Iron Necklace /@Ins>\

<Exit/@exit>\



[@Sc]

#IF

#ACT

giveitem 800010000

giveitem 800010000

giveitem 800010000

giveitem 800010000

giveitem 800010000

giveitem 800013000

giveitem 800013000

giveitem 800013000

giveitem 800013000

giveitem 800013000

giveitem 800014000

giveitem 800014000

giveitem 800014000

giveitem 800014000

giveitem 800014000

giveitem 800015000

giveitem 800015000

giveitem 800015000

giveitem 800015000

giveitem 800015000

;break

#SAY

Scroll Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\







[@Sil]

#IF

checkgold 10000

#ACT

giveitem 189401290

giveitem 169101240

giveitem 129101220

giveitem 159301520

giveitem 119301510

giveitem 136210280

giveitem 119101210

giveitem 179101299

giveitem 199101250

giveitem 170250261

giveitem 170210271

giveitem 189603570

giveitem 189301280

giveitem 170250270

;break

#SAY

Silahlar Alindi\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Roc]

#IF

#ACT

giveitem 330410301

;break

#SAY

Ring of Courage Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Aos]

#IF

#ACT

giveitem 320610341

;break

#SAY

Amulet of Strength Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Pe]

#IF

#ACT

giveitem 310610241

;break

#SAY

Platinum Earring Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Bos]

#IF

#ACT

giveitem 340510401

;break

#SAY

Belt of Strength Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Gbt]

#IF

#ACT

giveitem 340410391

;break

#SAY

Glass Belt Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Ibt]

#IF

#ACT

giveitem 340410371

;break

#SAY

Iron Belt Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Ins]

#IF

#ACT

giveitem 320610411

;break

#SAY

Iron Necklace Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@DT2]

<Ring of Life /@Rol>\

<Amulet of Dexterity /@Amod>\

<Belt of Belt of Life /@Boll>\

<Elf-Metal Earring /@Eme>\

<Exit/@exit>\



[@Rol]

#IF

#ACT

giveitem 330410321

;break

#SAY

Ring Of Life Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Amod]

#IF

#ACT

giveitem 320610351

;break

#SAY

Amulet of Dexterity Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Boll]

#IF

#ACT

giveitem 340610311

;break

#SAY

Amulet of Dexterity Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Eme]

#IF

#ACT

giveitem 310610251

;break

#SAY

Elf-Metal Earring Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Gold] Ehe hoşgeldiniz şimdi burada Class seçiyoruz yine buton ve gidilecek main var biz warrioru seçersek @Wara gidicek

<Warrior/@War>\

<Priest/@Pri>\

<Rogue/@Rog>\

<Mage/@Mag>\

<Exit/@exit>\



[@War] hop burdayız giveitemde itemleri veriyor bazı eklentiler yapabiliriz mesela checkitem komutu ile Gold shell certifika kontrol ederiz yoksa #elsesay komutu ile hata veririz gibi

#IF

#ACT

giveitem 709002020

giveitem 709004020

giveitem 709005020

giveitem 709001020

giveitem 709003020

;break

#SAY

Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Pri]

#IF

#ACT

giveitem 789001510

giveitem 789002510

giveitem 789003510

giveitem 789004510

giveitem 789005510

;break

#SAY

Scroll Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Rog]

#IF

#ACT

giveitem 749001520

giveitem 749002520

giveitem 749003520

giveitem 749004520

giveitem 749005520

;break

#SAY

Scroll Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\



[@Mag]

#IF

#ACT

giveitem 769001510

giveitem 769002510

giveitem 769003510

giveitem 769004510

giveitem 769005510

;break

#SAY

Scroll Alyndy\\

<Ba?a Dön/@main>\

<Exit/@exit>\

#ELSESAY

Bir Sorun Var Olmady\ \

<Exit/@exit>\




Bir NpcSay Dosyası NPC'ye nasıl bağlanır



arkadaşlar bu biraz karışık gelebilir ama çok basit ilk olarak Dbmizden K_NPC'ye iniyoruz

Quest npcmiz ekli olucak tabi bu quest npc ye atadığımız bir Bytype değeri olmalı o sütunda yazan değer npcnin .spt Değeridir peki nasıl bağlıyıcaz burdan diyelim bizim bu npcnin değeri 112

yeni bir metin belgesi açıyoruz ve içine kodları yazıyoruz farklı kaydetten Ebenezer/npcsay klasörünün içine npcsay_112.spt olarak kaydediyoruz ve işlem tamamdır :)



188 yazıyormuş yanlış olmuş ayni şey :D

Not: Skill ile .spt açtırma anlatımı eklenecektir
 
G Çevrimdışı

GeliSmiSPhic

Guest
Cevap: WMKO 15xxlerdeki Quest mantığı



içerige bakmak lazım :D