bikral 1
bikral
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Bvural41 1
Bvural41
ShadowFon 1
ShadowFon
mavzermete 1
mavzermete
YazilimMühendisi 1
YazilimMühendisi
Fethi Polat 1
Fethi Polat
InfernoShade 1
InfernoShade
Hikaye Ekle

Oyuncu Hakkında Bilgi Alma Sistemi[LUA]

  • Konuyu başlatan Konuyu başlatan thenemne0032
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 15
  • Görüntüleme Görüntüleme 2K

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

Merhabalar,

Bir çok yerde bu sistemi paylaşanı gördüm fakat hiçbiri çalışmıyor. Hazır şekilde kopyala-yapıştır yapılmış tüm forumlarda. Aşağıdaki vereceğim sistem sorunsuz bir şekilde çalışmaktadır. Dilediğiniz oyuncunun bilgilerini isim yazarak öğrenebilirsiniz.




Sistemden Resimler



d5gDjL.jpg


b57p8V.jpg



PARA MİKTARI ARASINA .(NOKTA) KOYMA:


Şimdi para tutarlarının arasına .(nokta) koyma fonksiyonuna geldik. Bu fonksiyonu da eklemeniz gerekiyor. Eğer bu fonksiyonu eklemezseniz sistem çalışmaz. Ona göre kodlandı. Şimdi o fonksiyonu eklemeyi göstereceğim:


"questlib.lua" dosyasını açıyoruz ve en alta aşağıdaki kodları ekleyip kapatıyoruz. Reboot atmanıza gerek yok. Reload q yeterli olacaktır.


PHP:
function genel_veri(gelen_miktar) 
    gelen2 = tostring(gelen_miktar) 
    local gelen = gelen_miktar  
    local sayac = 10 
    local basamak = 1 
    local ilkhal = basamak 
    while true do 
        if gelen / sayac >= 1 then 
            basamak = basamak + 1 
            sayac = sayac * 10 
        else 
            break 
        end 
    end 
    t = {} 
    sonucText = "" 
    for i=1, string.len(gelen2) do 
        t[i]= (string.sub(gelen2,i,i)) 
    end 
    for k , v in pairs(t) do--1324 
        if (basamak  == 9 or basamak == 6 or basamak == 3) and sonucText !=  "" then 
            sonucText = sonucText.."." 
            sonucText = sonucText..v 
        else 
            sonucText = sonucText..v 
        end 
        basamak = basamak - 1 
    end 
    return sonucText 
end



Bu işlem de bittikten sonra "quest_functions" dosyasını açıyor ve en alta "genel_veri" fonksiyonunu ekliyoruz. Bura ile işimiz bitti.



LUA dosyasını oluşturma:


1-) usr/game/share/locale/turkey/quest bölümüne "oyuncu_bilgi.lua" adında bir lua dosyası açalım. Daha sonra dosyasının içine aşağıdaki kodları yazalım:


PHP:
quest oyuncu_bilgi_al begin
    state start begin
        when 20087.chat."Oyuncu Hakkında Bilgi Al" begin
            karakter_adi = pc.get_name()
            say_title("Merhaba, "..karakter_adi)
            say("")
            say("Buradan dilediğin bir oyuncu hakkında bilgi alabilirsin.[ENTER]Bilgi almak istediğin oyuncunun ismini yazman yeterli.")
            say("")
            say_reward("Bilgi almak istediğin oyuncunun ismini gir: ")
            oyuncu_isim = string.format(input())
            oyuncuAra = find_pc_by_name(oyuncu_isim)
            
            if oyuncuAra == 0 then
                say_title("Uyarı:")
                say("")
                say_reward("Aradığınız isimde bir oyuncu yok yada oyunda değil.")
                say("")
                return
            end
            
            o_id = pc.select(oyuncuAra)
                oyuncu_isim = pc.get_name()
                oyuncu_seviye = pc.get_level()
                oyuncu_parasi = pc.get_gold()
                oyuncu_tecrube = pc.get_exp()
                oyuncu_gerekli_tecrube = pc.get_next_exp()
                oyuncu_oyun_suresi = pc.get_playtime()
                oyuncu_derece_puani = pc.get_alignment()
                oyuncu_tam_enerji = pc.get_max_hp()
                oyuncu_kimlik = pc.get_player_id()
            pc.select(o_id)
            
            oyuncuBilgiAl = mysql_query("select * from player.player where name='"..oyuncu_isim.."' and id='"..oyuncu_kimlik.."' ")
            oyuncuEnSonGiris = oyuncuBilgiAl.last_play[1]
            
            say_title("Oyuncu Bilgiler:")
            say("")
            say_reward("Oyuncu İsmi: "..oyuncu_isim)
            say_reward("Oyuncu Seviyesi: "..oyuncu_seviye)
            say_reward("Oyuncu Parası: "..genel_veri(oyuncu_parasi))
            say_reward("Oyuncu Tecrübe: "..genel_veri(oyuncu_tecrube))
            say_reward("Oyuncu Gerekli Tecrübe: "..genel_veri(oyuncu_gerekli_tecrube))
            say_reward("Oyuncu Oyun Süresi: "..genel_veri(oyuncu_oyun_suresi))
            say_reward("Oyuncu Derece Puanı: "..genel_veri(oyuncu_derece_puani))
            say_reward("Oyuncu Tam Enerji: "..genel_veri(oyuncu_tam_enerji))
            say_reward("Oyuncu En Son Giriş: "..oyuncuEnSonGiris)
            
            say("")
        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 oyuncu_bilgi.lua

Putty ile de işimiz bitti.
3-) Oyuna dönüyoruz ve bir GM karakter ile "/reload q" çekiyoruz.
4-) Daha sonra sistemi 20087 kodlu NPC'den kontrol edebilirsiniz.

Çok güzel bir konu teşekkür ederim. Birşey danışmak istiyorum.
Oyuncu Karakteri: Örn: Savaşçı
Oyuncu Eğitimi: Örn: Bedensel Eğitim
Oyuncu Kaç Kez Öldürüldü: Örn: 25
Oyuncu Kaç Kez Öldürdü: Örn: 50

Gibi bir güncelleme yapılsa çok daha iyi olur diye düşünüyorum.
 
Çok güzel bir konu teşekkür ederim. Birşey danışmak istiyorum.
Oyuncu Karakteri: Örn: Savaşçı
Oyuncu Eğitimi: Örn: Bedensel Eğitim
Oyuncu Kaç Kez Öldürüldü: Örn: 25
Oyuncu Kaç Kez Öldürdü: Örn: 50

Gibi bir güncelleme yapılsa çok daha iyi olur diye düşünüyorum.

Evet bunlar düşündüğüm şeylerdi fakat eklememişti. Kaç defa öldüğü olabilir de kaç defa öldürdüğü biraz sıkıntı adam karakter açıp yada biriyle anlaşıp yükseltebilir öldürme oranını. Aslında öldürdüğü oyuncuyla arasında en az 5 seviye fark olacak gibi şartlar da eklenebilir. Boş vaktim olursa ilgileneceğim.
 
Evet bunlar düşündüğüm şeylerdi fakat eklememişti. Kaç defa öldüğü olabilir de kaç defa öldürdüğü biraz sıkıntı adam karakter açıp yada biriyle anlaşıp yükseltebilir öldürme oranını. Aslında öldürdüğü oyuncuyla arasında en az 5 seviye fark olacak gibi şartlar da eklenebilir. Boş vaktim olursa ilgileneceğim.

Dediğiniz gibi, eklenirse çok iyi olur. Konu güncellenirse herkesin daha fazla işine yarayacağını düşünüyorum, iyi forumlar.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst