[SERVICE] Die Questkontrolle

01/30/2011 15:06 FlyingHirsch31#1381
So leider ist die Datei nicht als quest gespeichert bekomme das leider nicht hin kann es mir mal jemand erklären?
PHP Code:
quest PVP_Quest begin
    state start begin
        when login 
or levelup with pc.get_level() >= 80 begin
            set_state
(infomation)
        
end
    end
    state gotoinfomation begin
        when letter begin
            send_letter
("PVP-Quest 1")
        
end
        when info 
or button begin
            say
("PVP-Quest 1")
            
say("Du hast nun also Level 80 überschritten.")
            
say("Beweise mir dein Können!")
            
say("Töte 100 feindliche Spieler!")
            
say_reward("Belohnung: Rote Perle")
            
say("")
            
pc.setqf("state", 100)
            
q.set_counter("pvp_vs", 100)
        
end
        when kill begin
            
if npc.is_pc() and npc.empire != pc.empire then
            local count 
= pc.getqf("state") - 1
            
if count <= Anzahl then
                pc
.setqf("state", count)
                
q.set_counter("pvp_vs", count)
            
end
            
if count == 0 then
                say_title
("PVP-Quest 1")
                
say("Du hast die Quest erfolgreich abgeschlossen!")
                
say("Du erhälst:")
                
say_reward("2x Rote Perle")
                
say_reward("100.000.000 Yang")
                
pc.change_money(100000000)
                
pc.give_item2(27994, 2)
                
clear_letter()
                
set_state(__COMPLETE__)
            
end
        end
    end
    state __COMPLETE__ begin
        when login begin
             
--ende Der Quest!!!
        
end
    end
end 
01/30/2011 16:53 Legend2007#1382
Kopiere und füge es in Notepad/Notepad++ ein.
Gehe auf Datei -> Speichern unter... ->

Als Dateityp wählst du "All types" aus, und als dateiname schreibst du z.B.:

pvp_quest.quest

Abspeichern und das wars. Schon ist die datei eine quest datei, ready to be compiled. Ist leicht :P
01/30/2011 21:16 FlyingHirsch31#1383
Mhm könnt ihr mal testen ob die Quest so funktioniert?
PHP Code:
quest PVP_Quest begin
    state start begin
        when login 
or levelup with pc.get_level() >= 80 begin
            set_state
(infomation)
        
end
    end
    state gotoinfomation begin
        when letter begin
            send_letter
("PVP-Quest 1")
        
end
        when info 
or button begin
            say
("PVP-Quest 1")
            
say("Du hast nun also Level 80 überschritten.")
            
say("Beweise mir dein Können!")
            
say("Töte 100 feindliche Spieler!")
            
say_reward("Belohnung: Rote Perle")
            
say("")
            
pc.setqf("state", 100)
            
q.set_counter("pvp_vs", 100)
        
end
        when kill begin
            
if npc.is_pc() and npc.empire != pc.empire then
            local count 
= pc.getqf("state") - 1
            
if count <= Anzahl then
                pc
.setqf("state", count)
                
q.set_counter("pvp_vs", count)
            
end
            
if count == 0 then
                say_title
("PVP-Quest 1")
                
say("Du hast die Quest erfolgreich abgeschlossen!")
                
say("Du erhälst:")
                
say_reward("2x Rote Perle")
                
say_reward("100.000.000 Yang")
                
pc.change_money(100000000)
                
pc.give_item2(27994, 2)
                
clear_letter()
                
set_state(__COMPLETE__)
            
end
        end
    end
    state __COMPLETE__ begin
        when login begin
             
--ende Der Quest!!!
        
end
    end
end 
01/31/2011 15:17 ~shaylan~#1384
@ Denusa01

du kannst keine gm befehle in eine otto normal player quest reinpacken.
dafür müsste jeder spieler den befehl /kill benutzen dürfen.

@ LunkyMay

müsste auf den ersten blick gehen.
Du kannst am ende das when login usw. weg lassen
es reicht zu
PHP Code:
state __COMPLETE__ begin
end 
hat den selben effekt und da ist auch nichts unbrauchbares drinne.

Grüße
01/31/2011 15:58 FlyingHirsch31#1385
also kann ich das weglassen...
PHP Code:
 when login begin 
             
--ende Der Quest!!! 
        
end 
    end 
könnte jemand die quest noch auf einem server testen währe nett
01/31/2011 16:01 .Delta#1386
PHP Code:
 when login begin 
             
--ende Der Quest!!! 
        
end 
das hier kannst du weglassen, das 2. end brauchst du um den state zu beenden
01/31/2011 16:05 FlyingHirsch31#1387
okey danke könntest du die quest vlt. noch testen?^^
01/31/2011 16:05 .Delta#1388
nope hab keinen Testserver im Moment
01/31/2011 16:07 FlyingHirsch31#1389
okey vlt. findet sich jemand anderes
01/31/2011 16:27 Pyramos#1390
Ich würde gerne mal fragen wie ich einen Timer in eine quest einbaue ich brauche den befehl und die : "end" die danach noch kommen um weiteres zu schreiben wie say("")

wäre nett thx
01/31/2011 17:34 Endless.#1391
Hier eine Quest die ich ein wenig verschönern möchte..

Spieler loggt sich ein und wird begrüßt.. im Chat
aber dabei soll diese Begrüßung eine spezielle Farbe haben, die
auch auffällt.. ohne das ich im CLient was ändern muss

PHP Code:

quest playerlogin begin
    state start begin
        when login with pc
.get_level() >= 0 begin
            colour
(0, 255, 0) chat ("Herzlich willkommen, "..pc.get_name().."!^-^ ")
        
end
    end
end 
Laut lolkid´s TUT gibt es diesen Questbefehl..

gebe Thanks

Gruß Endless;)
02/01/2011 12:05 Pyramos#1392
Quote:
Originally Posted by xEndless View Post
Hier eine Quest die ich ein wenig verschönern möchte..

Spieler loggt sich ein und wird begrüßt.. im Chat
aber dabei soll diese Begrüßung eine spezielle Farbe haben, die
auch auffällt.. ohne das ich im CLient was ändern muss

PHP Code:

quest playerlogin begin
    state start begin
        when login with pc
.get_level() >= 0 begin
            colour
(0, 255, 0) chat ("Herzlich willkommen, "..pc.get_name().."!^-^ ")
        
end
    end
end 
Laut lolkid´s TUT gibt es diesen Questbefehl..

gebe Thanks

Gruß Endless;)


dann benutz: say_reward("TexT") dann wird das so rot
02/01/2011 12:08 Pyramos#1393
an LunkyMay

Quote:
Originally Posted by LunkyMay View Post
So leider ist die Datei nicht als quest gespeichert bekomme das leider nicht hin kann es mir mal jemand erklären?
PHP Code:
quest PVP_Quest begin
    state start begin
        when login 
or levelup with pc.get_level() >= 80 begin
            set_state
(infomation)
        
end
    end
    state gotoinfomation begin
        when letter begin
            send_letter
("PVP-Quest 1")
        
end
        when info 
or button begin
            say
("PVP-Quest 1")
            
say("Du hast nun also Level 80 überschritten.")
            
say("Beweise mir dein Können!")
            
say("Töte 100 feindliche Spieler!")
            
say_reward("Belohnung: Rote Perle")
            
say("")
            
pc.setqf("state", 100)
            
q.set_counter("pvp_vs", 100)
        
end
        when kill begin
            
if npc.is_pc() and npc.empire != pc.empire then
            local count 
= pc.getqf("state") - 1
            
if count <= Anzahl then
                pc
.setqf("state", count)
                
q.set_counter("pvp_vs", count)
            
end
            
if count == 0 then
                say_title
("PVP-Quest 1")
                
say("Du hast die Quest erfolgreich abgeschlossen!")
                
say("Du erhälst:")
                
say_reward("2x Rote Perle")
                
say_reward("100.000.000 Yang")
                
pc.change_money(100000000)
                
pc.give_item2(27994, 2)
                
clear_letter()
                
set_state(__COMPLETE__)
            
end
        end
    end
    state __COMPLETE__ begin
        when login begin
             
--ende Der Quest!!!
        
end
    end
end 
Ganz einfach xDD du suchst dir eine andere quest raus ^^ und kopierst diese die kopierte datei öffnen und alles raus löschen ersetzt deine quest ein und nennst die datei PVP_Quest dann ist es eben eine PVP_Quest.quest datei ^^
02/02/2011 15:52 iYoshix3#1394
pack es in ein .txt dokument , lade es in Filezilla, dort kannste es dann zu .quest unbenennen!
02/02/2011 18:43 cihad2010#1395
PHP Code:
say_title ( "Willkommen" )
say ( "Willkommen auf dem Server Old MT2." )
say ( "Macht kein Scheiss" )
say ( "Viel Spaß!" )
say ( "" )
pc . give_exp2 ( 1000 )
set_quest_state ( "levelup" , "run" )
pc . change_money ( 0 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27006" , 200 )
pc . give_item2 ( "27006" , 200 )
pc . give_item2 ( "71050" , 200 )
pc . give_item2 ( "72702" , 1 )
pc . give_item2 ( "50051" , 1 )
horse . advance ( 10 )
say_reward ( "Du erhielst 0 yang." )
say_reward ( "Du erhielst 1000 Rote(G)." )
say_reward ( "Du erhielst 400 Blaue(G)." )
say_reward ( "Du erhielst Items fur Laufgeschwindigkeit." )
say_reward ( "So viel Spass." )
clear_letter ( )
set_state ( "__COMPLETE__" )
if 
pc . job == 0 then
pc 
. give_item2 ( "169" , 1 )
pc . give_item2 ( "3149" , 1 )
pc . give_item2 ( "11279" , 1 )
pc . give_item2 ( "12249" , 1 )
pc . give_item2 ( "13089" , 1 )
pc . give_item2 ( "17109" , 1 )
pc . give_item2 ( "14149" , 1 )
pc . give_item2 ( "15148" , 1 )
pc . give_item2 ( "16169" , 1 )
say_reward ( "Du erhielst das Kriegerset!" )
elseif 
pc . job == 1 then
pc 
. give_item2 ( "169" , 1 )
pc . give_item2 ( "1119" , 1 )
pc . give_item2 ( "" , 200 )
pc . give_item2 ( "8008" , 200 )
pc . give_item2 ( "8007" , 200 )
pc . give_item2 ( "8006" , 200 )
pc . give_item2 ( "2139" , 1 )
pc . give_item2 ( "11479" , 1 )
pc . give_item2 ( "12389" , 1 )
pc . give_item2 ( "13089" , 1 )
pc . give_item2 ( "17109" , 1 )
pc . give_item2 ( "14149" , 1 )
pc . give_item2 ( "15149" , 1 )
pc . give_item2 ( "16169" , 1 )
say_reward ( "Du erhielst das Ninjaset!" )
elseif 
pc . job == 2 then
pc 
. give_item2 ( "11679" , 1 )
pc . give_item2 ( "12529" , 1 )
pc . give_item2 ( "159" , 1 )
pc . give_item2 ( "249" , 1 )
pc . give_item2 ( "13089" , 1 )
pc . give_item2 ( "17109" , 1 )
pc . give_item2 ( "14149" , 1 )
pc . give_item2 ( "15149" , 1 )
pc . give_item2 ( "16169" , 1 )
say_reward ( "Du erhielst das Suraset!" )
elseif 
pc . job == 3 then
pc 
. give_item2 ( "5109" , 1 )
pc . give_item2 ( "7139" , 1 )
pc . give_item2 ( "11879" , 1 )
pc . give_item2 ( "12669" , 1 )
pc . give_item2 ( "13089" , 1 )
pc . give_item2 ( "17109" , 1 )
pc . give_item2 ( "14149" , 1 )
pc . give_item2 ( "15149" , 1 )
pc . give_item2 ( "16169" , 1 )
say_reward ( "Du erhielst das Schamiset!" )
end