Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 22:23

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[SERVICE] Die Questkontrolle

Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.

Reply
 
Old 01/23/2011, 21:45   #1321
 
Mastermonkey's Avatar
 
elite*gold: 0
Join Date: Mar 2008
Posts: 146
Received Thanks: 196
@RealFreak

mach mal die größer vier abfrage in die ifabfrage rein:


und bau noch ein

pc.setqf("gläser",0)

vor
Mastermonkey is offline  
Old 01/24/2011, 17:55   #1322
 
.remiinD's Avatar
 
elite*gold: 0
Join Date: Jan 2011
Posts: 160
Received Thanks: 92
Hallo, wo liegt der fehler, ich kirge in VPC diesen Fehler:

Und hier die Quest:
.remiinD is offline  
Old 01/24/2011, 20:19   #1323
 
~shaylan~'s Avatar
 
elite*gold: 0
Join Date: May 2010
Posts: 131
Received Thanks: 45
du hast vergessen die Auswahl zwischen Ja Teleportieren und Ich bleibe hier zu beenden.

sprich da muss noch nen end nach return rein, dann sollte es funktionieren.


grüße

Habs mir mal kurz angeschaut, da is noch was anderes..mein testserver muckt gerade ständig wegen i-was auf..
ich schaus mir morgen nochmal an wenn Mastermonkey nicht schneller ist
~shaylan~ is offline  
Old 01/25/2011, 11:56   #1324
 
elite*gold: 0
Join Date: Jul 2008
Posts: 29
Received Thanks: 7
PHP Code:
----------------------------------------------------
-- 
Grotte der Verbannung -- Entry Quest ----90005---
-- @ 
Hwa-Hae eintritt   -- ID 20092 -- Wasserstein --
----------------------------------------------------
quest kristallkammer  begin
    state start begin
        when 20092.chat
."Um Einlass bitten" begin
            
            say_title
("Hwa-Hae")
            
say("")
            
say("Halt! Ich bin Hwa-Hae vom Drachenorden, Hüterin")
            
say("des Portals. Nur mit Erlaubnis des Ordens und")
            
say("wenn du mir ein Wasserstein vorzeigen kannst,")
            
say("darfst du die Kammer von Beran-Setaou betreten!")
            if 
pc.count_item(90005) >= and pc.level >= 75 then
                local s
=select("Wasserstein geben""Wasserstein behalten")
                    
                    if 
s==1 then
                        pc
.remove_item(90005,1)
                        
pc.warp(1717,12204)
                    else
                        return
                    
end
                
            
else
                
say_reward("Wassersteine kannst du vom Sensenmann bekommen!")
            
end
        end    
    end
end 
Hey leute mein problem ist das wenn ich den Npc anklicke nichts passiert Vpc Fehler habe ich keinen. Hoffe ihr könnt helfen danke im vorraus...
masterschwert is offline  
Old 01/25/2011, 12:39   #1325
 
.2good4you111's Avatar
 
elite*gold: 20
Join Date: Oct 2010
Posts: 1,303
Received Thanks: 457
Haha Quest vom Betaserver nachgebaut

hat dein NPC in der DB on_click auf 1?
.2good4you111 is offline  
Old 01/25/2011, 12:47   #1326
 
elite*gold: 0
Join Date: Jul 2008
Posts: 29
Received Thanks: 7
Joa hat er aber on_click war doch eigentlich nur für shops ?!
masterschwert is offline  
Old 01/25/2011, 15:21   #1327
 
elite*gold: 0
Join Date: Jan 2010
Posts: 1,916
Received Thanks: 538
Was ist daran falsch?

Quote:
quest event_map begin
state start begin
when login or levelup with pc.level >0 begin
set_state(newmap_enter)
end
end

state newmap_enter begin
when 20006.chat."Neue Map" with pc.level >= 95 begin
say(""..mob_name(20006)..":")
say("")
say("Wilkommen Reisender !!")
say("")
say("Wohin soll ich dich denn Teleportieren??")
say("")
local a= select("Shajong Map","Nein Danke")
if 1==a then
say(""..mob_name(20006)..":")
say("")
say("Let's Go")
say("Ich wünsche dir viel spaß !!")
wait()
pc.warp(105200 , 10000)
elseif 2==a then
say(""..mob_name(20006)..":")
say("")
say("Ok")
say("Dann bleib hier")
end


end


end

end
'oShet is offline  
Old 01/25/2011, 15:40   #1328
 
.2good4you111's Avatar
 
elite*gold: 20
Join Date: Oct 2010
Posts: 1,303
Received Thanks: 457
PHP Code:
quest event_map begin
    state start begin 
        when 20006.chat
."Neue Map" with pc.level >= 95 begin
            say
(""..mob_name(20006)..":"
            
say(""
            
say("Wilkommen Reisender !!"
            
say(""
            
say("Wohin soll ich dich denn Teleportieren??"
            
say(""
            
local aselect("Shajong Map","Nein Danke"
            if 
== 1 then 
                say
(""..mob_name(20006)..":"
                
say(""
                
say("Let's Go"
                
say("Ich wünsche dir viel spaß  !!"
                
wait() 
                
pc.warp(105200 10000
            else
                
say(""..mob_name(20006)..":"
                
say(""
                
say("Ok"
                
say("Dann bleib hier")
            
end
        end 
    end
end 
Da hattest du aber einige Fehler...
.2good4you111 is offline  
Thanks
1 User
Old 01/25/2011, 21:10   #1329
 
Mastermonkey's Avatar
 
elite*gold: 0
Join Date: Mar 2008
Posts: 146
Received Thanks: 196
@ .remiinD
Sehr simpler fehler diesmal:

ja ich war schneller shaylan

das end wie shaylan schon sagte fehlte und was viele nicht wissen, der erste queststate muss immer start heißen!
Hier bittesehr!

Über thx wäre ich sehr verbunden auch wenn das nichts bringt
Vllt stärkt es mein ego^^.
Mastermonkey is offline  
Thanks
1 User
Old 01/25/2011, 22:31   #1330
 
elite*gold: 6
Join Date: May 2010
Posts: 1,227
Received Thanks: 1,628
Quest sieht jetzt so aus:
PHP Code:
quest blutstein begin
        state start begin
            when login 
or levelup with pc.level >= 75 begin
                set_state
(info)
            
end
        end
        state info begin
            when letter begin
                send_letter
("Geh zum Weisen Mann")
                
local v find_npc_by_vnum(20095)
                if 
!= 0 then
                    target
.vid("__TARGET__"v"Der Blutstein")
                
end
            end
            when info 
or button begin
                say_title
("Der Blutstein")
                
say("Der Weise Mann ist der Meinung du bist reif genug")
                
say("um dir einen Blutstein für den Zugang zur Grotte zu verdienen!")
            
end
            
            when __TARGET__
.target.click or 20095.chat."Der Blutstein" with pc.level >= 75 begin
            target
.delete("__TARGET__")        
            
say_title("Weiser Mann:")
            
say("Hallo!")
            
say("Möchtest du dir einen Blutstein verdienen?")
            
say("Ich warne dich!")
            
say("Es ist keine leichte Aufgabe!")
            
say("Willst du beginnen?")
            
local sselect("Auf gehts!","Nein danke")
            if 
s==1 then
                say
("Nungut!")
                
say("Als erstes musst du Vulkanglas besorgen!")
                
say("Dies kriegst du von Tausendkämpfern im Land der Riesen")
                
say_item_vnum(30188)
                
say_reward("4 Vulkanglas")
                
setstate(vulkangas)
                
pc.setqf("gläser",0)
            else
                
say("Eine gute Entscheidung!")
                
say("Auf Wiedersehn")
            
end
        end
    end
    state vulkangas begin
        when letter begin
            send_letter
("Suche das Vulkanglas!")
        
end
        when info 
or button begin
            say
("Besorge 4 Vulkanglas")
            
say("Dies erhälst du von Tausendkämpfern")
        
end
        when 1403.kill begin
            local pct 
number(1,5)
            if 
pct==1 then
                pc
.give_item2(30188,1)
                
pc.setqf("gläser",pc.getqf("gläser")+1)
            
end
            
if pc.getqf("gläser")>=4 then
                say
("Gut gemacht!")
                
say("Besorge nun noch 6 Versteinerte Tränen!")
                
say("Diese musst du dir erkämpfen.")
                
say_item_vnum(30186)
                
pc.setqf("tränen",0)
                
setstate(rw2)
        
end
        end
    end
    state rw2 begin
        when letter begin
            send_letter
("Erkämpfe dir die Tränen!")
        
end
        when info 
or button begin
            say
("Besorge 6 Versteinerte Tränen")
            
say("Dies erhälst du von Tigergeistern")
        
end
        when 1304.kill begin
            local pct 
number(1,2)
            if 
pct==1 then
                pc
.give_item2(30186,1)
                
pc.setqf("tränen",pc.getqf("tränen")+1)
            
end
            
if pc.getqf("tränen")>=6 then
                say
("Gut gemacht!")
                
say("Kehre zurück zum Weisen Mann!")
                
setstate(rw)
        
end
        end
    end
    state rw begin
        when letter begin
            local v 
find_npc_by_vnum(20095)
            if 
!= 0 then
                target
.vid("__TARGET__"v"Quest")
            
end
            send_letter
("Gehe zurück zum Weisen Mann!")
        
end
        when button 
or info begin
            say
("Gehe zum Weisen Mann zurück!")
        
end
        when __TARGET__
.target.click or
        
20095.chat."Quest" begin
        target
.delete("__TARGET__")        
        
say("..das glaubst du!")
        
say("Aber das ist noch nicht alles!")
        
wait()
        if 
pc.count_item(30186) >= and pc.count_item(30188)>= 4 then
        pc
.remove_item(30186,2)
        
pc.remove_item(30188,4)
        
pc.give_item2(30189,1)
        
say("Gut gemacht")
        
say("Hier hast du Tränen von Baljit-Elvedi")
        
say("Gehe nun in den roten Wald")
        
say("")
        
say_item_vnum(30189)
        
say("")
        
say("Und suche die geheimnisvolle Stimme!")
        
say("Sie wird dir die Tränen zu einem Blutstropfen machen!")
        
setstate(blut)
        else
        
say("Du hast nicht alle benötigten Items!")
        
end
    end
    end
    state blut begin
        when letter begin
            send_letter
("Suche die Stimme")
            
träne = {
            { 
195211},
            { 
326302},
            { 
52790},
            { 
616257},
            { 
702262},
            { 
67438},
        }
        
local r2 =  number(1,6)
        
target.pos("träne"träne[r2][1], träne[r2][2], 68"")
            
end
        when info 
or button begin
            say
("Suche die geheimnisvolle Stimme im roten Wald!")
        
end
        when träne
.target.arrive begin
            target
.delete("träne")
            
say("Sei gegrüßt!")
            
say("Ich bin die geheimnisvolle Stimme...")
            
wait()
            if 
pc.count_item(30189) >0 then
                pc
.remove_item(30189,1)
                
pc.give_item2(30187,1)
                
say("Ich mache die Tränen von Baljit-Elvedi zu einem Blutstropfen")
                
say("...")
                
say("Hier bitte ein Blutstropfen!")
                
say_item_vnum(30187)
                
say_reward("Blutstropfen erhalten!")
                
setstate(stein)
            else
                
say("Du hast die Träne nicht bei dir!")
                
say("Komm wieder wenn du sie gefunden hast...")
                            
träne = {
            { 
195211},
            { 
326302},
            { 
52790},
            { 
616257},
            { 
702262},
            { 
67438},
        }
        
local r2 =  number(1,6)
        
target.pos("träne"träne[r2][1], träne[r2][2], 68"")
            
end
        end
    end
    state stein begin
        when letter begin
            local v 
find_npc_by_vnum(20095)
            if 
!= 0 then
                target
.vid("__TARGET__"v"Quest2")
            
end
            send_letter
("Kehre zurück zum Weisen Mann")
            
end
            
            when button 
or info begin
                say
("Gehe zu Weisen Mann zurück und gib ihm den Blutstropfen!")
                
say()
            
end
        when __TARGET__
.target.click or
            
20095.chat."Quest2" begin
            target
.delete("__TARGET__")
            if 
pc.count_item(30187) <= 0 then
                    say
("Lüge!")
                else
                    
pc.remove_item(30187,1)
                    
pc.give_item2(30190,1)
                    
say("Gut gemacht!")
                    
say("Hier hast du den Blutstein!")
                    
say("Du hast ihn dir verdient!")
                    
say_reward("Blutstein erhalten")
                    
say_item_vnum(30190)
                    
clear_letter()
                
end
            end
        end
    end 
Falls ich auslogge und wieder einlogge klappen die counts nicht mehr.
Dann kann man bis zu 200 Vulkangläser haben ohne dass irgendwas passiert.

Was muss ich da ergänzen?

mfG RealFreak
RealFreak is offline  
Old 01/26/2011, 19:38   #1331
 
elite*gold: 121
Join Date: Feb 2008
Posts: 654
Received Thanks: 411
Hey Com,

Hier mal meine quest womit Ich ein problem hab...

PHP Code:
quest pony_buy_pvp begin
    state start begin
        when 20349.chat
."Horse" with horse.get_grade()==and pc.level >= 25 begin
            say
("So you want a Horse to travel faster?")
            
say("Then show me what you can!")
            
say("Prove me that you are worth it by")
            
say("killing 10 Players of another Kingdom!")
            
say_reward("Kill 10 Players of another Kingdom!")
            
say("")
            
set_state(player_kill1)
        
end
    end

    state player_kill1 begin 
        when letter begin
            send_letter
("Kill enemies of other Kingdoms")
        
end

        when button 
or info begin
            say
("So you want a Horse to travel faster?")
            
say("Then show me what you can!")
            
say("Prove me that you are worth it by")
            
say("killing 10 Players of another Kingdom!")
            
say_reward("Kill 10 Players of another Kingdom!")
            
say("")
            
pc.setqf("state"10)
            
q.set_counter("kills"10)
            
set_state (kills2)
        
end
    end
      
    state kills2 begin
        when letter begin
            send_letter
("Kill players")
        
end
        
        when button 
or info or letter begin
            say_title
("Stable Boy:")
            
say_reward"You have "..pc.getqf("state").." Players left to kill.")
            
say("")
        
end

        when kill begin
            
if npc.is_pc() and npc.empire != pc.empire then 
            local count 
pc.getqf("state") - 1
            
if count <= 10 then
                pc
.setqf("state"count)
                
q.set_counter("kills", -count)
            
end
            
if count == 0 then
                target
.vid("__TARGET__"20349"")
                
set_state(reward)
            
end
        end

        when TARGET
.click with horse.get_grade()==and pc.level >= 25 begin 
            
if pc.getqf("state") - <= 0 then
                say_title
("Congratulation!")
                
say("You proved to be courageous and strong!")
                
say("You deserve to be rewarded.")
                
say("Here, take this.")
                
say_reward("Level 1 Pony")
                
say_reward("500.000 Gold")
                
say_reward("1.000.000 EXP")
                
pc.change_money(500000)
                
pc.give_item2(500511)
                
pc.give_exp2(1000000)
                
horse.advance()
                
horse.summon()
                
clear_letter()
                
set_state(__COMPLETE__)
            
end
        end
    end 

    state __COMPLETE__ begin
    end
end 
Beim compilen dieser quest bekomme Ich diesen Fehler:
PHP Code:
syntax error : [string "kills2"]:12unexpected symbol near `when´
pony_buy_pvp.quest:74:Abort trap (core dumped)
Error occured on compile pony_buy_pvp.quest 
Was ist falsch? Ich sehe da keine falsche "symbole" neben kein "when"..

Danke im voraus.
Legend
Legend2007 is offline  
Old 01/27/2011, 15:11   #1332
 
.remiinD's Avatar
 
elite*gold: 0
Join Date: Jan 2011
Posts: 160
Received Thanks: 92
€: Diehier klappt immernoch nicht, auch nachdem ich sie von monkey "richtig" bekommen habe, aber da kommt immernoch im VPC :

syntax erorr : [string "start"]:17: `=´ expected near `pc´
high.quest:47:Abort trap (core dumped)

PHP Code:
quest high begin
    state start begin
        when 80010.
use begin
            say_title
("Ein neues Gebiet")
            
say("")
            
say("Mit Hilfe dieses magischen Amuletts")
            
say("bietet sich dir die Möglichkeit dich")
            
say("in ein neues Gebietzu teleportieren.")
            
say("")
            
say("")
            
say("Möchtest du dich in das neu entdeckte")
            
say("Gebiet Teleportieren?")
            
say("")
            
say("")
            
say_reward("Information:")
            
say("Das Item verschwindet nach dem teleportieren.")
            
say("")
            
            
local s select ("Ja Teleportieren""Nein, ich bleibe hier")
            if 
== 1 then
                
If pc.get_level() >= 80 then
                
                    say_title
("Du wirst teleportiert")
                    
say("")
                    
say("Du wirst nun teleportiert, das Amulett des Nebels")
                    
say("verschwindet nun.")
                    
say("Viel Glück!")
                    
say("")
                    
pc.warp (823900823900)
                    
pc.remove_item(800101)
                else
                    
say_title("Du wurst nicht teleportiert")
                    
say("")
                    
say("Leider bist du noch nicht stark genug")
                    
say("um dich mit diesem Amulett zu teleportieren!")
                    
say("Kommespäter wieder.")
                    
say("")
                    return
                
end
            
else
                
say_title("Du wirst nicht teleportiert")
                
say("")
                
say("Die Göttin der Nacht aktzeptiert deine Entscheidung.")
                
say("Du bleibst in diesem Gebiet.")
                
say("")
                return
                
end
            end
        end
    end
end 
.remiinD is offline  
Old 01/27/2011, 16:49   #1333
 
elite*gold: 121
Join Date: Feb 2008
Posts: 654
Received Thanks: 411
Quote:
Originally Posted by .remiinD View Post
€: Diehier klappt immernoch nicht, auch nachdem ich sie von monkey "richtig" bekommen habe, aber da kommt immernoch im VPC :

syntax erorr : [string "start"]:17: `=´ expected near `pc´
high.quest:47:Abort trap (core dumped)
PHP Code:
quest high begin
    state start begin
        when 80010.
use begin
            say_title
("Ein neues Gebiet")
            
say("")
            
say("Mit Hilfe dieses magischen Amuletts")
            
say("bietet sich dir die Möglichkeit dich")
            
say("in ein neues Gebietzu teleportieren.")
            
say("")
            
say("")
            
say("Möchtest du dich in das neu entdeckte")
            
say("Gebiet Teleportieren?")
            
say("")
            
say("")
            
say_reward("Information:")
            
say("Das Item verschwindet nach dem teleportieren.")
            
say("")
            
            
local s select ("Ja Teleportieren""Nein, ich bleibe hier")
            if 
== 1 then
                
If pc.get_level() >= 80 then
                
                    say_title
("Du wirst teleportiert")
                    
say("")
                    
say("Du wirst nun teleportiert, das Amulett des Nebels")
                    
say("verschwindet nun.")
                    
say("Viel Glück!")
                    
say("")
                    
pc.warp (823900823900)
                    
pc.remove_item(800101)
                else
                    
say_title("Du wurst nicht teleportiert")
                    
say("")
                    
say("Leider bist du noch nicht stark genug")
                    
say("um dich mit diesem Amulett zu teleportieren!")
                    
say("Kommespäter wieder.")
                    
say("")
                    return
                
end
            
else
                
say_title("Du wirst nicht teleportiert")
                
say("")
                
say("Die Göttin der Nacht aktzeptiert deine Entscheidung.")
                
say("Du bleibst in diesem Gebiet.")
                
say("")
                return
            
end
        end
    end
end 
Da war ein "end" zu viel. Außerdem muss das Item auch in der DB auf "ankilckbar" eingestellt werden sonst wirst du die Quest nicht ans laufen kriegen.
Benutz mal für dein quest item die antiflag, type, flag usw vom z.b. Seelenstein oder irgendeinen anderen item was anklickbar ist.
Müsste funktionieren.. zumindest hab ich es so gemacht mit einer meiner quests.

Gruß
Legend
Legend2007 is offline  
Old 01/27/2011, 17:08   #1334
 
.remiinD's Avatar
 
elite*gold: 0
Join Date: Jan 2011
Posts: 160
Received Thanks: 92
Das itm ist anklickbar, und entbuggt, aber das end zuvuiel weiss ich, warn fehlern aber auch ohne das 5. end kommt der gleiche fehler, es muss ja iwas nicht mit dem state und dem end vom state nicht stimmen, sagt vpc ja
.remiinD is offline  
Old 01/27/2011, 18:26   #1335
 
elite*gold: 121
Join Date: Feb 2008
Posts: 654
Received Thanks: 411
Haste versucht die beiden "return" zu entfernen? Sind eigentlich überflüßig weil das skript eh nichts weiter ausführen kann wegen den if-else statements..
Legend2007 is offline  
Reply




All times are GMT +1. The time now is 22:25.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.