Metin2 Lua(Quest)

Geçen günki makalemizde, lua nedir nerde kullanılır ? hakkında bilgiler vermiştik
Bugünki makalede ise, metin2 oyununda lua nasıl kullanılır onunda hakkında örnekler ile
kısa bilgiler vericeğiz.

Metin2 MMORPG oyunudur. Kısaca bahsetmek gerekirse, oyun ticaret, savaş, dostluk, krallık gibi
kavramları benimseyen global çaplı bir oyundur.

Metin2 Lua Dili kullanımı

Oyunun genel haltları ile %70 olarak lua dili ile NPC veya oyun eşyaları üzerinde
kullanımı oldukça fazladır. Bir nesne iteminin kullanımı, kullanılan nesnenin lua
üzerinden yapabiliceği işler vb. gibi bir çok işlemleri lua ile yapılabilinir.

Metin2 Quest(Lua)

Lua kodlaması olan ve .quest uzantısı ile betimleme ile çalışmaktadır.
Notepad++ veya benzeri bir program açtıktan sonra, diller bölümünden “L” harfi üzerinden
lua dilini seçmelisiniz. Yaptığınız kodlamarı görmek ve kısayol ile pratik bir şekilde kod bloğunu
otomatik tamamlamanıza yardımcı olucaktır.

Boş penceremize ilk olarak 1. Satırına;

quest questadi begin

Metin2 Quest Okutma

lua(quest) başlangıcımızı bu şekilde yaptık. Dosya uzantımızın ismi “questadi.quest” yapıyoruz.
questimizi ftp bağlantısı sağlayarak, oyunumuzun kurulu olduğu sunucu ile bağlantı sağlıyoruz.
usr/game/share/locale/turkey/quest adresine hazırladığımız dosyayı atıyoruz.

Putty aracılığı ile sunucumuzun “root” bağlantısını yapıyoruz.
komut satırına;
cd usr/game/share/locale/turkey/quest [ENTER] tuşuna basıyoruz.
komut satırına;
ee hongkong_list [ENTER] tuşuna basıyoruz.
sonraki satır komutuna;
questadi.quest yazıp kaydedip çıkıyoruz.

sonra tekrardan komut satırına ./qc questadi.quest quest dosyamızı okutuyoruz.

Object klasörünü oluşturmamızı sağlıyor. Object klasörünü biz kendimiz oluşturup atabiliriz fakat
oyun dosyalarının yenilenmesi yani “relaod” veya “make” durumunda object klasörü tekrardan sistem
oluşturması için listeye eklemiş olduk. Sunucunun reload olması veya “sh make.sh” ile listeyi yenileme
komutu verirsek questimizi görmesi için tanımlamış olduk.

Metin2 Quest(Lua) nasıl yazılır ?

İsminden de anlaşıldığı üzere questimize şu şekilde başlamamız gerekiyor

quest questadi begin

bir sonraki aşamada ise yazmamız gereken komut satırı şu şekilde;

state start begin
başlat komutunu verdik ve artık questimize başlamış olduk.

when komutu ile questimizin nerde ne zaman ne yapacağını biz yön vericeğiz.

when login or logout begin
Bu komutumuzda “User” olan bir oyuncumuz oyuna giriş yaptığında veya çıkış yaptığında bu questimiz çalışmaya başlasın dedik.

syschat("Oyunumuzun web adresi: www.xxx.com")
Burada system chat ile yani oyuncumuza kırmızı renkte bir yazı göndermiş olduk.
Oyuncu eğer oyuna girerse bu mesajı her seferinde görücek. Aynı şekilde çıkış atarsa bu şekilde yazımızı görmüş olucaktır.

questimizin son hali ve rutuşlar.


when – state – quest lerimizin blog sonuna 1 adet end ekledik ve questimizi bitirmiş olduk.