Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 09:26

  • 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/2015, 17:53   #11176
 
elite*gold: 0
Join Date: Feb 2015
Posts: 213
Received Thanks: 75
PHP Code:
quest pvp begin 
    state start begin 
        when login 
or levelup with pc.get_level() >= 75 and pc.getqf("level") == 75 begin
            say
("Herzlichen Glückwunsch!")
            
say("Du hast das Level 75 erreicht ,")
            
say("Ab jetzt wirst du für das töten eines Spielers")
            
say("aus dem anderen Reich belohnt!")
            
say("")
            
say("Hier die Bonis die du erhälst:")
            
say_reward("50 Spieler getoetet = 10% Angriffsgeschwindigkeit")
            
say_reward("100 Spieler getoetet = 10% TP-Regeneration")
            
say_reward("200 Spieler getoetet = 5% Verteidigung gegen alle Rassen")
            
say_reward("500 Spieler getoetet = 10% Verteidigung gegen alle Rassen")
            
pc.setqf("level"1)
        
end
        when kill with npc
.is_pc() begin
            
if get_time() < pc.getqf("kill_time"then
                chat
("Die 2 Minuten sind derzeit noch nicht vergangen")
                
chat("Du erhielst keinen Punkt")
                return
            
end
            chat
("Du hast einen Punkt erhalten.")
            
chat("Einen weiteren Punkt erhaelst du in erst 15 Sekunden.")
            
chat("Derzeit besitz du "..pc.getqf("kill_punkte").." Punkt(e)")
            
pc.setqf("kill_punkte"pc.getqf("kill_punkte")+1)
            
pc.setqf("kill_time"get_time() + 5*3)
            if 
pc.getqf("kill_punkte") == 50 then
                affect
.add_collect(apply.ATT_SPEED,10,60*60*24*365*60)
                
say("Du hast soeben 50 Leute getoetet")
                
say("Dafuer kriegst du 10% Angriffsgeschwindigkeit!")
            elseif 
pc.getqf("kill_punkte") == 100 then
                affect
.add_collect(apply.HP_REGEN,10,60*60*24*365*60)
                
say("Du hast soeben 100 Leute getoetet")
                
say("Dafuer hast du 10% TP-Regeneration!")
            elseif 
pc.getqf("kill_punkte") == 200 then
                affect
.add_collect(apply.RESIST_ASSASSIN,5,60*60*24*365*60)
                
affect.add_collect(apply.RESIST_SURA,5,60*60*24*365*60)
                
affect.add_collect(apply.RESIST_SHAMAN,5,60*60*24*365*60)
                
affect.add_collect(WARRIOR,5,60*60*24*365*60)
                
say("Du hast soeben 200 Leute getoetet")
                
say("Dafuer kriegst du 5% Verteidigung gegen alle Rassen!")
            elseif 
pc.getqf("kill_punkte") == 500 then
                affect
.add_collect(apply.RESIST_ASSASSIN,10,60*60*24*365*60)
                
affect.add_collect(apply.RESIST_SURA,10,60*60*24*365*60)
                
affect.add_collect(apply.RESIST_SHAMAN,10,60*60*24*365*60)
                
affect.add_collect(WARRIOR,10,60*60*24*365*60)
                
say("Du hast soeben 500 Leute getoetet")
                
say("Dafuer kriegst du nochmal 10% Verteidigung gegen alle Rassen!")
                
say("")
                
say("Du hast jetzt durch die PvP-Quest folgende Bonis erhalten:")
                
say("10% Angriffsgeschwindigkeit")
                
say("10% TP-Regeneration")
                
say("15% Verteidigung gegen alle Rassen")
                
say("")
                
say("Das Shining2-Team wünscht dir nun weiterhin viel Spaß.")
            
end
        end
    end
end 
Die Quest wird fehlerhaft in Putty angezeigt nach dem reloaden, weiß jemand weiter?
.Mosh36 is offline  
Old 03/12/2015, 19:07   #11177
wild wild son




 
Nick's Avatar
 
elite*gold: 0
Join Date: Feb 2011
Posts: 5,996
Received Thanks: 3,391
Quote:
Originally Posted by .Mosh36 View Post


Die Quest wird fehlerhaft in Putty angezeigt nach dem reloaden, weiß jemand weiter?
Die Quest dürfte in der Form durchaus durch den Quest-Compiler rennen, auf dem Screen aus deinem vorigen Thema lässt sich auch lediglich der gewöhnliche Output erkennen. Die Quest beinhaltet allerdings ein paar logische Fehler.


lg
Nick is offline  
Thanks
1 User
Old 03/12/2015, 20:17   #11178

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
So würden die kills schon ab lv1 zählen
rollback is offline  
Thanks
1 User
Old 03/13/2015, 17:03   #11179
 
elite*gold: 0
Join Date: Feb 2015
Posts: 213
Received Thanks: 75
Die Quest funktioniert immernoch nicht ..



Das kommt jetzt in Putty
.Mosh36 is offline  
Old 03/13/2015, 18:13   #11180
 
Dyshaxo's Avatar
 
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
Quote:
Originally Posted by .Mosh36 View Post
Die Quest funktioniert immernoch nicht ..



Das kommt jetzt in Putty
Versuch' die Quest mal like this:

Code:
quest pvp begin 
	state start begin 
		when login or levelup with pc.get_level() >= 75 begin
			set_state(q_pvp_run)
		end
	end
	
	state q_pvp_run begin
		when letter begin
			send_letter("Level 75+ PvP-Quest")
		end
		
		when button or info begin
			say_title("Du hast Level 75 erreicht!")
			say("")
			say("Von nun an wirst du für das töten von")
			say("Spielern eines anderen Reiches belohnt.")
			say("")
			say("Dafür erhälst du folgende Attribute:")
			say_reward("50 Spieler getoetet => 10% Angriffsgeschwindigkeit")
			say_reward("100 Spieler getoetet => 10% TP-Regeneration")
			say_reward("200 Spieler getoetet => 5% Verteidigung gegen alle Rassen")
			say_reward("500 Spieler getoetet => 10% Verteidigung gegen alle Rassen")
		end

		when kill with npc.is_pc() and not npc_is_same_empire() begin
			if get_time() < pc.getf("pvp", "kill_time") then chat("Die 15 Sekunden sind derzeit noch nicht vergangen, keinen Punkt erhalten.") return end
			pc.setf("pvp", "kill_point", pc.getf("pvp", "kill_point") + 1)
			chat("Du hast einen Kill-Punkt erhalten.")
			chat("In 15 Sekunden kannst du den nächsten Punkt bekommen.")
			chat("Derzeit besitz du %d Punkt(e)", pc.getf("pvp", "kill_point"))
			pc.setf("pvp", "kill_time", get_time() + 15)

			if pc.getf("pvp", "kill_point") == 50 then
				affect.add_collect(apply.ATT_SPEED,10,60*60*24*365*60)
				say("Du hast soeben den 50. Spieler getötet")
				say("Dafür erhälst du permanent +10% Angriffsgeschwindigkeit!")
			elseif pc.getf("pvp", "kill_point") == 100 then
				affect.add_collect(apply.HP_REGEN,10,60*60*24*365*60)
				say("Du hast soeben den 100. Spieler getötet")
				say("Dafür erhälst du permanent +10% TP-Regeneration!")
			elseif pc.getf("pvp", "kill_point") == 200 then
				affect.add_collect(apply.RESIST_ASSASSIN,5,60*60*24*365*60)
				affect.add_collect(apply.RESIST_SURA,5,60*60*24*365*60)
				affect.add_collect(apply.RESIST_SHAMAN,5,60*60*24*365*60)
				affect.add_collect(WARRIOR,5,60*60*24*365*60)
				say("Du hast soeben den 200. Spieler getötet")
				say("Dafür erhälst du permanent +5% Verteidigung gegen alle Rassen!")
			elseif pc.getf("pvp", "kill_point") == 500 then
				affect.add_collect(apply.RESIST_ASSASSIN,10,60*60*24*365*60)
				affect.add_collect(apply.RESIST_SURA,10,60*60*24*365*60)
				affect.add_collect(apply.RESIST_SHAMAN,10,60*60*24*365*60)
				affect.add_collect(WARRIOR,10,60*60*24*365*60)
				say_title("Aufgabe Abgeschlossen!")
				say("")
				say("Du hast soeben den 500. Spieler getötet")
				say("Dafür erhälst du permanent +10% Verteidigung gegen alle Rassen!")
				say("")
				say("Die Aufgabe wurde Abgeschlossen.")
				say("Durch die Aufgabe hat dein Character permanent")
				say("folgende Attribute erhalten:")
				say_reward("10% Angriffsgeschwindigkeit")
				say_reward("10% TP-Regeneration")
				say_reward("15% Verteidigung gegen alle Rassen")
				say("")
				say_reward("Das Shining2-Team wünscht dir nun weiterhin viel Spaß.")
				wait()
				set_state(__COMPLETE__)
			end
		end
	end
	
	state __COMPLETE__ begin
	end
end
Dyshaxo is offline  
Thanks
1 User
Old 03/14/2015, 10:18   #11181
 
elite*gold: 0
Join Date: Feb 2015
Posts: 213
Received Thanks: 75
Jetzt kommt:

.Mosh36 is offline  
Old 03/15/2015, 01:07   #11182
wild wild son




 
Nick's Avatar
 
elite*gold: 0
Join Date: Feb 2011
Posts: 5,996
Received Thanks: 3,391
Quote:
Originally Posted by .Mosh36 View Post
Die Quest funktioniert immernoch nicht ..



Das kommt jetzt in Putty
Wie bereits erwähnt, ist dies der gewöhnliche Text, der während dem Kompilieren ausgegeben wird. Ich habe meine überarbeitete Version soeben durch den Compiler gejagt und keinerlei Fehler verzeichnen können. Dasselbe betrifft im Übrigen auch Dyshaxo's Quest, wobei du vermutlich nicht den kompletten Inhalt kopiert hast.

lg
Nick is offline  
Old 03/15/2015, 16:08   #11183
 
SolWayne's Avatar
 
elite*gold: 30
Join Date: Feb 2015
Posts: 362
Received Thanks: 58
So kleines problem ^^ ich möchte das folgende quest erscheint bei lvl 90 oder höher habe es eig so geschrieben das es schon gehen soll aber sie kommt nicht könnt ihr mal schauen

PHP Code:
quest user begin 
    state start begin
        when level with pc
.get_level() == 90 begin
            send_letter
("90er Map's"
        
end
            when button 
or info begin
                say
("Du willst dich also Teleportieren?")
                
say("")
                
local j select("Ja","Nein")
                if 
== 2 then
                    
return
                
end
                
if == 1 then
                    say_reward
("Wo möchtest du hin:")
                    
local k select("Dawnmistwood","Mt Thunder","Cape Dragon Head","Bay Black Sand","Nirgens")
                    if 
== 5 then
                        
return
                    
end
                    
if == 1 then
                        pc
.warp(1177616640)
                    
end
                    
if == 2 then
                        pc
.warp(1126415104)
                    
end
                    
if == 3 then
                        pc
.warp (1177616640)
                    if 
== 4 then
                        pc
.warp (1049615104)
                    
end
                end    
            end
        end
    end
end 
SolWayne is offline  
Old 03/15/2015, 16:40   #11184

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
When Level begin? Was soll das sein
rollback is offline  
Old 03/15/2015, 16:40   #11185
 
SolWayne's Avatar
 
elite*gold: 30
Join Date: Feb 2015
Posts: 362
Received Thanks: 58
Neu :

Hab grade paar sachen dran gemacht

PHP Code:
quest user begin 
    state start begin
        when login 
or levelup with pc.get_level() >= 90 begin
            send_letter
("90er Map's"
        
end
            when button 
or info begin
                say
("Du willst dich also Teleportieren?")
                
say("")
                
local j select("Ja","Nein")
                if 
== 2 then
                    
return
                
end
                
if == 1 then
                    say_reward
("Wo möchtest du hin:")
                    
local k select("Dawnmistwood","Mt Thunder","Cape Dragon Head","Bay Black Sand","Nirgens")
                    if 
== 5 then
                        
return
                    
end
                    
if == 1 then
                        pc
.warp(1177616640)
                    
end
                    
if == 2 then
                        pc
.warp(1126415104)
                    
end
                    
if == 3 then
                        pc
.warp (1177616640)
                    if 
== 4 then
                        pc
.warp (1049615104)
                    
end
                end    
            end
        end
    end
    state __complete begin 
    end 
end 
reloaden geht immer noch aber quest immer noch nicht zu sehen

Quote:
Originally Posted by definitely not Sensenmann View Post
When Level begin? Was soll das sein
sry war nicht extra bin etwas dicht ^^
SolWayne is offline  
Old 03/15/2015, 16:46   #11186
 
elite*gold: 0
Join Date: Feb 2015
Posts: 156
Received Thanks: 73
Quote:
Originally Posted by SolWayne View Post
Neu :

Hab grade paar sachen dran gemacht

PHP Code:
quest user begin 
    state start begin
        when login 
or levelup with pc.get_level() >= 90 begin
            send_letter
("90er Map's"
        
end
            when button 
or info begin
                say
("Du willst dich also Teleportieren?")
                
say("")
                
local j select("Ja","Nein")
                if 
== 2 then
                    
return
                
end
                
if == 1 then
                    say_reward
("Wo möchtest du hin:")
                    
local k select("Dawnmistwood","Mt Thunder","Cape Dragon Head","Bay Black Sand","Nirgens")
                    if 
== 5 then
                        
return
                    
end
                    
if == 1 then
                        pc
.warp(1177616640)
                    
end
                    
if == 2 then
                        pc
.warp(1126415104)
                    
end
                    
if == 3 then
                        pc
.warp (1177616640)
                    if 
== 4 then
                        pc
.warp (1049615104)
                    
end
                end    
            end
        end
    end
    state __complete begin 
    end 
end 
reloaden geht immer noch aber quest immer noch nicht zu sehen



sry war nicht extra bin etwas dicht ^^
Code:
quest user begin 
    state start begin
        when login or levelup with pc.get_level() >= 90 begin
            send_letter("90er Map's") 
        end
        when button or info begin
			say("Du willst dich also Teleportieren?")
            say("")
            local j = select("Ja","Nein")
            if j == 2 then
               return
            end
            if j == 1 then
				say_reward("Wo möchtest du hin:")
                local k = select("Dawnmistwood","Mt Thunder","Cape Dragon Head","Bay Black Sand","Nirgens")
                if k == 5 then
					return
                end
                elseif k == 1 then
					pc.warp(11776, 16640)
                end
				elseif k == 2 then
					pc.warp(11264, 15104)
				end
				elseif k == 3 then
					pc.warp (11776, 16640)
				end
				elseif k == 4 then
					pc.warp (10496, 15104)
                end    
            end
        end
		setstate(__complete)
    end
    state __complete begin 
    end 
end

btw du kannst alles viel kürzer schreiben.
[Kaito] is offline  
Thanks
1 User
Old 03/15/2015, 16:53   #11187
 
SolWayne's Avatar
 
elite*gold: 30
Join Date: Feb 2015
Posts: 362
Received Thanks: 58
Quote:
Originally Posted by [Kaito] View Post
Code:
quest user begin 
    state start begin
        when login or levelup with pc.get_level() >= 90 begin
            send_letter("90er Map's") 
        end
        when button or info begin
			say("Du willst dich also Teleportieren?")
            say("")
            local j = select("Ja","Nein")
            if j == 2 then
               return
            end
            if j == 1 then
				say_reward("Wo möchtest du hin:")
                local k = select("Dawnmistwood","Mt Thunder","Cape Dragon Head","Bay Black Sand","Nirgens")
                if k == 5 then
					return
                end
                elseif k == 1 then
					pc.warp(11776, 16640)
                end
				elseif k == 2 then
					pc.warp(11264, 15104)
				end
				elseif k == 3 then
					pc.warp (11776, 16640)
				end
				elseif k == 4 then
					pc.warp (10496, 15104)
                end    
            end
        end
		setstate(__complete)
    end
    state __complete begin 
    end 
end

btw du kannst alles viel kürzer schreiben.
hab deine reingemacht

PHP Code:
http://prntscr.com/6h3srs 
SolWayne is offline  
Old 03/15/2015, 17:02   #11188
 
elite*gold: 0
Join Date: Feb 2015
Posts: 156
Received Thanks: 73
Quote:
Originally Posted by SolWayne View Post
hab deine reingemacht

PHP Code:
http://prntscr.com/6h3srs 
Code:
quest neugeschriebenvonkaito begin
	state start begin
		when login or levelup with pc.get_level() >= 90 begin
			send_letter("90er Maps")
		end
		when button or info begin
			say_title("90er Maps")
			say("")
			say_reward("Du willst dich telepotieren?")
			if select ("Ja","Nein") == 2 then return end 
			say_reward("Wo möchtest du hin:")
			local f = select("Dawnmistwood","Mt Thunder","Cape Dragon Head","Bay Black Sand","Nirgens")
			if f == 5 then return
			elseif f == 1 then
				pc.warp(ka,ka)
			elseif f == 2 then 
				pc.warp(ka,ka)
			elseif f == 3 then 
				pc.warp(ka,ka)
			elseif f == 4 then
				pc.warp(ka,ka)
			end
		end
	end
end
So müsste es gehen =)
[Kaito] is offline  
Old 03/15/2015, 17:08   #11189
wild wild son




 
Nick's Avatar
 
elite*gold: 0
Join Date: Feb 2011
Posts: 5,996
Received Thanks: 3,391
Quote:
Originally Posted by SolWayne View Post
hab deine reingemacht

PHP Code:
http://prntscr.com/6h3srs 
Die Levelabfrage beim Button nicht vergessen.

PHP Code:
quest user begin 
    state start begin
        when login 
or levelup with pc.get_level() >= 90 begin
            send_letter
("90er Map's"
        
end
        when button 
or info with pc.get_level() >= 90 begin
            say
("Du willst dich also Teleportieren?")
            
say("")
            if 
select("Ja","Nein") == 2 then return end
            say_reward
("Wo möchtest du hin:")
            
local k select("Dawnmistwood","Mt Thunder","Cape Dragon Head","Bay Black Sand","Nirgens")
            if 
== 1 then
                pc
.warp(1177616640)
            elseif 
== 2 then
                pc
.warp(1126415104)
            elseif 
== 3 then
                pc
.warp (1177616640)
            elseif 
== 4 then
                pc
.warp (1049615104)
            else return 
end 
        end
    end
end 
lg
Nick is offline  
Old 03/15/2015, 17:17   #11190

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Code:
quest user begin 
	state start begin
		when login or levelup with pc.get_level() >= 90 begin
			send_letter("90er Map's") 
		end
		when button or info with pc.get_level() >= 90 begin
			say("Du willst dich also Teleportieren?")
			say("")
			if select("Ja", "Nein") == 2 then return end
			say_reward("Wo möchtest du hin:")
			local k = select("Dawnmistwood","Mt Thunder","Cape Dragon Head","Bay Black Sand","Nirgens")
			if k == 5 then
				return
			elseif k == 1 then
				pc.warp(11776, 16640)
			elseif k == 2 then
				pc.warp(11264, 15104)
			elseif k == 3 then
				pc.warp(11776, 16640)
			elseif k == 4 then
				pc.warp(10496, 15104)
			end
		end
	end
end
rollback is offline  
Reply




All times are GMT +1. The time now is 09:29.


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