[SERVICE] Die Questkontrolle

04/12/2011 18:27 BL00DSTYL3#1936
@Silfro du musst soweit ich weiß noch
PHP Code:
 clear letter() 
oder so am Ende einfügen,aber bin in Quest´s nicht die hellste Leuchte :S
04/12/2011 19:27 Atahnaru#1937
Kann sich noch mal jemand meine Quest vornehmen?^^
Ich währe sehr dankbar, bin langsam am verzweifeln :confused:

Quest:

Error:
[/QUOTE]


mfg
04/13/2011 11:28 Lore7#1938
Mein Starterset funktioniert leider nicht

Was ist der Fehler habe in den Vpc
cd /usr/rain/channel/share_data/locale/hongkong/quest
chmod u+x make.sh
sh make.sh
....
reboot

hat aber nicht geklappt benutze die Serverfiles V2 by Computerkrank
04/13/2011 13:44 [F]r33StyL3R#1939
Hey...

Hab da immer noch ein Problem mit der " Willkommensnachricht "
Da es meine erste Quest ist habe ich einfach ein kleines Video gemacht , wie ich es genauer gemacht habe.

Das Video ( In den Video ist halt nur wo ich die Quest einsetze und was für befehle in VPC eingebe )


Einmal die Quest :

PHP Code:
quest basic_weapon begin 
    state start begin 
        when login 
or levelup with pc.get_level() == 1 begin 
            set_state
gotoinfomation 
        
end 
    end 
    state gotoinfomation begin 
        when letter begin 
            send_letter
("Willkommen")
        
end
        when button 
or info begin 
            say_title
("Willkommen")
            
say("Hallo neuer!"
            
say("Viele spannende Abenteuer und starke"
            
say("Monster werden dich hier erwarten"
            
say("Beginn jetzt sofort deine Reise und"
            
say("erlebe vieles"
            
say("")
            
clear_letter()
            
            
set_state__COMPLETE__ 
        
end
    end 
    state __COMPLETE__ begin
    end 
end 
Wenn ich mit ein neuen erstellen Charakter das erste mal reingehe erhalte ich keine Nachricht...
Und Virtual PC gibt Meldungen von sich , irgendwie so " rename game datei "
So ähnlich
Hoffe ihr könnt helfen!
04/13/2011 15:24 'oShet#1940
So benutze diese Quest, aber immer wenn ich teleporte oder relogge dann bekomm ich die items wieder..

Code:
quest give_basic_weapon begin
	state start begin
		when login begin
			if pc.getqf("basic_weapon") == 0 then
				pc.setqf("basic_weapon", 1)

				local item = 19
					pc.give_item2(3009,1 )
					pc.give_item2(11209,1 )
					pc.give_item2(12209,1 )

				if pc.job == 1 then
					item = 1009
					pc.give_item2(2009,1 )
					pc.give_item2(8000,200 )
					pc.give_item2(8000,200 )
					pc.give_item2(8000.200 )
					pc.give_item2(11409,1 )
					pc.give_item2(12349,1 )

				elseif pc.job == 2 then
					item = 19
					pc.give_item2(11609,1 )
					pc.give_item2(12489,1 )

				elseif pc.job == 3 then
					item = 7009
					pc.give_item2(5009,1 )
					pc.give_item2(11809,1 )
					pc.give_item2(12629,1 )

				end

				if pc.countitem(item) == 0 and pc.weapon != item then
					pc.give_item2(item)
					pc.give_item2(72702,1 )
					pc.give_item2(71050,5 )
					pc.give_item2(70038,20 )
					pc.change_money(50000)
					pc.give_item2(13009,1 )
					pc.give_item2(17009,1 )
					pc.give_item2(14009,1 )
					pc.give_item2(15009,1 )
					pc.give_item2(16009,1 )
					pc.give_item2(27003,200 )
					pc.give_item2(27003,200 )
					pc.give_item2(27006,200 )
					pc.give_item2(72018,1 )
				
				end
			end
		end
    end
end
Kann einer machen, dass man die Items nach dem teleporten nicht mehr bekommen?
04/13/2011 15:39 .Plazmaa#1941
Quest läuft nicht , bzw. gibt eine Meldung in Putty von sich.

Die Quest:
PHP Code:
quest Loewe begin
    state start begin
        when 71120.
use begin
            say_title
("Hey ".. pc.get_name() ..".")
            
say("Hiermit kannst du einen seltenden Löwen herbeirufen,")
            
say("Sei vorsichtig , dieses Reittier ist schwer zu reiten")
            
say("und nur für echte Kämpfer geeignet")
            
say("")
            
pc.mount(20113)
            
pc.remove_item(711201)
            
end
        end
    end
end 

Die Meldung von Putty beim Make.sh ausführen:
PHP Code:


QUEST 
Loewe
STATE 
start
WHEN  
71120.use
must start with 'quest'
Loewe.quest:14:Abort trap (core dumped
Hoffe jemand kann mal die Quest berichtigen.
04/13/2011 15:49 Lore7#1942
Quote:
Originally Posted by Lore7 View Post
Mein Starterset funktioniert leider nicht

Was ist der Fehler habe in den Vpc
cd /usr/rain/channel/share_data/locale/hongkong/quest
chmod u+x make.sh
sh make.sh
....
reboot

hat aber nicht geklappt benutze die Serverfiles V2 by Computerkrank
der Fehler besteht leider immer noch schaut mal bitte im spoiler nach und sagt mir pls was falsch ist
04/13/2011 20:53 .ReDDoX™#1943
Quote:
Originally Posted by .Plazma View Post
Quest läuft nicht , bzw. gibt eine Meldung in Putty von sich.

Die Quest:
PHP Code:
quest Loewe begin
    state start begin
        when 71120.
use begin
            say_title
("Hey ".. pc.get_name() ..".")
            
say("Hiermit kannst du einen seltenden Löwen herbeirufen,")
            
say("Sei vorsichtig , dieses Reittier ist schwer zu reiten")
            
say("und nur für echte Kämpfer geeignet")
            
say("")
            
pc.mount(20113)
            
pc.remove_item(711201)
            
end
        end
    end
end 

Die Meldung von Putty beim Make.sh ausführen:
PHP Code:


QUEST 
Loewe
STATE 
start
WHEN  
71120.use
must start with 'quest'
Loewe.quest:14:Abort trap (core dumped
Hoffe jemand kann mal die Quest berichtigen.
Hey

Du hast nur ein 'end' zu viel ;)
Hier:
Habe nochmal dran geschrieben welches 'end' für was steht.
04/14/2011 00:02 '-SkyLiiNe-'#1944
Ist so ne Art Entbugg NPC der IS Items entbuggen soll,
da die QUest mit cube nicht geht...
PHP Code:
quest entbugger begin
    state start begin
        when 20080.chat
."Item Entbuggen" begin
            say_title
("Item Entbugger")
            
say("Hey du hast verbuggte Items aus dem Itemshop?")
            
say("Gib sie mir und du bekommst dasselbe Item")
            
say("Entbuggt zurück!")
            
say("Achtung: Die Bonis verschwinden aber!")
            
say("Bitte gib mir aber immer nur 1 Item,")
            
say("Ddenn mehrere gleichzeitig kann ich nicht")
            
say("entbuggen. Sry.")
            
say("ACHTUNG: DU DARSFT DAS ITEM, WELCHES DU ENTBUGGEN WILLST")
            
say("NUR EINMAL IM INVENTAR HABEN")
            
local s select("Entbuggen","Zurück")
                if 
== 2 then
                    
return
                
end
                
if == 1 then
                    say
("Was möchtest du entbuggen?")
                    
local p select("Waffe","Rüsstung",Zurück")
                        if p == 3 then
                            return
                        end
                        if p == 2 then
                            say("
Welche?")
                            local d = select("
Krieger King","Ninja King","Sura King","Schamie King","SSP","SWA","MPP","SchwKleidung")
                                if d == 1 then
                                    pc.removeitem("
11971",1)
                                    pc.give_item2("
11971",1)    
                                elseif d == 2 then
                                    pc.removeitem("
11972",1)
                                    pc.give_item2("
11972",1)    
                                elseif d == 3 then
                                    pc.removeitem("
11973",1)
                                    pc.give_item2("
11973",1)    
                                elseif d == 4 then
                                    pc.removeitem("
11974",1)
                                    pc.give_item2("
11974",1)    
                                elseif d == 5 then
                                    pc.removeitem("
11299",1)
                                    pc.give_item2("
11299",1)    
                                elseif d == 6 then
                                    pc.removeitem("
11499",1)
                                    pc.give_item2("
11499",1)    
                                elseif d == 7 then
                                    pc.removeitem("
11699",1)
                                    pc.give_item2("
11699",1)    
                                elseif d == 8 then
                                    pc.removeitem("
11899",1)
                                    pc.give_item2("
11899",1)    
                                end
                            end
                        elseif p == 1 then
                            say("
Welche?")                        
                            local a = select("
75","80er","90er")
                                if a == 1 then
                                    local c = select("
Gifti","Grolli","Flammenfächer","Orchi","TFC","Krähstahl","Löwenschwert")
                                        if c == 1 then
                                            pc.removeitem("
189",1)
                                            pc.give_item("
189",1)
                                        elseif c == 2 then
                                            pc.removeitem("
3169",1)
                                            pc.give_item("
3169",1)
                                        elseif c == 4 then
                                            pc.removeitem("
5129",1)
                                            pc.give_item("
5129",1)
                                        elseif c == 3 then
                                            pc.removeitem("
619",1)
                                            pc.give_item("
619",1)
                                        elseif c == 5 then
                                            pc.removeitem("
1139",1)
                                            pc.give_item("
1139",1)
                                        elseif c == 6 then
                                            pc.removeitem("
2179",1)
                                            pc.give_item("
2179",1)
                                        elseif c == 7 then
                                            pc.removeitem("
2179",1)
                                            pc.give_item("
2179",1)
                                        end
                                    end    
                                elseif a == 2 then
                                    say("
Welche?")                                
                                    local g = select("
Siri","GDT","Tödliche","Seelis","Großteufel","Dämonen","Hibiskus")
                                        if g == 1 then
                                            pc.removeitem("
277",1)
                                            pc.give_item("
277",1)
                                        elseif g == 2 then
                                            pc.removeitem("
3177",1)
                                            pc.give_item("
3177",1)
                                        elseif g == 3 then
                                            pc.removeitem("
217",1)
                                            pc.give_item("
217",1)
                                        elseif g == 4 then
                                            pc.removeitem("
4047",1)
                                            pc.give_item("
4047",1)
                                        elseif g == 5 then
                                            pc.removeitem("
2167",1)
                                            pc.give_item("
2167",1)
                                        elseif g == 6 then
                                            pc.removeitem("
7197",1)
                                            pc.give_item("
7197",1)
                                        elseif g == 7 then
                                            pc.removeitem("
5157",1)
                                            pc.give_item("
5157",1)
                                        end
                                    end
                                elseif a == 3 then
                                    say("
Welche?")                                    
                                    local h = select("
Mondi","BDT","Sonnenmesser","Baroni","Acht-Tigramme","Geisterbogen","Schnitterglocke")
                                        if h == 1 then
                                            pc.removeitem("
226",1)
                                            pc.give_item("
226",1)
                                        elseif h == 2 then
                                            pc.removeitem("
3186",1)
                                            pc.give_item("
3186",1)
                                        elseif h == 3 then
                                            pc.removeitem("
1156",1)
                                            pc.give_item("
1156",1)
                                        elseif h == 4 then
                                            pc.removeitem("
266",1)
                                            pc.give_item("
266",1)
                                        elseif h == 5 then
                                            pc.removeitem("
7176",1)
                                            pc.give_item("
7176",1)
                                        elseif h == 6 then
                                            pc.removeitem("
2196",1)
                                            pc.give_item("
2196",1)
                                        elseif h == 7 then
                                            pc.removeitem("
5136",1)
                                            pc.give_item("
5136",1)
                                        end
                                    end    
                                end
                            end
                        end
                    end
                end
            end    
        end
    end
end 
04/14/2011 10:10 .Delta#1945
Quote:
Originally Posted by [SA]Choco View Post
Ist so ne Art Entbugg NPC der IS Items entbuggen soll,
da die QUest mit cube nicht geht...
PHP Code:
quest entbugger begin
    state start begin
        when 20080.chat
."Item Entbuggen" begin
            say_title
("Item Entbugger")
            
say("Hey du hast verbuggte Items aus dem Itemshop?")
            
say("Gib sie mir und du bekommst dasselbe Item")
            
say("Entbuggt zurück!")
            
say("Achtung: Die Bonis verschwinden aber!")
            
say("Bitte gib mir aber immer nur 1 Item,")
            
say("Ddenn mehrere gleichzeitig kann ich nicht")
            
say("entbuggen. Sry.")
            
say("ACHTUNG: DU DARSFT DAS ITEM, WELCHES DU ENTBUGGEN WILLST")
            
say("NUR EINMAL IM INVENTAR HABEN")
            
local s select("Entbuggen","Zurück")
                if 
== 2 then
                    
return
                
end
                
if == 1 then
                    say
("Was möchtest du entbuggen?")
                    
local p select("Waffe","Rüsstung",Zurück")
                        if p == 3 then
                            return
                        end
                        if p == 2 then
                            say("
Welche?")
                            local d = select("
Krieger King","Ninja King","Sura King","Schamie King","SSP","SWA","MPP","SchwKleidung")
                                if d == 1 then
                                    pc.removeitem("
11971",1)
                                    pc.give_item2("
11971",1)    
                                elseif d == 2 then
                                    pc.removeitem("
11972",1)
                                    pc.give_item2("
11972",1)    
                                elseif d == 3 then
                                    pc.removeitem("
11973",1)
                                    pc.give_item2("
11973",1)    
                                elseif d == 4 then
                                    pc.removeitem("
11974",1)
                                    pc.give_item2("
11974",1)    
                                elseif d == 5 then
                                    pc.removeitem("
11299",1)
                                    pc.give_item2("
11299",1)    
                                elseif d == 6 then
                                    pc.removeitem("
11499",1)
                                    pc.give_item2("
11499",1)    
                                elseif d == 7 then
                                    pc.removeitem("
11699",1)
                                    pc.give_item2("
11699",1)    
                                elseif d == 8 then
                                    pc.removeitem("
11899",1)
                                    pc.give_item2("
11899",1)    
                                end
                            end
                        elseif p == 1 then
                            say("
Welche?")                        
                            local a = select("
75","80er","90er")
                                if a == 1 then
                                    local c = select("
Gifti","Grolli","Flammenfächer","Orchi","TFC","Krähstahl","Löwenschwert")
                                        if c == 1 then
                                            pc.removeitem("
189",1)
                                            pc.give_item("
189",1)
                                        elseif c == 2 then
                                            pc.removeitem("
3169",1)
                                            pc.give_item("
3169",1)
                                        elseif c == 4 then
                                            pc.removeitem("
5129",1)
                                            pc.give_item("
5129",1)
                                        elseif c == 3 then
                                            pc.removeitem("
619",1)
                                            pc.give_item("
619",1)
                                        elseif c == 5 then
                                            pc.removeitem("
1139",1)
                                            pc.give_item("
1139",1)
                                        elseif c == 6 then
                                            pc.removeitem("
2179",1)
                                            pc.give_item("
2179",1)
                                        elseif c == 7 then
                                            pc.removeitem("
2179",1)
                                            pc.give_item("
2179",1)
                                        end
                                    end    
                                elseif a == 2 then
                                    say("
Welche?")                                
                                    local g = select("
Siri","GDT","Tödliche","Seelis","Großteufel","Dämonen","Hibiskus")
                                        if g == 1 then
                                            pc.removeitem("
277",1)
                                            pc.give_item("
277",1)
                                        elseif g == 2 then
                                            pc.removeitem("
3177",1)
                                            pc.give_item("
3177",1)
                                        elseif g == 3 then
                                            pc.removeitem("
217",1)
                                            pc.give_item("
217",1)
                                        elseif g == 4 then
                                            pc.removeitem("
4047",1)
                                            pc.give_item("
4047",1)
                                        elseif g == 5 then
                                            pc.removeitem("
2167",1)
                                            pc.give_item("
2167",1)
                                        elseif g == 6 then
                                            pc.removeitem("
7197",1)
                                            pc.give_item("
7197",1)
                                        elseif g == 7 then
                                            pc.removeitem("
5157",1)
                                            pc.give_item("
5157",1)
                                        end
                                    end
                                elseif a == 3 then
                                    say("
Welche?")                                    
                                    local h = select("
Mondi","BDT","Sonnenmesser","Baroni","Acht-Tigramme","Geisterbogen","Schnitterglocke")
                                        if h == 1 then
                                            pc.removeitem("
226",1)
                                            pc.give_item("
226",1)
                                        elseif h == 2 then
                                            pc.removeitem("
3186",1)
                                            pc.give_item("
3186",1)
                                        elseif h == 3 then
                                            pc.removeitem("
1156",1)
                                            pc.give_item("
1156",1)
                                        elseif h == 4 then
                                            pc.removeitem("
266",1)
                                            pc.give_item("
266",1)
                                        elseif h == 5 then
                                            pc.removeitem("
7176",1)
                                            pc.give_item("
7176",1)
                                        elseif h == 6 then
                                            pc.removeitem("
2196",1)
                                            pc.give_item("
2196",1)
                                        elseif h == 7 then
                                            pc.removeitem("
5136",1)
                                            pc.give_item("
5136",1)
                                        end
                                    end    
                                end
                            end
                        end
                    end
                end
            end    
        end
    end
end 
Dir fehlt in der Zeile auf jeden Fall ein " ;)
04/14/2011 11:31 Endless.#1946
Huhu (:

Auch ich habe wiedermal eine fehlerhafte Quest die NICHT funktioniert
obwohl sie seehr klein ist und natürlich nicht mehr wie 8 Zeilen.

PHP Code:
quest hexe begin
    state start begin
        when 1191.kill begin
            notice_all 
(""..pc.get_name().." hat die Eishexe getötet!")
            
game.drop_item(50011)
        
end
    end
end 
Ist lediglich dazu da, damit ich mich nicht mit der mob_drop_item.txt
auseinandersetzen muss weil ich Angst hab das ich entweder nen Corefehler
auftritt oder einfach nur nicht gedroppt wird sowie ich es eigentlich
geplant habe:P Und bei jedem Boss hat es geklappt nur bei dem nicht..
da aus der Mondlichtschatztruhe Reittier Siegel rauskommen ^^

Also in der Konsole wird kein Fehler angezeigt.
Aber die Hexe droppt weder die Truhe noch erscheint die Ansage im
Chat..

Wäre wirklich nett wenn mir da jemand helfen könnte :>
Bisher klappen eigentlich alle Quests..aber diese hier
will irgentwie nicht :(

Gebe Thanks:>


Gruß, Endless^-^
04/14/2011 12:03 Syrael van G#1947
ist nur ein kleiner fehler dabei

mach so

PHP Code:
quest hexe begin
    state start begin
        when 1191.kill begin
            notice_all 
(pc.get_name().." hat die Eishexe getötet!")
            
game.drop_item(50011)
        
end
    end
end 
-----------------------
Quote:
Originally Posted by Lore7 View Post
der Fehler besteht leider immer noch schaut mal bitte im spoiler nach und sagt mir pls was falsch ist
Es handelt sich hierbei um die "main_quest_lv1.gotoinformation"

dabei musst du diese erst nach dem make.sh ausführen einfügen da sie bei make.sh gelöscht wird!

1.Server beenden ./stop
2.make.sh ausführen nur wenn du eine quest geändert hast
3.main_quest_lv1.gotoinformation einfügen unter "usr/rain/channel/share_data/locale/hongkong/quest/object/notarget/letter"
4.Server starten ./start
5.Freuen

Ich Rate dir jedoch ein Starterset mit "give_basic_weapon.quest" zu erstellen!
Es gibt hier einige Treads wo du den Inhalt dieser Quest downloaden kannst!
Dort musst du die Items dann nach deinen Vorstellungen ändern!
Somit müsstest du nicht immer nach make.sh die main_quest_lv1.gotoinformation neu einfügen!
04/14/2011 15:24 kingyoyo#1948
PHP Code:
quest mapname begin
    state start begin
        when 20092.chat
."mapname" begin
            
if pc.level()<=49 then
                say
("Dein Level ist zu Niedrig")
                
say("um in Das Vergessene Reich")
                
say("zu gelangen! Du musst LvL 50 erreicht haben!")
                
say("")
            elseif 
pc.countitem("27994")<1 then
                say_title
("OT-Suras Frau")
                
say("")
                
say("Um in die MAPNAME")
                
say("zu gelangen benötigst du eine")
                
say("Rote Perle!")
                
say("Diese kannst du von")
                
say("aus den Muscheln droppen!")
                
say("")
                
setstate(need_item27994)
            elseif 
pc.countitem("27994")>=and pc.level()>=50 then
                say_title
("OT-Suras Frau")
                
say("")
                
say("Du hast ja die Rote Perle,")
                
say("und LvL 50 erreicht!")
                
say("Das ist einfach unglaublich!")
                
say("Ich habe aber Angst,")
                
say("das dir etwas geschieht")
                
say("Naja..! Dein Pech!)
                say("
Soll ich dich in die ")
                say("
MAPNAME teleportieren?")
                say("")
                local b=select("
Ja", "Nein")
                if b==1 then
                    if pc.countitem("
27994")>=1 then
                        pc.removeitem("
27994", 1) and pc.warp(832, 144)
                        return
                        setstate(test)
                    end
                elseif b==2 then
                    say_title("
OT-Suras Frau")
                    say("")
                    say(""..mob_name(20092).."")
                    say("
Ist wahrscheinlich besser so!")
                    say("")
                end
            end 
        end
    end
end 

Ich weis nur nicht ob die richtig oder falsch ist. :rolleyes:
04/14/2011 15:27 BL00DSTYL3#1949
PHP Code:
quest mapname begin 
    state start begin 
        when 20092.chat
."mapname" begin 
            
if pc.level()<=49 then 
                say
("Dein Level ist zu Niedrig"
                
say("um in Das Vergessene Reich"
                
say("zu gelangen! Du musst LvL 50 erreicht haben!"
                
say(""
            elseif 
pc.countitem("27994")<1 then 
                say_title
("OT-Suras Frau"
                
say(""
                
say("Um in die MAPNAME"
                
say("zu gelangen benötigst du eine"
                
say("Rote Perle!"
                
say("Diese kannst du von"
                
say("aus den Muscheln droppen!"
                
say(""
                
setstate(need_item27994
            elseif 
pc.countitem("27994")>=and pc.level()>=50 then 
                say_title
("OT-Suras Frau"
                
say(""
                
say("Du hast ja die Rote Perle,"
                
say("und LvL 50 erreicht!"
                
say("Das ist einfach unglaublich!"
                
say("Ich habe aber Angst,"
                
say("das dir etwas geschieht"
                
say("Naja..! Dein Pech!"
                
say("Soll ich dcih in die"
                
say("MAPNAME teleportieren?"
                
say(""
                
local b=select("Ja""Nein"
                if 
b==1 then 
                    
if pc.countitem("27994")>=1 then 
                        pc
.removeitem("27994"1) and pc.warp(8320014400
                        return 
                        
setstate(test
                    
end 
                
elseif b==2 then 
                    say_title
("OT-Suras Frau")
                    
say("")
                    
say("Ist wahrscheinlich besser so")
                    
say("")
                    return
                
end 
            end  
        end 
    end 
end 
Probier es mal so bin aber nicht 100% sicher ob es klappt :P...und vergess nicht make.sh auszuführen

LG Blood
04/14/2011 16:33 xxalbanxx3#1950
PHP Code:
quest geldspeicher begin
    state start begin
        when 2.
use begin
            say_title
("Geldspeicher")
            
say("")
            
say("Hiermit bekommst du ein Yangspeicher.")
            
say_reward("Falls du dein Geld loswerden willst")
            
say_reward("drücke dazu auf Ja.")
            
say_reward("Dieser Gegenstand ist auch handelbar!")
            
say("")
            
say_reward("Achtung: Rauchen ist tödlich!")       
        
local main_set select("Ja","Abbrechen")
            if 
main_set == 2 then
            
return
            
end
            chat
("Du bekommst den Speicher.")
            
pc.give_item2(80007)
            
pc.change_money(-100000000)
            
end
        end
    end
end 
Also bin total schlecht in quest schreiben!
Weis ned was da falsch ist will nur das das Item geld abziehen tut und dabei halt den Yangspeicher!
Wer mir auch immer helfen kann kriegt ein thanks!