Zum Hauptinhalt springen

TinyEssentials

29 Essentials-Befehle, Homes, TPA, Chatformat, Tablist, Kalender, Schnellreise und Wiki.

Privatv0.0.2Hilfsmittel
BenötigtTypeWriter0.9.0-beta-177 (BTC build)PacketEventsMySQLGUITranslateoptional

Für das BornToCraft-Netzwerk entwickelt. Diese Erweiterung ist zu Referenzzwecken dokumentiert und wird nicht verteilt.

Überblick​

TinyEssentials ist die „Essentials“-Schicht eines BTC-Servers, inspiriert von EssentialsX und auf TypeWriter aufgebaut. Es bringt 29 Spieler- und Staff-Befehle (Homes, Teleportanfragen, Nachrichten, Fliegen, Vanish, Heilen ...), einen Chatformatierer, Beitritts-Items, eine Todesstrafe („Scavenger“), eine Tablist, einen Scoreboard- und Bossbar-Manager, eine eigene Tageslänge mit einem Kalender, ein Schnellreise-Menü und ein Wiki im Spiel.

Alles wird im Web-Panel konfiguriert. Jeder Befehl ist ein eigener Entry, sodass du seinen Namen und seine Berechtigung wählst und nur die Befehle hinzufügst, die du möchtest. Nachrichten werden in einem Tiny Essentials-Konfigurations-Entry gemeinsam genutzt, und die größeren Funktionen (Homes, Chat, Tab, Kalender) haben jeweils einen eigenen Entry.

Menüs (Homes, Kalender, Schnellreise, Wiki) werden mit der GUI-Erweiterung und dem Layout dargestellt, das du auf einer Seite zeichnest.

Funktionen​

  • 29 Befehls-Entries — Fly, God, Feed, Heal, Vanish, Speed, Gamemode, Repair, Back, TPA, Nachrichten, Homes und mehr, jeweils mit konfigurierbarem Namen und konfigurierbarer Berechtigung.
  • Homes — Homes pro Spieler mit Limits auf Basis von Berechtigungen, Cooldowns, einem Menü mit Seiten und einem Editor (umbenennen, Icon, löschen) sowie gespeichertem Speicher.
  • Teleportanfragen — /tpa und /tpahere mit Timeout, Umschalter und einem /back-Verlauf.
  • Private Nachrichten — /msg, /reply und /msgtoggle, wobei Farbcodes neutralisiert werden.
  • Chatformat — MiniMessage-Formate, nach Berechtigung und Priorität gewählt, über Redis zwischen Servern geteilt, wenn MySQL im gemeinsamen Modus läuft.
  • Tablist, Scoreboard, Bossbar — Header/Footer, Namensformatierung, Sortierung, Layout mit 80 Slots, Bedingungen und Animationen.
  • Beitritts-Items — Items, die beim Beitritt oder Respawn gegeben werden, mit Klick-Befehlen und Schutz-Flags.
  • Scavenger — prozentualer Verlust von Items und Erfahrung beim Tod, geschützte Items und Strafen auf Basis von Platzhaltern.
  • Eigene Zeit und Kalender — Tageslänge, Kalender mit Monaten, Wochentagen und Events, Kalendermenü, Facts, ein Audience-Filter und Platzhalter.
  • Schnellreise und Wiki — regionsbasiertes Reisemenü mit Sperr-Criteria und ein Guide im Spiel aus Abschnitten und Artikeln.

Installation​

  1. Installiere PacketEvents, das die Tablist-Funktionen benötigen.
  2. Installiere die MySQL-Erweiterung, die TinyEssentials als Abhängigkeit deklariert (Redis wird für den serverübergreifenden Chat und die Tab-Liste verwendet), und die GUI-Erweiterung für die Menüs.
  3. Installiere optional Translate, um den Netzwerk-Chat für Spieler auf anderen Servern zu übersetzen.
  4. Lege die TinyEssentials-JAR in plugins/Typewriter/extensions/ ab und starte den Server neu.
  5. Vergib die Befehlsberechtigungen (siehe die Berechtigungstabelle) mit deinem Berechtigungs-Plugin. Gruppenbasierte Tab-Funktionen lesen Berechtigungen mit dem Namen group.<name>.

Erste Schritte​

  1. Öffne im TypeWriter-Web-Panel eine Static-Seite und füge einen Tiny Essentials-Entry hinzu. Ohne ihn antwortet jeder Befehl, dass TinyEssentials nicht konfiguriert ist. Passe defaultTeleportCooldown, tpaTimeoutSeconds, backBufferSize und die Nachrichten an.
  2. Füge die gewünschten Befehls-Entries hinzu, zum Beispiel /fly, /tpa und /back. Behalte commandName und permission bei oder ändere sie.
  3. Füge für Homes ein Artifact Home und einen Home Manager hinzu, der es in artifact referenziert, und füge dann /home und die anderen Home-Befehle hinzu.
  4. Füge für ein Chatformat ein Chat Format mit groups hinzu, etwa owner (Berechtigung group.owner, priority 10, format <gold>[Owner] <player><white>: <message>), und ein fallbackFormat.
  5. Veröffentliche, vergib die Berechtigungen und teste mit einem Spieler.
Nachrichten verwenden Legacy-Farbcodes

Nachrichten in Tiny Essentials und im Home Manager verwenden &-Farbcodes und Token im Stil {player}. Chatformate, die Tablist und die Menüs verwenden MiniMessage.

So funktioniert es​

Jeder Funktions-Entry wird gelesen, wenn er gebraucht wird. Verwende von jeder Art einen einzigen Entry (ein Tiny Essentials, einen Home Manager, ein Chat Format, ein Join Item, einen Scavenger): Die Erweiterung nimmt den ersten, den sie findet.

Konfiguration​

Neben den Entries stützt sich TinyEssentials auf diese Laufzeitregeln.

  • Teleport-Cooldown — /back und /tpa warten defaultTeleportCooldown Sekunden oder das größte cooldownSeconds unter den cooldownRules, deren Berechtigung der Spieler hat. Sofern allowMovement nicht aktiv ist, bricht Bewegung den Teleport ab. Teleports durch eine Enderperle oder eine Chorusfrucht-Landung werden nicht im /back-Verlauf gespeichert.
  • Vanish und Umschalter — die Zustände von Vanish, /msgtoggle und /tpatoggle werden am Spieler gespeichert und überstehen daher Neustarts und erneute Verbindungen.
  • Netzwerkfunktionen — Chat und die Tab-Liste verwenden Redis, wenn die MySQL-Erweiterung mit gemeinsamem Geltungsbereich läuft; andernfalls bleiben sie lokal.
  • Veraltete Felder in Tiny Essentials — die Namensfelder ...Command (msgCommand, flyCommand ...) und basePermission werden nicht angewendet: Befehlsnamen und Berechtigungen liegen an den Befehls-Entries. Diese Namensfelder erscheinen nur in Nutzungsmeldungen. Die Tab-Felder bossbarToggleCommand und scoreboardToggleCommand werden ebenfalls nicht als Befehle registriert.

Menüs​

TinyEssentials liefert Button-Typen für Seiten, die mit der GUI-Erweiterung gebaut werden.

MenüEntryButton-Typen
HomesHome Manager (Menüs im Entry selbst konfiguriert)Keine: Das Layout wird in homesMenu und homeEditorMenu festgelegt.
KalenderCalendar Menucalendar_button:DAY, WEEKDAY, EVENT, CALENDAR_SUMMARY, MONTH_NAV
SchnellreiseFast Travel Menutravel_button:REGION_TAB, DESTINATION, REGION_SUMMARY
WikiWiki Menuwiki_button:SECTION_TAB, ARTICLE, PAGE_NAV

Die Menüs für Kalender, Schnellreise und Wiki verwenden denselben Ansatz: ein gemeinsames open_gui-Chassis (baseMenuId), einen Pool von Layouts und Views. Indizierte Buttons wie DAY oder DESTINATION werden der Reihe nach aus den Daten gefüllt (das Raster ist eine Anzeigeobergrenze, überzählige Slots bleiben leer).

Das Homes-Menü hat Seiten mit Buttons für vorherige, nächste und Schließen, ein Füll-Item, ein Item für leere Home-Slots und einen Editor, der durch Klick auf ein Home geöffnet wird: teleportieren, im Chat umbenennen (tippe cancel, um abzubrechen), das Icon aus dem gehaltenen Item setzen, das Icon zurücksetzen und löschen.

Befehle​

Alle Befehle sind Brigadier-Befehle, von Entries registriert, sodass Clients eine Vervollständigung erhalten. Kein Befehl hat einen Alias. Ohne die passende Berechtigung ist der Befehl verborgen. Befehle, die Spieler als Ziel haben, akzeptieren einen Spielerselektor; für das Handeln an jemand anderem wird die passende Berechtigung .others benötigt, die beim Ausführen des Befehls geprüft wird.

Befehle für dich selbst und für Staff

BefehlBeschreibungBerechtigung
/fly [player]Schaltet den Flug um.tinyessentials.fly (andere: tinyessentials.fly.others)
/god [player]Schaltet Unverwundbarkeit um.tinyessentials.god (andere: .god.others)
/feed [player]Stellt Hunger und Sättigung wieder her.tinyessentials.feed (andere: .feed.others)
/heal [player]Stellt Gesundheit, Hunger und Luft wieder her und löscht Feuer und Frieren.tinyessentials.heal (andere: .heal.others)
/vanish [player]Schaltet die Unsichtbarkeit für andere Spieler um; bleibt nach einer erneuten Verbindung erhalten.tinyessentials.vanish (andere: .vanish.others)
/gamemode <survival|creative|adventure|spectator> [player]Ändert den Spielmodus.tinyessentials.gamemode (andere: .gamemode.others)
/speed <value> [walk|fly|sneak] [player] und /speed reset [walk|fly|sneak]Setzt die Geschwindigkeit von -20 bis 20. Funktioniert nur im Kreativmodus. Ohne Typ erhalten fliegende Spieler die Fluggeschwindigkeit, andere die Gehgeschwindigkeit. Für die Geschwindigkeit eines anderen Spielers wird .speed.others benötigt.tinyessentials.speed (andere: .speed.others)
/suicideTötet dich.tinyessentials.suicide
/repairRepariert das gehaltene Werkzeug, die Waffe oder Rüstung (keine Blöcke, keine unzerbrechlichen Items).tinyessentials.repair
/invsee <player>Öffnet das Inventar eines anderen Spielers. Zum Bearbeiten wird tinyessentials.inventory.edit benötigt.tinyessentials.inventory (Ziel: .inventory.others)
/pocketmenu <type> [--consume]Öffnet ein Vanilla-Menü: workbench, enchanting, anvil, smithing, grindstone, cartography, stonecutter, loom oder brewing. --consume lässt den Zaubertisch Level verbrauchen.tinyessentials.pocketmenu

Teleport-Befehle

BefehlBeschreibungBerechtigung
/backKehrt zu deinem vorherigen Ort zurück, mit Cooldown.tinyessentials.back
/tpa <player>Bittet darum, zu einem Spieler teleportiert zu werden.tinyessentials.tpa
/tpahere <player>Bittet einen Spieler, sich zu dir zu teleportieren.tinyessentials.tpahere
/tpaccept [player]Nimmt die letzte Anfrage an oder die des genannten Spielers.tinyessentials.tpaccept
/tpadeny [player]Lehnt die letzte Anfrage ab oder die des genannten Spielers.tinyessentials.tpadeny
/tpatoggleBeendet oder setzt den Empfang von Anfragen fort.tinyessentials.tpatoggle
/tppos <x> <y> [z]Teleportiert zu Koordinaten.tinyessentials.tppos
/tpallTeleportiert jeden Online-Spieler zu dir.tinyessentials.tpall
/getposZeigt deine Position, Rotation und Welt an.tinyessentials.getpos

Nachrichten

BefehlBeschreibungBerechtigung
/msg <player> <message>Sendet eine private Nachricht.tinyessentials.msg
/reply <message>Antwortet auf die letzte Unterhaltung.tinyessentials.reply
/msgtoggleBeendet oder setzt den Empfang privater Nachrichten fort.tinyessentials.msgtoggle

Homes — sie erfordern außerdem die basePermission des Home Managers, falls du eine setzt.

BefehlBeschreibungBerechtigung
/home [name]Teleportiert zu einem Home; ohne Namen zu dem Home namens home.tinyessentials.homes.teleport
/home list (oder ls)Öffnet das Homes-Menü.tinyessentials.homes.list
/home set|add|create|save [name]Speichert ein Home an deiner Position.tinyessentials.homes.set
/home delete|del|remove|rm [name]Löscht ein Home.tinyessentials.homes.delete
/sethome [name]Speichert ein Home.tinyessentials.homes.set
/delhome [name]Löscht ein Home.tinyessentials.homes.delete
/homesÖffnet das Homes-Menü.tinyessentials.homes.list

Kalender

BefehlBeschreibungBerechtigung
/calendarÖffnet den Kalender im aktuellen Monat. /calendar month <prev|next|current> <player> wird von Menü-Buttons verwendet.tinyessentials.calendar (leer lassen für keine)
/timefactGibt die Zeilen des verknüpften Time-Fact-Entrys aus.tinyessentials.timefact (leer lassen für keine)

Das Feld permission jedes Befehls-Entrys ist standardmäßig die Berechtigung aus den obigen Tabellen. Ändere den Befehlsnamen mit commandName.

Berechtigungen​

BerechtigungErlaubt
tinyessentials.<command>Die Verwendung des Befehls, wie oben aufgeführt (Standardwerte des Felds permission).
tinyessentials.fly.others, god.others, feed.others, heal.others, vanish.others, gamemode.others, speed.othersDen Befehl auf einen anderen Spieler anwenden.
tinyessentials.inventory.othersDas Inventar eines anderen Spielers mit /invsee öffnen.
tinyessentials.inventory.editItems im untersuchten Inventar verschieben.
tinyessentials.homes.bypass (bypassPermission)Home-Limits und Teleport-Cooldowns ignorieren.
tab.staffWird von <tab_staffonline> gezählt.
group.<name>Wählt die Tab-Gruppe und die Sortierung nach Gruppe aus.
Felder wie generalPermission, permission, cooldownRules, permissionLimitsBerechtigungen, die du in den Entries wählst.

Platzhalter​

TinyEssentials registriert zwei MiniPlaceholders-Expansions, nutzbar als MiniMessage-Tags.

PlatzhalterLiefert
<tab_online>Online-Spieler.
<tab_staffonline>Online-Spieler mit tab.staff.
<tab_worldonline>Spieler in der Welt des Betrachters.
<tab_memory_used> / <tab_memory_max>Verwendeter und maximaler Speicher in MB.
<tab_tps>Server-TPS (1 Minute) mit zwei Dezimalstellen.
<tab_date> / <tab_time>Echtes Maschinendatum (dd.MM.yyyy) und echte Uhrzeit (HH:mm:ss).
<tab_animation:name>Aktuelles Bild einer Tab-Configuration-Animation.
<calendar_date>Datum des Kalenders, zum Beispiel 3 Spring, an 12.
<calendar_time> / <calendar_time_12h>Spielzeit im 24- oder 12-Stunden-Format.
<calendar_day>, <calendar_month>, <calendar_month_index>, <calendar_year>, <calendar_weekday>Teile des Kalenderdatums.
<calendar_day_of_year>, <calendar_total_day>Tagesnummer im Jahr und seit dem Beginn.
<calendar_event>Titel des ersten Events von heute, leer, wenn keines.
<calendar_next_event>, <calendar_next_event_days>Titel des nächsten Events und Tage bis dorthin.

Jeder calendar-Platzhalter akzeptiert die ID eines Minecraft-Time-Entrys als Argument, zum Beispiel <calendar_date:my_calendar_id>; ohne sie wird der erste Kalender verwendet. Sie liefern einen leeren Text, wenn kein Minecraft-Time-Entry existiert.

Textfelder des Home Managers verwenden {home}, {limit}, {cooldown}, {count}, {world} und ähnliche Token, die in der Hilfe jedes Felds angegeben sind; TPA- und Nachrichtentexte verwenden {player}, {time}, {sender}, {receiver} und {message}.

Entries​

50 Einträge, aus dem Quellcode der Erweiterung generiert.

Aktionen3
Fakten3
Zielgruppen1
Befehle29
Platzhalter1
Artefakte2
Manifeste11

Fehlerbehebung​

TinyEssentials n'est pas configure : ajoutez une entree 'tiny_essentials' a une page. Ein Befehl lief ohne veröffentlichten Tiny-Essentials-Entry. Füge einen auf einer Static-Seite hinzu und veröffentliche.

Ein Befehl existiert nicht oder ist verborgen. Jeder Befehl ist ein Entry: Füge den passenden tinyessentials_..._command-Entry hinzu, veröffentliche und gib dem Spieler seine permission. Ein in commandName geänderter Befehlsname ersetzt den alten.

Les maisons ne sont pas configurees. Es gibt keinen Home-Manager-Entry. Bei Speicherfehlern (stockage des homes est indisponible) prüfe, ob das artifact des Home Managers auf ein Artifact Home zeigt.

Spieler können überhaupt nicht chatten. generalPermission des Chat-Format-Entrys ist gesetzt und dem Spieler fehlt sie: Die Chatnachricht wird abgebrochen. Lass sie leer oder vergib die Berechtigung.

/back meldet, es gebe keinen vorherigen Ort. Es werden nur Teleports aufgezeichnet, die durch Befehle und Plugins erfolgen. Enderperlen und Chorusfrüchte werden ignoriert, und der Verlauf behält die letzten backBufferSize Orte.

/speed meldet, es sei nur im Kreativmodus verfügbar. Der Befehl ist bewusst auf den Kreativmodus beschränkt, damit er nicht mit RPG-Stats kollidiert.

Die Tablist-Funktionen bewirken nichts. PacketEvents muss installiert sein. tablistFormattingEnabled, layoutEnabled, bossbarEnabled und scoreboardEnabled sind getrennte Schalter, und die letzten drei sind standardmäßig aus.

Die Kalender-Platzhalter sind leer. Es ist kein Minecraft-Time-Entry veröffentlicht, oder das Argument passt zu keiner vorhandenen Entry-ID. Ein Kalendermenü oder -befehl benötigt außerdem seine Verknüpfung minecraft_time.

Verwandte Erweiterungen​

  • MySQL — Redis für den Netzwerk-Chat und die Tab-Liste.
  • GUI — stellt die Menüs für Homes, Kalender, Schnellreise und Wiki dar.
  • Translate — übersetzt den Netzwerk-Chat für Spieler auf anderen Servern.
  • UiCore — die Wiki-Artikel können UiCore-Bilder referenzieren.