• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Einige Fragen zu Regionen...

xS1L3nTx

Redstoneengineer
Registriert
12 August 2012
Beiträge
31
Diamanten
0
Minecraft
xS1L3nTx
Hallo, ich habe da ein "kleines" Problem...

- Eine Kleine Überlegung vorweg - (Wenns falsch ist, bitte ich um Korrektur ;) )
Ich bin gerade dabei ein Tool zu programmieren welches mit Regionen arbeitet und bin zu der folgenden Überlegung gekommen:
Jedes Plugin (mit Regionen) überprüft ob ein Spieler irgendeine (ob worldguard, oder auch nichtworldguard) Regionen betreten hat, indem jedes mal bei einer Spielerbewegung abgefragt wird wo sich ein Spieler befindet. -> Dies resultiert in einer gewissen Auslastung des Servers.
Zudem muss ja auch beachtet werden, je mehr regionen es insgesamt gibt, desto mehr Auslastung liegt vor, da durch alle locations aller Regionen gegangen werden muss...

Der Punkt ist: Je mehr Plugins mit Regionen arbeiten, desto mehr wird manchmal mehrfach abgefragt wo sich ein Spieler befindet und somit auch gleich mehrere Regionslistenabfragen (je Plugin eine/mehrere Regionliste/n) durchgeführt.

Was wäre also sinnvoller, als das Bukkit eine Art Regionssystem schon von sich aus bereitstellt auf denen alle Plugins Zugriff haben? so das zumindest die Abfragen der Regionen weniger Belastend wirkt, da nicht mehrfach abgefragt werden muss?

1. Frage: Gibt es eine Art Bukkitnative-Regionserkennung (und ich hab dazu bisher nie was gefunden) oder ist das Wunschdenken und wird sogar niemals implementiert? Wenn ja, Wie?

2. Frage: Wenn es das nicht von Bukkit aus gibt, Ist es möglich sich ins Worldguard Regionserkennungsystem zu hooken, so das bei jedem mal wenn der Spieler eine Region betritt/verlässt, der name der region an das eigene Plugin übermittelt wird und man dann mit dem eigenen Plugin entsprechende Aktionen ausführen kann (ich meine nicht per flags)? Wenn ja, Wie ?

3. Frage:
Gibt es eine Möglichkeit aus Worldguard eine Liste aller Spieler zu bekommen, die sich momentan in einer Region befinden? Wenn ja, Wie?

4. Frage: Wenn es keinerlei Weg gibt die oberen Fragen mit Ja zu beantworten: Was ist der beste und effizienteste weg um zu ermitteln ob ein Spieler eine Region betritt oder nicht?

Ich bedanke mich,
xS1L3nTx
 
Zuletzt bearbeitet:

Calenria

Braumeister
Registriert
28 Juli 2012
Beiträge
386
Alter
45
Diamanten
300
Minecraft
Calenria
Aber eine Art Listener für Worldguard, der jedesmal darauf reagiert wenn ein Spieler eine Region betritt gibt es nicht?

Nicht das ich wüsste.

Du hast zwei Möglichkeiten das zu Checken, entweder bei PlayerMove oder du baust nen Task der alle 3 Sek checkt ob jemand in einer bestimmten Region ist, je nachdem was du machen willst.

Alternativ baust ein weiteres Event in WorldGuard an was genau das Checkt und ein PlayerEnteredRegionEvent wirft.
 

xS1L3nTx

Redstoneengineer
Registriert
12 August 2012
Beiträge
31
Diamanten
0
Minecraft
xS1L3nTx
Einfach mal in der World Guard Api gucken. Es gibt dort ein Event beim Betreten einer Region. Dieses kann man sich mit einer Flag anzeigen lassen (ich glaube entry-notice).

Du meinst Praktisch gesehen: Die Meldung im Chat abfangen und anhand dessen die betretene Region ablesen/ermitteln und entsprechend darauf reagieren?

Irgendwie klingt mir das sehr Abenteuerlich :eek:
 

Catzoteles

Kuhfänger
Registriert
14 Januar 2013
Beiträge
73
Diamanten
0
Minecraft
Catzoteles
Warum kompliziert, wenn´s einfach auch geht? o_O

Wenn du Worlddurad verwendest, hast du Möglichkeit über Notify-Flags schon...
notify-enter Sends a message to players with the worldguard.notify permission when a player enters a region.
notify-leave Sends a message to players with the worldguard.notify permission when a player leaves a region.

Funktioniert wunderbar, wir nutzen es um bestimmte Grundstücke zu "überwachen".
Jedes Mal wenn jemand (egal wer) eine dieser Regionen betritt, bekommen alle Teammitglieder mit entsprechender Permission (Owner, Admin, Mod) die online sind eine entsprechende Meldung im Chat.

"Player XY entered/left notified region NAME"

Den grundlegenden Sinn deines Tools hab ich nicht ganz verstanden... :ugly:
Wozu willst du permanent wissen, welcher Spieler welche Region betritt? Versieh einfach die wichtigen Regions mit einer Flag und gut is ;)

Zu 2: Welche Aktionen willst du ausführen?
Zu 3: Auch hier erschließt sich mir der Sinn/Nutzen nicht ganz...

So long!
Cat
 

xS1L3nTx

Redstoneengineer
Registriert
12 August 2012
Beiträge
31
Diamanten
0
Minecraft
xS1L3nTx
Warum kompliziert, wenn´s einfach auch geht? o_O

Wenn du Worlddurad verwendest, hast du Möglichkeit über Notify-Flags schon...
notify-enter Sends a message to players with the worldguard.notify permission when a player enters a region.
notify-leave Sends a message to players with the worldguard.notify permission when a player leaves a region.

Funktioniert wunderbar, wir nutzen es um bestimmte Grundstücke zu "überwachen".
Jedes Mal wenn jemand (egal wer) eine dieser Regionen betritt, bekommen alle Teammitglieder mit entsprechender Permission (Owner, Admin, Mod) die online sind eine entsprechende Meldung im Chat.

"Player XY entered/left notified region NAME"

Den grundlegenden Sinn deines Tools hab ich nicht ganz verstanden... :ugly:
Wozu willst du permanent wissen, welcher Spieler welche Region betritt? Versieh einfach die wichtigen Regions mit einer Flag und gut is ;)

Zu 2: Welche Aktionen willst du ausführen?
Zu 3: Auch hier erschließt sich mir der Sinn/Nutzen nicht ganz...

So long!
Cat

Das es die Flags gibt is klar, aber ich will zb. bei eintritt/austritt in/aus einer Region commands ausführen lassen/Inventare wechseln usw... - Ideen gibt es reichlich ;)
Dazu will ich aber nicht immer eine Abfrage der Regionen ausführen sobald sich ein Spieler bewegt, das wäre zu unperformant, genau wie die abfrage nach Zeit zu ungenau ist!

Wenn du eine gute Idee hast wie ich das bewerkstellige, kannst du mir auch auf Frage 4 antworten ;)

Danke für eure Hilfe soweit :)
xS1L3nTx
 

Catzoteles

Kuhfänger
Registriert
14 Januar 2013
Beiträge
73
Diamanten
0
Minecraft
Catzoteles
Da muss ich heute abend erst mal nachsehen, welche aktuellen flags es gibt, da inzwischen sehr viele DInge darüber definierbar sind(Fly, Hunger, Sterben, etc.). Eine aktuelle Liste gibts leider nicht, aber vll. funzt es auch mit den Custom Flags???

Sterni könnte dir da sicher am besten weiterhelfen ;)
 

xS1L3nTx

Redstoneengineer
Registriert
12 August 2012
Beiträge
31
Diamanten
0
Minecraft
xS1L3nTx
Ist es mit CustomFlags überhaupt möglich größere Listeneinträge wie Befehls-Ketten, Inventarchanges etc. etc. zu verändern?

Wer ist Sterni o_O

Vielen Dank das ihr meine Fragen soweit beantwortet habt :)
xS1L3nTx
 
Oben