|
You last visited: Today at 06:22
Advertisement
[SERVICE] Die Questerstellung
Discussion on [SERVICE] Die Questerstellung within the Metin2 Private Server forum part of the Metin2 category.
02/08/2015, 17:00
|
#2146
|
elite*gold: 0
Join Date: Jul 2009
Posts: 749
Received Thanks: 284
|
Quote:
Originally Posted by [Sensenmann]
PHP Code:
quest pvpkills begin state start begin when xxx.chat."PvP Quest" with pc.get_empire() == 1 begin say("Bli bla blub") say("Möchtest du die PvP Quest starten?") local s = select("Ja", "Abbrechen") if s == 2 then return elseif s == 1 then say("Wurde gestartet.") pc.setqf("count", 50) set_state(pvpkills_do) end end end state pvpkills_do begin when kill with npc.is_pc() begin if pc.getqf("count") >= 2 then pc.setqf("count", pc.getqf("count")-1) else say("Quest abgeschlossen") set_state(_COMPLETE_) end end end state _COMPLETE_ begin end end
Kills hab ich jetzt auf 50 gesetzt, die kannst du auch einfach ändern.
Npc musst noch ändern (xxx) und die Texte und die Belohnung einfügen.
|
ja habe die ähnliche gerade ein paar seiten vorher gefunden von dir, danke.
Habe allerdings an anfang eingefügt..
PHP Code:
when 3005.chat."Waldreinigung" with pc.get_level() < 25 begin
Warum kann ich die Quest nicht mit Level 25 starten? 
Ach und kann ich das empire einfach dahinter packen mit "and" ?
Also Level 25 + Rotes Reich?
|
|
|
02/08/2015, 17:05
|
#2147
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by .Crystal
ja habe die ähnliche gerade ein paar seiten vorher gefunden von dir, danke.
Habe allerdings an anfang eingefügt..
PHP Code:
when 3005.chat."Waldreinigung" with pc.get_level() < 25 begin
Warum kann ich die Quest nicht mit Level 25 starten? 
Ach und kann ich das empire einfach dahinter packen mit "and" ?
Also Level 25 + Rotes Reich?
|
1. pc.get_level() < 25 heisst größer 25, also ab 26. Wenn du ab 25 machen willst machst du am besten pc.get_level() <= 25 (größer/gleich level 25)
2. Ja einfach mit "and" dahinter
|
|
|
02/08/2015, 17:12
|
#2148
|
elite*gold: 0
Join Date: Jul 2009
Posts: 749
Received Thanks: 284
|
Quote:
Originally Posted by [Sensenmann]
1. pc.get_level() < 25 heisst größer 25, also ab 26. Wenn du ab 25 machen willst machst du am besten pc.get_level() <= 25 (größer/gleich level 25)
2. Ja einfach mit "and" dahinter
|
hm sie will trotzdem immernoch nicht starten, kriege keinen fehler angezeigt aber wenn ich den npc anklicke erscheint dort keine quest.. und der char ist sogar level 40 und ja npc on_click ist auf 2
|
|
|
02/08/2015, 17:17
|
#2149
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by .Crystal
hm sie will trotzdem immernoch nicht starten, kriege keinen fehler angezeigt aber wenn ich den npc anklicke erscheint dort keine quest.. und der char ist sogar level 40 und ja npc on_click ist auf 2
|
on_click hab ich bei mir immer auf 0 bei solchen quests/npcs
|
|
|
02/08/2015, 17:26
|
#2150
|
elite*gold: 0
Join Date: Jul 2009
Posts: 749
Received Thanks: 284
|
Quote:
Originally Posted by [Sensenmann]
on_click hab ich bei mir immer auf 0 bei solchen quests/npcs
|
brachte keine veränderung, immernoch nicht auswählbar..
Edit: ok das pc.get_level() <= 25 muss ein dachschaden haben, habe es mal entfernt und nur die reichsprüfung drin gelassen und jetzt geht sie.. sicher das es so richtig geschrieben war mit dem level?
|
|
|
02/08/2015, 17:40
|
#2151
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by .Crystal
brachte keine veränderung, immernoch nicht auswählbar..
Edit: ok das pc.get_level() <= 25 muss ein dachschaden haben, habe es mal entfernt und nur die reichsprüfung drin gelassen und jetzt geht sie.. sicher das es so richtig geschrieben war mit dem level?
|
ah sry >= 25 ^^
|
|
|
02/08/2015, 17:43
|
#2152
|
elite*gold: 0
Join Date: Jul 2009
Posts: 749
Received Thanks: 284
|
ja jetzt klappt sie  danke sensenmann, was quest angeht haste wirklich was drauf
|
|
|
02/08/2015, 21:44
|
#2153
|
elite*gold: 313
Join Date: Apr 2013
Posts: 585
Received Thanks: 122
|
Servus, kann mir jemand eine "Automessage" -Quest schreiben die folgendes kann:
- starten UND beenden in einem "letter"
- wenn gestartet kommt eine "notice_all" und dann alle
30min eine weitere "notice_all"
- die "notice_all" -Messages am besten in einer " local a = { "xy", "xxy" } "
so dass ich sie beliebig erweitern kann..
- wenn sie gestartet wurde lässt sie sich nur durch im Punkt 1
genannten "letter" wieder beenden und nicht durch ausloggen des "GMs"
wäre cool wenn dass jemand hinbekommt denn ich verzweifle grade..
Greetings.
|
|
|
02/09/2015, 07:04
|
#2154
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by G.I Duke
Servus, kann mir jemand eine "Automessage" -Quest schreiben die folgendes kann:
- starten UND beenden in einem "letter"
- wenn gestartet kommt eine "notice_all" und dann alle
30min eine weitere "notice_all"
- die "notice_all" -Messages am besten in einer " local a = { "xy", "xxy" } "
so dass ich sie beliebig erweitern kann..
- wenn sie gestartet wurde lässt sie sich nur durch im Punkt 1
genannten "letter" wieder beenden und nicht durch ausloggen des "GMs"
wäre cool wenn dass jemand hinbekommt denn ich verzweifle grade..
Greetings.
|
Versuchs mal ...
PHP Code:
quest noticeall begin state start begin when letter with pc.is_gm() begin send_letter("Automatische Ankündigung") end when button or info with pc.is_gm() begin notices = { "Bei Fragen wendet Euch bitte an einen GM!", "Du hast Verbesserungsvorschläge? Zögere nicht, sie uns mitzuteilen!", "Du hast einen Bug gefunden? Bitte melde ihn schnellstmöglich an einen Teamler!" } select_notices = {} for i = 1, table.getn(notices) do table.insert(select_notices, string.sub(notices[i], 1, 30).."...") end say_title("Ankündigungen") say("") say_reward("Ankündigung starten oder stoppen?") say("") local main_menu = select("Starten", "Stoppen", "Abbrechen") if main_menu == 3 then return end say_title("Ankündigungen") say("") say_reward("Welche Ankündigung möchtest du starten/stoppen?") say("") local s = select_table(select_notices, "Abbrechen") if s == table.getn(select_notices)+1 then return end say("Du hast folgende Ankündigung ausgewählt:") say_reward(notices[s]) if main_menu == 1 then say("Wie oft soll diese gesendet werden (in Minuten)?") local countdown = tonumber(input()) if countdown < 1 then return end say("Möchtest du die Ankündigung ...") say(notices[s]) say("... wirklich alle "..countdown.." Minuten senden lassen?") local accept = select("Ja", "Nein, abbrechen") if accept == 2 then return end server_timer("notice"..s, countdown*60) game.set_event_flag(s, 1) notice_all(notices[s]) elseif main_menu == 2 then say("Möchtest du diese Ankündigung wirklich stoppen?") local accept = select("Ja", "Nein, abbrechen") if accept == 2 then return end game.set_event_flag(s, 0) clear_server_timer("notice"..s) end end when notice1.server_timer with game.get_event_flag(1) == 1 begin notice_all(notices[1]) end when notice2.server_timer with game.get_event_flag(2) == 1 begin notice_all(notices[2]) end when notice3.server_timer with game.get_event_flag(3) == 1 begin notice_all(notices[3]) end end end
|
|
|
02/09/2015, 19:55
|
#2155
|
elite*gold: 35
Join Date: Aug 2014
Posts: 336
Received Thanks: 267
|
Moin, wollte mal fragen ob es eine Möglichkeit gibt (die gibt es ganz sicher), dieses Problem schöner zu lösen.
Also ich will jede 20 Level ein Attribut (immer das gleiche) geben um immer den gleichen Wert.
Man könnte jetzt 8 when bedingungen machen, aber ich will anfangen kürzere schönere Quests zu schreiben und da dachte ich mir da gibt es bestimmt eine kurz und knackige Variante.
Also statt sowas:
Code:
when login or levelup with pc.get_level() >= 50 begin
if pc.getqf("level_50") == 0 then
pc.setqf("level_50", 1)
affect.add_collect(1, 100, 60*60*24*365*60)
end
end
when login or levelup with pc.get_level() >= 70 begin
if pc.getqf("level_70") == 0 then
pc.setqf("level_70", 1)
affect.add_collect(1, 100, 60*60*24*365*60)
end
end
when login or levelup with pc.get_level() >= 90 begin
if pc.getqf("level_90") == 0 then
pc.setqf("level_90", 1)
affect.add_collect(1, 100, 60*60*24*365*60)
end
end
|
|
|
02/09/2015, 20:10
|
#2156
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by C-3PO.
Moin, wollte mal fragen ob es eine Möglichkeit gibt (die gibt es ganz sicher), dieses Problem schöner zu lösen.
Also ich will jede 20 Level ein Attribut (immer das gleiche) geben um immer den gleichen Wert.
Man könnte jetzt 8 when bedingungen machen, aber ich will anfangen kürzere schönere Quests zu schreiben und da dachte ich mir da gibt es bestimmt eine kurz und knackige Variante.
Also statt sowas:
Code:
when login or levelup with pc.get_level() >= 50 begin
if pc.getqf("level_50") == 0 then
pc.setqf("level_50", 1)
affect.add_collect(1, 100, 60*60*24*365*60)
end
end
when login or levelup with pc.get_level() >= 70 begin
if pc.getqf("level_70") == 0 then
pc.setqf("level_70", 1)
affect.add_collect(1, 100, 60*60*24*365*60)
end
end
when login or levelup with pc.get_level() >= 90 begin
if pc.getqf("level_90") == 0 then
pc.setqf("level_90", 1)
affect.add_collect(1, 100, 60*60*24*365*60)
end
end
|
PHP Code:
quest test begin
state start begin
when levelup with pc.get_level() == 50 or pc.get_level() == 70 or pc.get_level() == 90 begin
affect.add_collect(1, 100, 60*60*24*365*60)
if pc.get_level() == 90
set_state(_COMPLETE_)
end
end
end
state _COMPLETE_ begin
end
end
|
|
|
02/09/2015, 20:21
|
#2157
|
elite*gold: 35
Join Date: Aug 2014
Posts: 336
Received Thanks: 267
|
Quote:
Originally Posted by [Sensenmann]
PHP Code:
quest test begin
state start begin
when levelup with pc.get_level() == 50 or pc.get_level() == 70 or pc.get_level() == 90 begin
affect.add_collect(1, 100, 60*60*24*365*60)
if pc.get_level() == 90
set_state(_COMPLETE_)
end
end
end
state _COMPLETE_ begin
end
end
|
Und wenn ich das ganze jetzt bei vielen Leveln mache muss ich ja immer pc.get_level() or ... machen kann das nicht per Liste lösen also in eine liste alle lvl eintragen und die dann abfragen?
|
|
|
02/09/2015, 20:29
|
#2158
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by C-3PO.
Und wenn ich das ganze jetzt bei vielen Leveln mache muss ich ja immer pc.get_level() or ... machen kann das nicht per Liste lösen also in eine liste alle lvl eintragen und die dann abfragen?
|
nicht im when und soweit ich weiss gibt es in LUA auch keine "in table" funktion , also müsstest du mit einer schleife alle einträge durchgehen ... nicht schön
|
|
|
02/09/2015, 22:50
|
#2159
|
elite*gold: 0
Join Date: Mar 2012
Posts: 646
Received Thanks: 696
|
Quote:
Originally Posted by C-3PO.
Und wenn ich das ganze jetzt bei vielen Leveln mache muss ich ja immer pc.get_level() or ... machen kann das nicht per Liste lösen also in eine liste alle lvl eintragen und die dann abfragen?
|
PHP Code:
quest test begin state start begin function in_table(v, s) for i = 1, table.getn(s) do if v == s[i] then return true end end return false end when levelup with test.in_table(pc.get_level(), {50,75,90}) begin affect.add_collect(1, 100, 60*60*24*365*60) if pc.get_level() == 90 set_state(_COMPLETE_) end end end state _COMPLETE_ begin end end
Ich finde es so schöner, da man die funktion vielseitig verwenden kann.
kind regards
|
|
|
02/09/2015, 23:37
|
#2160
|
elite*gold: 313
Join Date: Apr 2013
Posts: 585
Received Thanks: 122
|
Quote:
Originally Posted by [Sensenmann]
Versuchs mal ...
PHP Code:
quest noticeall begin
state start begin
when letter with pc.is_gm() begin
send_letter("Automatische Ankündigung")
end
when button or info with pc.is_gm() begin
notices = {
"Bei Fragen wendet Euch bitte an einen GM!",
"Du hast Verbesserungsvorschläge? Zögere nicht, sie uns mitzuteilen!",
"Du hast einen Bug gefunden? Bitte melde ihn schnellstmöglich an einen Teamler!"
}
select_notices = {}
for i = 1, table.getn(notices) do
table.insert(select_notices, string.sub(notices[i], 1, 30).."...")
end
say_title("Ankündigungen")
say("")
say_reward("Ankündigung starten oder stoppen?")
say("")
local main_menu = select("Starten", "Stoppen", "Abbrechen")
if main_menu == 3 then return end
say_title("Ankündigungen")
say("")
say_reward("Welche Ankündigung möchtest du starten/stoppen?")
say("")
local s = select_table(select_notices, "Abbrechen")
if s == table.getn(select_notices)+1 then return end
say("Du hast folgende Ankündigung ausgewählt:")
say_reward(notices[s])
if main_menu == 1 then
say("Wie oft soll diese gesendet werden (in Minuten)?")
local countdown = tonumber(input())
if countdown < 1 then return end
say("Möchtest du die Ankündigung ...")
say(notices[s])
say("... wirklich alle "..countdown.." Minuten senden lassen?")
local accept = select("Ja", "Nein, abbrechen")
if accept == 2 then return end
server_timer("notice"..s, countdown*60)
game.set_event_flag(s, 1)
notice_all(notices[s])
elseif main_menu == 2 then
say("Möchtest du diese Ankündigung wirklich stoppen?")
local accept = select("Ja", "Nein, abbrechen")
if accept == 2 then return end
game.set_event_flag(s, 0)
clear_server_timer("notice"..s)
end
end
when notice1.server_timer with game.get_event_flag(1) == 1 begin
notice_all(notices[1])
end
when notice2.server_timer with game.get_event_flag(2) == 1 begin
notice_all(notices[2])
end
when notice3.server_timer with game.get_event_flag(3) == 1 begin
notice_all(notices[3])
end
end
end
|
not working.. aber auch keine Fehlermeldung
|
|
|
 |
|
Similar Threads
|
[Community]Questerstellung
09/06/2015 - Metin2 Private Server - 5 Replies
Hallo liebe Community,
ich möchte meine Questkenntnisse ein wenig erweitern, deshalb möchte ich euch hier die Möglichkeit geben, Ideen, Wünsche und alles was mit Quests zu tun hat an mich weiterzuleiten.
Ich werde, sobald ich Zeit und Lust habe, die Ideen größtenteils umsetzen und das Ergebnis hier veröffentlichen. Wie oben schon erwähnt bin ich Quasi noch am 'lernen' (ja ich weis, man lernt nie aus), deshalb bitte ich euch, mich zu informieren wenn ich irgendwo gefailed hab, man es...
|
Hilfe bei Questerstellung
02/25/2012 - Metin2 Private Server - 0 Replies
€dit:
Kan gelöscht werden habe jemanden gefunden!!!!
|
Hilfe bei Questerstellung
02/15/2012 - Metin2 Private Server - 8 Replies
Heyy
Ich hätte eine bitte an euch.
Und zwar einer von euch mir einige quests erstellst.
Ich habe voll kp von quests.
Als blohnung würde ich dir auf meinem server
5k coins (Wert 50€) geben.
also hier die quests:
30 Quest
Belohnung: 100kk 42 rüssi+7 je nach der klasse.
|
Hilfe bei Questerstellung
08/16/2011 - Metin2 Private Server - 0 Replies
Mahlzeit
also ich suche jemanden der mir ein grundgerüst einer quest erstellen kann so das ich diese weiter ausbauen kann,
So nun zur quest idee
Also ich möchte einen NPC hinstellen nennen wir den mal Questnpc
wenn man den anklickt soll man dem levelabhängig quest angeboten bekommen,zum beispiel ab lvl10 töte 50 weisse Tiger,aber lvl40 töte 30 Oberork und so weiter,was mit levelanstieg natürlich komplexer werden sollte.Manche Quest sollten nur einmal zumachen gehen und manche im höheren lvl...
|
[SERVICE]Questerstellung
05/24/2011 - Metin2 Private Server - 4 Replies
Abend e*pvp,
nach langem Überlegen hab ich mich doch dazu entschlossen, meine Arbeit gegen e*gold zur Verfügung zu stellen.
Ich werde euch mal die wichtigsten Fragen beantworten ;)
Woraus besteht dein Service?
Zum einen erstelle ich einzelne, sowie ganze Questreihen. Die von mir verschickten Dateien werden Unikate bleiben, und sofort nach erfolgreichem Transfer gelöscht. Außerdem biete ich nochmal seperat eine Questverbesserung zum Sammelthread an. Diese wird dann natürlich...
|
All times are GMT +1. The time now is 06:24.
|
|