Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 04:14

  • 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 03/12/2012, 21:00   #5071
 
[SA]KiLLeD's Avatar
 
elite*gold: 0
Join Date: Feb 2012
Posts: 425
Received Thanks: 108
Bevor ich die neue Pvpkill quest teste, wollte ich kurz noch nen kleines problem lösen, also ich will der starterquest befehle einfügen, so dass wenn man sich einloggt automatisch alle drachengottitems besitzt und kritischer und durchbohrender treffer, aber habe wiedermal keine ahnung wo ich das einfügen muss und wie der befehl selbst heißt. tut mir echt leid

PHP Code:
quest willkommen begin 
    state start begin 
        when login begin 
            
if pc.getqf("start") == 0 then 
                pc
.setqf("start"1
                
say_title("DeineMudda"
                
say("Herzlich Willkommen auf DeineMudda!"
                
say("Hier kannst du deinen eigenen"
                
say("Style designen!"
                
say("Wir wünschen dir noch Viel Spaß!"
                
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 ("50053"1
                
pc.give_item2 ("70044"1
                
pc.give_item2 ("70045"1
                
pc.change_money 1000000 
                
horse.set_level(21
                
say_reward("1000 Rote Potts erhalten."
                
say_reward("400 Blaue Potts erhalten"
                
say_reward("200 Violette Potts erhalten."
                
say_reward("Windschuhe+ erhalten."
                
say_reward("Reittieritem erhalten."
                
say_reward("Reittieritem2 erhalten."
                
clear_letter() 
            
end 
        end 
    end 
end 
Ich weiß es müsste bei pc.give_item2 sein da zwischen glaube ich bin mir aber nicht sicher. pls help, also alle drachengottitems und die 2 trefferpotts da
[SA]KiLLeD is offline  
Old 03/12/2012, 21:01   #5072
 
havmonster's Avatar
 
elite*gold: 0
Join Date: Dec 2009
Posts: 105
Received Thanks: 30
Quote:
Originally Posted by RealMadrid94rk View Post
Was heißt login or enter?
Enter habe ich noch nie gehört, habs also mal rausgelassen.
Du hattest pc.get_map_index falsch gesetzt und das gleichheitszeichen vergessen. Jetzt sehe ich aber keine Fehler mehr
PHP Code:
quest anfang begin  
    state start begin 
        when login with pc
.get_map_index() == 205 begin  
            say_title
("Willkommen bei lwmt2")  
            
say("Stuerze dich auf die Spannenden")  
            
say("Abenteuer in dieser")  
            
say("unerforschten Welt")  
            
say("")  
            
say_reward("Sammle genug Yang, um dich wieder in die bekannte Welt")  
            
say_reward("zurueck zu teleportieren")  
            
say_reward("Teleportieren kannst du dich beim alten Mann")  
        
end  
    end 
end 
Enter hab ich in einer anderen quest gesehen, es geht aber immernoch nicht selber Fehler...
havmonster is offline  
Old 03/12/2012, 22:13   #5073
 
collado's Avatar
 
elite*gold: 26
Join Date: Aug 2009
Posts: 107
Received Thanks: 62
PHP Code:
quest willkommen begin  
    state start begin  
        when login begin  
            
if pc.getqf("start") == 0 then  
                pc
.setqf("start"1)  
                
say_title("DeineMudda")  
                
say("Herzlich Willkommen auf DeineMudda!")  
                
say("Hier kannst du deinen eigenen")  
                
say("Style designen!")  
                
say("Wir wünschen dir noch Viel Spaß!")  
                
pc.give_item2 (27003200)  
                
pc.give_item2 (27003200)  
                
pc.give_item2 (27003200)  
                
pc.give_item2 (27003200)  
                
pc.give_item2 (27003200)  
                
pc.give_item2 (27006200)  
                
pc.give_item2 (27006200)  
                
pc.give_item2 (71050200)  
                
pc.give_item2 (727021)  
                
pc.give_item2 (500531)  
                
pc.give_item2 (700441)  
                
pc.give_item2 (700451)
                
pc.give_item2 (xxxxx)
                
pc.give_item2 (xxxxx)
                
pc.change_money 1000000 )  
                
horse.set_level(21)  
                
say_reward("1000 Rote Potts erhalten.")  
                
say_reward("400 Blaue Potts erhalten")  
                
say_reward("200 Violette Potts erhalten.")  
                
say_reward("you have xx item")
                
say_reward("Windschuhe+ erhalten.")  
                
say_reward("Reittieritem erhalten.")  
                
say_reward("Reittieritem2 erhalten.")  
                
clear_letter()  
            
end  
        end  
    end  
end 

just add

PHP Code:
pc.give_item2 (item_vnumamount
collado is offline  
Thanks
1 User
Old 03/12/2012, 22:40   #5074
 
.Shiraka™'s Avatar
 
elite*gold: 0
Join Date: Mar 2012
Posts: 130
Received Thanks: 42
Quote:
Originally Posted by warrockplayer4 View Post
@Shiraka™

Ich glaube Kampfgaul Quest ist falsch, da er nur den Button klciken muss und er hat es

Ich glaube, da wird nicht geprüft ob er überhaupt so viel Yang hat...
wie würde ich das lösen? also wo müsst die abfrage rein & wie stell ich so ne abfrage?

hier nochmal die quest für die die nich zurück blättern wollen:

PHP Code:
quest kampfgaul begin
    state start begin
        when 70004.
use begin
            say_title
("Kampfpferd")
                
say("Du möchtest also ein Kampfpferd?")
                
say("Ich kann dir eins geben, aber")
                
say("das wird dich was kosten...")
                
say("")
                
say("Es kostet dich 25kk")
                
say("Möchtest du ein Kampfpferd kaufen?")
                
local s=select("Ja!, Nein!")
            if 
s==1 then 
            horse_set_level
("11")
            
pc.give_item2(500521)
            
pc.change_money(-25000000)
                
say("Herzlichen Glückwunsch!")
                
say("Du hast ein Waffenpferdebuch,")
                
say("und dein Kampfpferd erhalten!")
            
pc.remove_item("70004, 1")
            elseif 
s==2 then
                say
("Ok, dann nicht")
                
end
            end
        end
    end 
.Shiraka™ is offline  
Old 03/12/2012, 23:06   #5075
 
collado's Avatar
 
elite*gold: 26
Join Date: Aug 2009
Posts: 107
Received Thanks: 62
PHP Code:
                 local s=select("Ja!""Nein!"
PHP Code:
                local s=select("Ja!, Nein!"
here its the error xD


if you can, test it:
collado is offline  
Old 03/13/2012, 08:02   #5076
 
Mijago's Avatar
 
elite*gold: 191
Join Date: May 2009
Posts: 1,214
Received Thanks: 2,597
write >=25*10^6, not only > 25*10^6
only for the case..
Mijago is offline  
Old 03/13/2012, 14:40   #5077
 
.Shiraka™'s Avatar
 
elite*gold: 0
Join Date: Mar 2012
Posts: 130
Received Thanks: 42
Quote:
Originally Posted by collado View Post
PHP Code:
                 local s=select("Ja!""Nein!"
PHP Code:
                local s=select("Ja!, Nein!"
here its the error xD


if you can, test it:
thanks, i cant test it now. but i think it's good, but 1 mistake. i would, that when you click on the item and select "Ja/Yes", the item say's "You need 25kk". so i have do this:


thats right?
.Shiraka™ is offline  
Old 03/13/2012, 14:51   #5078
 
[SA]KiLLeD's Avatar
 
elite*gold: 0
Join Date: Feb 2012
Posts: 425
Received Thanks: 108
Quote:
Originally Posted by RealMadrid94rk View Post
Hier auch noch, dass wenn man gekillt wurde, der counter wieder von vorne anfängt. Schau mal obs es so klappt, bin mir nicht sicher.

PHP Code:
quest pvpkill begin 
    state start begin 
        when login with pc
.level >= 200 begin 
            set_state
(player_kill1
        
end 
    end 

    state player_kill1 begin 
        when letter begin 
            send_letter
("Töte Gegner."
        
end 

        when button 
or info begin 
            say
("Es wird Zeit dass du zeigst"
            
say("was in dir steckt!"
            
say("Zeige es uns indem du 100"
            
say("Spieler tötest!"
            
say_reward("Töte 100 andere Spieler aus anderen Reichen!"
            
say(""
            
pc.setqf("state"100
            
q.set_counter("kills"100
            
set_state (kill
        
end 
    end 
       
        state kill begin 
        when letter begin 
            send_letter
("Töte Spieler"
        
end 
         
        when button 
or info begin 
            say_title
("Spieler:"
            
say_reward"Du musst noch ".." "..pc.getqf("state").." von 100 töten."
            
say(""
        
end 

        when pc
.is_dead() begin
            pc
.setqf("state"100)
            
q.set_counter("kills"100)
        
end
        
        when kill begin 
            
if npc.is_pc() then  
            local count 
pc.getqf("state") - 
            
if count <= 100 then 
                pc
.setqf("state"count
                
q.set_counter("kills", -count
            
end 
            
            
if count == 90 then
                mob
.spawn(vnumxy1010anzahl)
            
end
            
            
if count == 0 then 
                say_title
("Du hast es geschafft!"
                
say("100 Spieler zu töten!"
                
say("Du erhälst für deine Mühen:"
                
say_reward("1x Notiz des Weisen"
                
say_reward("Herzlichen Glückwunsch!"
                
pc.give_item2(700281
                
notice_all("".. pc.get_name() .." hat soeben die PvP Quest abgeschlossen!"
                
notice_all("Er/Sie hat 100 Spieler getötet, Glückwunsch!"
                
clear_letter() 
                
set_state(__COMPLETE__

            
end 
        end 
    end 
    end 

    state __COMPLETE__ begin 
    end 
end 
Habe es gerade getestet, und nein es kommt eine fehlermeldung in vbox:

WHEN : pc.is_dead
when does´t have begin-end clause. (()
pvpkill.quest:31:Error occured on compile pvpkill.quest

was muss ich jetz machen?!
[SA]KiLLeD is offline  
Old 03/13/2012, 15:09   #5079

 
MetinLegende's Avatar
 
elite*gold: 10
Join Date: Feb 2012
Posts: 1,097
Received Thanks: 574
hey hab ne frage wegen halbmondring bzw lolli quest,
würde das so funktionieren
PHP Code:
quest buffs begin
    state start begin
        when 71135.
use begin
            cmdchat
("buff1")
            
affect.add(EXP_DOUBLE_BONUS,50)
            
affect.add(ATT_SPEED,20)
            
affect.add(CAST_SPEED,20)
            
affect.add(ATT_BONUS_TO_MONSTER,30)
            
affect.add(MAX_HP,1500)
            
affect.add(MAX_SP,500)
        
end
        when 71135.
use end
            affect
.remove(EXP_DOUBLE_BONUS,50)
            
affect.remove(ATT_SPEED,20)
            
affect.remove(CAST_SPEED,20)
            
affect.remove(ATT_BONUS_TO_MONSTER,30)
            
affect.remove(MAX_HP,1500)
            
affect.revmove(MAX_SP,500)
        
end 
    end
end 
MetinLegende is offline  
Old 03/13/2012, 16:10   #5080
 
Mijago's Avatar
 
elite*gold: 191
Join Date: May 2009
Posts: 1,214
Received Thanks: 2,597
PHP Code:
        when pc.is_dead() begin 
            pc
.setqf("state"100
            
q.set_counter("kills"100
        
end 
Rofl
ich lach mich innerlich immer iweder Schlapp
Wo habt ihr das aufgeschnappt? xD
es gibt nur folgendes, was nach when stehen kann:

login leave logout letter button kill timer info click chat (und noch ein paar^^)

die Abfrage, is_dead, kannst du höchstens im WITH bereich machen..
when bla with pc.is_dead() begin

Zumindest wär mir alles andres neu
Mijago is offline  
Old 03/13/2012, 16:14   #5081
 
[SA]KiLLeD's Avatar
 
elite*gold: 0
Join Date: Feb 2012
Posts: 425
Received Thanks: 108
Quote:
Originally Posted by Mijago View Post
PHP Code:
        when pc.is_dead() begin 
            pc
.setqf("state"100
            
q.set_counter("kills"100
        
end 
Rofl
ich lach mich innerlich immer iweder Schlapp
Wo habt ihr das aufgeschnappt? xD
es gibt nur folgendes, was nach when stehen kann:

login leave logout letter button kill timer info click chat (und noch ein paar^^)

die Abfrage, is_dead, kannst du höchstens im WITH bereich machen..
when bla with pc.is_dead() begin

Zumindest wär mir alles andres neu
Also wie würde sie jetzt richtig aussehen?!
[SA]KiLLeD is offline  
Old 03/13/2012, 16:20   #5082
 
elite*gold: 0
Join Date: May 2010
Posts: 64
Received Thanks: 1
Code:
quest questname begin
	state start begin
		when pc.get_item 40015 begin
			set_state( killmonster )
		end
	end
	state killmonster begin
		when letter begin
			send_letter("Töte Baumfroch General!")
			pc.setqf("state", 0)
			q.set_counter("Verbleibend",50)
		end
		when info or button begin
			say_title("Töte 50 Baumfroch General!")
			say_reward( "Es fehlen noch ".." "..50 - pc.getqf("state").." Baumfroch General .")
			say("")
		end
		when 1335.kill begin
			local count = pc.getqf("state") + 1

			if count <= 50 then
				pc.setqf("state", count)
				q.set_counter("Verbleibend", 50 - count)

				if count == 50 then
					say_title("Aufgabe abgeschlossen")
					say("Alle 50 Baumfroch General wurden vernichtet.")
					say("Du bist nun ein  Lehrling")
					say("Gehe zu Uriel um die nächste Ausbildung zu beginnen")
					say("Jedoch erhalte erst deine Belohnung :")
					say_reward("1x Holz-Spitzhacke +1")
					pc.remove_item(40015,1)
					pc.give_item2(40016,1)
					set_state( __COMPLETE__ )
				end
			end
		end
	end
	state __COMPLETE__ begin
	end
end




Der Fehler liegt denke ich an dem Ereignis wann die Quest anfängt ^^
Sie soll beginnen wenn man ein bestimmtes Item hat.

Danke
tikala is offline  
Old 03/13/2012, 16:25   #5083
 
RealMadrid94rk's Avatar
 
elite*gold: 0
Join Date: Jul 2011
Posts: 501
Received Thanks: 110
@miogo oder wie auch immer: wenn du kA. vom questen hast dann lass es lieber. die quest funktioniert so wie ich es geschrieben habe punkt aus ende....
RealMadrid94rk is offline  
Old 03/13/2012, 16:41   #5084
 
elite*gold: 0
Join Date: Oct 2010
Posts: 107
Received Thanks: 11
Hallo,


Ich habe ein Problem wenn ich bei den daroo 1678 files den befehl "m2 qc" eingebe kommt am ende diese fehlermeldung :
PHP Code:
QUEST blutstein
STATE 
start
WHEN
20095.chat ("Blutsteine")
must start with 'quest'
in_die_grotte.quest:35:Error occured on compile in_die_grotte.quest 
EDIT: hier die quest:
PHP Code:
 quest quest_in_die_grotte begin
     state start begin
         when 20095.chat
."blutsteine" begin
            local delay 
86400
            say_title
("Seon-Hae")
            if 
get_global_time() - pc.getqf("time") < delay and pc.getqf("time") != 0 then
                local zeit 
delay - (get_global_time() - pc.getqf("time"))
                
say("Du kannst dir noch keinen neuen Blutstein holen!")
                
say("Du musst noch "..zeit.." Sekunden warten!")
                return
            
end
            
if pc.get_level() < 75 then
                say
("Du bist zu schwach um dir einen Blutstein zu verdienen!")
                
say_reward("Komm wieder wenn du Level 75 erreicht hast!")
                return
            
end
            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_title
("Seon-Hae")
                
say("Nungut!")
                
say("Hier du bekommst jetzt eine Träne")
            else
                
say_title("Seon-Hae")
                
say("Eine gute Entscheidung!")
                
say("Auf Wiedersehn")
            
end
        end
    end
        end
        when 20095.chat
."Ich habe alles besorgt!" begin
            say_title
("Seon-Hae")
            
say("So du kriegst jetzt die Träne")    
                
pc.give_item2(30189,1)
                
say_title("Seon-Hae")
                
say("So")
                
say("Hier hast du Tränen von Baljit-Elvedi")
                
say("Gehe nun in den roten Wald")
                
say("Und suche die geheimnisvolle Stimme!")
                
say("Sie wird dir die Tränen zu einem Blutstropfen machen!")
                
setstate(blut)
            else
                
say_title("Seon-Hae")
                
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("trane"träne[r2][1], träne[r2][2], 68"")
        
end
        when info 
or button begin
            say_title
("Suche die Stimme")
            
say("Suche die geheimnisvolle Stimme im roten Wald!")
        
end
        when trane
.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_title("Geheimnissvolle Stimme")
                
say("Ich mache die Tränen von Baljit-Elvedi")
                
say("zu einem Blutstropfen")
                
say("...")
                
say("Hier bitte ein Blutstropfen!")
                
say_reward("Blutstropfen erhalten!")
                
setstate(stein)
            else
                
say_title("Geheimnissvolle Stimme")
                
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
            send_letter
("Zurück zu Seon Hae")
        
end
        when button 
or info begin
            say_title
("Zurück zu Seon Hae")
            
say("Gehe zu Seon Hae zurück und gib")
            
say("ihm den Blutstropfen!")
            
say()
        
end
        when 20095.chat
."Ich habe den Blutstropfen!" begin
            
if pc.count_item(30187) <= 0 then
                say_title
("Seon-Hae")
                
say("Du besitzt keinen Blutstropfen")
            else
                
pc.remove_item(30187,1)
                
pc.give_item2(30190,1)
                
say_title("Seon-Hae")
                
say("Gut gemacht!")
                
say("Hier hast du den Blutstein!")
                
say("Du hast ihn dir verdient!")
                
say_reward("Blutstein erhalten")
                
clear_letter()
                
pc.setqf("time",get_global_time())
                
setstate(start)
            
end
        end
    end
end 
ͺȺʂʞa is offline  
Old 03/13/2012, 16:50   #5085
 
.Shiraka™'s Avatar
 
elite*gold: 0
Join Date: Mar 2012
Posts: 130
Received Thanks: 42
@sonic: soweit ich jetzt sehe heißt deine datei "in_die_grotte.quest". muss der dateityp nicht lua sein ? oO also zb in_die_grotte.lua & dann in der quest_list bzw hongkong_list auch eingetragen sein
.Shiraka™ is offline  
Reply




All times are GMT +1. The time now is 04:16.


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.