PvP Server Kurulum-Reklam..

Nasıl Quest Yazılımı YapılıR ? BuyRun İçeRde Bütün DetaylaRıyla

ÖNEMLİ : Anlatımlarda kırmızı ile yazdığım yerleri kendinize göre düzenliceksiniz.
ÖNEMLİ 2 : Quest yazılımlarında asla türkçe karakter kullanmayın.(Ö-ö-ü-Ü-Ş-ş-İ-ı-Ğ-ğ-Ç-ç)
Ders No: 1
Konu: Yüzüğe göre quest yapma
Npc'ye göre quest yapma
Oyuna girişte çalışan quest yapma.

Anlatım 1:
Yüzüğe tıklayınca açılmasını sağlamak.




Kod:
quest questinizinadi begin state start begin when 40003.use begin


Yukarıdaki kodda "questinizinadi" yazan yere bir isim yazın.Örnek: pot adem...
"40003" yerine ise hangi yüzüğe yada iteme tıklayınca çalışmasını istiyorsanız kodunu yazın.


Anlatım 2:
Npc'ye Tıklayınca açılmasını sağlamak.


Kod:
quest questinizinadi begin state start begin when 20086.chat."Test 1" begin


Yukarıdaki kodda "questinizinadi" yazan yere bir isim yazın.Bu isimler önemsizdir herhangi birşey yapabilrsiniz."20086" yerine istediğiniz Npc kodunu yazın.
"Test 1" yerine ise Npc'ye tıklayınca gözükecek isimi yazın.Örneğin: Skilleri P Yap At Al Kahraman Yap...


Anlatım 3:
Girişte açılan quest yapma.

Kod:
quest questadi begin state start begin when login begin


Girişte açılması için bunu yapmanız yeterlidir.Umarım anlamışsınızdır.


Anlatım 4:
Sol tarafta görev olarak gelen görev yapımı.

Kod:
Kod:
quest questadi begin state start begin when letter begin send_letter ( "Test Gorev" ) end

when button or info beginTest Gorev yerine gözükecek ismi yazın.


Şimdi Örnekler:
Anlatım 1 Örneği: Yüzükle açılış

Kod:
Kod:
quest kagit begin state start begin when 40003.use begin say("Yuzuk Testi.") say("Konusma 1") end end end


Anlatım 2 Örneği: Npc açılış

Kod:
quest panelimiz begin state start begin when 20086.chat."Oyuncu Paneli" begin say_title("Hosgeldin.") say("Bu bir testtir.") end end end


Anlatım 3 Örneği: Girişte açılış
Kod:
quest giris begin state start begin when login begin chat("Test duyurusu.") end end end


Anlatım 4 Örneği: Görevle açılış
Kod:
quest pot begin state start begin when letter begin send_letter ( "Pot Al" ) end when button or info begin say_title("Pot:") say("") say("1000 K. 1000 M. pot 1m yang almak istiyormusun?") say("") local s=select("Pot Al", "Kapat") if s==1 then pc . give_item2 ( "27003" , 200 ) pc . give_item2 ( "27003" , 200 ) pc . give_item2 ( "27003" , 200 ) pc . give_item2 ( "27003" , 200 ) pc . give_item2 ( "27003" , 200 ) pc . give_item2 ( "27006" , 200 ) pc . give_item2 ( "27006" , 200 ) pc . give_item2 ( "27006" , 200 ) pc . give_item2 ( "27006" , 200 ) pc . give_item2 ( "27006" , 200 ) pc . changegold ( - 1000000 ) say_title("ileti:") say("") say("Potunuz verildi.") say("") elseif s==2 then else end end end end


Ders No : 2
Anlatım : 1
Konuşma ve Seçenek verme.
Npc yada yüzüğe tıklayınca çıkan konuşmaları göstericem.Ders 1 de yüzükle açmayı göstermiştim.Şimdi yüzükten başlayalım.
Quest başlığını
"say_title("")" koduyla yapıyoruz.Başlığa istediğinizi yazın.Kahraman Npc gibi... (Konuşma tırnak arasında olmalı("test"gibi.)
Konuşmaları ise "say" koduyla yapıyoruz.Konuşmayı 2 tırnak arasında yazmalısınız.("test" gibi.)

Kod:
quest questinizinadi begin state start begin when 40003.use begin say_title("Yeni Yuzuk") say("Konusma 1") say("Konusma 2") end end end

NPC içinde aynı şekilde olucak.Sadece başları farklı ders 1 de anlattığım gibi.

Anlatım : 2
Seçenek verme
Anlatım 1 deki örneğimizi seçenek vererek yapmayı göstercem.
Seçenek verme kodumuz : "local s = select("")"
Seçenek verme örneği:
Kod:
quest questinizinadi begin state start begin when 40003.use begin say_title("Yeni Yuzuk") say("Birini seciniz :") local s = select ( "Konusmayi Oku", "Kapat" ) if s == 1 then say("Konusma 1") say("Konusma 2") end if s == 2 then end end end end



Kodları açıklayım.
Local s = select yaptık. Bu şık vermemize yarayan koddur. Şıklarımız "" tırnakları içerisinde olmalıdır.Bir şık yazınca diğerine geçmek için "Şık" şeklinde olmalıdır.Yani " dan sonra bir virgül () ve bir boşluk olmalıdır.
Local s 'deki s harfi herhangi bir harf olabilir.Size kalmış durum.

if s == 1 then kodundaki "s" harfi local s deki harftir.İf s demek local s şıklarını çektiğini belirtmektir.
if s == 1 then == den sonraki "1" rakamı bize 1. şıkkın seçildiğinde açılacağını söyler.Then ise tıklayınca açılmasıdır.Yukarıdaki örnekte görüldüğü gibi "if s == 1 then" altına konuşmaları koydum.Yani 1.şık seçilince konuşmalar ekrana gelicek.
1.Şık kodlamasının bittiğini belirtme amacıyla if s == 2 then den önce bir kez "end" yazınız.
2.Şık "if s == 2 then" yani "Kapat yazdığımız şıktır. Bu şıkkın altına birşey yazmamıza gerek yoktur.End yazmak kapanması için yeterlidir.
Şimdi 4 kez end yazmışsın diceksiniz.Questin bitmesi için 3 end gereklidir.Sonuncu end ise 1.şıkkın sonuna koyduğumuz end içindir.Umarım anlamışsınızdır.Okumayla anlaşılmaz sürekli deneyin yapa-boza öğreniceksiniz.
Yaptığınız örnekleri alta yazın ki nerelerde hata yaptığınızı söyleyim.


BunlaRda İşinize Yarıyacak Quest KodlaRı :
Kod:
chat = sadece belirlediğiniz yada tüm karakterlerde altta gözükebilecek yazı kodudur.Beyaz renkli yazıdır. game.open_safebox = depo açma kodu. game.open_mall = item shop deposu açma kodu. input = yazı yazma kutusu. Ruh taşındaki yazı yazma kutusu gibi. mob_name = npc adını gösteren kod notice = Gm yazısı gibi sarı yazı geçirmek pc.change_gold = para verme yada para silme kodu pc.change_alignment = derece artırma yada düşürme kodu pc.clear_skill = skill sıfırlama kodu pc.count_item = envanterdeki bir itemi arama kodu mesela envanterde çelik varmı diye bakma vs. pc.get_map_index = adamın bulunduğu haritayı görme yada haritaya ışınlama kodu. pc.get_name = Oyuncunun nickini görüntüleme kodu pc.give_exp = exp verme kodu yada silme pc.give_exp2 = exp verme kodu yada silme pc.give_item2 = item verme kodu pc.mount = binek verme kodu pc.remove_item = item silme kodu pc.polymorph = dönüşüm kodu pc.select = seçme kodu. Bu kodla sizlere kendinize özel içgörü küresi yapmayı öğretcem. pc.unmount = binekten inme kodu pc.warp = ışınlama kodu say_reward = başlığı kırmızı yapma kodu say_title = başlık kodu say_item = itemin resmini gösterme kodu say = konuşma kodu select = şık seçme kodu timer = süre verme kodu pc.change_sex = cinsiyet değişme kodu

Ders No : 4
Konu : İlk questimiz.
Evet arkadaşlar ilk questimiz aşağıda hazırladım.Sizlere teker teker her kodu açıklayacam.Sizde aynı şekil kendinize özgü bir quest yazın.
Kod:
quest test begin state start begin when 40003.use begin say_title("Baslik Yazin:") say("Merhaba "pc.get_name()" ") say("Item almak icin asagidan karakterini sec:") say("") local s = select ("Savasci", "Saman", "Ninja", "Sura","Kapat") if s == 1 then pc.give_item2 ( "11299" , 1 ) pc.give_item2 ( "279" , 1 ) pc.change_gold(-5000000) end if s == 2 then pc.give_item2 ( "11899" , 1 ) pc.give_item2 ( "279" , 1 ) end if s == 3 then pc.give_item2 ( "279" , 1 ) pc.give_item2 ( "279" , 1 ) end if s == 4 then pc.give_item2 ( "279" , 1 ) pc.give_item2 ( "279" , 1 ) say_title("ileti:") say("") say("Iteminiz verildi.") say("Iyi oyunlar dileriz.") say("") end elseif s == 5 then else end end end end


Açıklayacağım yerleri kırmızı yaptım.Başlayalım.
"40003" bu yüzüğümüzün kodudur.İstediğiniz bir itemin kodunu yazın.
Dikkat:Kodunu yazdığınız itemin Navicat / Player / İtem_proto.sql içerisinde "type" kodu 18 olmalıdır.Yoksa quest çalışmaz.
"Baslik Yazin" yerine bir baslik atin.İtem Yüzüğü gibi.TR karakter kullanmadan.
""pc.get_name()"" kodunun anlamı questi açan adamın nicki yazacak orda
Örnek: benim nickim Kralcocuk ben yüzüğe tıkladığım zaman "Merhaba Kralcocuk" yazıcak.Kodun çalışması için questte o kodu " (tırnak) içerisinde yazmalıyız. "pc.get_name()" olarak.
local s = select ("","") kodunu az önce açıklamıştım.Yukardaki derste yazıyor.
if s == 1 then Buda yukarıdaki derste yazıyor.1.şıkkın seçildiğini gösterir.
"pc.give_item2() " buda yukarıdaki kodlarda ne işe yaradığı yazıyor.Bu kod oyuncuya item vermeye yarıyor.
pc.give_item2 ( "279" , 1 ) = bu kodda oyuncuya 279 kodlu itemden 1 adet verileceği yazıyor.279 Sirius kılıcıdır."11299" olanda 1 adet siyah çelik veriyor.
" pc.change_gold(-5000000) " = Bu kod verdiği 2 item karşılığında oyuncudan 5m para alıyor.Parası yoksa vermiyor.

"elseif s == 5 then" = Diyeceksiniz ki az öncekiler "if s" iken bu neden "elseif s" bu son kod olduğu için ve şıklarımız fazla olduğu için else ile bitiyor.4 den fazla şık yapınca son şıkkı "elseif" ile bitirin.


Kod:
say_title("ileti:") say("") say("Iteminiz verildi.") say("Iyi oyunlar dileriz.1Tim") say("")[/

Bu kodu en sona koyduk çünkü hangi karakteri seçerse seçsin itemini aldıktan sonra bu yazı çıkıcak.5.şık hariç.
Umarım anlatabilmişimdir.
Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol