Zum Hauptinhalt springen

Änderungsprotokoll

Versionshinweise zu den Erweiterungen und Plugins von BTC Studio.

Jeder Eintrag nennt die Erweiterung, ihre Version, das Veröffentlichungsdatum und die Änderungen. Neue Einträge kommen hinzu, sobald Versionen erscheinen.

Demnächst

Diese Erweiterungen sind fertig und warten auf ihre Veröffentlichung. Sie stehen hier, damit du weißt, was kommt — es wurde noch kein Release veröffentlicht, und die folgenden Versionsnummern sind die, die diese Releases tragen werden.

Corpse Extension v0.1 — erstes Release

  • Leichen werden einmal pro Betrachter gerendert, wie die Entity-Displays der Engine selbst, sodass alle in der Nähe sie sehen; Modellanimation und Namensschilder laufen auf den Backends BetterModel, BTC Mob NPC und MythicMobs NPC.
  • Läuft auf Folia: die gesamte Planung geht über einen Folia-fähigen Scheduler, und Item-Drops, Erfahrungskugeln und Partikel laufen auf der Region, der die Leiche gehört.
  • Das Inventar einer Leiche übersteht einen Neustart, einen Absturz oder ein Reload. Leichen werden in MySQL gespeichert, sofern verfügbar, sonst im Plugin-Ordner, und beim Start wiederhergestellt.
  • onlyOwnerCanLoot greift wirklich, und das Plündern wird an die Entity-ID der Leiche selbst gebunden statt an jeden Rechtsklick im Umkreis von vier Blöcken.
  • Eine Leichen-Definition wird pro Tod nach Welt und Priorität gewählt, und ihre Lebensdauer wird genau einmal aufgelöst, auf dieser Leiche.
  • Die Events on_corpse_spawn, on_corpse_loot und on_corpse_expire laufen durch die Trigger-Pipeline der Engine und veröffentlichen Besitzer, Beute und Position der Leiche als Kontext.
  • displayName, showDisplayName, dropOnInteract, renderArmor, playDeathAnimation und deathAnimationName werden alle beachtet, und die meisten Einstellungen sind dynamische Werte, lassen sich also über Placeholder und Facts steuern.
  • Eine clientseitig gerenderte Leuchtkontur mit konfigurierbarer Farbe, und Leichen-Sounds, die pro Spieler in der Nähe gesendet werden statt weltweit.
  • Die Facts has_corpse und corpse_count, die Audience corpse_owner_audience, corpse_waypoint mit Entfernung und Richtung zur eigenen Leiche, corpse_recovery_objective sowie corpse_admin_command mit den Unterbefehlen list und clear.
  • Ein Beuteschutz-Fenster, nach dem die Leiche sich für alle öffnet.

Custom Biome Extension v0.5

  • Eigene Biome existieren sofort. Eine Definition wird beim Speichern direkt in die lebende Registry eingetragen, statt erst nach einem Serverneustart. Das erzeugte Datapack ist nun die Persistenzschicht und nicht mehr der einzige Weg.
  • Behoben: der Server ignorierte das erzeugte Datapack, weil dessen Pack-Format auf einen alten Wert festgeschrieben war und es in einen Ordner geschrieben wurde, den der Server nie liest.
  • Behoben: baseBiome hatte außer bei plains keine Wirkung. Biome werden jetzt aus dem Basisbiom gebaut, das der Server hält, und mit dessen eigenem Codec kodiert, sodass Mob-Spawns, Features und Carver geerbt statt verloren werden.
  • Behoben: Biomänderungen rissen Löcher in die Welt. Das Refresh sendete Chunk-Unload-Pakete, denen der Server nie ein erneutes Senden folgen ließ. Clients erhalten nun ein Biom-Update, das aus den echten Chunk-Daten gebaut wird.
  • Behoben: leave_biome_event löste nie aus. Die Enter- und Leave-Listener überschrieben gegenseitig ihren Zustand, das Ergebnis hing also von der Registrierungsreihenfolge ab.
  • Behoben: das Malen schrieb jeden Block einer Säule statt einen pro 4x4x4-Zelle, und tat das vom aufrufenden Thread aus. Schreibvorgänge werden jetzt auf der Region geplant, der der jeweilige Chunk gehört.
  • Ein Biom, das der Server nicht serialisieren würde, wird nun schon bei der Registrierung abgelehnt, unter Nennung des schuldigen Werts. Zuvor wurde es angenommen und zerbrach danach jeden Login.
  • Biom-Overlays pro Spieler (player_biome_overlay_action): einem einzelnen Spieler ein anderes Biom zeigen, ohne die Welt anzufassen oder andere zu beeinflussen.
  • Regionen bemalen (paint_biome_region_action) mit Snapshots, und restore_biome_action, um eine Region zurückzusetzen.
  • biome_transition_cinematic: das Biom, das ein Spieler sieht, im Verlauf einer Cinematic verändern.
  • custom_biome_preset: Farben und visuelle Attribute zwischen Biomen teilen, pro Definition überschreibbar.
  • explore_biome_objective und biome_discovery_fact: Quests, die man durch das Besuchen von Biomen abschließt.
  • Jeder lesende Eintrag erhält eine source-Option, die zwischen dem wählt, was dem Spieler gezeigt wird, und dem, was die Welt enthält.
  • Entfernt wurden /tw biome setcolor, das Wegwerf-Biome erzeugte, die nie persistiert wurden, und der Fact-Modus HASH, dessen Wert über Neustarts hinweg nicht stabil war.
  • Das Jar der Erweiterung schrumpft von 2,6 MB auf 230 KB: es bündelt die Bibliotheken nicht mehr, die der Server ohnehin bereitstellt.

Enchantment Creator Extension v0.8

  • levelMode an einer Mechanik vergleicht runOnLevel als exaktes Level, als Minimum (AT_LEAST) oder als Maximum (AT_MOST). Zuvor war nur exakte Gleichheit möglich.
  • eventPhase führt die Aktionen einer Mechanik während des laufenden Bukkit-Events aus, sodass ein Abbrechen des Events oder eine Schadensänderung tatsächlich wirkt. Für eingereihte Typewriter-Interaktionen auf false setzen.
  • clientSideEffects wird clientbewusst, mit einer client_particle_effect-Aktion: das BTC-Custom-Artefakt nutzt den PacketEvents-Renderer, sofern verfügbar, das öffentliche Paper-Artefakt einen spielerbezogenen Bukkit-Fallback.
  • Registry-Schlüssel leiten sich jetzt von id ab. Der bisherige name bleibt beim Laden bestehender Seiten und Items als Alt-Alias erhalten, es muss also nichts neu angelegt werden.
  • Das öffentliche Artefakt hat bewusst keinerlei Abhängigkeit zu BTC-CORE oder BTC Velocity: es läuft auf Paper 1.21.x mit Java 21, gebaut mit JDK 25 auf Java-21-Bytecode.

Numerical Storage Extension v0.9

  • transactionMode in der Transaktionskonfiguration: INTERNAL behält den Weg über PlaceholderAPI plus Konsolenbefehle, VAULT geht direkt über die Vault-Economy-API und ignoriert amountPlaceholder sowie die Befehlsfelder.
  • addCommand und removeCommand waren vertauscht dokumentiert. addCommand schließt eine Einzahlung in den Speicher ab und wird vor der persistenten Änderung geprüft; removeCommand schließt eine Auszahlung ab.
  • Die Persistenz ist jetzt asynchron, mit Mutations-Locks pro Artefakt und einem kurzlebigen Cache, sodass zwei gleichzeitige Einzahlungen sich nicht mehr in die Quere kommen.
  • Speicherdateien wechseln auf JSON-Schema Version 2 unter einem technischen Artefaktpfad. Eine alte Datei auf Basis der semantischen artifactId wird unter backups/numericalstorage/ gesichert und beim ersten Zugriff migriert — sichere vor dem Update das Typewriter-Verzeichnis assets/.
  • artifactId ist eine generierte technische Kennung: leer lassen, Typewriter füllt sie aus.
  • Placeholder erhalten ein explizites Definitionsargument (%typewriter_ns_balance_bank%), was die alte Mehrdeutigkeit beim Trennen an Unterstrichen beseitigt, wenn eine Definitions-ID selbst welche enthält.
  • Optionale profilbewusste Schlüssel, wenn die Profiles-Integration installiert ist.

2026-08-07

QuestCodex Extension v2.8

  • Echte Minecraft-Fortschritte. Der neue Eintrag advancement_definition schreibt echte Fortschritte in ein Datenpaket, das die Erweiterung selbst verwaltet. Sie erscheinen im Vanilla-Fortschrittsfenster mit eigenem Reiter, Baum, Rahmen und Einblendungen. parent verweist auf eine andere Definition, sodass der Baum im Node-Editor gezeichnet wird.
  • grant_advancement vergibt einen Fortschritt oder nimmt ihn zurück und geht dabei die Elternkette entlang, damit ein Kind nie unter einem nicht erreichten Elternteil erreicht wird.
  • autoGrant vergibt einen Fortschritt beim ersten Tick des Spielers. An einer Wurzel ist das der Grund, warum ihr Reiter existiert, bevor irgendetwas erreicht wurde.
  • Quest-Reihenfolge korrigiert: Eine verschachtelte Quest liest ihre Reihenfolge aus ihrer eigenen Unterkategorie, Quests ohne ausdrückliche Reihenfolge fallen nicht mehr zusammen, und das Hinzufügen einer Quest löscht ihre bestehende Reihenfolge nicht mehr.
  • Quest-Marker sind paginiert, der Sortiermodus gilt pro Spieler, und die Mehrfachverfolgung übersteht eine erneute Anmeldung in der gewählten Reihenfolge.

Release v2.8

OmniGUI Extension v0.11

  • Gegenstands-Tooltips, mit einem Schalter hideVanillaItemStats im GUI-Konfigurationseintrag.
  • Ein paginiertes Layout kann über die neue Rolle INDICATOR eine Seitenanzeige tragen.
  • Menüs werden beim Serverstart geprüft: Ein Slot außerhalb der Grenzen, eine fehlende Vorlage oder ein unbekannter Schaltflächentyp wird in der Konsole benannt, bevor ein Spieler das Menü öffnet.
  • <shift:N> funktioniert ohne CraftEngine, über die mitgelieferte Magic-Digit-Schriftart.
  • count und repeatY sind als Wiederholungszähler für Slots dokumentiert, nicht als Stapelgröße.

Release v0.11

Shop Extension v1.3

  • Ein Shop kann einen Spieler nicht mehr unter null bringen. Drei voneinander unabhängige Wege ließen das zu.
  • Ein nicht lesbarer Kontostand wird nicht mehr als null gewertet, und formatierte Beträge wie 12.5k werden korrekt gelesen.

Release v1.3

2026-08-03

QuestCodex Extension v2.7

  • Anzeigemodi für Wegpunkte hinzugefügt: WORLD_DIRECTIONAL projiziert Marker auf eine Kugel um die Augen der Spielerin oder des Spielers, entlang der tatsächlichen Richtung des Ziels, TARGET_ANCHORED platziert sie am Ziel, und ADAPTIVE blendet zwischen beiden über. HUD_LOCKED bleibt der Standard, bestehende Seiten ändern sich also nicht.
  • Konstante scheinbare Größe und winkelbasierte Entzerrung hinzugefügt, damit mehrere Marker lesbar bleiben, wenn ihre Ziele auf einer Sichtlinie liegen.
  • Darstellung mehrerer Ziele in einem einzigen Wegpunkt-Eintrag hinzugefügt, mit den neuen Auswahlwerten ALL und ONE_PER_QUEST für verfolgte Ziele sowie einer Obergrenze maxTargets.
  • Behoben, dass Wegpunkte die Mehrfachverfolgung ignorierten: Ziele sekundär verfolgter Quests wurden nie aufgelöst, sodass nur die Hauptquest einen Marker erzeugte.
  • quest_codex_locator_bar hinzugefügt: stellt dieselben aufgelösten Ziele als Punkte der Vanilla-Ortungsleiste unter Minecraft 1.21.6+ dar, ohne eine einzige Entität zu erzeugen.

Version v2.7

2026-08-02

QuestCodex Extension v2.6

  • Dauerhafte Wiederherstellung unterbrochener Typewriter-Dialoge und -Cinematics hinzugefügt, einschließlich des zuletzt gezeigten Cinematic-Bildes. Die Wiederherstellung bewahrt nun die erfasste Momentaufnahme, wenn Typewriter nach einer Trennung seine Abbau-Ereignisse auslöst.
  • Dauerhafte Verfolgung mehrerer Quests hinzugefügt, mit einem Menü der verfolgten Quests, eigenen Platzhaltern und einem öffentlichen Beispiel mit zwei Quests.
  • Rein textbasierte clientseitige Wegpunkte hinzugefügt, mit konfigurierbarem Symboltext, zentrierten Block-Displays, zentrierter Beacon-Rotation, ebenenbasierter Zielausrichtung, weicher Interpolation, Platzierung nahe am Ziel und konfigurierbarem horizontalem Sichtkegel.
  • Die alten Wegpunkt-Ebenen (Item-Display und Richtungspfeil) wurden vor ihrer ersten Veröffentlichung entfernt.

Version v2.6

OmniGUI Extension v0.10

  • Layout-Engines Flex und Composite hinzugefügt, für responsive Slot-Platzierung und zusammengesetzte Menü-Ebenen.
  • Wiederverwendbare adressierbare Ansichten hinzugefügt, mit vererbten Layout-Pools, Standardansichten, Brotkrumen, Ansichts-Tags und optionaler Verlaufsintegration.
  • Ansichtsbewusste Schema-Migration und QuestCodex-Integration hinzugefügt, dazu Metadaten für die Maven-Veröffentlichung.
  • Behoben: Ansichtswechsel bauen Menüs nun ohne Schließen-/Öffnen-Flackern neu auf, und das Schließen des Inventars ist Folia-sicher.

Version v0.10

Shop Extension v1.2

  • Die öffentliche Shop-Erweiterung wurde gegen OmniGUI v0.10 neu gebaut und geprüft.
  • Bestehende dynamische Shop-Layouts, Navigationsverlauf, Füller-Handhabung, Bestands- und Limitregeln sowie eigene Shop-Button-Handler bleiben erhalten.
  • Von Shop Extension v1.1 ist keine Migration nötig.

Version v1.2

MythicMobsNPC Extension v0.4.6

  • Behoben, dass eine Skalierungsänderung bei Modellen ohne jede Animation ignoriert wurde — analog zur BetterModel-Erweiterung.
  • Vanilla-Mob-Varianten (Katze, Fuchs, Wolf, Dorfbewohner und dergleichen) werden nun einmalig in der Konsole gemeldet statt stillschweigend ignoriert: Sie gehören zur MythicMobs-Konfiguration, die die Identität des Mobs besitzt und sie bei jedem Respawn überschreiben würde.
  • Behoben, dass ein einzelner fehlgeschlagener Dateneintrag alle weiteren Einträge desselben Stapels verwarf, was einen NPC ohne jegliche konfigurierte Daten zurücklassen konnte.
  • Leuchteffekt und Ausrüstung werden nun am Modell gesetzt, nicht mehr nur am Mob. Der Körper des Mobs liegt hinter dem Modell verborgen, weshalb das Setzen allein am Mob nichts sichtbar machte.
  • Ausrüstung meldet nun in der Konsole, wenn das Modell keinen Item-Knochen besitzt, statt stillschweigend nichts zu tun.
  • Feuer wird jede Sekunde erneut gesetzt, damit es nicht von selbst erlischt, und meldet, wenn BetterModel den Körper verbirgt, auf dem die Flammen gezeichnet werden.
  • Behoben: Das Namensschild ruckelte, wenn der NPC läuft oder einem Wegenetz folgt. Die Textanzeige interpoliert nun zwischen Aktualisierungen, statt in Sprüngen zu teleportieren.

BetterModel Extension v1.3

  • Behoben, dass die Modellskalierung bei Modellen ohne jede Animation ignoriert wurde. BetterModel berechnet die Transformation eines Modells nur neu, solange eine Animation läuft, sodass eine zur Laufzeit gesetzte Skalierung ein statisches Modell nie erreichte. Die Erweiterung erzwingt die Neuberechnung nun selbst.
  • Dieselbe Korrektur gilt für den Modellversatz, der denselben Codepfad nutzte.
  • Entitäts-Dateneinträge erreichen nun tatsächlich das Modell, statt verworfen zu werden. Unterstützt: Leuchteffekt, Trankeffektfarbe (als Item-Färbung dargestellt), Helligkeit, Billboard-Beschränkung, Interpolationsdauer, Translation, 3D-Skalierung, Boxgröße, Ausrüstung und Feuer.
  • bettermodel_bone_appearance hinzugefügt: eine knochenweise Variante der Einstellungen für Leuchten, Färbung, Verzauberungsschimmer und Helligkeit, mit demselben Kriteriensystem wie bettermodel_bone_visibility.
  • Ausrüstung wird den Hand- und Kopf-Item-Knochen von BetterModel zugeordnet. Rüstungsplätze werden einmalig in der Konsole gemeldet statt stillschweigend ignoriert, denn Rumpf und Beine eines Modells tragen dessen eigene Geometrie.
  • Eine ungleichmäßige 3D-Skalierung warnt nun, statt stillschweigend nur eine Achse zu verwenden: BetterModel unterstützt ausschließlich gleichmäßige Skalierung.
  • Jeder Dateneintrag ohne Bedeutung für ein 3D-Modell (Posen, Mob-Varianten, Zuchtstatus …) wird nun einmalig in der Konsole gemeldet, statt stillschweigend verworfen zu werden.
  • Leuchten, Färbung, Helligkeit, Billboard, Translation und Ausrüstung überstehen nun das Neuladen eines Ressourcenpakets oder einen Respawn, statt auf das Standardaussehen zurückzufallen.
  • Ausrüstung meldet in der Konsole, wenn das Modell keinen Knochen mit dem Tag ri, li oder ph besitzt, statt stillschweigend nichts zu tun — das ist der übliche Grund, warum ein Item nicht erscheint.
  • Feuer wird nun an der Interaktions-Entität des NPCs gezeichnet statt an den Modellknochen: Der Client skaliert die Flamme anhand der Bounding-Box der Entität, und eine Display-Entität hat keine, weshalb die Flammen in Größe null gezeichnet wurden.

Nexo Extension v1.0

  • Fakten hinzugefügt, um zu prüfen, was die Spielerin oder der Spieler in der Hand hält, im Inventar trägt, anschaut oder worauf sie oder er steht.
  • Variablen hinzugefügt, die ID und Eigenschaften des anvisierten Items, Blocks und Möbels liefern.
  • Je eine Aktion zum Geben und Entfernen eines Items hinzugefügt, beide über die Nexo-Item-ID.
  • Ereignisse für Aufheben, Fallenlassen und Verbrauchen von Items hinzugefügt.
  • Interaktions- und Schadensereignisse für eigene Blöcke und Möbel hinzugefügt, dazu ein Beute-Ereignis.
  • Ereignisse geben ihre Daten (Block-ID, Position, Item in der Hand) nun an das Nachfolgende weiter, sodass ein Dialog oder eine Aktion sie direkt verwenden kann.

CraftEngine Extension v1.0

  • Questziele funktionieren. Sie lassen sich an eine Quest hängen, speichern ihren Fortschritt und können beim Abschluss eine Sequenz auslösen.
  • Fakten für Abklingzeiten, für gehaltene und getragene Items sowie für den anvisierten Block oder das anvisierte Möbel hinzugefügt.
  • Variablen hinzugefügt, die IDs, Item-Eigenschaften und die Liste der geladenen Inhalte liefern.
  • Je eine Aktion zum Geben und Entfernen eines Items hinzugefügt, beide über die CraftEngine-Item-ID.
  • Ereignisse für Aufheben, Fallenlassen und Verbrauchen von Items hinzugefügt.
  • Ereignisse für Platzierungsversuche und für Treffer auf Möbel hinzugefügt.
  • Ereignisse geben ihre Daten nun an das Nachfolgende weiter.

ItemsAdder Extension v1.0

  • Block- und Möbelereignisse lesen ItemsAdder nun direkt aus, statt sie aus Vanilla-Ereignissen abzuleiten. Das macht sie zuverlässig und beseitigt eine kurze Verzögerung, die eine Auslösung verpassen oder wiederholen konnte.
  • Fakten für gehaltene und getragene Items, verbleibende Nutzungen, eigene Haltbarkeit, HUD-Sichtbarkeit und Pflanzenwachstum hinzugefügt.
  • Variablen hinzugefügt, die IDs, Item-Eigenschaften und Schriftbilder liefern.
  • Je eine Aktion zum Geben und Entfernen eines Items hinzugefügt, beide über die ItemsAdder-Item-ID.
  • Ereignisse für Aufheben, Fallenlassen und Verbrauchen von Items hinzugefügt.
  • Interaktionsereignisse, ein Ereignis vor dem Platzieren von Möbeln und ein Todesereignis für eigene Entitäten hinzugefügt.
  • Ereignisse geben ihre Daten nun an das Nachfolgende weiter.
  • Questziele korrigiert, analog zur Nexo-Erweiterung.

2026-07-26

QuestCodex Extension v2.5

  • Dauerhafte Verfolgung mehrerer Quests über den Eintrag quest_codex_tracking_artifact hinzugefügt.
  • Kategorie-Menümodus @tracked und dynamische Marker TRACKED_QUEST_SLOT hinzugefügt.
  • /tw codex tracked und den internen GUI-Befehl codex:tracked hinzugefügt.
  • PlaceholderAPI-Platzhalter für die Anzahl verfolgter Quests, das Limit, die Hauptquest, indizierte verfolgte Quests, Status, Ziele und Prioritäten hinzugefügt.
  • Aufbau des öffentlichen Seitenpakets dokumentiert: Hauptmanifest, statisches Verfolgungs-Artefakt, Questdefinitionen und GUI-Einstellungen.

OmniGUI Extension v0.9

  • Automatische Schema-Migration öffentlicher Seiten für Inline-Speicherung und alte Paginierungsfelder hinzugefügt.
  • Das kompakte Schema storagePool / storageId und navigationButtons dokumentiert, mit dem Veröffentlichungshänger im Typewriter-Editor reduziert werden.
  • Das empfohlene Muster referenzierter Menüs für große QuestCodex-Menüs klargestellt.