Yardım Tek Tık Biyolog - 92/94 Epic - Sıfırlama Questi Düzenleme

Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.

SinopLu57

Üye
Üye
Mesaj
50
Çözümler
1
Beğeni
57
Puan
699
Ticaret Puanı
0
Herkese selam,

Bir kaç gündür bu questleri arıyorum bir çok quest denedim fakat testini yaparken ya bug buluyorum ya hatalı oluyor.
Bu konu ile ilgili bir çok konu açıldığını biliyorum fakat sizden bir ricam olucak, artık sorunsuz bir biyolog questi için :)
Bulduğum en az sorunlu quest bu olabilir, öncelikle bu questin sorunlarından bahsedeyim.

1. Sorun:
Epic görevinden önceki mevcut hp 5.000 diyelim,
92. Lv görev ödülünü hp seçiyoruz. +1.100 HP
94. Lv görev ödülünü hp seçiyoruz. +4.000 HP
Toplam hp' miz 10.100 oluyor hiç bir problem yok fakat,
Sonra epic görevlerini sıfırlıyoruz ve tekrar hp hp seçiyoruz, mevcut hp' miz 11.100 oluyor ve her sıfırlamada bu artıyor.

2. Sorun:
Navicat: Player > Affect bölümünden kontrolleri sağladığımda, görev sıfırlandığında biyolog görevinden aldığımız 500 hp siliniyor fakat oyundaki karakterimizde bir problem gözükmüyor.
Affect bölümündeki 500 hp kaybolma sorunu, oyundaki karakterimizden çık gir yaptığımız zaman düzeliyor ve tablo yenileniyor. Yinede içimde bir ukte kaldı bununla alakalı bir sorun olurmu olmazmı bilmek isterim.

1.Soru
Sıfırlama Questi için 85. satırda get_time komutu kullanılmış,
Detaylı bilgim yok fakat questlerde zamanlama kodlarını kullanmak sıkıntı çıkartır diyorlar lag bakımından. Sizce sürelimi yoksa süresizmi olmalı sıfırlama?

1.Soru cevaba karşılık;
Kullanıcı: Evet time kodları laga sebebiyet olabiliyor.
Konu Sahibi: Süreyi kaldırmak için yardımcı olabilirmisiniz?

Kullanıcı: Hayır bu questteki zamanlama kodu lag yaratmaz.
Konu Sahibi: Peki sıfırlama süresini 60 dakikada bir sıfırlamak için ayarlamama yardımcı olurmusunuz?

Kısaca bu quest üzerinde bana yardımcı olmanızı diliyorum. :)

Quest içeriği;
1. ve 37. satır aralığındaki tek tık biyolog
38. ve 82. satır aralığındaki tek tık epic görevi
83. ve 132. satır aralığındaki epic görevi sıfırlama

Tek Tık Biyolog Questi [ Sıfırlama Mevcut ]:
quest isobiyolog begin
    state start begin
        when login begin
        setstate(basla)
        end
    end
    state basla begin
        when 20084.chat."Biyolog Gorevleri ( TEK TIK )" begin
            say ( " Merhaba, " )
            say_reward ( " Saldırı Değeri +50 (Kalıcı) " )
            say_reward ( " +10% Diğer Oyunculara Karşı Güç (Kalıcı)" )
            say_reward ( " Hareket Hızı +10% , +500 HP (Kalıcı)" )
            say_reward ( " Saldırı Hızı +15% (Kalıcı) " )
            say_reward ( " +10% Diğer Oyunculara Karşı Savunma (Kalıcı) " )
            say_reward ( " Savunma +50 (Kalıcı) " )
            say ( " Özelliklerini kazandınız!" )
            wait ( )
            say_title("Epic")
            affect.add_collect(apply.ATT_BONUS_TO_WARRIOR,10,60*60*24*365*60)
            affect.add_collect(apply.ATT_BONUS_TO_ASSASSIN,10,60*60*24*365*60)
            affect.add_collect(apply.ATT_BONUS_TO_SURA,10,60*60*24*365*60)
            affect.add_collect(apply.ATT_BONUS_TO_SHAMAN,10,60*60*24*365*60)
            affect.add_collect(apply.ATT_SPEED,15,60*60*24*365*60)
            affect.add_collect(apply.MAX_HP,500,60*60*24*365*60)
            affect.add_collect(apply.MOV_SPEED,10,60*60*24*365*60)
            affect.add_collect(apply.DEF_GRADE_BONUS,60,60*60*24*365*60)
            affect.add_collect(apply.ATT_GRADE_BONUS,50,60*60*24*365*60)
            affect.add_collect(apply.RESIST_WARRIOR,10,60*60*24*365*60)
            affect.add_collect(apply.RESIST_ASSASSIN,10,60*60*24*365*60)
            affect.add_collect(apply.RESIST_SURA,10,60*60*24*365*60)
            affect.add_collect(apply.RESIST_SHAMAN,10,60*60*24*365*60)
            say("Tüm özellikleri başarı ile aldın!")
            say("Diğer özellikle için Seon-Pyeong(Epic-Sura) ile görüşebilirsin.")
            say_reward ( "İyi oyunlar dileriz." )
            setstate(epic)
        end
    end   
    state epic begin
        when 20091.chat."92. Level Epic Gorevi" begin
            say_title ( " 92.Lv Epic; " )
            say_reward ( " İtemsiz, Karakter Atmadan! " )
            say ( " Merhaba, " )
            say_reward ( " Epic Görevlerini Yaptığın İçin. " )
            say_reward ( " Birini Sectikten Sonra Diger Gorev İcin Tekrar Ugra " )
            say_reward ( " Bu Ödüllerden Birini Seçmen Gerek; " )
            say(" Unutma RikaMt2'de hiçbir özellik bugda değildir.")
            say ( " İyi oyunlar dileriz." )
            local s = select ( " +1100 HP " , " Savunma Değeri +120 " , " Saldırı Değeri +60 " )
            if s == 1 then
            affect.add_collect(apply.MAX_HP,1100,60*60*24*365*60)
            setstate(gec2)
            elseif s == 2 then
            affect.add_collect(apply.DEF_GRADE_BONUS,120,60*60*24*365*60)
            setstate(gec2)
            elseif s == 3 then
            affect.add_collect(apply.ATT_GRADE_BONUS,60,60*60*24*365*60)
            setstate(gec2)
            end
        end
    end
    state gec2 begin
        when 20091.chat."94. Level Epic Gorevi" begin
            say_title ( " 94.Lv Epic; " )
            say_reward ( " İtemsiz, Karakter Atmadan! " )
            say ( " Merhaba, " )
            say_reward ( " Epic Görevlerini Yaptığın İçin. " )
            say_reward ( " Bu Ödüllerden Birini Seçmen Gerek; " )
            say(" Unutma RikaMt2'de hiçbir özellik bugda değildir.")
            say ( " İyi oyunlar dileriz." )
            local s = select ( " +4000 HP " , " Savunma Değeri +140 " , " Saldırı Değeri +70 " )
            if s == 1 then
            affect.add_collect(apply.MAX_HP,4000,60*60*24*365*60)
            setstate(isosifirla)
            elseif s == 2 then
            affect.add_collect(apply.DEF_GRADE_BONUS,140,60*60*24*365*60)
            setstate(isosifirla)
            elseif s == 3 then
            affect.add_collect(apply.ATT_GRADE_BONUS,70,60*60*24*365*60)
            setstate(isosifirla)
            end
        end
    end
    state isosifirla begin
    when 20091.chat."92-94 Görevimi değiştir" begin
    if get_time()<=pc.getqf("zaman5") then
    say_reward("Yine mi 92-94 görevini değiştirmek istiyorsun?")
    say_reward("Üzgünüm bu işlemi bu kadar hızlı yapamazsın...")
    else
    say_title("Epic sura:")
    say("Merhaba RikaMt2 Oyuncusu "..pc.getname().."")
    say("Elinde 3 adet Sadakat mücevheri mevcut ise")
    say("Senin için biyalog 92-94 özelliklerini")
    say("değiştirebilirim.")
    local al = select ("Getirdim.", "Getireceğim.")
    if al == 1  then
    if pc.count_item(30253) <= 2 then
    say_reward("Elinde yeterli Sadakat mücevheri bulunmuyor.")
    say_reward("Bu işlemi yapabilmem için;")
    say_reward("Elinde 3 adet Sadakat mücevheri olmalı.")
    else
    say_reward("92-94 Özelliğini seç bakalım...")
    say_reward("RikaMt2'de hiçbir özellik bugda değildir.")
    say_reward("Seçimini akıllıca yap!")
    pc.setqf("zaman5", get_time()+8766*60)
    pc.removeitem(30253, 3)
            affect.remove_collect(apply.MAX_HP,1100,60*60*24*365*60)
            affect.remove_collect(apply.DEF_GRADE_BONUS,120,60*60*24*365*60)
            affect.remove_collect(apply.ATT_GRADE_BONUS,60,60*60*24*365*60)
            affect.remove_collect(apply.MAX_HP,4000,60*60*24*365*60)
            affect.remove_collect(apply.DEF_GRADE_BONUS,140,60*60*24*365*60)
            affect.remove_collect(apply.ATT_GRADE_BONUS,70,60*60*24*365*60)
            say_reward("Unutma bir daha etkilerini değiştiremezsin!")
            say("RikaMt2 İyi oyunlar diler...")
            local s = select ( " +1100 HP " , " Savunma Değeri +120 " , " Saldırı Değeri +60 " )
            if s == 1 then
            affect.add_collect(apply.MAX_HP,1100,60*60*24*365*60)
            elseif s == 2 then
            affect.add_collect(apply.DEF_GRADE_BONUS,120,60*60*24*365*60)
            elseif s == 3 then
            affect.add_collect(apply.ATT_GRADE_BONUS,60,60*60*24*365*60)
            end
            say_reward("Seçimini akıllıca yap!")
            say_reward("RikaMt2'de hiçbir özellik bugda değildir.")
            say("RikaMt2 İyi oyunlar diler...")
            local s = select ( " +4000 HP " , " Savunma Değeri +140 " , " Saldırı Değeri +70 " )
            if s == 1 then
            affect.add_collect(apply.MAX_HP,4000,60*60*24*365*60)
            elseif s == 2 then
            affect.add_collect(apply.DEF_GRADE_BONUS,140,60*60*24*365*60)
            elseif s == 3 then
            affect.add_collect(apply.ATT_GRADE_BONUS,70,60*60*24*365*60)
            end
        end
        end
        end
        end
        end
        end
 
104. satır sürenin ayarlandığı kısım, 85. satırsa o sürenin sorgulandığı kısım

süreyi 104. satırda ayarlarsın,

kaldırmada 85-88 satır arasını sil 85 ve 88 dahil ve 104. satırı sil
 
object dosyasındaki 20084 ve 20091 isimli dosyaları sil questi tekrardan okut belki daha önce denediğin questlerden birşeyler kalmıştır
 
Süreyi kaldırma ve değiştirme hakkında bilgi verdiğin için teşekkür ederim yinede bu questteki hp buguna bu başlık altında bir çözüm bulmayı umut ediyorum.

Ayrıca bu quest süreli olduğu takdirde herhangi bir lag problemi yaşatırmı ve süreyi hesaplama mantığı hakkındada bilgi alabilirsem müthiş olur :)
 
konuyu doğru yere taşıdım. konuyu güncel tarzı mesajlarla yukarı çıkarmak yasak. konuyu yukarı taşı özelliğini kullanalım.
 
Kullandığın questi bende kullanmıştım hp bugu oluyordu ve çözecektim vakit bulamadım bugün müsait olursam sorunu çözer paylaşırım.
 
Geri
Üst