[RELEASE]Quest als Spieler PC Herunterfahren / Client beenden - Timer
Mir kam gestern eine glorreiche Idee die für größere Server einen
ziemlichen nutzen haben kann zumindest für die Spieler.
Mit dieser Quest lässt sich der PC Herunterfahren oder das Spiel beenden
ab einer Eingabe die man in Sekunden eingibt. Nach den eingegeben Sekunden
erhält man die Info wieviele Minuten man angegeben hat und wenn man dies Bestätigt
beginnt der Timer.
Wer sie nutzen möchte nutzt sie wer nicht, der solls lassen.
Achtet bitte nebenbei nochmal auf die Tababstände!
Die Questlib von Mijago wird dafür benötigt wegen "zt.s_m(zeit)"
root.e** entpacken und game.py öffnen
Am Anfang falls nicht vorhanden dies in die Imports oben einfügen:
quest automatic_close begin state start begin when login or letter begin setskin(NOWINDOW) makequestbutton("Beenden - Timer") end when button or info begin if pc.getqf("window_close_active") == 0 then say_title("Beenden - Timer:") say("") say("Sei gegrüßt,") say("Du kannst hier eine Zahl angeben in Sekunden,") say("nachdem sich der Client automatisch schließen") say("soll. Nützlich ist dieses Tool dafür falls man") say("einen Laden etc. geöffnet hat über Nacht und man") say("das Spiel nicht durchgehend offen lassen möchte.") say("") say_reward("Du kannst auch mehr als 60 Minuten einstellen.") say("") wait() say_title("Client Beenden - Timer:") say("") say("1 Minute - 60 Sekunden") say("5 Minuten - 300 Sekunden") say("10 Minuten - 600 Sekunden") say("30 Minuten - 1800 Sekunden") say("60 Minuten - 3600 Sekunden") say("") say("Gebe nun bitte eine Zeit ein, in Sekunden:") local zeit = tonumber(input("0")) or 0 wait() say_title("Client Beenden - Timer:") say("") say("Du hast "..zt.s_m(zeit).." Minuten in Sekunden angegeben.") say("ist das richtig?") say("") local continue = select ("Ja", "Nein") if continue == 2 then say_title("Abbruch:") say("") say("Um den Timer erneut zu stellen, öffne die") say("Quest erneut und gebe die Zahl in Sekunden an.") say("") elseif continue == 1 then say_title("Beenden - Timer:") say("") say("Möchtest du den PC Herunterfahren lassen") say("oder den Client nur Beenden lassen?") say("") local mod = select ("Client beenden", "PC Herunterfahren", "Abbrechen") if mod == 3 then return elseif mod == 1 then say_title("Client Beenden - Timer:") say("") say("Dein Client beendet sich in "..zt.s_m(zeit).." Minuten.") say("") timer("window_close",zeit) pc.setqf("window_close_active", 1) elseif mod == 2 then say_title("PC Herunterfahren - Timer:") say("") say("Dein Pc fährt sich in "..zt.s_m(zeit).." Minuten herunter.") say("") timer("pc_shutdown",zeit) pc.setqf("pc_shutdown_active", 1) end end elseif pc.getqf("window_close_active") == 1 then say_title("Client Beenden - Timer:") say("") say("Der Timer zum beenden des Clients") say("ist noch aktiv.") say("") say("Möchtest du den Timer löschen?") say("") local delete = select ("Ja", "Nein") if delete == 2 then say_title("Client Beenden - Timer:") say("") say("Dein Timer bleibt weiterhin aktiv.") say("") elseif delete == 1 then say_title("Timer beendet:") say("") say("Du hast den Clienttimer deaktiviert.") say("Um ihn erneut zu aktivieren beginne von vorne.") say("") pc.setqf("window_close_active", 0) cleartimer("window_close") end elseif pc.getqf("pc_shutdown_active") == 1 then say_title("PC Herunterfahren - Timer:") say("") say("Der Timer zum Herunterfahren des PCs") say("ist noch aktiv.") say("") say("Möchtest du den Timer löschen?") say("") local pc_delete = select ("Ja", "Nein") if pc_delete == 2 then return elseif pc_delete == 1 then pc.setqf("pc_shutdown_active", 0) cleartimer("pc_shutdown") end end when window_close.timer begin if pc.getqf("window_close_active") == 0 then return elseif pc.getqf("window_close_active") == 1 then -- Funktioniert nur mit einer Modifizierten game.py cleartimer("window_close") pc.setqf("window_close_active", 0) cmdchat("window_close "..pc.get_name().."") -- Funktioniert nur mit einer Modifizierten game.py end end when pc_shutdown.timer begin if pc.getqf("pc_shutdown_active") == 0 then return elseif pc.getqf("pc_shutdown_active") == 1 then -- Funktioniert nur mit einer Modifizierten game.py cleartimer("pc_shutdown") pc.setqf("pc_shutdown_active", 0) cmdchat("pc_shutdown "..pc.get_name().."") -- Funktioniert nur mit einer Modifizierten game.py end end end end
Ps: Habe die Quest nicht getestet da mein Server im moment nicht
funktioniert, sollte trotzdem Problemlos funktionieren, falls dies nicht der
Fall sein sollte addet mich in Skype mit dem Fehlerbericht und dann
werde Ich den Thread Updaten.
Edit:
Quest MOD erneuert
PC Herunterfahren MOD - hinzugefügt
Edit2:
Kurzes Questupdate
- Cleartimer nochmals überarbeitet und angepasst.
- pc.setqf eingesetzt und beim PC Herunterfahren oder Client Beenden
die Flags wieder auf 0 gesetzt, da man sonst nachdem man wieder im Spiel ist den Timer
erst löschen muss und dann wieder aktivieren muss.
Warum sollte man unterbinden wollen, dass Nachts Shops offen sind?
Je belebter der Server desto mehr Spielspaß, oder etwa nicht? Wenn man dann Nachts auch sein Zeug kriegt ist doch gut
Warum sollte man unterbinden wollen, dass Nachts Shops offen sind?
Je belebter der Server desto mehr Spielspaß, oder etwa nicht? Wenn man dann Nachts auch sein Zeug kriegt ist doch gut
Der Sinn liegt darinn, falls es Spieler wollen kenne zu genügend.
Falls sie nicht wollen das der Client 24/7 offen ist.
Wie gesagt wers will nutzt es und wer nicht lässt es ^^
Ich selbst wollte sowas als Spieler auf Servern damals nutzen können.
Ausserdem können die Spieler diese Quest sowieso komplett Ignorieren
und müssen sie ja nicht nutzen :P
Wenn das den PC dazu herunterfährt hätte es einen sinn , aber so? wieso sollten sie den Clienten schließen wollen wenn sie Shop aufhaben könnten? bzw was bringts wenn Client zu ist und Pc trozdem unnötig über nacht an ist..
Grüße
Wenn das den PC dazu herunterfährt hätte es einen sinn , aber so? wieso sollten sie den Clienten schließen wollen wenn sie Shop aufhaben könnten? bzw was bringts wenn Client zu ist und Pc trozdem unnötig über nacht an ist..
Grüße
Den Befehl dazu das der PC des Spielers heruntergefahren wird
kann Ich problemlos mit einbauen das ist kein Thema ^^
Kann Ich auf Wunschanfrage gerne machen.
Der Sinn liegt darinn, falls es Spieler wollen kenne zu genügend.
Falls sie nicht wollen das der Client 24/7 offen ist.
Wie gesagt wers will nutzt es und wer nicht lässt es ^^
Ich selbst wollte sowas als Spieler auf Servern damals nutzen können.
Ausserdem können die Spieler diese Quest sowieso komplett Ignorieren
und müssen sie ja nicht nutzen :P
Ah okay es ist eine vom Spieler angewandte Quest, dann ist das natürlich keine schlechte Idee (Entschuldige ich kenn mich damit nicht so aus, ich hab gedacht der Server würde die Spieler dann 'kicken')
Vielen Dank Lucky wirklich sehr tolle Quest habe sie in mein Server eingebaut. Vielen Dank
MfG
Shaiine™
PS an alle: Liest sein Thread, denkt nach, und heult hier nicht unnötig rum die Quest ist nice und ich hab auch kb das immer "Blackscreen" ist. Na checkt ihr was ?
kürzer ja, aber is gut geschrieben ^^ ... schreib mir ma per pn ne gute idee ._. des einzige was mir eingefallen is , powermountsystem und wutsystem mit passenden effekten, beides fertig ._.
Die Idee find ich echt gut, leider kann man es so nur in Verbindung mit der quest machen, sprich nur wenn es der server auch eingebaut hat. Es gibt ja auch Tools mit denen man den pc nach einer bestimmten Zeit runterfahren kann. Was aber meiner Meinung nach nicht schlecht wäre, wenn es komplett in python ist also dass man auch wenn der Server das nicht eingebaut hat trotzdem dann injecten kann dann kann man es auch bei fremden servern nutzen(ist ja nichts schlimmes) wenn man z.b. weg vom pc geht aber noch will dass er 1 stunde weiterswitcht oder shop offen hat. Aber gute Idee und Umsetzung danke dafür
[Mini Release] Bugchecker (timer - quest) 01/06/2013 - Metin2 PServer Guides & Strategies - 17 Replies quest daynight begin
state start begin
when login begin
loop_timer("bugchecker", 0.2)
end
when bugchecker.timer begin
if pc.count_item(ITEMVNUM) == 0 then
say_title("Bugusing")
say("Du hast dein Item weggeworfen/verloren")
pc.give_item2(ITEMVNUM, 1)
Quest timer problem 07/25/2012 - Metin2 Private Server - 0 Replies Also ich arbeite grad an einer kleinen dungeon quest...
Nur mein problem ist, dass der Timer irg.wie spinnt.
Also dies habe ich grad drin..
und abfrage lautet:
aber nachdem ich mich rein geportet habe und wieder raus und mich wieder teleporten will, dann steht da immer:
Fragen zu Timer in Quest 03/04/2012 - Metin2 Private Server - 2 Replies Tag auch,
Ich habe nur eine kleine frage, ihr kennt sicher sowas ähnliches:
pc.setqf("beispiel", get_time() + 28800)
Da habe ich eine frage, geht auch das:
game.get_event_flag("beispiel", get_time() + 28800)
oder so ähnlich, oder gibt es ein anderen befehl der das macht?
Wär nett wen ihr mir helfen könntet :handsdown:
Fragen zu Timer in Quest 03/03/2012 - Metin2 Private Server - 1 Replies Tag auch,
Es gibt soviele timer die man bei Questen benutzen kann, aber ich weiß nicht, wie man sie richtig einsetzt oder wofür man sie am besten nutzt (z.b. Dungeon, Event, usw.).
Es wär wirklich nett von euch, wen ihr mir die einzelnen Timer aufzählen könntet, am besten in einen Beispiel ;)
Sowie ob sie nach dem ausloggen ausgehen, oder nicht.
Und noch was.
Ihr kennt sicher das:
pc.setqf("beispiel", get_time() + 28800)
Da habe ich eine frage, geht auch das:
yang = client beenden ?!?!?!?! 07/04/2010 - Metin2 Private Server - 29 Replies Hi leute, immer wenn ich auf mein yang kilike und es rausschmeißen will bekomme ich kik, genau so wie alle anderen spieler, das is natürlich im OX sehr schlecht ...
Also kann mir einer sagen wie man diesen bug fixxt ? ? ? ? ? ? ? ? ? ?
Mfg EYvil
PS: ich habe außerdme kein yang icon mehr, kann mir das mal einer hochladen oder schiken ?