Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 22: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 05/19/2015, 22:33   #11566
 
elite*gold: 0
Join Date: May 2015
Posts: 100
Received Thanks: 13
Quote:
Originally Posted by DYSKaito View Post
hab mir zwar nicht alles durchgelesen aber regel es per db am besten.
und wie regelt man sowas per db? Einzige andere Möglichkeit, die mir bekannt ist, wäre die mob_drop_item?
Lasse mich gern eines besseren belehren
.Philipp is offline  
Old 05/22/2015, 16:32   #11567
 
elite*gold: 0
Join Date: Apr 2015
Posts: 31
Received Thanks: 3
deleted
Bullrihgter1 is offline  
Old 05/22/2015, 18:24   #11568
 
Backxtar's Avatar
 
elite*gold: 0
Join Date: Feb 2015
Posts: 382
Received Thanks: 44
Heyjo habe momentan folgende Quest:


Die sieht InGame so aus:



ich möchte aber, dass dort statt nur Schrift auch das Icon des Items auftaucht wie hier beim Mülleimer:



Kann mir das jm in die Quest einfügen?
Backxtar is offline  
Old 05/22/2015, 19:02   #11569
 
elite*gold: 0
Join Date: Apr 2015
Posts: 31
Received Thanks: 3
PHP Code:
quest steinupp begin
    state start begin
        when 20364.take begin
            local itemvnum 
item.get_vnum()
            
local resultvnum itemvnum+100
            local uppchance 
25
            
if not steinupp.in_list(itemvnum, {283122833028331283322833328334283352833628337283382833928340283412834228343}) then
                
return chat("Ich kann leider nur Steine von +3 auf +4 verbessern ...")
            
end
            say
("Möchtest du "..item_name(itemvnum).." wirklich zu")
            
say(item_name(resultvnum).." verbessern?")
            
say_item_vnum(28312)
            
say("")
            
say("Der Versuch kann fehlschlagen!")
            if 
select("Fortfahren""Abbrechen") == 2 then return end
            pc
.remove_item(itemvnum)
            if 
steinupp.perc_chance(uppchancethen
                pc
.give_item2(resultvnum)
                
chat("Die Verbesserung war erfolgreich!")
            else
                
chat("Dein Stein wurde bei der Verbesserung zerstört ...")
            
end
        end
        
function in_list(compare, list)
            for 
_,v in pairs(list) do
                if 
compare == v then return true end
            end
            
return false
        end
        
function perc_chance(i)
            return 
math.random() <= (i/100)
        
end
    end
end 
Probier mal so
Bullrihgter1 is offline  
Old 05/22/2015, 19:26   #11570
 
Backxtar's Avatar
 
elite*gold: 0
Join Date: Feb 2015
Posts: 382
Received Thanks: 44
was is daran jetzt anders?^^
Backxtar is offline  
Old 05/22/2015, 20:02   #11571
 
elite*gold: 0
Join Date: Apr 2015
Posts: 234
Received Thanks: 54
PHP Code:
quest steinupp begin
    state start begin
        when 20364.take begin
            local itemvnum 
item.get_vnum()
            
local resultvnum itemvnum+100
            local uppchance 
25
            
if not steinupp.in_list(itemvnum, {283122833028331283322833328334283352833628337283382833928340283412834228343}) then
                
return chat("Ich kann leider nur Steine von +3 auf +4 verbessern ...")
            
end
            say
("Möchtest du "..item_name(itemvnum).." wirklich zu")
            
say(item_name(resultvnum).." verbessern?")
            
say("")
            
say("Der Versuch kann fehlschlagen!")
            if 
select("Fortfahren""Abbrechen") == 2 then return end
            pc
.remove_item(itemvnum)
            if 
steinupp.perc_chance(uppchancethen
                pc
.give_item2(resultvnum)
                
chat("Die Verbesserung war erfolgreich!")
            else
                
chat("Dein Stein wurde bei der Verbesserung zerstört ...")
            
end
        end
        
function in_list(compare, list)
            for 
_,v in pairs(list) do
                if 
compare == v then return true end
            end
            
return false
        end
        
function perc_chance(i)
            return 
math.random() <= (i/100)
        
end
    end
end 
So funktioniert es hab es bei mir getestet
#.TwoFace.# is offline  
Old 05/22/2015, 20:25   #11572
 
Backxtar's Avatar
 
elite*gold: 0
Join Date: Feb 2015
Posts: 382
Received Thanks: 44
Quote:
Originally Posted by #.TwoFace.# View Post
PHP Code:
quest steinupp begin
    state start begin
        when 20364.take begin
            local itemvnum 
item.get_vnum()
            
local resultvnum itemvnum+100
            local uppchance 
25
            
if not steinupp.in_list(itemvnum, {283122833028331283322833328334283352833628337283382833928340283412834228343}) then
                
return chat("Ich kann leider nur Steine von +3 auf +4 verbessern ...")
            
end
            say
("Möchtest du "..item_name(itemvnum).." wirklich zu")
            
say(item_name(resultvnum).." verbessern?")
            
say("")
            
say("Der Versuch kann fehlschlagen!")
            if 
select("Fortfahren""Abbrechen") == 2 then return end
            pc
.remove_item(itemvnum)
            if 
steinupp.perc_chance(uppchancethen
                pc
.give_item2(resultvnum)
                
chat("Die Verbesserung war erfolgreich!")
            else
                
chat("Dein Stein wurde bei der Verbesserung zerstört ...")
            
end
        end
        
function in_list(compare, list)
            for 
_,v in pairs(list) do
                if 
compare == v then return true end
            end
            
return false
        end
        
function perc_chance(i)
            return 
math.random() <= (i/100)
        
end
    end
end 
So funktioniert es hab es bei mir getestet
Es funktioniert bei mir auch, was ich will ist dass die Icons der beiden Items also des zu Uppenden und das was Rauskommt in der Quest angezeigt wird
Backxtar is offline  
Old 05/22/2015, 20:25   #11573
 
elite*gold: 5
Join Date: Mar 2015
Posts: 499
Received Thanks: 376
Quote:
Originally Posted by Bullrihgter1 View Post
PHP Code:
quest steinupp begin
    state start begin
        when 20364.take begin
            local itemvnum 
item.get_vnum()
            
local resultvnum itemvnum+100
            local uppchance 
25
            
if not steinupp.in_list(itemvnum, {283122833028331283322833328334283352833628337283382833928340283412834228343}) then
                
return chat("Ich kann leider nur Steine von +3 auf +4 verbessern ...")
            
end
            say
("Möchtest du "..item_name(itemvnum).." wirklich zu")
            
say(item_name(resultvnum).." verbessern?")
            
say_item_vnum(28312)
            
say("")
            
say("Der Versuch kann fehlschlagen!")
            if 
select("Fortfahren""Abbrechen") == 2 then return end
            pc
.remove_item(itemvnum)
            if 
steinupp.perc_chance(uppchancethen
                pc
.give_item2(resultvnum)
                
chat("Die Verbesserung war erfolgreich!")
            else
                
chat("Dein Stein wurde bei der Verbesserung zerstört ...")
            
end
        end
        
function in_list(compare, list)
            for 
_,v in pairs(list) do
                if 
compare == v then return true end
            end
            
return false
        end
        
function perc_chance(i)
            return 
math.random() <= (i/100)
        
end
    end
end 
Probier mal so
PHP Code:
quest steinupp begin
    state start begin
        when 20364.take begin
            local itemvnum 
item.get_vnum()
            
local resultvnum itemvnum+100
            local uppchance 
25
            
if not steinupp.in_list(itemvnum, {283122833028331283322833328334283352833628337283382833928340283412834228343}) then
                
return chat("Ich kann leider nur Steine von +3 auf +4 verbessern ...")
            
end
            say
("Möchtest du "..say_item_vnum(itemvnum).." wirklich zu")
            
say(say_item_vnum(resultvnum).." verbessern?")
            
say("")
            
say("Der Versuch kann fehlschlagen!")
            if 
select("Fortfahren""Abbrechen") == 2 then return end
            pc
.remove_item(itemvnum)
            if 
steinupp.perc_chance(uppchancethen
                pc
.give_item2(resultvnum)
                
chat("Die Verbesserung war erfolgreich!")
            else
                
chat("Dein Stein wurde bei der Verbesserung zerstört ...")
            
end
        end
        
function in_list(compare, list)
            for 
_,v in pairs(list) do
                if 
compare == v then return true end
            end
            
return false
        end
        
function perc_chance(i)
            return 
math.random() <= (i/100)
        
end
    end
end 
falsche stelle eingesetzt, so gehts.
KΛIƬӨ is offline  
Old 05/22/2015, 20:27   #11574
 
Backxtar's Avatar
 
elite*gold: 0
Join Date: Feb 2015
Posts: 382
Received Thanks: 44
Quote:
Originally Posted by DYSKaito View Post
PHP Code:
quest steinupp begin
    state start begin
        when 20364.take begin
            local itemvnum 
item.get_vnum()
            
local resultvnum itemvnum+100
            local uppchance 
25
            
if not steinupp.in_list(itemvnum, {283122833028331283322833328334283352833628337283382833928340283412834228343}) then
                
return chat("Ich kann leider nur Steine von +3 auf +4 verbessern ...")
            
end
            say
("Möchtest du "..say_item_vnum(itemvnum).." wirklich zu")
            
say(say_item_vnum(resultvnum).." verbessern?")
            
say("")
            
say("Der Versuch kann fehlschlagen!")
            if 
select("Fortfahren""Abbrechen") == 2 then return end
            pc
.remove_item(itemvnum)
            if 
steinupp.perc_chance(uppchancethen
                pc
.give_item2(resultvnum)
                
chat("Die Verbesserung war erfolgreich!")
            else
                
chat("Dein Stein wurde bei der Verbesserung zerstört ...")
            
end
        end
        
function in_list(compare, list)
            for 
_,v in pairs(list) do
                if 
compare == v then return true end
            end
            
return false
        end
        
function perc_chance(i)
            return 
math.random() <= (i/100)
        
end
    end
end 
falsche stelle eingesetzt, so gehts.
So hab ichs auch schon probiert, das kommt dabei raus ..
Backxtar is offline  
Old 05/22/2015, 20:31   #11575
 
elite*gold: 5
Join Date: Mar 2015
Posts: 499
Received Thanks: 376
Quote:
Originally Posted by Backxtar View Post
So hab ichs auch schon probiert, das kommt dabei raus ..
PHP Code:
quest steinupp begin
    state start begin
        when 20364.take begin
            local itemvnum 
item.get_vnum()
            
local resultvnum itemvnum+100
            local uppchance 
25
            
if not steinupp.in_list(itemvnum, {283122833028331283322833328334283352833628337283382833928340283412834228343}) then
                
return chat("Ich kann leider nur Steine von +3 auf +4 verbessern ...")
            
end
            say
("Möchtest du "..say_item_vnum(itemvnum).." wirklich zu")
            
wait()
            
say(say_item_vnum(resultvnum).." verbessern?")
            
wait()
            
say_reward("Der Versuch kann fehlschlagen!")
            if 
select("Fortfahren""Abbrechen") == 2 then return end
            pc
.remove_item(itemvnum)
            if 
steinupp.perc_chance(uppchancethen
                pc
.give_item2(resultvnum)
                
chat("Die Verbesserung war erfolgreich!")
            else
                
chat("Dein Stein wurde bei der Verbesserung zerstört ...")
            
end
        end
        
function in_list(compare, list)
            for 
_,v in pairs(list) do
                if 
compare == v then return true end
            end
            
return false
        end
        
function perc_chance(i)
            return 
math.random() <= (i/100)
        
end
    end
end 
probiers so, vielleicht buggen zwei say_item_vnum's
KΛIƬӨ is offline  
Old 05/22/2015, 21:26   #11576
 
Backxtar's Avatar
 
elite*gold: 0
Join Date: Feb 2015
Posts: 382
Received Thanks: 44
Quote:
Originally Posted by DYSKaito View Post
PHP Code:
quest steinupp begin
    state start begin
        when 20364.take begin
            local itemvnum 
item.get_vnum()
            
local resultvnum itemvnum+100
            local uppchance 
25
            
if not steinupp.in_list(itemvnum, {283122833028331283322833328334283352833628337283382833928340283412834228343}) then
                
return chat("Ich kann leider nur Steine von +3 auf +4 verbessern ...")
            
end
            say
("Möchtest du "..say_item_vnum(itemvnum).." wirklich zu")
            
wait()
            
say(say_item_vnum(resultvnum).." verbessern?")
            
wait()
            
say_reward("Der Versuch kann fehlschlagen!")
            if 
select("Fortfahren""Abbrechen") == 2 then return end
            pc
.remove_item(itemvnum)
            if 
steinupp.perc_chance(uppchancethen
                pc
.give_item2(resultvnum)
                
chat("Die Verbesserung war erfolgreich!")
            else
                
chat("Dein Stein wurde bei der Verbesserung zerstört ...")
            
end
        end
        
function in_list(compare, list)
            for 
_,v in pairs(list) do
                if 
compare == v then return true end
            end
            
return false
        end
        
function perc_chance(i)
            return 
math.random() <= (i/100)
        
end
    end
end 
probiers so, vielleicht buggen zwei say_item_vnum's
nope selbe problem immernoch..
Backxtar is offline  
Old 05/22/2015, 22:10   #11577

 
.yorliK's Avatar
 
elite*gold: 0
Join Date: Nov 2011
Posts: 1,448
Received Thanks: 1,258
Code:
quest steinupp begin
	state start begin
		when 20364.take begin
			local itemvnum = item.get_vnum()
			local resultvnum = itemvnum+100
			local uppchance = 25
			if not steinupp.in_list(itemvnum, {28312, 28330, 28331, 28332, 28333, 28334, 28335, 28336, 28337, 28338, 28339, 28340, 28341, 28342, 28343}) then
				return chat("Ich kann leider nur Steine von +3 auf +4 verbessern ...")
			end
			say("Möchtest du")
			say_item(item_name(itemvnum), itemvnum, "")
			say("wirklich zu")
			say_item(item_name(resultvnum), resultvnum, "")
			say("verbessern?")
			say("")
			say("Der Versuch kann fehlschlagen!")
			if select("Fortfahren", "Abbrechen") == 2 then return end
			pc.remove_item(itemvnum)
			if steinupp.perc_chance(uppchance) then
				pc.give_item2(resultvnum)
				chat("Die Verbesserung war erfolgreich!")
			else
				chat("Dein Stein wurde bei der Verbesserung zerstört ...")
			end
		end
		function in_list(compare, list)
			for _,v in pairs(list) do
				if compare == v then return true end
			end
			return false
		end
		function perc_chance(i)
			return math.random() <= (i/100)
		end
	end
end
.yorliK is offline  
Old 05/23/2015, 12:16   #11578
 
x"Kazuki's Avatar
 
elite*gold: 50
Join Date: Aug 2014
Posts: 508
Received Thanks: 201

Kann jemand mal schauen was dort nicht stimmt?
1. alle von Map1 (wo der NPC) sich befindet werden mit geportet.
2. Der NPC zum Starten des Runs wird nicht mit auf die neue Map geportet..


Mfg
x"Kazuki is offline  
Old 05/25/2015, 16:14   #11579
 
elite*gold: 0
Join Date: May 2010
Posts: 455
Received Thanks: 67
Hey wenn ich die Quest mein Pet gebe und den Rufe kriege ich zwar die Bonis, aber wenn ich den wegschicke zieht er diese nicht mehr ab.. so bekommt man bei Rufen und wegschicken mehrmals iwann 2 Mio TP..

Kann mir einer helfen?

Code:
quest azrael begin
	state start begin
		when 53006.use begin
			pc.setqf("lol",({1,0})[pc.getqf("lol")+1])
			if pc.getqf("lol") == 1 then
				affect.add_collect(apply.ATT_BONUS_TO_MONSTER,35,60*60*24*365*60)
				affect.add_collect(apply.MAX_HP,3500,60*60*24*365*60)
			elseif pc.getqf("lol") == 0 then
				affect.remove(apply.ATT_BONUS_TO_MONSTER)
				affect.remove(apply.MAX_HP)
			end
		end
	end
end
Shimao is offline  
Old 05/25/2015, 16:15   #11580

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Quote:
Originally Posted by Shimao View Post
Hey wenn ich die Quest mein Pet gebe und den Rufe kriege ich zwar die Bonis, aber wenn ich den wegschicke zieht er diese nicht mehr ab.. so bekommt man bei Rufen und wegschicken mehrmals iwann 2 Mio TP..

Kann mir einer helfen?

Code:
quest azrael begin
	state start begin
		when 53006.use begin
			pc.setqf("lol",({1,0})[pc.getqf("lol")+1])
			if pc.getqf("lol") == 1 then
				affect.add_collect(apply.ATT_BONUS_TO_MONSTER,35,60*60*24*365*60)
				affect.add_collect(apply.MAX_HP,3500,60*60*24*365*60)
			elseif pc.getqf("lol") == 0 then
				affect.remove(apply.ATT_BONUS_TO_MONSTER)
				affect.remove(apply.MAX_HP)
			end
		end
	end
end
du musst auch angeben wie viel abgezogen werden soll
rollback is offline  
Reply




All times are GMT +2. The time now is 22:14.


Powered by vBulletin®
Copyright ©2000 - 2024, 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 ©2024 elitepvpers All Rights Reserved.