[SERVICE] Die Questkontrolle

08/13/2011 19:36 .Delta#3046
Quote:
Originally Posted by Glost123 View Post
haben 6te 7te boni hinzufügen item auch ne quest? weil die beiden items funktionieren nicht mehr.. :( brauch hilfe

Quote:
Originally Posted by .Downkalypse View Post
Ich habe noch keine Ahnung von Quests schreiben hier mein " Versuch " Ist auch nicht einfalls reich.

PHP Code:
quest hallo begin 
    state start begin 
        when 20011.chat
."Begrueßen" or 71115.use with pc.is_gm() begin 
            say_title
("Startevent"
            
say("Begrueßen?"
            
local sselect("Ja, mit Ankündigung""Ja, ohne Ankündigen""Nein"
            if 
s==3 then 
                
return 
            
end 
            
if s==1 then 
                command
(b Hallo liebe 2 Spieler.)
                
command(b Heute ist unser großer Tag des durchstartens.)
                
command(b Wir haben schon viele Event für euch vorbereitet.)
                
command(b Was wollt ihr als erstes?)
                
command(b OX-Event?)
                
timer("Wartezeit"300)
                
command(b Gut ihr habt euch entschieden.)
                
command(b Wir wünschen euch viel Spaß euer 2 Team)
                
command(b Wir entschuldigen uns auch falls Bugs auftreten.)
                
command(b CheaterHacker etcbitte melden diese werden umgehend gebannt.)
        
end 
    end 
end 
Pic ist im Anhang
PHP Code:
quest hallo begin 
    state start begin 
        when 20011.chat
."Begrueßen" or 71115.use with pc.is_gm() begin 
            say_title
("Startevent"
            
say("Begrueßen?"
            
local sselect("Ja, mit Ankündigung""Ja, ohne Ankündigen""Nein"
            if 
s==3 then 
                
return 
            
end 
            
if s==1 then 
                notice_all
("Hallo liebe 2 Spieler.")
                
notice_all("Heute ist unser großer Tag des durchstartens.")
                
notice_all("Wir haben schon viele Event für euch vorbereitet.")
                
notice_all("Was wollt ihr als erstes?")
                
notice_all("OX-Event?")
                
timer("Wartezeit"300)
                
notice_all("Gut ihr habt euch entschieden.")
                
notice_all("Wir wünschen euch viel Spaß euer 2 Team")
                
notice_all("Wir entschuldigen uns auch falls Bugs auftreten.")
                
notice_all("Cheater, Hacker etc. bitte melden diese werden umgehend gebannt.")
            
end
        end 
    end 
end 
08/13/2011 23:15 darkcheater2008#3047
an dieser quest geht nichts... erst konnte ich zumindest noch zu der map warpen aber inwzischen zeigt er beim sura geist nichma mehr was an... und vorher war das problem das ich weder die karte bekommen habe noch das die member gewarpt werden.....


quest devildown begin
state start begin
when 30122.chat."Das Geheimnis Ascarias" begin
if pc . get_level ( ) < 85 then
say ("Du hast noch nicht genuegend Erfahrung gesammelt. Komme wieder, wenn du Level 85 bist!")
else
say_title("Kriegergeist")
say("")
say("Ich war einst Krieger der Kaiserlichen Armee.")
say("Vor vielen Jahren gab es einen Ort, der von einem")
say("Drache bewacht wurde. Heute kennt man ihn unter dem")
say("Name - Tal von Ascaria. Eigentlich wurde es mir")
say("verboten Informationen über die Lage dieses Ortes zu")
say("geben aber ich könnte dich trotzdem")
say("dort hin teleportieren.")
say("")
say_reward("Soll ich dich ins Tal von Ascaria teleportieren?")

local s = select("Teleportieren", "Hier bleiben")
if s == 1 then
pc.warp(391700, 1293100)
else
return
end
end
end

when 8024.kill with pc.get_map_index()==456 begin
local jump1 = number(1, 20)
if jump1<=10 then
chat("Das muss der Teil einer Karte sein.")
chat("Bringe ihn dem Surageist.")
game.drop_item(30126, 1)
else
chat("An diesem Metin war anscheinend keine Karte..")
end
end

when 30121.chat."Teil einer Karte" begin

if pc.count_item(30126)>=1 then
say("Du hast eine Karte gefunden?!")
say("Lass mal sehen!")
pc.removeitem("30126", 1)
wait()
say("Okay, ich denke als nächstes..")
say("Ja das ist okay.. Bis später!")
d.new_jump_all(3182, 12142)
d.setf("devillevel", 1)
-- Removed Schlüsselsteine aus deinem Inventar falls vorhanden, um Bugusing vorzubeugen. --
local boxto7= pc.count_item(30300)
pc.remove_item(30300,boxto7)
end
end
--------------------------------------------------------------------------------------------

local vid = d.spawn_mob(11510, 268, 311)
d.regen_file("data/dungeon/dd_regen2.txt")
d.set_unique("real", vid)
d.notice("Zerstört das legendäre Feuer der Macht.");
else
say("Ich habe gehört, dass man an den Metinsteine,")
say("hier in der Umgebung Teile von Karten finden kann,")
say("wenn man sie zerstört. Wenn du mir ein solches")
say("Teil bringen könntest, könnte ich dich in das")
say("nächste Gebiet teleportieren, da ich dann das")
say("Gebiet genauer untersuchen könnte.")
end
end

when 11510.kill with pc.in_dungeon() begin
if d.is_unique_dead("real") then
d.setf("devillevel", 2)
d.clear_regen()
d.jump_all(3542, 12825)
d.regen_file("data/dungeon/dd_warps.txt")
end
end

when 20083.chat."Geheimnissvolle Gänge" with pc.in_dungeon() and d.getf("devillevel") == 2 begin
say_title("Poeng-Hong")
say("")
say("Diese Gänge.. Sie bringen mich um")
say("meinen Verstand.. Ich laufe nun schon")
say("den ganzen Tag in ihnen herum, aber ich habe")
say("keine Ahnung, wo ich noch lang gehen soll.")
say("Ich suche doch nur meinen Bruder..")
say("")
say("Wenn ich ihn doch nur finden würde..")
wait()
d.setf("devillevel", 3)
d.jump_all(3347, 12810)
end


when 20080.chat."Poeng-Hong" with pc.in_dungeon() and d.getf("devillevel") == 3 begin
say_title("Sao-Hae")
say("")
say("Mein Bruder Poeng-Hong?")
say("Du hast ihn getroffen?")
say("Ja ich bin sein Bruder.. Es wäre")
say("sehr nett von ihm, ihm zu sagen wo ich")
say("bin, wenn du ihn noch einmal sehen solltest.")
say("")
wait()

d.setf("devillevel", 4)
timer("devildown_jump1", 1)
end

when devildown_jump1.timer begin
d.clear_regen()
d.regen_file("data/dungeon/dd_regen3.txt")
local vid = d.spawn_mob(1191, 803, 290)
d.set_unique("real", vid)
d.jump_all(3619, 12075)
d.notice("Sucht die Eishexe und tötet sie, damit der Wächter");
d.notice("des Untergrundes sich nicht länger verstecken muss.");
end

when 1191.kill with pc.in_dungeon() and d.getf("devillevel") == 4 begin
if d.is_unique_dead("real") then
d.spawn_mob(20351 , 740 , 207)
d.setf("devillevel", 5)
end
end

when 20351.chat."Wächter des Untergrundes" with pc.in_dungeon() and d.getf("devillevel") == 5 begin
say_title("Wächter des Untergrundes")
say("Man nennt mich den Wächter des Untergundes.")
say("Ich bin schon eine weile hier und kenne das Gebiet")
say("ein wenig besser wie du, wenn ich das so sagen darf.")
say("")
say("Ich könnte euch alle zu den alten Siegeln teleportieren.")
say("Ich selbst traue mich dort nicht hin.")
say("Mir ist der Ort irgendwie unheimlich.")
say("")
wait()
d.setf("devillevel", 6)
timer("devildown_jump2", 2)
end

when devildown_jump2.timer begin
d.clear_regen()
d.jump_all(4438, 12282)
d.regen_file("data/dungeon/dd_regen4.txt")
d.spawn_mob(30101, 1241, 250)
d.spawn_mob(30101, 1246, 242)
d.spawn_mob(30101, 1255, 243)
d.spawn_mob(30101, 1259, 250)
d.spawn_mob(30101, 1254, 258)
d.spawn_mob(30101, 1246, 258)
d.setf("devildownstone_count", 6)
timer('devildownstone1', 300)
d.notice("Um das Portal zum Roten Drache zu aktivieren, müssen");
d.notice("die alten Siegel zerstört werden. Ihr habt nur 20 Minuten,");
d.notice("um alle 6 Siegel zu öffnen.");
end

when devildownstone1.timer begin
d.notice("Verbleibende Zeit: 15 Minuten")
timer('devildownstone2', 300)
end

when devildownstone2.timer begin
d.notice("Verbleibende Zeit: 10 Minuten")
timer('devildownstone3', 300)
end

when devildownstone3.timer begin
d.notice("Verbleibende Zeit: 5 Minuten")
timer('devildownstone4', 300)
end

when devildownstone4.timer begin
d.clear_regen()
d.notice("Die Zeit ist abgelaufen")
d.notice("Ihr werdet nun nach draußen teleportiert")
pc.warp(391700, 1293100)
end

when 2510.kill with pc.in_dungeon() and d.getf("devillevel") == 6 begin
local KILL_COUNT_FOR_DROP_DEVIL_KEY = 15
local n =d.getf("count") + 1
d.setf("count", n)

if n == KILL_COUNT_FOR_DROP_DEVIL_KEY then
game.drop_item(50084, 1)
d.setf("count", 0)
end
end

when 30101.take with item.vnum == 50084 and d.getf("devillevel") == 6 begin
npc.purge()
item.remove()
d.setf("devildownstone_count", d.getf("devildownstone_count") - 1)
if d.getf("devildownstone_count") <= 0 then
d.setf("devillevel", 7)
-- Setzt die Timer von der Vorletzen EBENE auf 800000 Sec.
-- Um das nachträgliche herausfliegen zu vermeiden.
timer('devildownstone1', 800000)
timer('devildownstone2', 800000)
timer('devildownstone3', 800000)
timer('devildownstone4', 800000)
--------------------------------------------------------
d.clear_regen()
d.notice("Ihr habt alle alten Siegel geöffnet.")
d.notice("Das Portal zum Roten Drache hat sich geöffnet.")
timer("devildown_nexttimer", 3)
else
d.notice("Es verbleibt eine Anzahl von "..d.getf("devildownstone_count").." Siegeln")
end
end

when devildown_nexttimer.timer begin
d.jump_all(4374, 12740)
-- Firstspawn !!!
d.regen_file("data/dungeon/dd_boss1.txt")
------------------
timer("devildown_bosstimer1", 60)
end

when devildown_bosstimer1.timer begin
-- 2. Spawn !!!
d.regen_file("data/dungeon/dd_boss2.txt")
------------------
timer("devildown_bosstimer2", 60)
end

when devildown_bosstimer2.timer begin
-- 3. Spawn !!!
d.regen_file("data/dungeon/dd_boss3.txt")
------------------
timer("devildown_bosstimer3", 60)
end

when devildown_bosstimer3.timer begin
-- 4. Spawn !!!
d.regen_file("data/dungeon/dd_boss4.txt")
------------------
timer("devildown_bosstimer4", 60)
end

when devildown_bosstimer4.timer begin
-- 5. Spawn !!!
d.regen_file("data/dungeon/dd_boss5.txt")
------------------
timer("devildown_bosstimer5", 60)
end

when devildown_bosstimer5.timer begin
-- 6. Spawn !!!
d.regen_file("data/dungeon/dd_boss6.txt")
------------------
timer("devildown_bosstimer_last", 60)
end

when devildown_bosstimer_last.timer begin
-- Endspawn mit Drache !!!
d.regen_file("data/dungeon/dd_boss7.txt")
local vid = d.spawn_mob(2291, 1302, 708)
d.set_unique("real", vid)
------------------
end

when 2291.kill with pc.in_dungeon() begin
if d.is_unique_dead("real") then
d.notice("Ihr habt den Roten Drache, den Wächter des Tals von Ascaria besiegt.");
d.notice("Ihr werdet in 20 Sekunden zurück zum Anfang teleportiert..");
timer("devildown_escapetimer", 20)
end
end

when devildown_escapetimer.timer begin
d.clear_regen()
d.setf("devillevel", 0)
pc.warp(391700, 1293100)
end

end
end
08/14/2011 00:52 Brodan#3048
Die Quest funktioniert nicht.

Die Quest:

Fehlermeldung:
[Only registered and activated users can see links. Click Here To Register...]

Danke im Vorraus
08/14/2011 01:08 Sp0ngeb0b ist cool#3049
@Brodan:

PHP Code:
quest change_gold begin
    state start begin
        when 20011.chat
."Geldgeschenk" begin
            say_title
(""..mob_name(20011)..":")
            
say("")
            
say("Heyho, du willst dir etwas kaufen aber dir fehlt")
            
say("das nötige Yang?")
            
say("")
            
say("Du hast Glück, denn ich habe vor ein paar Tagen")
            
say("eine hohe Menge Yang gewonnen!")
            
say("")
            
say("Ich werde dir 100 Mio. Yang schenken.")
            
say("")
            
say_reward("Achtung: Wenn du mehr als 1'999'999'999 Yang")
            
say_reward("hast wirst du einen Bug bekommen!")
            
say("")
            
local s select("Ja, bitte gib mir Yang!","Nein, ich habe genug Yang.")
            if 
== 1 then
                say_title
(""..mob_name(20011)..":")
                
say("")
                
say("Hier bitte!")
                
say("")
                
say_reward("Du hast 100'000'000 Yang erhalten!")
                
pc.change_money 100000000 )
            elseif 
== 2 then
                say_title
(""..mob_name(20011)..":")
                
say("")
                
say("Na dann, bis bald!")
                
say("")
                return
            
end
        end
    end
end 
08/14/2011 05:18 Brodan#3050
Die Quest geht auch nicht mehr, habe die letzte Funktion hinzugefügt, seitdem verweigert sie ihren Dienst.

Die Quest:

Vpc spuckt keine Fehlermeldung aus.

Danke im vorraus
08/14/2011 06:00 'Helios#3051
Kann die Quest gerade leider nicht testen und es wäre super,
wenn mal jemand rüberschauen und ggf. Fehler korrigieren könnte.

Code:
quest startquest begin
	state start begin
		when 30003.use begin
			say_title("Info")
			say("")
			say_reward("Wir begrüßen Dich herzlich")
			say_reward("in der fernöstlichen Welt von Meep!")
			say("")
			say("Ich werde dir ein Startkapital")
			say("von einer Milliarden Meep bereitstellen,")
			say("mit dem du dir in der Stadt")
			say("deine Ausrüstung kaufen kannst!")
			say("")
				pc . change_money ( 1000000000 )
		    		pc . give_item2 ( "71050", 200 )
				pc . give_item2 ( "72702", 1 )
				pc . give_item2 ( "ID des Siegels", 1 )
			say_reward("Du erhälst 1.000.000.000 Meep.")
			say_reward("Du erhälst 200 Geschwindigkeitstränke.")
			say_reward("Du erhälst Windschuhe.")
			say_reward("Du erhälst Meep Siegel")
		pc.remove_item(30003, 1)
end
	end
		end
08/14/2011 10:50 Megawurrrm#3052
es kommt bei mir nirgends ne fehlermeldung mein problem ist das ich das quest einfüge und in der virtuellen maschine per make.sh bekannt mache anschließend steht da das alles gut gelaufen ist
wenn ich nun in den server gehe ist aber kein quest da und wie mir jetzt aufgefallen ist kann ich noch so viele quest mit biologenquesteditor machen wie ich möchte da ändert sich nichts dran

liegt das überhaupt an den quests?
08/14/2011 11:24 .Delta#3053
@Brodan
PHP Code:
quest GM_File begin 
    state start begin 
        when 30181.
use begin 
            say_title
("GM-Tool"
            
say(""
            
say("Oh Hallo, GameMaster!"
            
say("Möchtest du die GM Rechte aktualiseren?"
            
say("Oder willst du doch eher etwas ankündigen?"
            
say_title("Bitte Funktion Wählen"
            
local s select("GM Rechte Aktualiseren","Hilfe Ankündigen","Offline Ankündigung","Tag / Nacht","Weiter")
            if 
== 1 then 
                command
("reload a"
            elseif 
== 2 then 
                command 
("n "..pc.get_name() .." steht euch für Fragen und Probleme zur Verfügung!"
            elseif 
== 3 then 
                command 
("n "..pc.get_name() .." meldet sich nun ab und wünscht weiterhin viel Spaß!")
            elseif 
== 4 then 
                say_title
("GM-Tool:"
                
say(""
                
say("Du möchtest also zwischen Tag und"
                
say("Nacht wechseln ?"
                
local f select ("Tag" "Nacht""Abbrechen"
                if 
== 1 then 
                    command
("x 0"
                elseif 
== 2 then 
                    command 
("x 1"
                elseif 
== 3 then 
                    
return
                
end
            
elseif == 5 then 
                say_title
("Bitte Funktion wählen"
                
local m select ("Reboot Ankündigen","Rates einstellen","Raus hier"
                if 
== 1 then 
                    notice_all
("Wir werden einen Reboot durchführen, bitte ausloggen!"
                elseif 
== 2 then
                    say
("Du stellst nun die standart Rates ein.")
                    
command ("priv_empire 0 1:exp 350 24"
                    
command ("priv_empire 0 2:exp 750 24"
                    
command ("priv_empire 0 4:exp 550 24")
                elseif 
== 3 then
                    
return
                
end    -- hat gefehlt
            end 
        end
    end
end 
@'Helios
die Quest stimmt doch.
Nicht vergessen, den type des items 30003 auf 18 zu stellen und noch die ID des Siegels durch eine Vnum zu ersetzen

@Megawurrrm
Make.sh bringt dir also keinerlei Fehlermeldungen?
hm
machst du denn dannach einen reboot?
und trägst du die quests denn auch in die hongong_list ein?
08/14/2011 11:35 Megawurrrm#3054
ja und ja sogar nach der hongkong liste 3 enter ich glaube aber langsam das liegt echt nicht an der quest ich habe es mit noch anderen fertigen von hier probiert die klappen auch alle nicht ich kann auch keine bestehenden endern wie zumbeispiel das basik waffen quest
08/14/2011 12:04 'Helios#3055
Quote:
Originally Posted by .Delta View Post
@'Helios
die Quest stimmt doch.
Nicht vergessen, den type des items 30003 auf 18 zu stellen und noch die ID des Siegels durch eine Vnum zu ersetzen
Konnte ja nicht testen, ob sie klappt oder nicht.
Ich danke dir für deine schnelle Hilfe.
08/14/2011 16:12 £αšεℜ™#3056
Hey Com
ich kenn mich nicht sogut mit quests aus könnte mir einer ein Item erstellen mit folgenden funktionen?
1. reichteleporter
2. dann das man sich zur farmmap porten kann
3. lager

nur die funktionen

mfg
08/14/2011 16:21 Sp0ngeb0b ist cool#3057
Quote:
Originally Posted by £αšεℜ™ View Post
Hey Com
ich kenn mich nicht sogut mit quests aus könnte mir einer ein Item erstellen mit folgenden funktionen?
1. reichteleporter
2. dann das man sich zur farmmap porten kann
3. lager

nur die funktionen

mfg
Die Quest Kontrolle ist zum kontrollieren da, nicht zum Auftrag geben,dass andere einem Quests schreiben. Dadurch lernst du ja nicht! Probier es selber eine zu schreiben und wenn sie dann nicht geht, postet du deine Quest hier und wir (die com) werden sie verbessern ;)

mfg sp0nge
08/14/2011 17:06 £αšεℜ™#3058
PHP Code:
quest usercp begin
    state start begin
        when 70042.
use begin
            say_title
("Userpanel")
            
say("")
            
say("Mit diesem Item kannst du dein Userpanel")
            
say("aufrufen! Viel Spaß!")
            
say_reward("Wähle aus, was du tun willst:")
            
say("")
            
local a select("Das Team","Rotes Reich","Gelbes Reich","Blaues Reich","Farmmap","Abbrechen")
            if 
== 6 then
                
return

            elseif 
== 1 then
                say_title
("Das Team")
                
say("")
                
say("Das Team besteht aus:")
                
say_reward("GM name")
                
say_reward("GM name")
                
say_reward("GM name")
                
say_reward("GM name")
                
say_reward("GM name")
                
say_reward("GM name")
                
            elseif 
== 2 then
                pc
.warp(47439548)

            elseif 
== 3 then
                pc
.warp(6381664)
                
            elseif 
== 4 then
                pc
.warp(95992692)

            elseif 
== 5 then
                warp
(8320)
            
end
        end
    end
end 
ich weis nich was da falsch ist vllt könnt ihr helfen
08/14/2011 17:10 .Scy#3059
Quote:
Originally Posted by £αšεℜ™ View Post
PHP Code:
quest usercp begin
    state start begin
        when 70042.
use begin
            say_title
("Userpanel")
            
say("")
            
say("Mit diesem Item kannst du dein Userpanel")
            
say("aufrufen! Viel Spaß!")
            
say_reward("Wähle aus, was du tun willst:")
            
say("")
            
local a select("Das Team","Rotes Reich","Gelbes Reich","Blaues Reich","Farmmap","Abbrechen")
            if 
== 6 then
                
return

            elseif 
== 1 then
                say_title
("Das Team")
                
say("")
                
say("Das Team besteht aus:")
                
say_reward("GM name")
                
say_reward("GM name")
                
say_reward("GM name")
                
say_reward("GM name")
                
say_reward("GM name")
                
say_reward("GM name")
                
            elseif 
== 2 then
                pc
.warp(47439548)

            elseif 
== 3 then
                pc
.warp(6381664)
                
            elseif 
== 4 then
                pc
.warp(95992692)

            elseif 
== 5 then
                warp
(8320)
            
end
        end
    end
end 
ich weis nich was da falsch ist vllt könnt ihr helfen
den fehler mit poste.
08/14/2011 17:14 £αšεℜ™#3060
WHEN : 70042.use
Calls undeclared function! :
warp
Abort trap (core dumped)
Error occured on compile usercp.quest

das steht da -.-