elitepvpers

elitepvpers (https://www.elitepvpers.com/forum/)
-   Metin2 Private Server (https://www.elitepvpers.com/forum/metin2-private-server/)
-   -   [SERVICE] Die Questkontrolle (https://www.elitepvpers.com/forum/metin2-private-server/654217-service-die-questkontrolle.html)

Pаylasici 07/17/2010 23:58

[SERVICE] Die Questkontrolle
 
Hallo, langer Text kurzer Sinn, kurz Weg, schreibt eure kaputte Quest
hinein oder ladet es hoch.

Ihr könnt es mir auch über eine private Nachricht senden oder auch
in diesen Thread hineinposten, am besten gleich ein Bild vom
FreeBSD "MAKE.SH" Fehler hineinstellen.

So kann ich und andere den Fehler genauer analysieren kann. Mir wäre es
vorteilhaft eure Quests in den Thread hineinzuschreiben, so kann alles viel
schneller verlaufen.

mentalfight 07/18/2010 01:25

hier:
Code:

quest tal_von_ascari begin
        state start begin
                when login or levelup with pc.level >90 begin
                        set_state(tal_von_ascari)
                end
        end
               
        state tal_von_ascari begin
                when 20092.chat."Zugang zum Tal von Ascari" begin
                        say(""..mob_name(20092)..":")
                        say("")
                        say("Sei gegruesst Kämpfer!")
                        say("Seit kurzem habe ich den Schlüssel")
                        say("zum beruechtigten Tal von Ascari")
                        say("Dort im verborgenden leben die")
                        say("letzten Seelen der Krieger,")
                        say("die im schrecklichen Kampf um das Land")
                        say("ihr Leben liessen. Sie sind extrem stark und")
                        say("durch und durch mit Hass, Und ihr Boss!! Ohhh...")
                        say("Ich kann dich hinbringen aber sei gewahnt...")
                        local a= select("Auf nach Ascari!","Ich hab zuviel Angst...")
                        if 1==a then
                                say(""..mob_name(20092)..":")
                                say("")
                                say("Na schoen du hast es so gewollt...")
                                say("Ich hoffe ich sehen dich wieder...")
                                wait()
                                pc.warp(80100,100)
                        elseif 2==a then
                                say(""..mob_name(20092)..":")
                                say("")
                                say("Ok")
                                say("Ist auch besser so...")
                        end
                end
        end
end

Problem:
Wenn ich mich damit warpe sehe ich kuz die Map, dann gehts nach Map1...
PS: per /warp 80100 100 komme ich hin...

LordMampf2 07/18/2010 01:45

Quote:

Originally Posted by mentalfight (Post 6039012)
hier:
Code:

quest tal_von_ascari begin
        state start begin
                when login or levelup with pc.level >90 begin
                        set_state(tal_von_ascari)
                end
        end
               
        state tal_von_ascari begin
                when 20092.chat."Zugang zum Tal von Ascari" begin
                        say(""..mob_name(20092)..":")
                        say("")
                        say("Sei gegruesst Kämpfer!")
                        say("Seit kurzem habe ich den Schlüssel")
                        say("zum beruechtigten Tal von Ascari")
                        say("Dort im verborgenden leben die")
                        say("letzten Seelen der Krieger,")
                        say("die im schrecklichen Kampf um das Land")
                        say("ihr Leben liessen. Sie sind extrem stark und")
                        say("durch und durch mit Hass, Und ihr Boss!! Ohhh...")
                        say("Ich kann dich hinbringen aber sei gewahnt...")
                        local a= select("Auf nach Ascari!","Ich hab zuviel Angst...")
                        if 1==a then
                                say(""..mob_name(20092)..":")
                                say("")
                                say("Na schoen du hast es so gewollt...")
                                say("Ich hoffe ich sehen dich wieder...")
                                wait()
                                pc.warp(80100,100)
                        elseif 2==a then
                                say(""..mob_name(20092)..":")
                                say("")
                                say("Ok")
                                say("Ist auch besser so...")
                        end
                end
        end
end

Problem:
Wenn ich mich damit warpe sehe ich kuz die Map, dann gehts nach Map1...
PS: per /warp 80100 100 komme ich hin...

Da hast du einen fehler mit der map..
die Quest sieht gut aus ;)

.Namenslos 07/18/2010 02:28

Code:

quest m begin
  state start begin
        when 70095.use begin
                say("Dieses Ticket!!")
                say("Es ist sehr selten ..es bringt einen laut der Beschreibung!")
                say("in die 2.Ebene des Spinnendungeons!")
                say("Willst du wirklich dorthin?")
                local s = select("Ja!", "..Nein")
                if 1 == s then
                pc.warp(705000, 465000)
                end
          end
    end
end

Mhh :s Funkt nich

mentalfight 07/18/2010 13:27

Quote:

Originally Posted by LordMampf2 (Post 6039163)
Da hast du einen fehler mit der map..
die Quest sieht gut aus ;)

danke :)
kann mir jemand sagen wo das problem seien könnte bzw per teamviewer nahschauen?
PS:suche noch ein GA der sowas kann =)
greetZ
[SA]Crank aka mentalfight

synox07162 07/18/2010 14:08

Quote:

Originally Posted by .Namenslos (Post 6039386)
Code:

quest m begin
  state start begin
        when 70095.use begin
                say("Dieses Ticket!!")
                say("Es ist sehr selten ..es bringt einen laut der Beschreibung!")
                say("in die 2.Ebene des Spinnendungeons!")
                say("Willst du wirklich dorthin?")
                local s = select("Ja!", "..Nein")
                if 1 == s then
                pc.warp(705000, 465000)
                end
          end
    end
end

Mhh :s Funkt nich

Du hast vergessen die 2. Möglichkeit zu benutzen. Weiß nicht genau wie , aber entweder mit "else" oder mit 2 == s

Pаylasici 07/18/2010 14:53

@ .Namenslos:

PHP Code:

quest m begin
    state start begin
        when 70095.
use begin
            say_title
("Die nächste Etage")
            
say("Dieser Ticket, unglaublich. Es ist sehr")
            
say("selten, es bringt einen in die nächste Etage")
            
say("des Spinnendungeons.")
            
say_reward("Willst du wirklich dorthin?")
        
        
local s select("Ja""Nein")
            if 
== s then
                pc
.warp(705000465000)
            else
                return
            
end
        end 
    end 
end 


LastHealing 07/18/2010 15:20

kannst du auch Quests erstellen? Z.B. eine Quest dafür machen das Pferdezucker endlich seine gewünschte Funktion gibt? Muss nicht umbedingt Def geben aber es sollte aufjedenfall das Pferd benennen können.

MFG

LastHealing

Pаylasici 07/18/2010 15:25

Nein, ich erstelle keine Quests, denn wenn ich welche erstelle, dann lernt ihr nichts daraus, versucht es mal selber und wenn es nicht geklappt hat, bin ich ja da. :D

.Apfel 07/18/2010 15:30

^^
 
Code:

quest vipkristall begin
    state start begin
        when 90003.use with pc.get_level() >= 10 begin
        if get_time() > pc.getqf("vipwartezeit") then
               
                say_title("Verifizierung des VIP-Status")
                        say("")
                        say("Guten Tag,")
                        say("um Deinen VIP-Status nutzen zu können")
                        say("brauchen wir eine Identifizierung von Dir.")
                        say("Gebe deshalb hier nun den Code ein den du von,")
                        say("einem GM erhalten kannst.")
                       
                        local s=input()
                        if s!= "Azeroth2" then
                    return
                        end
         
                          local w = select("Bossmob rufen", "Teleportieren #1", "Teleportieren #2", "Abbrechen")
                               
                        if w == 1 then
                                        local e = select("Oberork", "Neunschwanz", "Gelber Tigergeist", "Königsspinne", "Abbrechen")
                                       
                                        if e == 1 then
                                syschat("Du hast einen Oberork gerufen! - Sei vorsichtig!")
                                        mob.spawn(691, pc.get_x() , pc.get_y() , 1 , 1 , 1)
                                        pc.setqf("vipwartezeit",get_time()+86400)                       
                                        elseif e == 2 then
                                syschat("Du hast einen Neunschwanz gerufen! - Sei vorsichtig!")
                                        mob.spawn(1901, pc.get_x(), pc.get_y() , 1 , 1 , 1)
                                        pc.setqf("vipwartezeit",get_time()+86400)                               
                                        elseif e == 3 then
                                syschat("Du hast einen Gelben Tigergeist gerufen! - Sei vorsichtig!")
                                        mob.spawn(1304, pc.get_x(), pc.get_y() , 1 , 1 , 1)
                                        pc.setqf("vipwartezeit",get_time()+86400)                       
                                        elseif e == 4 then
                                syschat("Du hast eine Königsspinne gerufen! - Sei vorsichtig!")
                                        mob.spawn(2091, pc.get_x(), pc.get_y() , 1 , 1 , 1)
                                        pc.setqf("vipwartezeit",get_time()+86400)                       
                                elseif e == 6 then
                                return
                                else
                                return
                                end
                               
                        elseif w == 2 then
                                local tele = select("SD2 Anfang", "Feuerland", "Dämonenturm", "Berg Sohan", "Orktal", "Tempel", "Schlangenfeld", "Abbrechen")                       
                               
                                if tele == 1 then
                                syschat("<VIP>: Du wirst ins SD2 teleportiert!")
                                pc.warp(704100, 464100)
                                elseif tele == 2 then
                                syschat("<VIP>: Du wirst ins Feuerland teleportiert!")
                                pc.warp(17500, 71500)
                                elseif tele == 3 then
                                syschat("<VIP>: Du wirst in die nähe vom Dämonenturm teleportiert!")
                                pc.warp(591000, 111000)
                                elseif tele == 4 then
                                syschat("<VIP>: Du wirst ins Eisland teleportiert!")
                                pc.warp(435000, 215800)
                                elseif tele == 5 then
                                syschat("<VIP>: Du wirst ins Orktal teleportiert!")
                                pc.warp(333300, 749600)
                                elseif tele == 6 then
                                syschat("<VIP>: Du wirst in den Tempel teleportiert!")
                                pc.warp(553600, 144000)
                                elseif tele == 7 then
                                syschat("<VIP>: Du wirst ins Schlangenfeld teleportiert!")
                                pc.warp(840000, 720000)
                                elseif tele == 8 then
                                return
                               
                                else
                                return
                                end
                               
                        elseif w == 3 then
                                local tele2 = select("Rotes Reich Map1", "Blaues Reich Map1", "Gelbes Reich Map1", "Abbrechen")
                               
                                if tele2 == 1 then
                                syschat("<VIP>: Du wirst ins Rote Reich Map1 teleportiert!")
                                pc.warp(469300, 964200)
                                elseif tele2 == 2 then
                                syschat("<VIP>: Du wirst ins Blaue Reich Map1 teleportiert!")
                                pc.warp(969600, 278400)
                                elseif tele2 == 3 then
                                syschat("<VIP>: Du wirst ins Gelbe Reich Map1 teleportiert!")
                                pc.warp(557, 1579)
                                elseif tele == 4 then
                                return
                               
                                else
                                return
                                end
                        elseif w == 4 then

                                return
                        else
                                return
                       
                        end
               
               
                else
                syschat("<VIP>: Nachdem Du ein Bossmob gerufen hast, muss sich der Kristall,")
                syschat("<VIP>: 1 Tag lang regenerieren!")
                end
                       
                 
        end -- end when use item
    end -- end state start
end -- end quest warpring

Problem: Spawn zu denjenigen Punkten die ich dort angegeben habe, und
den Mob Spawn :-(

Pаylasici 07/18/2010 15:42

Hmm, versuch mal einen Monster bei einem festgesetzter Koordination zu spawnen. Also ohne das er die Koordinaten abruft und schau mal ob es klappt, wenn ja, melde dich nochmal.

Saaja 07/18/2010 15:49

Ka welche Quest :D

Make.sh =
[Only registered and activated users can see links. Click Here To Register...]

Tanhii 07/18/2010 16:19

Quote:

Originally Posted by LastHealing (Post 6044988)
kannst du auch Quests erstellen? Z.B. eine Quest dafür machen das Pferdezucker endlich seine gewünschte Funktion gibt? Muss nicht umbedingt Def geben aber es sollte aufjedenfall das Pferd benennen können.

MFG

LastHealing

Geht nur mit Files von 2009 da es dort neue Questfinktionen und eine neue Spalte in der Datenbank geben muss!

.Apfel 07/18/2010 16:19

Es sind 2 Funktionen, einmal das man sich zu den Koordinaten porten kann (was nicht funktioniert) und die 2. das man Bossmobs spawnen kann!
Problem ist das er mich weder portet, noch den Mob spawnt...

Dragara 07/18/2010 16:35

So Payla ;x My Quest & so... Aber begutachte sie auch so und sag mir dann in Skype was falsch war & so x) Für die anderen nicht wundern, bin kompletter Newbie in sachen Scripten. Jeder anfang ist schwer :p


Spoiler:

Stallbursche möchte ein Date mit Mirine, und man soll für den Stallburschen zu Mirine gehen und sie danach Fragen, als Belohnung gibt es einen Kampfgaul [Lvl20]. Hoffe ist mir einiger massen gelungen ;x


PHP Code:

quest adatefor begin
state start begin
when login with pc
.level<=25 begin
set_state
end
state information begin
when letter begin
send_letter
("Bitte hilf mir!")
end
when button 
or info begin
say title 
("Bitte hilf mir!")
say("Ich habe mich in eine Frau verliebt.")
say("Ihr Name ist Mirine, ich traue mich nicht")
say("sie anzusprechen. Sprech sie bitte an")
say("ich werde dich auch reich belohnen.")
end 
state 
goto begin
when letter begin
when letter begin
local v
=find_npc_by_vnum(GEMIVNUM) -- mache v zu Gemi
if 0==v then -- Wenn keine Gemi gefunden wurde dann mach nichts
else
target.vid("__TARGET__"v"Geh zur Gemi") -- setze die Gemi als neues Ziel
end
send_letter
("Komm zu mir!")
end
when button 
or info begin
say_title
("Kom zu mir!")
say("Geh zu Mirine")
end
when __TARGET__
.target.click begin
target
.delete("__TARGET__")
say("Stallbursche :")
say("Ich habe mich in eine Frau verliebt.")
say("Ihr Name ist Mirine, ich traue mich nicht")
say("sie anzusprechen. Könntet ihr bitte zu Mirine")
say("gehen und sie für mich nach ein Date fragen?")
say("Ich würde dich reichlich belohnen.")
say("Bitte helft mir!")
say("")
local s select("Ich helfe doch gerne","Nein, keine Zeit")
if 
s=1 then
set_state
(goto)
else
say("Schade...")
say("")
clear_letter()
q.done()
end
state 
goto
when letter begin
local v
=find_npc_by_vnum(MIRINEVNUM)
if 
0==v then
else
target.vid("__TARGET__"v"Geh zu Mirine")
end
when letter begin
send_letter
("Komm zu mir!")
end
when button 
or info begin
say_title
("Geh zu Mirine!")
say("")
end
when __TARGET__
.target.click begin
target
.delete("__TARGET__")
say("Mirine :")
say("Der Stallbursche möchte dich näher Kennenlernen?")
say("Sag ihm Nein, ich habe bereits eine Beziehung.")
say("Bis dann...")
say("")
set_state(backto)
end
state backto
when letter begin
local v
=find_npc_by_vnum(VNUM)
if 
0==v then
else
target.vid("__TARGET__"v"Geh zum Stallbursche")
end
when letter begin
send_letter
("Geh zum Stallbursche!")
end
when button 
or info begin
say_title
("Geh zum Stallbursche!")
say("Berichte dem Stallbursche")
say("")
end
when __TARGET__
.target.click begin
target
.delete("__TARGET__")
say("Stallbursche :")
say("Sie hat eine Beziehung?")
say("Schade aber ich hab dir eine belohnung versprochen.")
say("")
say_reward("Der Stallbursche gibt dir ein Kampfpferd")
pc_giveitem(VNUM)
clear_letter()
set_state(__COMPLETE__)
end
state __COMPLETE__ begin
end 



All times are GMT +2. The time now is 09:00.

Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.