Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 06:25

  • 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 02/18/2015, 16:15   #11101
 
.Various's Avatar
 
elite*gold: 35
Join Date: Aug 2014
Posts: 336
Received Thanks: 267
Quote:
Originally Posted by C-3PO. View Post
Nabend Epvp. Hier mein Fehler:

es geht um den mysql_select Befehl, hier die funktion:

und hier mal die config, falls die benötigt wird:

Die Config ist komplett richtig, Server startet, und quests gehen auch nur sobald ich eine quest mit dem mysql_select befehl ausführe ändert er nichts in der db, hier ein Beispiel:


Funktioniert leider nicht, woran liegt das?
#immernoch
.Various is offline  
Old 02/19/2015, 11:31   #11102
 
DerForenLeser's Avatar
 
elite*gold: 40
Join Date: Nov 2009
Posts: 1,159
Received Thanks: 442
Quote:
Originally Posted by C-3PO. View Post
#immernoch
Ich weiß es nicht genau, aber könnte es eventuell auch möglich sein, dass es wie bei den DR Gutscheinen noch in der Quest eine Abfrage geben muss mit der Connection zur Datenbank?
DerForenLeser is offline  
Old 02/19/2015, 15:34   #11103
 
WyppyOne's Avatar
 
elite*gold: 120
Join Date: Jul 2012
Posts: 219
Received Thanks: 6
Smile

Do you know why my quest doesn't work ? I know you can simply say pc.teleport(name) without game.set_flag ... but i want to make a bigger system

PHP Code:
quest bind begin
    state start begin
        when 40003.
use with game.get_event_flag(nume0begin
            say_title
("Bind System:")
            
say("Do you want to have a friend ?")
            
local a select("Yes","No!")
                if 
== 1 then
                    say_title
("Bind System:")
                    
say_reward("Tell me your friend's name")
                    
local nume pc.get_name()
                    
local name input()
                        if 
pc.get_level() < 35 then
                            say_title
("Bind system:")
                            
say("You can't use this item")
                        else
                            
game.set_event_flag(nume1)
                            
game.set_event_flag(name1)
                            
pc.remove_item(400031)
                        
end
                end
        end
        when 40003.
use with game.get_event_flag(nume1begin
            say_title
("Bind System")
            
say("Do you want to teleport at your friend ?")
            
local b select("Yes","No!")
                if 
== 1 then
                    pc
.teleport(name)
                
end
        end
    end
end 
WyppyOne is offline  
Old 02/19/2015, 17:30   #11104

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Quote:
Originally Posted by WyppyOne View Post
Do you know why my quest doesn't work ? I know you can simply say pc.teleport(name) without game.set_flag ... but i want to make a bigger system

PHP Code:
quest bind begin
    state start begin
        when 40003.
use with game.get_event_flag(nume0begin
            say_title
("Bind System:")
            
say("Do you want to have a friend ?")
            
local a select("Yes","No!")
                if 
== 1 then
                    say_title
("Bind System:")
                    
say_reward("Tell me your friend's name")
                    
local nume pc.get_name()
                    
local name input()
                        if 
pc.get_level() < 35 then
                            say_title
("Bind system:")
                            
say("You can't use this item")
                        else
                            
game.set_event_flag(nume1)
                            
game.set_event_flag(name1)
                            
pc.remove_item(400031)
                        
end
                end
        end
        when 40003.
use with game.get_event_flag(nume1begin
            say_title
("Bind System")
            
say("Do you want to teleport at your friend ?")
            
local b select("Yes","No!")
                if 
== 1 then
                    pc
.teleport(name)
                
end
        end
    end
end 
PHP Code:
when 40003.use with game.get_event_flag(nume1begin 
get: (name) == value / != value / ...
set: (name, value)
rollback is offline  
Old 02/19/2015, 21:11   #11105
 
WyppyOne's Avatar
 
elite*gold: 120
Join Date: Jul 2012
Posts: 219
Received Thanks: 6
Quote:
Originally Posted by [Sensenmann] View Post
PHP Code:
when 40003.use with game.get_event_flag(nume1begin 
get: (name) == value / != value / ...
set: (name, value)
I dont understand,can you modify it ?
WyppyOne is offline  
Old 02/19/2015, 21:12   #11106

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Quote:
Originally Posted by WyppyOne View Post
I dont understand,can you modify it ?
PHP Code:
quest bind begin
    state start begin
        when 40003.
use with game.get_event_flag(nume) == 0 begin
            say_title
("Bind System:")
            
say("Do you want to have a friend ?")
            
local a select("Yes","No!")
                if 
== 1 then
                    say_title
("Bind System:")
                    
say_reward("Tell me your friend's name")
                    
local nume pc.get_name()
                    
local name input()
                        if 
pc.get_level() < 35 then
                            say_title
("Bind system:")
                            
say("You can't use this item")
                        else
                            
game.set_event_flag(nume1)
                            
game.set_event_flag(name1)
                            
pc.remove_item(400031)
                        
end
                end
        end
        when 40003.
use with game.get_event_flag(nume) == 1 begin
            say_title
("Bind System")
            
say("Do you want to teleport at your friend ?")
            
local b select("Yes","No!")
                if 
== 1 then
                    pc
.teleport(name)
                
end
        end
    end
end 
rollback is offline  
Thanks
1 User
Old 02/19/2015, 21:32   #11107
 
WyppyOne's Avatar
 
elite*gold: 120
Join Date: Jul 2012
Posts: 219
Received Thanks: 6
Smile

Quote:
Originally Posted by [Sensenmann] View Post
PHP Code:
quest bind begin
    state start begin
        when 40003.
use with game.get_event_flag(nume) == 0 begin
            say_title
("Bind System:")
            
say("Do you want to have a friend ?")
            
local a select("Yes","No!")
                if 
== 1 then
                    say_title
("Bind System:")
                    
say_reward("Tell me your friend's name")
                    
local nume pc.get_name()
                    
local name input()
                        if 
pc.get_level() < 35 then
                            say_title
("Bind system:")
                            
say("You can't use this item")
                        else
                            
game.set_event_flag(nume1)
                            
game.set_event_flag(name1)
                            
pc.remove_item(400031)
                        
end
                end
        end
        when 40003.
use with game.get_event_flag(nume) == 1 begin
            say_title
("Bind System")
            
say("Do you want to teleport at your friend ?")
            
local b select("Yes","No!")
                if 
== 1 then
                    pc
.teleport(name)
                
end
        end
    end
end 
Ty but the quest doesn't work,it never goes out of first when,when i click it always ask me if i want a friend xD And you can edit it that you can add your friend and teleport at him if he is online ?
------
Asks that if you want to make them it would be great :
--If you and your friend are in same map ( get index map ) receive a bonus
--When your friend or you log out the bonus dissapear
WyppyOne is offline  
Old 02/21/2015, 14:26   #11108
 
elite*gold: 0
Join Date: Jun 2013
Posts: 70
Received Thanks: 12
Quest funkt nicht

Die Quest funktzuniert nicht aus welchen grund auch es soll ein auftrag geben 2 metin steine zu killen also ab level 5 metin der gier 10 x und metin der schlacht 10x als belohnung soll man 1x militär pferdebuch bekommen pferd level 30 und 2kk yang Irgendwie klappt die Quest nicht


PHP Code:
quest Metin_steine_kill_quest begin  
    state start begin  
        when login 
or levelup with pc.get_level() == 5 begin  
            set_state
(metin_quest)  
        
end  
    end  
      
    state metin_quest begin  
        when letter begin  
            send_letter
("MetinAuftrag")  
        
end  
state metinkill begin  
        when letter begin  
            send_letter
("Zerstoere die Metinsteine")  
        
when info or button begin  
        say_title
("Metinauftrag")  
        
say("Sei gegrüßt Fremder!")  
        
say("Ich bräuchte dringend deine Hilfe.")  
        
say("Kannst du für mich die Metin Steine zerstören?.")  
        
say("Eure Aufgabe:")  
        
say("")  
        
say("Töte einen Metin der Schlacht, Metin der Gier")  
        
say("Die Metine findest du auf der Map1")  
        
pc.setqf(state1)  
         
q.set_counter("Metin der Schlacht"10
        
pc.setqf(state2
         
q.set_counter("Metin der Gier"10)          
    
end  
state state1 begin  
        when letter begin  
            send_letter
("Zerstoere die Metinsteine")  
        
end  
        when button 
or info begin  
            say_title
("Auftrag: Metin der Gier")  
            
say("Anzahl der Zerstoerten Metins")  
            
say_reward("Metinsteine: "..pc.qetgf(state1).."")  
        
end 
state state2 begin 
        when button 
or info begin  
            say_title
("Auftrag:Metin der Schlacht")  
            
say("Anzahl der Zerstoerten Metins")  
            
say_reward("Metinsteine: "..pc.qetgf(state2).."")  
        
end 
    when 8003.kill begin  
local count 
pc.getqf(state1
if 
count <= 10 then  
pc
.setqf(state1)  
q.set_counter("Metin der Schlacht"count
if 
count == 0 then  
end  
when 8004.kill begin  
local count 
pc.getqf(state2
if 
count <= 10 then  
pc
.setqf(state2)  
q.set_counter("Metin der Gier"count1)  
end  
if count == 0 then 
say_title
("Metinauftrag Abgeschlossen!")  
say("")  
say("")  
say("Gut du hast es geschafft.")  
say("Hier deine Belohnung")  
say_reward("[1] [Millitär Pferdebuch, Pferdelevel 30] [1kk yang]")  
pc.give_item2([50053], [1])  
horse.get_level()>=30 
pc
.give_exp2([0])  
pc.get_money([100000000]) 
clear_letter()  
set_state(__COMPLETE__)  

end  
end  
end 
Bullrihgter is offline  
Old 02/21/2015, 14:37   #11109

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Quote:
Originally Posted by Bullrihgter View Post
Die Quest funktzuniert nicht aus welchen grund auch es soll ein auftrag geben 2 metin steine zu killen also ab level 5 metin der gier 10 x und metin der schlacht 10x als belohnung soll man 1x militär pferdebuch bekommen pferd level 30 und 2kk yang Irgendwie klappt die Quest nicht


PHP Code:
quest Metin_steine_kill_quest begin  
    state start begin  
        when login 
or levelup with pc.get_level() == 5 begin  
            set_state
(metin_quest)  
        
end  
    end  
      
    state metin_quest begin  
        when letter begin  
            send_letter
("MetinAuftrag")  
        
end  
state metinkill begin  
        when letter begin  
            send_letter
("Zerstoere die Metinsteine")  
        
when info or button begin  
        say_title
("Metinauftrag")  
        
say("Sei gegrüßt Fremder!")  
        
say("Ich bräuchte dringend deine Hilfe.")  
        
say("Kannst du für mich die Metin Steine zerstören?.")  
        
say("Eure Aufgabe:")  
        
say("")  
        
say("Töte einen Metin der Schlacht, Metin der Gier")  
        
say("Die Metine findest du auf der Map1")  
        
pc.setqf(state1)  
         
q.set_counter("Metin der Schlacht"10
        
pc.setqf(state2
         
q.set_counter("Metin der Gier"10)          
    
end  
state state1 begin  
        when letter begin  
            send_letter
("Zerstoere die Metinsteine")  
        
end  
        when button 
or info begin  
            say_title
("Auftrag: Metin der Gier")  
            
say("Anzahl der Zerstoerten Metins")  
            
say_reward("Metinsteine: "..pc.qetgf(state1).."")  
        
end 
state state2 begin 
        when button 
or info begin  
            say_title
("Auftrag:Metin der Schlacht")  
            
say("Anzahl der Zerstoerten Metins")  
            
say_reward("Metinsteine: "..pc.qetgf(state2).."")  
        
end 
    when 8003.kill begin  
local count 
pc.getqf(state1
if 
count <= 10 then  
pc
.setqf(state1)  
q.set_counter("Metin der Schlacht"count
if 
count == 0 then  
end  
when 8004.kill begin  
local count 
pc.getqf(state2
if 
count <= 10 then  
pc
.setqf(state2)  
q.set_counter("Metin der Gier"count1)  
end  
if count == 0 then 
say_title
("Metinauftrag Abgeschlossen!")  
say("")  
say("")  
say("Gut du hast es geschafft.")  
say("Hier deine Belohnung")  
say_reward("[1] [Millitär Pferdebuch, Pferdelevel 30] [1kk yang]")  
pc.give_item2([50053], [1])  
horse.get_level()>=30 
pc
.give_exp2([0])  
pc.get_money([100000000]) 
clear_letter()  
set_state(__COMPLETE__)  

end  
end  
end 
PHP Code:
when login or levelup with pc.get_level() == 5 begin   
            set_state
(metin_quest)   
        
end   
    end   
       
    state metin_quest begin   
        when letter begin   
            send_letter
("MetinAuftrag")   
        
end 
Du setzt den Spieler in die state 'metin_quest', sendest in der state ein letter aber machst mit dem letter überhaupt nichts. Kein wunder, dass da nichts passiert
rollback is offline  
Old 02/21/2015, 16:50   #11110
 
.Various's Avatar
 
elite*gold: 35
Join Date: Aug 2014
Posts: 336
Received Thanks: 267
Hier eine Funktion die einfach nur einen bg setzen soll.
Code:
function set_background(name)
	say_size(256, 323)
	setbgimage('roll.tga')
	addimage(20,12,name..'.tga')
end
Jedoch funktioniert sie nicht. Liegt wahrscheinlich daran das name ein string ist aber wie schreibe ich das dann?
.Various is offline  
Old 02/21/2015, 17:00   #11111
 
Dyshaxo's Avatar
 
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
#Edt: nvm, gefunden
Dyshaxo is offline  
Old 02/22/2015, 00:19   #11112
 
WyppyOne's Avatar
 
elite*gold: 120
Join Date: Jul 2012
Posts: 219
Received Thanks: 6
I dont understant why this quest doesn't work ... i know,is a bullshit but ...

PHP Code:
quest daily begin
    state start begin
        when login with get_global_time
() – pc.getqf("last_mission") >= 24*60*60 begin
            send_letter
("Misiunea Zilnica")
            
say_title("Misiune zilnica")
            
say("Esti insarcinat sa omori 10 ursi. ")
            
say("Vei primi o rasplata aleatorie.")
            
say_important("Itemul special din saptamana asta este : ")
            
pc.setqf("state"10)
            
q.set_counter("Ursi ramasi: "10)
        
end
        when button 
or info begin
            say
("¿Crezi ca esti cel mai bun din regat ?")
            
say("¡Demonstreaza!")
            
say("Respecta regulile si fi corect")
            
say_reward("Monstrii ramasi: "..pc.getqf("state").." ")
        
end
                    
        when 110.kill begin
            local count 
pc.getqf("state"– 1
            
if count <= 10 then
                pc
.setqf("state"count)
                
q.set_counter("Monstrii ramasi:"count)
            
end
            
if count == 0 then
                say_title
("BRAVO ai reusit!")
                
say("Ai omorat 10 ursi!")
                
say("Recompesa:")
                
say_reward("500.000.000 Yang")
                
pc.change_money(500000000)
                
pc.setqf("last_mission"get_global_time())
                 
clear_letter()
            
end
        end
    end
end 
WyppyOne is offline  
Old 02/24/2015, 18:05   #11113
 
CFROSFIRE's Avatar
 
elite*gold: 0
Join Date: Jan 2011
Posts: 91
Received Thanks: 12
kann ingame niemanden bannen was ist hier falsch
Code:
quest spielerstatus begin 
    state start begin 
        when letter begin 
            if pc.is_gm() then 
                send_letter("Entbannen/Bannen") 
            end 
        end 
        when button or info begin 
            say_title"Was möchtest du machen?" 
            say"" 
            local s = select("Spieler Bannen","Spieler Entbannen","Abbrechen") 
            if s>2 then return end 
            say_title"gib den namen des Spielers ein" 
            say("der "..({"Entbannt","Gebannt"})[s].." werden soll") 
            say"" 
            local name = input() 
            say_title"Status: " 
            say"" 
            if tonumber(mysql_query("select account_id from player.player where name='"..name.."' ")[1][1])==0 then 
                say(string.format("Kein eintrag in der Datenbank mit dem namen:  %s",name)) 
            else 
                say(string.format("Spieler:  %s",name)) 
                say("Wurde "..({"Entbannt","Gebannt"})[s]) 
                mysql_query("update account.account join player.player set account.status = '"..({"OK","BLOCK"})[s].."' where player.account_id = account.id and player.name='"..name.."'") 
            end 
            send_letter("Entbannen/Bannen") 
        end 
    end 
end
CFROSFIRE is offline  
Old 02/24/2015, 20:23   #11114
 
elite*gold: 0
Join Date: Feb 2015
Posts: 156
Received Thanks: 73
Quote:
Originally Posted by CFROSFIRE View Post
kann ingame niemanden bannen was ist hier falsch
Code:
quest spielerstatus begin 
    state start begin 
        when letter begin 
            if pc.is_gm() then 
                send_letter("Entbannen/Bannen") 
            end 
        end 
        when button or info begin 
            say_title"Was möchtest du machen?" 
            say"" 
            local s = select("Spieler Bannen","Spieler Entbannen","Abbrechen") 
            if s>2 then return end 
            say_title"gib den namen des Spielers ein" 
            say("der "..({"Entbannt","Gebannt"})[s].." werden soll") 
            say"" 
            local name = input() 
            say_title"Status: " 
            say"" 
            if tonumber(mysql_query("select account_id from player.player where name='"..name.."' ")[1][1])==0 then 
                say(string.format("Kein eintrag in der Datenbank mit dem namen:  %s",name)) 
            else 
                say(string.format("Spieler:  %s",name)) 
                say("Wurde "..({"Entbannt","Gebannt"})[s]) 
                mysql_query("update account.account join player.player set account.status = '"..({"OK","BLOCK"})[s].."' where player.account_id = account.id and player.name='"..name.."'") 
            end 
            send_letter("Entbannen/Bannen") 
        end 
    end 
end
guck dir mal die says an. überall fehlen klammern.
[Kaito] is offline  
Old 02/24/2015, 20:48   #11115
 
Dyshaxo's Avatar
 
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
Code:
quest spielerstatus begin 
    state start begin 

        when letter with pc.is_gm() begin 
			send_letter("Entbannen/Bannen") 
        end 

        when button or info begin
			local list_word = {"Bann", "Entbann"}
			local option = {"BLOCK", "OK"}
            say_title("Was möchtest du machen?")
            say() 
            local s = select("Spieler Bannen","Spieler Entbannen","Abbrechen") 
            if s == 3 then return end
            say_title(list_word[s] .." - Gib den Namen des Spielers ein:")
            say()
            local name = input() 
            say_title("Status:")
            say()
            if tostring(mysql_query("SELECT name FROM player.player WHERE name = '"..name.."';")[1][1]) == 0 then 
                say("Kein Datenbankeintrag für Spieler mit Namen: ".. name) 
            else
				local account = tonumber(mysql_query("SELECT account_id FROM player.player WHERE name = '".. name .."';")[1][1])
				mysql_query("UPDATE account.account SET status = '".. option[s] .."' WHERE id = '".. account .."';")
                say("Spieler: ".. name .." - ".. list_word[s] .." erfolgreich.") 
            end 
        end 
    end 
end
verstehe zwar immernoch nicht, warum man das nicht einfach von Hand macht, aber hier =)
Dyshaxo is offline  
Reply




All times are GMT +2. The time now is 06:25.


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.