Task-Scheduler: Unterschied zwischen den Versionen

Aus Rising World Wiki
Keine Bearbeitungszusammenfassung
(Rechtschreibung korrigiert und Formatierung an einigen Stellen angepasst.)
 
Zeile 1: Zeile 1:
Der '''Task-Scheduler''' ist ein Aufgabenplaner für dedizierte Server.
Der '''Task-Scheduler''' ist ein Aufgabenplaner für dedizierte Server.


Mittels eines Editors können über den Aufgabenplaner benuzterdefinierte Aufgaben für Mehrspieler-Server eingerichtet werden. Diese Aufgaben können zu bestimmten Zeiten oder bei bestimmten Aktionen durchgeführt werden. Der Task-Scheduler kann auf bestimmte Aktionen wie zB die namendliche Begrüßung oder den Tod eines Spielers reagieren.
Mittels eines Editors können über den Aufgabenplaner benutzerdefinierte Aufgaben für Mehrspieler-Server eingerichtet werden. Diese Aufgaben können zu bestimmten Zeiten oder bei bestimmten Aktionen durchgeführt werden. Der Task-Scheduler kann auf bestimmte Aktionen wie z. B. die namentliche Begrüßung oder den Tod eines Spielers reagieren.


'''Einrichten des Aufgabenplaners:'''
==Einrichten des Aufgabenplaners==
Unter den Multiplayer-Server-Daten, befindet sich eine Datei namens <code>scheduler.example.txt</code>, diese kann mit einem Editor bearbeitet werden. Zum Aktivieren des Task-Scheduler muss die <code>scheduler.example.txt</code> in <code>scheduler.txt</code> geändert werden. Nach einem Restart des Servers ist der Aufgabenplaner aktiv.


Unter den Multiplayer-Server Daten, befindet sich eine Datei Names "scheduler.example.txt", diese kann mit einem Editor bearbeitet werden. Zum aktivieren des Task-Scheduler muß die "scheduler.example.txt" in "scheduler.txt" geändert werden. Nach einem Restart des Servers ist der Aufgabenplaner aktiv.
Jede Zeile der Datei <code>scheduler.txt</code> wird einzeln behandelt das bedeutet, einen Befehl pro Zeile hinzufügen. Jeder Befehl beginnt mit einem „'''@'''“-Zeichen, gefolgt vom Auslöser und dem eigentlichen Befehl. z. B.: <code>@15m /say Dies ist eine Testnachricht!</code>  
 
Jede Zeile der Datei "scheduler.txt" wird einzeln behandelt - das bedeutet, einen Befehl pro Zeile hinzufügen. Jeder Befehl beginnt mit einem „'''@'''“-Zeichen, gefolgt vom Auslöser und dem eigentlichen Befehl. zB: <code>@15m /say Dies ist eine Testnachricht!</code>  


'''Beispiel:'''<syntaxhighlight lang="yaml">
'''Beispiel:'''<syntaxhighlight lang="yaml">
Zeile 20: Zeile 19:
##Dadurch wird nach 12 Stunden ein Serverneustart ausgelöst
##Dadurch wird nach 12 Stunden ein Serverneustart ausgelöst
@+12h /restart  
@+12h /restart  
</syntaxhighlight>Auf einige eingebaute Variablen kann ebenso zugegriffen werden, die immer verfügbar sind. Dies aktuelle Spieleranzahl (zugänglich über <code>%playercount%</code>) und jede Serveroption, die in der Datei "server.properties" definiert ist.
</syntaxhighlight>Auf einige eingebaute Variablen kann ebenso zugegriffen werden, die immer verfügbar sind. Dies aktuelle Spieleranzahl (zugänglich über <code>%playercount%</code>) und jede Serveroption, die in der Datei <code>server.properties</code> definiert ist.


(z. B. <code>%serveroption.server.shortname%</code> oder <code>%serveroption.world.seed%</code>).
(z. B. <code>%serveroption.server.shortname%</code> oder <code>%serveroption.world.seed%</code>).
{| class="wikitable"
{| class="wikitable"
|+Tabelle für bestimmter Ereignisse
|+ Tabelle für bestimmter Ereignisse
!Befehl
!Befehl
!Parameter
!Parameter
Zeile 30: Zeile 29:
|-
|-
|@OnPlayerConnect
|@OnPlayerConnect
|%name% (name des spielers)
| %name% (name des spielers)
|Wird immer dann aufgerufen, wenn sich ein Spieler mit dem Server verbindet
|Wird immer dann aufgerufen, wenn sich ein Spieler mit dem Server verbindet
|-
|-
|@OnPlayerDisconnect
|@OnPlayerDisconnect
|%name% (name des spielers)
| %name% (name des spielers)
|Wird immer dann aufgerufen, wenn ein Spieler die Verbindung zum Server trennt
|Wird immer dann aufgerufen, wenn ein Spieler die Verbindung zum Server trennt
|-
|-
|@OnPlayerSpawn
|@OnPlayerSpawn
|%name% (name des spielers)
| %name% (name des spielers)
|Wenn ein Spieler auf dem Server spawnt
|Wenn ein Spieler auf dem Server spawnt
|-
|-
|@OnPlayerRespawn
|@OnPlayerRespawn
|%name% (name des spielers)
| %name% (name des spielers)
|Wenn ein Spieler wieder auftaucht (nach dem Tod)
|Wenn ein Spieler wieder auftaucht (nach dem Tod)
|-
|-
|@OnPlayerDeath
|@OnPlayerDeath
|%name% (name des spielers)
| %name% (name des spielers)
|Wenn ein Spieler stirbt (es sei denn, er wurde von einem anderen Spieler oder NPC getötet)
|Wenn ein Spieler stirbt (es sei denn, er wurde von einem anderen Spieler oder NPC getötet)
|-
|-
|@OnPlayerKilledPlayer
|@OnPlayerKilledPlayer
|%name% (Name des verstorbenen Spielers), %killer% (Name des Mörders), %item% (Item, was verwendet wurde)
| %name% (Name des verstorbenen Spielers), %killer% (Name des Mörders), %item% (Item, was verwendet wurde)
|Wenn ein Spieler von einem anderen Spieler getötet wurde
|Wenn ein Spieler von einem anderen Spieler getötet wurde
|-
|-
|@OnPlayerKilledNpc
|@OnPlayerKilledNpc
|%name% (Name des Spielers, der den NPC getötet hat), %npc% (NPC, der gestorben ist), %item% (Item, was verwendet wurde)
| %name% (Name des Spielers, der den NPC getötet hat), %npc% (NPC, der gestorben ist), %item% (Item, was verwendet wurde)
|Wenn ein Spieler einen NPC tötet
|Wenn ein Spieler einen NPC tötet
|-
|-
|@OnNpcKilledPlayer
|@OnNpcKilledPlayer
|%name% (Name des verstorbenen Spielers), %npc% (Name des Killer-NPCs)
| %name% (Name des verstorbenen Spielers), %npc% (Name des Killer-NPCs)
|Wenn ein NPC einen Spieler tötet
| Wenn ein NPC einen Spieler tötet
|-
|-
|@OnWeatherChange
|@OnWeatherChange  
|%weather% (Name des neuen Wettertyps), %oldweather% (vorher eingestellter Wettertyp)
|%weather% (Name des neuen Wettertyps), %oldweather% (vorher eingestellter Wettertyp)  
|Wenn sich das Wetter ändert (entweder natürlich oder per Befehl)
|Wenn sich das Wetter ändert (entweder natürlich oder per Befehl)
|}
|}

Aktuelle Version vom 10. Februar 2022, 23:39 Uhr

Der Task-Scheduler ist ein Aufgabenplaner für dedizierte Server.

Mittels eines Editors können über den Aufgabenplaner benutzerdefinierte Aufgaben für Mehrspieler-Server eingerichtet werden. Diese Aufgaben können zu bestimmten Zeiten oder bei bestimmten Aktionen durchgeführt werden. Der Task-Scheduler kann auf bestimmte Aktionen wie z. B. die namentliche Begrüßung oder den Tod eines Spielers reagieren.

Einrichten des Aufgabenplaners

Unter den Multiplayer-Server-Daten, befindet sich eine Datei namens scheduler.example.txt, diese kann mit einem Editor bearbeitet werden. Zum Aktivieren des Task-Scheduler muss die scheduler.example.txt in scheduler.txt geändert werden. Nach einem Restart des Servers ist der Aufgabenplaner aktiv.

Jede Zeile der Datei scheduler.txt wird einzeln behandelt – das bedeutet, einen Befehl pro Zeile hinzufügen. Jeder Befehl beginnt mit einem „@“-Zeichen, gefolgt vom Auslöser und dem eigentlichen Befehl. z. B.: @15m /say Dies ist eine Testnachricht!

Beispiel:

##wird stündlich ausgeführt
@1h /say Eine weitere Stunde ist vergangen...
##alle 10 Minuten eine grüne Chat-Nachricht
@10m /say <color=green>Hallo Rising Worldspieler!</color>
##führt den "saveall"-Befehl um 15:00 Uhr aus
@15:00 /saveall
##Sendet alle 1,5 Stunden eine HTTP-Anfrage. Bei Erfolg wird der Rückgabewert als neuer Befehl behandelt
@1h30m /httprequest https: //example-domain-test.net/api/checkforrestart
##Dadurch wird nach 12 Stunden ein Serverneustart ausgelöst
@+12h /restart

Auf einige eingebaute Variablen kann ebenso zugegriffen werden, die immer verfügbar sind. Dies aktuelle Spieleranzahl (zugänglich über %playercount%) und jede Serveroption, die in der Datei server.properties definiert ist.

(z. B. %serveroption.server.shortname% oder %serveroption.world.seed%).

Tabelle für bestimmter Ereignisse
Befehl Parameter Beschreibung
@OnPlayerConnect %name% (name des spielers) Wird immer dann aufgerufen, wenn sich ein Spieler mit dem Server verbindet
@OnPlayerDisconnect %name% (name des spielers) Wird immer dann aufgerufen, wenn ein Spieler die Verbindung zum Server trennt
@OnPlayerSpawn %name% (name des spielers) Wenn ein Spieler auf dem Server spawnt
@OnPlayerRespawn %name% (name des spielers) Wenn ein Spieler wieder auftaucht (nach dem Tod)
@OnPlayerDeath %name% (name des spielers) Wenn ein Spieler stirbt (es sei denn, er wurde von einem anderen Spieler oder NPC getötet)
@OnPlayerKilledPlayer %name% (Name des verstorbenen Spielers), %killer% (Name des Mörders), %item% (Item, was verwendet wurde) Wenn ein Spieler von einem anderen Spieler getötet wurde
@OnPlayerKilledNpc %name% (Name des Spielers, der den NPC getötet hat), %npc% (NPC, der gestorben ist), %item% (Item, was verwendet wurde) Wenn ein Spieler einen NPC tötet
@OnNpcKilledPlayer %name% (Name des verstorbenen Spielers), %npc% (Name des Killer-NPCs) Wenn ein NPC einen Spieler tötet
@OnWeatherChange %weather% (Name des neuen Wettertyps), %oldweather% (vorher eingestellter Wettertyp) Wenn sich das Wetter ändert (entweder natürlich oder per Befehl)

Beispiel:

##Wenn jemand einen anderen Spieler tötet, senden Sie ihm eine rote Nachricht

@OnPlayerKilledPlayer /yell @%killer% <color=red>Du hast gemordet %name%</color>

##Sendet eine Chat-Nachricht an den verstorbenen Spieler (betonen Sie den Namen des Mörders).

@OnPlayerKilledPlayer /say @%name% Sie wurden von getötet <b><u>%killer%</u></b>!

##Willkommensnachricht an einen Spieler, wenn er dem Spiel beitritt

@OnPlayerSpawn /say @%name% Willkommen bei %serveroption.server.shortname%! Bitte lesen Sie unsere Regeln

##Nachricht, wenn sich das Wetter ändert

@OnWeatherChange /say Wetter ändert sich zu %weather% jetzt...

##Wenn ein Spieler zum ersten Mal spawnt

@OnPlayerSpawn /say @%name% Hallo %name%, willkommen bei den %serveroption.shortname%. Derzeit gibt es %playercount% Spieler online!

##wenn ein Spieler stirbt (es sei denn, er wurde von einem anderen Spieler getötet).

@OnPlayerDeath /say <color=red>Player %name% died...</color>

##Dieses Ereignis wird ausgelöst, wenn ein Spieler einen anderen Spieler tötet, Ausgabefarbe ist hier Rot.

@OnPlayerKilledPlayer /say <color=red>%killer% killed %name% with %item%</color>

@OnPlayerKilledPlayer /yell @%killer% <color=red>%name% killed!</color>

##Nachricht des Tages

@1h /say Wir lieben Rising World, hab einen schönen Tag

##Neustart Handling

@+11h30m /say Warnung: Server restart in 30 Minuten!

@+11h45m /say Warnung: Server restart in 15 Minuten!

@+11h50m /yell Server restart in 10 Minuten!

@+11h55m /yell Server restart in 5 Minuten!

@+11h57m /kickall Server restart

@+11h58m /saveall

@+12h /restart