[SERVICE] Die Questkontrolle

10/13/2010 16:51 '-SkyLiiNe-'#691
Bei VPC erscheint kein Fehler,
NPC nicht anklickbar (passiert nichts)
on_click auf 1
Hier die Quest:
Danke für Hilfen im Vorraus ;)
10/13/2010 17:05 kunds#692
@ Shannonfan:
Quote:
So finde ich Quest deutlich übersichtlicher und abgekürzt. Probier die mal und sag mir, was in VPC kommt.
klappt jetzt alles, aber der "Teleporter" in der quest funktioniert nicht, wenn ich draufklick verschwindet das fenster nur... der rest (verwandeln,...) funktioniert
10/13/2010 18:45 CoreDump#693
naja das mit den on_clicks...
ein freund von mir hat probleme wobei sich quest und shop nicht miteinander vertragen. on_click 1 is für shops. (andererseits bei den fartigkeits lehrern gehts auch)
jedenfalls weiß ich nicht wofür alle on_clicks stehen. ich wär da bissl vorsichtiger.
oder such dir die on_clicks vom biologen oder vom teleporter. wenns bei beiden 1 is, dann hast irgendwo anderes den fehler drin. (ich würd ja jetz nachschauen aber ich kann grade nicht)
10/13/2010 19:30 .Alessa#694
@kunds:
Kein Wunder. Der Dialog für den Teleporter ist noch mit einem if geschaltet, der Rest als elseif. Beim letzten elseif, also vor dem Teleporter, habe ich ausversehen das end gelassen, darum hat er den if-Tag geschlossen.

PHP Code:
quest userpanel begin
    state start begin
        when 30120.
use begin
            say_title
("Userpanel:")
            
say("Waehle aus was du machen moechtest?")
            
say("Viel Spass")
            
say("")
            
local aselect("Lager oeffnen""Informationen""Verwandeln""Teleportieren""Abbrechen")
            if 
== 1 then
                game
.open_safebox()
            elseif 
== 2 then
                say_title
("Informationen")
                
say("Waehle aus was du wissen moechtest")
                
say("")
                
local b select("Team""Zurueck")
                if 
== 1 then
                    say_title
("Team:")
                    
say(" [SA]Glycerin ")
                    
say(" [GA]Radon")
                    
say(" [GA]Scandium ")
                    
say("")
                elseif 
== 2 then
                    
return
                
end
            
elseif == 3 then
                say_title
("Verwandlung:")
                
say("In was willst du dich verwandeln?")
                
say_reward("Du kannst dich fuer 1 Minute verwandeln.")
                
local cselect("Tiegergeist","Oberork","Koenigsspinne","Dunkle Koenigsspinne","Geister Orkanfuehrer","Andere","Abbrechen")
                if 
c==1 then
                    pc
.polymorph(130460)   
                elseif 
c==2 then
                    pc
.polymorph(69160)
                elseif 
c==3 then
                    pc
.polymorph(209160)
                elseif 
c==4 then
                    pc
.polymorph(209260
                elseif 
c==5 then
                    pc
.polymorph(69360
                elseif 
6==c then
                    say_title
("Verwandlung:")
                    
say("In was willst du dich verwandeln?")
                    
say_reward("Du kannst dich fuer 1 Minute verwandeln.")
                    
local e=select("Geisterbaum Lord","Flammenkoenig","Sensenmann","Daemonenkoenig","Shop Tisch","Zurueck Verwandeln","Abbrechen")
                    if 
e==1 then
                        pc
.polymorph(230760)
                    elseif 
e==2 then
                        pc
.polymorph(220660)
                    elseif 
e==3 then
                        pc
.polymorph(109360)
                    elseif 
e==4 then
                        pc
.polymorph(109160)
                    elseif 
e==5 then
                        pc
.polymorph(300003600)
                    elseif 
e==6 then
                        pc
.remove_polymorph(0)
                    elseif 
e==7 then
                        
return
                    
end
            
elseif a==4 then
                say_title
("Teleporter:")
                
say_reward("Wohin moechtest du dich teleportieren?")
                
say("")
                
local dselect("Map1 Blau""Map1 Gelb""Map1 Rot""Spinnendungeon2""Daemonenturm""Andere""Abbrechen""Tal von Gorgoroth""Bermuda Dreieck""Halle der Macht""Abbrechen")
                elseif 
1==d then
                    pc
.warp(921600,204800)
                elseif 
2==d then
                    pc
.warp(0,102400)
                elseif 
3==d then
                    pc
.warp(409600,896000)
                elseif 
4==d then
                    pc
.warp(665600,435200)
                elseif 
5==d then
                    pc
.warp(590500,110500)
                elseif 
6==d then
                    say_title
("Teleporter:")
                    
say_reward("Wohin moechtest du dich teleportieren?")
                    
say("")
                    
local x=select("Roter Wald""Seelengrotte""Tal von Gorgoroth""Bermuda Dreieck""Halle der Macht""Abbrechen")
                    if 
x==1 then
                        pc
.warp(1049600,0)
                    elseif 
x==2 then
                        pc
.warp(0,12032)
                    elseif 
x==3 then
                        pc
.warp(83200,0)
                    elseif 
x==4 then
                        pc
.warp(0,25600)
                    elseif 
x==5 then
                        pc
.warp(999900,999900)
                    
end
                    
else
                        return
                    
end
                
else
                    return
                
end   
            
else
            return
            
end
        end
    end
end 
Vergleich die Quest mal mit deiner Ursprungsquest und dann siehst du, was du verbessern kannst bzw. was du falsch gemacht hast.
10/15/2010 14:22 reymyking#695
Wieso telt diese QUest nach allen
Orten außer Grotte1&2?
10/15/2010 15:33 .Alessa#696
PHP Code:
sub_set select("Doyyumhwaji""Dämonenturm""Spinnendungeon""Lungsam""Roter Wald""Land der Riesen""Grotte1""Grotte2""Zurück""Abbrechen") + 
Habe mich zwar nicht mit einer Teleporterquest auseinandergesetzt, aber dennoch würde ich folgendes ändern:

PHP Code:
sub_set select("Doyyumhwaji""Dämonenturm""Spinnendungeon""Lungsam""Roter Wald""Land der Riesen""Grotte1""Grotte2""Zurück""Abbrechen") + 
Ist nichts weiter als die +7 zu einer +9 geändert, da du ja nun 2 Einträge mehr hast..
10/15/2010 18:31 '-SkyLiiNe-'#697
Folgender fehler bei VPC: must start with 'quest' waffen1.quest:1: Abort Trap (Core dumped)
Quest:
PHP Code:
quest waffen1 begin
    state start begin
            when 20086.chat
."Schmiede Waffen:" begin
            say_title
("Special NPC:")
            
say("psssst.... Komm mal etwas näher,")
            
say("muss ja nicht jeder mitbekommen...")
            
say("Deine Waffe sieht nicht so gut aus,")
            
say("willst du nicht eine bessere?")
            
say("Ich habe ein paar bessere....")
            
say("hust...Woher ich die habe...?")
            
say("Das sage ich dir nicht....")
            
say("Nunja es handelt sich um Waffen")
            
say("aus einer der besten Schmieden.")
            
say("Da kann unser Schmied nur neidisch sein")
            
say("")
            
say("Möchtest du mehr wissen?")
            
            
local s select ("Ja","Kein Interesse")
                if 
== 2 then
                    
return
                
end
                
if == 1 then
                say_title
("Special NPC:")
                
say("Eine geschmiedete Waffe möchtest du?")
                
say("")
                
say("Nun davon habe ich nicht viele und sie")
                
say("sind sehr wertvoll,")
                
say("deshalb kann ich sie dir nicht billig")
                
say("verkaufen... ")
                
say("Ach,nochwas ich liebe Schokolade...")
                
say("")
                
say_reward("Du benötigst:")
                
say_reward("10x 100kk Yangspeicher")
                
say_reward("10x 250kk Yangspeicher")
                
say_reward("10x 500kk Yangspeicher")
                
say_reward("1x Weiße Schokolade")
                
say_reward("1x Vollmilch Schokolade")
                
say_reward("1x Zartbitter Schokolade")
                
say_reward("Viel Glück!")
                
set_state("__FINISH__")
                
end    
            end    
        end    
    state    __FINISH__    begin
        when 20086.chat
."Ich habe alles!" with 
                pc
.count_item(95000,10) and
                
pc.count_item(95001,10) and
                
pc.count_item(95002,10) and
                
pc.count_item(96000,1) and
                
pc.count_item(96001,1) and
                
pc.count_item(96002,1)    begin
                say_title
("Special NPC:")    
                
say("Du hast alles beisammen?")
                
say("Prima!")
                
say("Jetzt kannst du dir eine Waffe aussuchen")
                
say_reward("Für welche Klasse möchtest du eine Waffe?")
                    
local m select("Krieger","Ninja","Sura","Schamie","Abbrechen")
                    if 
== 5 then
                        
return
                    
end
                    
                    
if == 1 then
                        say_title
("Special NPC:")
                        
say_reward("Welchen Waffentyp möchtest du?")
                        
local t select("Einhänder","Zweihänder","Abbrechen")
                        if    
== 3 then
                            
return
                        
end
                        
if == 1 then
                            pc
.give_item2(300,1)    
                            
item.remove(95000,10)
                            
item.remove(96000,1)
                            
item.remove(95001,10)
                            
item.remove(96001,1)
                            
item.remove(95002,10)
                            
item.remove(96002,1)
                            
set_state("__COMPLETE__")
                        elseif 
== 2 then
                            pc
.give_item2(3220,1)    
                            
item.remove(95000,10)
                            
item.remove(96000,1)
                            
item.remove(95001,10)
                            
item.remove(96001,1)
                            
item.remove(95002,10)
                            
item.remove(96002,1)
                            
set_state("__COMPLETE__")
                        
end
                        
                    
elseif == 2 then
                        say_title
("Special NPC:")
                        
say_reward("Welchen Waffentyp möchtest du?")
                        
local t select("Einhänder","Dolche","Bogen","Abbrechen")
                        if    
== 4 then
                            
return
                        
end
                        
if == 1 then
                            pc
.give_item2(300,1)    
                            
item.remove(95000,20)
                            
item.remove(96000,5)
                            
item.remove(95001,20)
                            
item.remove(96001,5)
                            
item.remove(95002,20)
                            
item.remove(96002,5)
                            
set_state("__COMPLETE__")
                        elseif 
== 2 then
                            pc
.give_item2(1140,1)    
                            
item.remove(95000,20)
                            
item.remove(96000,5)
                            
item.remove(95001,20)
                            
item.remove(96001,5)
                            
item.remove(95002,20)
                            
item.remove(96002,5)
                            
set_state("__COMPLETE__")
                        elseif 
== 3 then
                            pc
.give_item2(8050,1)    
                            
item.remove(95000,20)
                            
item.remove(96000,5)
                            
item.remove(95001,20)
                            
item.remove(96001,5)
                            
item.remove(95002,20)
                            
item.remove(96002,5)
                            
set_state("__COMPLETE__")
                        
end
                        
                    
elseif == 3 then
                        say_title
("Special NPC:")
                        
say_reward("Welchen Waffentyp möchtest du?")
                        
local t select("Einhänder","Sura Spezial","Abbrechen")
                        if    
== 3 then
                            
return
                        
end
                        
if == 1 then
                            pc
.give_item2(300,1)    
                            
item.remove(95000,10)
                            
item.remove(96000,1)
                            
item.remove(95001,10)
                            
item.remove(96001,1)
                            
item.remove(95002,10)
                            
item.remove(96002,1)
                            
set_state("__COMPLETE__")
                        elseif 
== 2 then
                            pc
.give_item2(9970,1)    
                            
item.remove(95000,10)
                            
item.remove(96000,1)
                            
item.remove(95001,10)
                            
item.remove(96001,1)
                            
item.remove(95002,10)
                            
item.remove(96002,1)
                            
set_state("__COMPLETE__")
                        
end
                    
                    
elseif == 4 then    
                        say_title
("Special NPC:")
                        
say_reward("Welchen Waffentyp möchtest du?")
                        
local t select("Fächer","Glocke","Abbrechen")
                        if    
== 3 then
                            
return
                        
end
                        
if == 1 then
                            pc
.give_item2(7180,1)    
                            
item.remove(95000,20)
                            
item.remove(96000,5)
                            
item.remove(95001,20)
                            
item.remove(96001,5)
                            
item.remove(95002,20)
                            
item.remove(96002,5)
                            
set_state("__COMPLETE__")
                        elseif 
== 2 then
                            pc
.give_item2(5330,1)    
                            
item.remove(95000,20)
                            
item.remove(96000,5)
                            
item.remove(95001,20)
                            
item.remove(96001,5)
                            
item.remove(95002,20)
                            
item.remove(96002,5)
                            
set_state("__COMPLETE__")
                        
end    
                    end
                end
            end
        end
    state    __COMPLETE__    begin
    end
end 
10/15/2010 22:38 reymyking#698
Quote:
Originally Posted by Shannonfan View Post
PHP Code:
sub_set select("Doyyumhwaji""Dämonenturm""Spinnendungeon""Lungsam""Roter Wald""Land der Riesen""Grotte1""Grotte2""Zurück""Abbrechen") + 
Habe mich zwar nicht mit einer Teleporterquest auseinandergesetzt, aber dennoch würde ich folgendes ändern:

PHP Code:
sub_set select("Doyyumhwaji""Dämonenturm""Spinnendungeon""Lungsam""Roter Wald""Land der Riesen""Grotte1""Grotte2""Zurück""Abbrechen") + 
Ist nichts weiter als die +7 zu einer +9 geändert, da du ja nun 2 Einträge mehr hast..
Da war vorher 5 hatte das jaa auf 7 geändert
weil ich das auch dachte :D

Wieso telt diese Quest nach allen
Orten außer Grotte1&2?
10/16/2010 12:35 CoreDump#699
Ich hab bei dieser quest schon alles versucht. sie hat keine fehlermeldung. sie erscheint einfach nicht. auch nicht wenn man lvl up geht.
Code:
when login with pc.level >=1 begin
ich hab hier schon echt alles versucht.
login or levelup with pc.get_level()>=1
......
ich hab echt alles ausprobiert.
PHP Code:
quest info begin
    state start begin
        when login with pc
.level >=1 begin
            set_state
(information)
        
end
    end
    
    state information begin
        when letter begin
            send_letter
("Text")
        
end
        
        when info 
or button begin
            say
("")
            
local s=select("Aktivieren","Abbrechen")
            if 
s==1 then
                say_title
("Aktiviert")
                
say("Du hast die Schriftrolle aktiviert.")
                
say("")
                
set_state(aktiviert)
            else
                
say_title("Abgebrochen")
                
say("Du kannst die Schriftrolle jederzeit aktivieren.")
                
say("")
                return
            
end
        end
    end
    
    state aktiviert begin
        when letter begin
            send_letter
("Info-Schriftrolle")
        
end
        
        when info 
or button begin
            say
("Worüber willst du etwas erfahren?")
            
say("")
            
a=select("Text1","Text2","Text3","Abbrechen")
            if 
a==1 then
                say
("")
            elseif 
a==2 then
                say
("")
            elseif 
a==3 then
                say
("")
            else
                return
            
end
        end
    end
end 
jetz frage ich mal euch ob ihr nen fehler findet.
10/16/2010 18:23 .Flynn.#700
Moin .. hab mal 2 queste gemacht

bei der 1. zählt der denn kill nicht..
und wenn ich in der Quest liste diese Quest wieder anklicke fragt er mich nochmal ob ich ihm Hilfe? weiß da jemand rat?

und erkenne nur denn fehler im Putty
Code:
Segmentation fault (core dumped)




und bei der 2.. erkenne ich garkein fehler
1. wird nicht im Putty angezeigt
2. sehe ich sie nicht ingame ^^

10/16/2010 18:46 Joey.#701
Hey,

habe eine Quest gemacht,aber in VPC sagt er mir immer Core Dumpe : 1:

10/16/2010 18:47 elo_77²☺#702
Quote:
quest get_exp begin
state start begin
when 70022.use begin

say_reward("Erfahrung")
say("Du oeffnest das Herz Beras...")
say("Ein mystischer Nebel umhuellt dich,")
say("ein Nebel den die Engel von RaymondMt2")
say("seit Jahren behuetet haben. Jetzt")
say("ueberlassen sie dir den heiligen Nebelschleier.")
say("Nimmst du das Geschenk der Engel an?")
local s = select("Ja")
if s == 1 then
say("Das kostet dich 10 Millionen Yang. Trotzdem annehmen?")
local s = select("Ja")
if s == 1 then
say("Du erhieltest 10 Millionen EXP!")
pc . give_exp2 10000000
pc.remove_item(70022)
pc.change_gold(-10000000)
say("")
end
end
end
was ist hier falsch? Klicke auf Beras Herz nix passiert...
10/16/2010 19:51 CoreDump#703
@ Shadow
PHP Code:
pc.setqf("state1"0
bei der "0" die erforderliche menge der mobs die zu töten sind eintragen


das ganze:
PHP Code:
 if pc.getqf("state1") >= 100 and pc.getqf("state2") >= 200 and pc.getqf("state3") >= 100 and pc.getqf("state4") >= 10 and pc.getqf("state5") >= and pc.getqf("state6") >= and pc.getqf("state7") >= and pc.getqf("state8") >= and pc.getqf("state9") >= 5 then 
kannst du rauslöschen! wozu brauchst du state2-state9? mitdenken ist gefragt.
PHP Code:
if pc.getqf("state1") >= 100 then 
nur das brauchst du. und die 100 wieder durch die menge der mobs die du brauchst.

-----------------------------------------------------------------------

@ elo_77²
wenn du nichts weiter als 10kk yang für das item eintragst, dann schreib kein quest dafür!!?
wie wärs wenn du das einfach in der special_item_group eintragst?
is das echt so schwer!!?? (kurzschluss im kopf)

-----------------------------------------------------------------------

@ ζσεϣ
ein questname darf kein leerzeichen enthalten.
aber das sollte jeder wissen! also da sollte man schon sagen das du die finger von quests lassen sollst!! man sieht das du 0 ahnung von quests hast.
10/16/2010 21:30 elo_77²☺#704
Quote:
@ elo_77²
wenn du nichts weiter als 10kk yang für das item eintragst, dann schreib kein quest dafür!!?
wie wärs wenn du das einfach in der special_item_group eintragst?
is das echt so schwer!!?? (kurzschluss im kopf)
Man soll bei Benutzung des Items 10kk exp unter Bezahlung von 10kk Yang bekommen.
Was bringt es mir, wenn ich es in der special_item_group eintrage? LG elo77
10/16/2010 21:42 iYoshix3#705
Quote:
Originally Posted by elo_77²☺ View Post
was ist hier falsch? Klicke auf Beras Herz nix passiert...
Die Quest sollte gehen :