Merhaba Arkadaşlar, Piyasada bir çok pvp server var ve bir çok farklı özellik var bu gün, Metin2 serverinizdeki oyuncularınızın hiç bir beceri puanı kaybetmeden becerilerini değiştirmesi için Quest veriyorum.
Nedir bu Beceri Değiştirme Sistemi ?
Oyuncunun becerisini yetenekleri sıfırlamadan değiştirmeye yarar. Ne demek istiyorum?
Şöyle ki; G1, M3 ve 2 adet de P yeteneğiniz olduğunu düşünelim ve Zihinsel bir savaşçısınız. Bu Quest sayesinde becerinizi değiştirip, Bedensel beceriye dönerseniz yeteneklerinizin değeleri sıfırlanmaz ve olduğu gibi geçer: G1, M3 ve 2 tane P şeklinde. Sistem bu şekilde işler. 40004 yüzüğüne ayarlanmıştır ve kullanıldıktan sonra yüzük silinir. Ayrıca değiştirirken de 10m yang alır.
LUA dosyasını oluşturma:
1-) usr/game/share/locale/turkey/quest bölümüne “beceridegistir.lua” adında bir lua dosyası açalım. Daha sonra dosyasının içine aşağıdaki kodları yazalım:
quest beceridegistir begin
state start begin
when 40004.use begin
if pc.get_gold() < 10000000 then
say_title(“Uyarı:”)
say(“”)
say_reward(“Beceri değiştirmek için hesabında yeterli yang yok.”)
say(“”)
return
elseif pc.get_level() < 5 then
say_title(“Uyarı:”)
say(“”)
say_reward(“Beceri değiştirme sistemini kullanabilmen için en az[ENTER]5 seviye olman gerekli.”)
say(“”)
return
elseif pc.get_skill_group() == 0 then
say_title(“Uyarı:”)
say(“”)
say_reward(“Önce kendine beceri belirlemen gerekiyor.”)
say(“”)
return
end
karakterSinif = pc.get_job()
if karakterSinif == 0 or karakterSinif == 4 then — savaşçı
karakterYetenek = pc.get_skill_group() — burada hangi sınıf olduğunu seçiyor
if karakterYetenek == 1 then
say_title(“Bilgilendirme:”)
say(“”)
say(“Merhaba “..pc.get_name())
say(“Buradan başka bir beceriye geçebilirsin.”)
say(“Sahip olduğun yeteneklerin özelliklerini kaybetmeyeceksin.”)
say(“Bunun için 10m yang ödemen gerekiyor.”)
say(“Diğer beceriye geçmek istiyor musun?”)
say(“”)
yetenekDegistir = select(“Evet”,”Hayır”)
if yetenekDegistir == 1 then
pc.change_money(-10000000)
pc.set_skill_group(2)
pc.set_skill_level(16,pc.get_skill_level(1))
pc.set_skill_level(17,pc.get_skill_level(2))
pc.set_skill_level(18,pc.get_skill_level(3))
pc.set_skill_level(19,pc.get_skill_level(4))
pc.set_skill_level(20,pc.get_skill_level(5))
item.remove()
say_title(“Bilgilendirme:”)
say(“”)
say(“Beceriniz değiştirildi. Hesabınızdan 10m yang alındı.”)
say(“3 saniye içerisinde oyundan çıkış yapacaksınız.”)
say(“”)
command(“logout”)
end
elseif karakterYetenek == 2 then
say_title(“Bilgilendirme:”)
say(“”)
say(“Merhaba “..pc.get_name())
say(“Buradan başka bir beceriye geçebilirsin.”)
say(“Sahip olduğun yeteneklerin özelliklerini kaybetmeyeceksin.”)
say(“Bunun için 10m yang ödemen gerekiyor.”)
say(“Diğer beceriye geçmek istiyor musun?”)
say(“”)
yetenekDegistir = select(“Evet”,”Hayır”)
if yetenekDegistir == 1 then
pc.change_money(-10000000)
pc.set_skill_group(1)
pc.set_skill_level(1,pc.get_skill_level(16))
pc.set_skill_level(2,pc.get_skill_level(17))
pc.set_skill_level(3,pc.get_skill_level(18))
pc.set_skill_level(4,pc.get_skill_level(19))
pc.set_skill_level(5,pc.get_skill_level(20))
item.remove()
say_title(“Bilgilendirme:”)
say(“”)
say(“Beceriniz değiştirildi. Hesabınızdan 10m yang alındı.”)
say(“3 saniye içerisinde oyundan çıkış yapacaksınız.”)
say(“”)
command(“logout”)
end
end
elseif karakterSinif == 1 or karakterSinif == 5 then — ninja
karakterYetenek = pc.get_skill_group()
if karakterYetenek == 1 then
say_title(“Bilgilendirme:”)
say(“”)
say(“Merhaba “..pc.get_name())
say(“Buradan başka bir beceriye geçebilirsin.”)
say(“Sahip olduğun yeteneklerin özelliklerini kaybetmeyeceksin.”)
say(“Bunun için 10m yang ödemen gerekiyor.”)
say(“Diğer beceriye geçmek istiyor musun?”)
say(“”)
yetenekDegistir = select(“Evet”,”Hayır”)
if yetenekDegistir == 1 then
pc.change_money(-10000000)
pc.set_skill_group(2)
pc.set_skill_level(49,pc.get_skill_level(31))
pc.set_skill_level(50,pc.get_skill_level(32))
pc.set_skill_level(51,pc.get_skill_level(33))
pc.set_skill_level(52,pc.get_skill_level(34))
pc.set_skill_level(53,pc.get_skill_level(35))
item.remove()
say_title(“Bilgilendirme:”)
say(“”)
say(“Beceriniz değiştirildi. Hesabınızdan 10m yang alındı.”)
say(“3 saniye içerisinde oyundan çıkış yapacaksınız.”)
say(“”)
command(“logout”)
end
elseif karakterYetenek == 2 then
say_title(“Bilgilendirme:”)
say(“”)
say(“Merhaba “..pc.get_name())
say(“Buradan başka bir beceriye geçebilirsin.”)
say(“Sahip olduğun yeteneklerin özelliklerini kaybetmeyeceksin.”)
say(“Bunun için 10m yang ödemen gerekiyor.”)
say(“Diğer beceriye geçmek istiyor musun?”)
say(“”)
yetenekDegistir = select(“Evet”,”Hayır”)
if yetenekDegistir == 1 then
pc.change_money(-10000000)
pc.set_skill_group(1)
pc.set_skill_level(31,pc.get_skill_level(49))
pc.set_skill_level(32,pc.get_skill_level(50))
pc.set_skill_level(33,pc.get_skill_level(51))
pc.set_skill_level(34,pc.get_skill_level(52))
pc.set_skill_level(35,pc.get_skill_level(53))
item.remove()
say_title(“Bilgilendirme:”)
say(“”)
say(“Beceriniz değiştirildi. Hesabınızdan 10m yang alındı.”)
say(“3 saniye içerisinde oyundan çıkış yapacaksınız.”)
say(“”)
command(“logout”)
end
end
elseif karakterSinif == 2 or karakterSinif == 6 then — sura
karakterYetenek = pc.get_skill_group()
if karakterYetenek == 1 then
say_title(“Bilgilendirme:”)
say(“”)
say(“Merhaba “..pc.get_name())
say(“Buradan başka bir beceriye geçebilirsin.”)
say(“Sahip olduğun yeteneklerin özelliklerini kaybetmeyeceksin.”)
say(“Bunun için 10m yang ödemen gerekiyor.”)
say(“Diğer beceriye geçmek istiyor musun?”)
say(“”)
yetenekDegistir = select(“Evet”,”Hayır”)
if yetenekDegistir == 1 then
pc.change_money(-10000000)
pc.set_skill_group(2)
pc.set_skill_level(76,pc.get_skill_level(61))
pc.set_skill_level(77,pc.get_skill_level(62))
pc.set_skill_level(78,pc.get_skill_level(63))
pc.set_skill_level(79,pc.get_skill_level(64))
pc.set_skill_level(80,pc.get_skill_level(65))
pc.set_skill_level(81,pc.get_skill_level(66))
item.remove()
say_title(“Bilgilendirme:”)
say(“”)
say(“Beceriniz değiştirildi. Hesabınızdan 10m yang alındı.”)
say(“3 saniye içerisinde oyundan çıkış yapacaksınız.”)
say(“”)
command(“logout”)
end
elseif karakterYetenek == 2 then
say_title(“Bilgilendirme:”)
say(“”)
say(“Merhaba “..pc.get_name())
say(“Buradan başka bir beceriye geçebilirsin.”)
say(“Sahip olduğun yeteneklerin özelliklerini kaybetmeyeceksin.”)
say(“Bunun için 10m yang ödemen gerekiyor.”)
say(“Diğer beceriye geçmek istiyor musun?”)
say(“”)
yetenekDegistir = select(“Evet”,”Hayır”)
if yetenekDegistir == 1 then
pc.change_money(-10000000)
pc.set_skill_group(1)
pc.set_skill_level(61,pc.get_skill_level(76))
pc.set_skill_level(62,pc.get_skill_level(77))
pc.set_skill_level(63,pc.get_skill_level(78))
pc.set_skill_level(64,pc.get_skill_level(79))
pc.set_skill_level(65,pc.get_skill_level(80))
pc.set_skill_level(66,pc.get_skill_level(81))
item.remove()
say_title(“Bilgilendirme:”)
say(“”)
say(“Beceriniz değiştirildi. Hesabınızdan 10m yang alındı.”)
say(“3 saniye içerisinde oyundan çıkış yapacaksınız.”)
say(“”)
command(“logout”)
end
elseif karakterSinif == 3 or karakterSinif == 7 then — şaman
karakterYetenek = pc.get_skill_group()
if karakterYetenek == 1 then
say_title(“Bilgilendirme:”)
say(“”)
say(“Merhaba “..pc.get_name())
say(“Buradan başka bir beceriye geçebilirsin.”)
say(“Sahip olduğun yeteneklerin özelliklerini kaybetmeyeceksin.”)
say(“Bunun için 10m yang ödemen gerekiyor.”)
say(“Diğer beceriye geçmek istiyor musun?”)
say(“”)
yetenekDegistir = select(“Evet”,”Hayır”)
if yetenekDegistir == 1 then
pc.change_money(-10000000)
pc.set_skill_group(2)
pc.set_skill_level(106,pc.get_skill_level(91))
pc.set_skill_level(107,pc.get_skill_level(92))
pc.set_skill_level(108,pc.get_skill_level(93))
pc.set_skill_level(109,pc.get_skill_level(94))
pc.set_skill_level(110,pc.get_skill_level(95))
pc.set_skill_level(111,pc.get_skill_level(96))
item.remove()
say_title(“Bilgilendirme:”)
say(“”)
say(“Beceriniz değiştirildi. Hesabınızdan 10m yang alındı.”)
say(“3 saniye içerisinde oyundan çıkış yapacaksınız.”)
say(“”)
command(“logout”)
end
elseif karakterYetenek == 2 then
say_title(“Bilgilendirme:”)
say(“”)
say(“Merhaba “..pc.get_name())
say(“Buradan başka bir beceriye geçebilirsin.”)
say(“Sahip olduğun yeteneklerin özelliklerini kaybetmeyeceksin.”)
say(“Bunun için 10m yang ödemen gerekiyor.”)
say(“Diğer beceriye geçmek istiyor musun?”)
say(“”)
yetenekDegistir = select(“Evet”,”Hayır”)
if yetenekDegistir == 1 then
pc.change_money(-10000000)
pc.set_skill_group(1)
pc.set_skill_level(91,pc.get_skill_level(106))
pc.set_skill_level(92,pc.get_skill_level(107))
pc.set_skill_level(93,pc.get_skill_level(108))
pc.set_skill_level(94,pc.get_skill_level(109))
pc.set_skill_level(95,pc.get_skill_level(110))
pc.set_skill_level(96,pc.get_skill_level(111))
item.remove()
say_title(“Bilgilendirme:”)
say(“”)
say(“Beceriniz değiştirildi. Hesabınızdan 10m yang alındı.”)
say(“3 saniye içerisinde oyundan çıkış yapacaksınız.”)
say(“”)
command(“logout”)
end
end
end– if endi
end
end
end
end
Bunu kaydedip çıkıyoruz.
2-)Putty’e geliyoruz.
cd /usr/game/share/locale/turkey/quest yazıp enterliyoruz. Daha sonra şu komutu yazıyoruz.
./qc beceridegistir.lua
Putty ile de işimiz bitti.
3-) Oyuna dönüyoruz ve bir GM karakter ile “/reload q” çekiyoruz.
4-) Daha sonra 40004 yü sistemi kontrol edebilirsiniz.
Pvp Serverler Bu Sitede !
Bir önceki yazımız olan Metin2 Filezilla Map isimleri başlıklı makalemizde Metin2 Filezilla Map, Metin2 Filezilla Map isimleri ve Metin2 Filezilla Map klasöründe haritaların ismi hakkında bilgiler verilmektedir.