Fethi Polat 1
Fethi Polat
TuZaKK 1
TuZaKK
xranzei 1
xranzei
Agresifizm 1
Agresifizm
Bvural41 1
Bvural41
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Hikaye Ekle

4 Ch Ejderha Oda Sistemi Sorunu!

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

Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!

Merhabalar,

Kod:
----------Ejderha Oda Sistemi----------------------Fatihlife----------------------
----------FatihLifee.tk------------------
quest dragonlair begin
    state start begin
        when logout begin
            if pc.get_map_index() == 208 then
            pc.delqf("icerdesin1")
            pc.delqf("icerdesin2")
            pc.delqf("icerdesin3")
            pc.delqf("icerdesin4")
            end
        end
        when 30121.chat."Ejderhayı öldürmek istiyorum!" with pc.get_map_index() == 73 begin
            if game.get_event_flag("ejder_kullanimda"..pc.get_channel_id().."") == 2 and game.get_event_flag("time_1"..pc.get_channel_id().."") - get_time() > 0 then
            say_title("Sura Ruhu:")
            say("")
            say("Üzgünüm Ejderha Tapınağı şuan dolu.")
            say("Kalan süre: "..game.get_event_flag("time_1"..pc.get_channel_id().."") - get_time().." saniye")
            say("")
            return
            end
            if game.get_event_flag("time_1"..pc.get_channel_id().."") - get_time() < 0 and game.get_event_flag("ejder_kullanimda"..pc.get_channel_id().."") >= 1 then
            game.set_event_flag("ejder_kullanimda"..pc.get_channel_id().."",0)
            purge_area(829200,1059600,844200,1074600)
            ---warp_all_in_map(208,180100,1220400)
            warp_all_to_village(208)
            setskin(NOWINDOW)
            return
            end
            if game.get_event_flag("ejder_kullanimda"..pc.get_channel_id().."") == 0 and pc.count_item(30179) < 3 then
            say_title("Sura Ruhu:")
            say("Gerekli eşya 3x: "..item_name(30179)..":")
            say_item_vnum(30179)
            say("3 adet anahtara ihtiyacın var.")
            return
            end
            if game.get_event_flag("ejder_kullanimda"..pc.get_channel_id().."") == 1 then
            say_title("Sura Ruhu:")
            say("")
            say("Üzgünüm Ejderha Tapınağı şuan dolu.")
            say("Eğer şifreyi biliyorsan,")
            say("doğru bir şekilde yaz.")
            say("")
            local sifre = tonumber(input(""))
                if string.len(sifre) < 4 then
                    say_title("Sura Ruhu:")
                    say("")
                    say("Şifre en az 4 karakterden oluşmalı.")
                    return
                    end
                if game.get_event_flag("ejder_sifresi"..pc.get_channel_id().."") == sifre then
                say_title("Sura Ruhu:")
                say("")
                    if pc.count_item(30179) < 3 then
                    say("Girmene izin veremem.")
                    say("Gerekli eşya 3x: "..item_name(30179)..":")
                    say_item_vnum(30179)
                    say("3 tane anahtara sahip olduğunda tekrar gel.")
                    return
                    end
                    pc.remove_item("30179",3)
                    say("Şifre doğru tebrikler!")
                    say("Seni içeri gönderiyorum. Onu yenmeden dönme!")
                    pc.setqf("icerdesin"..pc.get_channel_id().."",1)
                    wait()
                    pc.warp(843600,1066900)
                elseif sifre != game.get_event_flag("ejder_sifresi"..pc.get_channel_id().."") then
                say_title("Sura Ruhu:")
                say("Üzgünüm şifreyi hatalı girdin.")
                return
                end
            end
            if game.get_event_flag("ejder_kullanimda"..pc.get_channel_id().."") == 0 and pc.count_item(30179) >= 3 then
            say_title("Sura Ruhu:")
            say("Ejderha Tapınağı'na girmek isteyen ilk kişi")
            say("sensin. Yeterli sayıda Kıvrık Anahtara sahipsen")
            say("seni içeri bırakacağım. Ama ilk önce bir şifre")
            say("belirleyeceksin. Bu şifreyi, 5 dakika")
            say("içerisinde savaş arkadaşlarına verip onların")
            say("içeri girmesini sağlayabilirsin. Bu anahtarın")
            say("sadece 60 dakika tesir edeceğini unutma. O zamana")
            say("kadar ejderhayı öldürmüş olmanız gerekiyor!")
            say("")
            local i = select("Hazırım!", "Vazgeç ")
                if 1 == i and game.get_event_flag("ejder_kullanimda"..pc.get_channel_id().."") == 0 then
                say_title("Sura Ruhu:")
                say("Şimdi şifreyi belirle:")
                local sifre = tonumber(input(""))
                    if string.len(sifre) < 4 then
                    say_title("Sura Ruhu:")
                    say("")
                    say("Şifre en az 4 karakterden oluşmalı.")
                    return
                    end
                    if sifre and sifre <= 999999999 and pc.count_item(30179)>=3 then
                    say_title("Sura Ruhu:")
                    say("")
                    say("Arzu edersen seni doğrudan Ejderha Mağarası'na")
                    say("götürebilirim. Bana şimdi vermen gerekenler:")
                    say("3x:")
                    say_item_vnum(30179)
                    local zaxd = select("Al ve beni içeri bırak!","Vazgeç ")
                        if zaxd == 2 then
                        return
                        elseif zaxd == 1 and game.get_event_flag("ejder_kullanimda"..pc.get_channel_id().."") == 0 then
                            if game.get_event_flag("ejder_kullanimda"..pc.get_channel_id().."") != 0 then
                            syschat("Ejderha odasına başka bir grup girdi.")
                            return
                            end
                        pc.remove_item("30179",3)
                        pc.setqf("icerdesin"..pc.get_channel_id().."",1)
                        pc.setqf("lider",1)
                        pc.setqf("ejder_sifre",sifre)                            
                        game.set_event_flag("ejder_kullanimda"..pc.get_channel_id().."",1)
                        clear_server_timer("ejderi_kescen"..pc.get_channel_id().."",get_server_timer_arg())
                        clear_server_timer("disari_yolluyoz"..pc.get_channel_id().."",get_server_timer_arg())        
                        game.set_event_flag("ejder_sifresi"..pc.get_channel_id().."",sifre)
                        game.set_event_flag("time_1"..pc.get_channel_id().."", get_time()+60*60*1)
                        --timer("iceri_gir",3)
                        pc.warp(843600, 1066900)
                        elseif zaxd == 1 and game.get_event_flag("ejder_kullanimda"..pc.get_channel_id().."") != 0 then
                        say_title("Sura Ruhu:")
                        say("")
                        say("Birileri senden önce davrandı. Onların")
                        say("odadan çıkmalarını bekle ya da parolayı ")
                        say("biliyorsan söyle.")
                        end
                    else 
                    say_title("Sura Ruhu:")
                    say("")
                    say("Bir hata oluştu.")
                    say("")
                    end
                end
            end
        end
        
        --when iceri_gir.timer begin
        --notice_all(""..pc.get_name().." grubu, Mavi Ejderha'yı öldürmeye çalışıyor!")
        --pc.warp(843600, 1066900)
        --cleartimer("iceri_gir")
        --end
    
        when login begin
            if pc.getqf("icerdesin"..pc.get_channel_id().."") == 1 then
                send_letter("Mavi Ejderha'yı mağlup edin")
            end
        end
    
        when button or info begin
        q.set_clock("Kalan süre:", game.get_event_flag("time_1"..pc.get_channel_id().."")-get_time())
        dragonlair.ejder_odasi_kalansure()
        end




        when login with pc.get_map_index() == 208 and pc.getqf("icerdesin"..pc.get_channel_id().."") != 1 begin
        pc.warp(180100,1220400)
        end
        
        when login with pc.get_map_index() == 208 and pc.getqf("lider") == 1 begin
        game.set_event_flag("kesilen_metin"..pc.get_channel_id().."",0)
        notice_all("CH "..pc.get_channel_id()..": "..pc.get_name().." grubu, Mavi Ejderha'yı öldürmeye çalışıyor!")
        notice(""..pc.getqf("ejder_sifre").." numaralı şifreyi dağıtmaya 5 dakika zamanın")
        notice("var!")
        purge_area(829200,1059600,844200,1074600)
        regen_in_map(208,"data/dungeon/skia_deliboss.txt")
        server_timer("sifre_kapat"..pc.get_channel_id().."", 300,pc.get_map_index())
        server_timer("ejderi_kescen"..pc.get_channel_id().."", 3600,pc.get_map_index())
        dragonlair.ejder_odasi_kalansure()
        pc.setqf("lider",2)
        pc.set_warp_location(73 , 1801, 12204)    
        end
        
        when login with pc.get_map_index() == 208 and pc.getqf("icerdesin"..pc.get_channel_id().."") == 1 and pc.getqf("lider") != 1 begin
        dragonlair.ejder_odasi_kalansure()
        pc.set_warp_location(73 , 1801, 12204)
        end
        when kill with npc.get_race() == 8031 or npc.get_race() == 8032 or npc.get_race() == 8033 or npc.get_race() == 8034 and pc.get_map_index() == 208 begin
        local n =game.get_event_flag("kesilen_metin"..pc.get_channel_id().."") + 1
        game.set_event_flag("kesilen_metin"..pc.get_channel_id().."", n)
            if n > 3 then
            local t = number(1,4)
                if 1 == t then
                regen_in_map(208,"data/dungeon/skia_boss1.txt")
                elseif 2 == t then
                regen_in_map(208,"data/dungeon/skia_boss2.txt")
                elseif 3 == t then
                regen_in_map(208,"data/dungeon/skia_boss3.txt")
                else
                regen_in_map(208,"data/dungeon/skia_boss4.txt")
                end
            end
        end
        when kill with npc.get_race() == 2493 and pc.get_map_index() == 208 and game.get_event_flag("ejder_kullanimda"..pc.get_channel_id().."") >= 1 begin
        game.drop_item_with_ownership("71123",1)
        game.drop_item_with_ownership("71129",1)
        local drop_chance = number(1,10)
            if drop_chance == 5 then
            game.drop_item_with_ownership("71129",1)
            end
        notice_all("CH "..pc.get_channel_id()..": "..pc.get_name().." grubu, Mavi Ejderha'yı öldürdü!")
        game.set_event_flag("time_1"..pc.get_channel_id().."",get_time() + 5*60)
        clear_server_timer("ejderi_kescen"..pc.get_channel_id().."",get_server_timer_arg())
        server_timer("disari_yolluyoz"..pc.get_channel_id().."",60*5, pc.get_map_index()) ---300 olcak
        forked.warp_all_in_map("208","73","180100","1220400",295)
        end
        
        when sifre_kapat1.server_timer begin
        game.set_event_flag("ejder_kullanimda1",2)
        end
        
        when disari_yolluyoz1.server_timer begin
        notice_all("CH 1: Mavi Ejderha geri döndü!")
        game.set_event_flag("kesilen_metin1",0)
        purge_area(829200,1059600,844200,1074600)
        clear_server_timer("ejderi_kescen1",get_server_timer_arg())
        game.set_event_flag("ejder_kullanimda1",0)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        end
        
        
        when ejderi_kescen1.server_timer with game.get_event_flag("time_11") - get_time() <= 0 begin
        ---warp_all_in_map(208,180100,1220400)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        notice_all("CH 1: Mavi Ejderha hâlâ yaşıyor!")
        purge_area(829200,1059600,844200,1074600)
        game.set_event_flag("kesilen_metin1",0)
        game.set_event_flag("ejder_kullanimda1",0)
        end
        
        when sifre_kapat2.server_timer begin
        game.set_event_flag("ejder_kullanimda2",2)
        end
        
        when disari_yolluyoz2.server_timer begin
        notice_all("CH 2: Mavi Ejderha geri döndü!")
        game.set_event_flag("kesilen_metin2",0)
        purge_area(829200,1059600,844200,1074600)
        clear_server_timer("ejderi_kescen2",get_server_timer_arg())
        game.set_event_flag("ejder_kullanimda2",0)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        end
        
        
        when ejderi_kescen2.server_timer with game.get_event_flag("time_12") - get_time() <= 0 begin
        ---warp_all_in_map(208,180100,1220400)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        notice_all("CH 2: Mavi Ejderha hâlâ yaşıyor!")
        purge_area(829200,1059600,844200,1074600)
        game.set_event_flag("kesilen_metin2",0)
        game.set_event_flag("ejder_kullanimda2",0)
        end
        
        when sifre_kapat3.server_timer begin
        game.set_event_flag("ejder_kullanimda3",2)
        end
        
        when disari_yolluyoz3.server_timer begin
        notice_all("CH 3: Mavi Ejderha geri döndü!")
        game.set_event_flag("kesilen_metin3",0)
        purge_area(829200,1059600,844200,1074600)
        clear_server_timer("ejderi_kescen3",get_server_timer_arg())
        game.set_event_flag("ejder_kullanimda3",0)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        end
        
        
        when ejderi_kescen3.server_timer with game.get_event_flag("time_13") - get_time() <= 0 begin
        ---warp_all_in_map(208,180100,1220400)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        notice_all("CH 3: Mavi Ejderha hâlâ yaşıyor!")
        purge_area(829200,1059600,844200,1074600)
        game.set_event_flag("kesilen_metin3",0)
        game.set_event_flag("ejder_kullanimda3",0)
        end
        
        when sifre_kapat4.server_timer begin
        game.set_event_flag("ejder_kullanimda4",2)
        end
        
        when disari_yolluyoz4.server_timer begin
        notice_all("CH 4: Mavi Ejderha geri döndü!")
        game.set_event_flag("kesilen_metin4",0)
        purge_area(829200,1059600,844200,1074600)
        clear_server_timer("ejderi_kescen4",get_server_timer_arg())
        game.set_event_flag("ejder_kullanimda4",0)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        end
        
        
        when ejderi_kescen4.server_timer with game.get_event_flag("time_14") - get_time() <= 0 begin
        ---warp_all_in_map(208,180100,1220400)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        notice_all("CH 4: Mavi Ejderha hâlâ yaşıyor!")
        purge_area(829200,1059600,844200,1074600)
        game.set_event_flag("kesilen_metin4",0)
        game.set_event_flag("ejder_kullanimda4",0)
        end




        when disari_yolluyoz5.server_timer begin
        notice_all("CH 5: Mavi Ejderha geri döndü!")
        game.set_event_flag("kesilen_metin5",0)
        purge_area(829200,1059600,844200,1074600)
        clear_server_timer("ejderi_kescen5",get_server_timer_arg())
        game.set_event_flag("ejder_kullanimda5",0)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        end
        
        
        when ejderi_kescen5.server_timer with game.get_event_flag("time_14") - get_time() <= 0 begin
        ---warp_all_in_map(208,180100,1220400)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        notice_all("CH 5: Mavi Ejderha hâlâ yaşıyor!")
        purge_area(829200,1059600,844200,1074600)
        game.set_event_flag("kesilen_metin5",0)
        game.set_event_flag("ejder_kullanimda5",0)
        end




        when disari_yolluyoz6.server_timer begin
        notice_all("CH 6: Mavi Ejderha geri döndü!")
        game.set_event_flag("kesilen_metin5",0)
        purge_area(829200,1059600,844200,1074600)
        clear_server_timer("ejderi_kescen6",get_server_timer_arg())
        game.set_event_flag("ejder_kullanimda6",0)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        end
        
        
        when ejderi_kescen6.server_timer with game.get_event_flag("time_14") - get_time() <= 0 begin
        ---warp_all_in_map(208,180100,1220400)
        forked.warp_all_in_map("208","73","180100","1220400",1)
        notice_all("CH 6: Mavi Ejderha hâlâ yaşıyor!")
        purge_area(829200,1059600,844200,1074600)
        game.set_event_flag("kesilen_******",0)
        game.set_event_flag("ejder_kullanimda6",0)
        end
        
        when login with pc.get_map_index() != 208 begin
            if pc.getqf("icerdesin1") == 1 or pc.getqf("icerdesin2") == 1 or pc.getqf("icerdesin3") == 1 or pc.getqf("icerdesin4") == 1 then
            pc.delqf("icerdesin1")
            pc.delqf("icerdesin2")
            pc.delqf("icerdesin3")
            pc.delqf("icerdesin4")
            pc.delqf("ejder_sifre")
            pc.delqf("lider")
            end
        end
        
        function ejder_odasi_kalansure()
        if pc.get_map_index() == 208 then
            local saniyekalan = (game.get_event_flag("time_1"..pc.get_channel_id().."") - get_time())
            local dakikakalan = math.ceil(saniyekalan / 60)    
            notice("Mavi Ejderha'yı öldürmeye "..dakikakalan.." dakikalık bir zaman")
            notice("kaldı!")     
        else
        end
        end    
    end
end

Yukarıdaki kodu ;

Kod:
cd /usr/game/share/locale/turkey/quest

Dizenine dragonfix.quest olarak isimledirip attım.

putty'den

Kod:
cd /usr/game/share/locale/turkey/quest

Enter

Kod:
./qc dragonfix.quest

Enter Yapıp Reboot attım.

Oyuna start verdiğimizde oyun açılmıyor. Sunucuya bağlanıyorsunda kalıyor.

Ek olarak ortak port game99'da MAP_ALLOW; 79 yazıyor @cBaraN; tüm kanallara 79 indexini eklemem gerektiğini söyledi. Ekledim. Bunu ekleme sebebimiz odaya girince atmasını engellemek içinmiş..

Yardımcı olucaklara teşekkürler.
@cBaraN; Kardeşim ;) @egeozdmr; Kardeşim ;)

NOT: Tüm ch'lere eklediğim 79 indexini eski haline çevirdim. Game99 Ortak porta ekledim. Odaya girince hemen atıyor şehire. Yani 4 chde aktif çalışmasını sağlamamız için can baran game99'dan silip tüm chlerin configlerine eklememiz gerektiğini söylemişti fakat ekleyince oyuna girmiyor.
 
Son düzenleme:
Sorununun kaynağını bulamadım şuan. Daha doğrusu şu sebeptendir diye yazamıyorum.
Kendi serverımda kullandığım ejderha sistemini upload ettim. Bunu bir dene istersen.
Ayrıca quest klasörüne attıktan sonra dosya izinlerini 777 yapmayı unutma.
http://s3.dosya.tc/server29/kBWCXF/dragonlair.rar.html


Verdiğiniz questi attım okuttum reboot çekip girdim.

fakat ch2den girdim ch1den başka karakter ile denediğimde oda dolu diyor şifreyi biliyorsan gir diyor. Ne yapmamız gerekiyor map_index'i mi yazıcagız her kanala ?

boss map indexi http://prntscr.com/5e48x7
 

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

Geri
Üst