• v0.5.0 e66ae1f5b4

    JonKazama-Hellion released this 2026-05-02 16:43:04 +00:00 | 302 commits to main since this release

    The settings window has been pulled apart and rebuilt around eight themed tabs instead of the twelve
    organic ones it grew into. The default tab layout now spawns a sensible six-tab structure on first run
    instead of a single catch-all, and a few long-standing rough edges around opacity, fonts and the
    24h-clock toggle are gone.

    What changed

    Settings UX

    • Twelve tabs collapsed into eight: General, Appearance, Window, Chat, Tabs, Privacy, Database,
      Information
    • Theme and font controls moved out of the Privacy tab into Appearance where they belong
    • Auto-Tell-Tabs settings, message preview and emote controls now live under one Chat tab with
      collapsible sections
    • About and Changelog merged into a single Information tab
    • Hover help markers replace the wall-of-text descriptions across every section
    • Help marker tooltips stay readable even on disabled settings, so you can see why something is greyed
      out
    • Section headings start collapsed by default

    Default tab layout

    On a fresh install or after the v10 wipe migration the plugin spawns six themed tabs out of the box:

    • General — player chat plus active-gameplay events (NPC dialogue, loot, crafting, gathering,
      party finder pings)
    • System — technical noise (System, Error, Echo, login/logout, retainer sales, alarms,
      orchestrion, glamour notifications, sign messages)
    • Free Company — FC chat plus FC announcements and login/logout
    • Party — Party, CrossParty, Alliance, PvP team plus loot rolls
    • Beginner — Novice Network (only when Show Novice Network is enabled)
    • Linkshell — all eight linkshells and all eight cross-world linkshells together. The Tabs
      settings tab carries a hint recommending one tab per shell once you outgrow this combined view
    • Tell Exclusive — TellIncoming and TellOutgoing as a safety-net catch-all in case Auto-Tell-Tabs
      misses one

    Configuration migration

    • Bumps from version 9 to version 10 as a wipe migration
    • The old config file is copied to pluginConfigs/HellionChat.json.pre-v10-backup before the new
      defaults are written
    • A 25-second notification on first start explains the reset
    • Chat history, the message database and the existing tabs that survived the wipe (none, by design)
      are not touched

    Polish from the pre-release review

    • The 24h clock checkbox actually flips the format now. The previous code passed null culture which
      on a German system locale always rendered 24h regardless of the toggle
    • Hellion theme opacity now drives the chat-window background as well; the legacy WindowAlpha slider
      is disabled while the theme is active so the two opacity controls no longer fight each other
    • Ticking Use the Hellion font now flips Custom fonts off so the two mutually-exclusive font
      stacks are no longer both shown as active
    • Window title bar is enabled by default so a fresh install shows the drag handle and hide button
    • Max lines to render defaults to 5000 instead of 10000
    • EmoteCache resets its loading state on exception so a network blip no longer permanently disables
      emote loading until plugin reload
    • Race-flag fix on the retention sweep, dead-key cleanup in HellionStrings, plus a saved-policy hint
      on the manual retention button

    Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).

    Downloads
  • v0.4.0 d4aa3971c5

    JonKazama-Hellion released this 2026-05-02 12:48:50 +00:00 | 326 commits to main since this release

    Hellion Chat 0.4.0 — Auto-Tell-Tabs

    Auto-Tell-Tabs lets you turn each /tell into a session-only tab dedicated to that conversation partner. The original use case is the FFXIV club greeter who has to track 5–15 parallel "hi, welcome" exchanges; everyone else can disable the feature in one click and go back to a single Tell Exclusive tab.

    What lands in this release

    • Auto-spawn temp tab Name@World on every /tell (incoming and outgoing)
    • Tab limit (default 15, range 1–50) with LRU drop that prefers greeted tabs first, then sorts by last activity
    • History preload from the local message store (default 20 tells, range 0–100) with a — Earlier conversations — separator above the live tell that triggered the spawn
    • Optional greeter affordance: a "mark as greeted" toggle button next to each temp tab that dims the tab name and lets you flip the status. Off by default — only greeters see it
    • Section header "Active Tells (n)" in the sidebar between persistent tabs and the temp tabs, with a compact-mode toggle for users who prefer just a thin separator
    • Settings UI under Chat (toggle / limit / compact / greeted-toggle) and Privacy (history preload count). The new sections use hover-tooltip help markers instead of the wall-of-text descriptions Chat 2 settings normally use
    • Save and load filters strip temp tabs from the on-disk config, so a crash or a sidebar-mode toggle never persists or wipes them

    Compatibility note

    If XIV Messanger or another plugin is suppressing direct messages, disable its Suppress DMs option so Hellion Chat can receive tells and open the auto tabs. Plugins that call cm.PreventOriginal() on tells stop those messages from reaching ChatGui.ChatMessageUnhandled, which is the event Hellion Chat (and Chat 2) subscribe to.

    Migration

    Configuration version bumps from 8 to 9 with a one-shot notification on first start. Defaults are seeded by property initialisers, so existing users keep their persistent tabs untouched and pick up the feature at the new defaults (Auto-Tell-Tabs on, limit 15, preload 20, compact off, greeted-toggle off).

    The vertical sidebar tab view becomes the default for fresh installs; existing users keep their saved preference (your SidebarTabView setting in pluginConfigs/HellionChat/HellionChat.json is respected).

    Credits

    Inspired by the per-sender tab pattern in XIV InstantMessenger (NightmareXIV / Limiana, AGPL-3.0). No code was ported across the licence boundary; only the architectural concept influenced this design. The implementation is built from scratch on top of Chat 2's existing tab and matching infrastructure.

    Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).

    Downloads
  • v0.3.1 2736551505

    JonKazama-Hellion released this 2026-05-02 02:11:13 +00:00 | 351 commits to main since this release

    Was sich geändert hat

    Schneller Patch-Release. Cherry-Pick von Infis Upstream-Commit ff899ff ("Fix a regression from API 15 updates") aus dem ChatTwo-Repo.

    Die Emote- und Top100-Datentypen für den BetterTTV-Cache wurden von public Fields auf public Properties umgestellt. Hintergrund: System.Text.Json unter dem API-15-Toolchain ehrt das
    [JsonPropertyName]-Attribut nur noch auf Properties, nicht mehr auf Fields. Mit der bisherigen Field-Variante hat der Deserializer jeden geladenen Emote in leere Default-Werte zurückgegeben, was bedeutet:
    BetterTTV-Emotes waren auf frischen Installationen seit der API-15-Migration faktisch kaputt.

    Der Fix sind sechs Zeilen Code und passt sauber neben unseren defensiven Null-Check und das Path-Traversal-Hardening von 0.3.0.

    Credits

    Fix kommt von Infi vom Upstream-ChatTwo-Repo. Der Cherry-Pick wurde mit -x ausgeführt, also bleibt seine Authorship auf dem Commit erhalten, und unter dem Commit-Body steht der Ursprungs-Hash zur
    Nachverfolgung. Danke fürs Aufspüren des Regressions im Upstream-Code.

    Installation

    Update kommt automatisch über das Custom-Repo, sobald die GitHub-Release-Assets oben hochgeladen sind. Keine Aktion nötig.

    Basiert auf Chat 2 1.35.5 (upstream Infiziert90/ChatTwo, EUPL-1.2).

    Downloads
  • v0.3.0 02cbfff748

    JonKazama-Hellion released this 2026-05-02 02:02:28 +00:00 | 353 commits to main since this release

    Was sich geändert hat

    Diese Version schließt die offenen Audit-Punkte aus dem 0.2.0-Cleanup und vollendet den Übergang zu einem eigenständig gebrandeten Fork. Slash-Commands sind umbenannt, das Theme passt jetzt zur
    Hellion-Online-Media-Brand-Palette und die About-Tab-Texte sind vollständig in EN+DE lokalisiert.

    Slash-Commands (Breaking Change)

    Die Befehle wurden umbenannt damit sie nicht mehr mit dem Upstream-Plugin kollidieren:

    • /chat2/hellion
    • /chat2Viewer/hellionView
    • /clearlog2/clearhellion
    • /chat2Debugger/hellionDebugger (intern)
    • /chat2SeString/hellionSeString (intern)

    Wer Macros auf den alten Namen gebunden hat muss diese anpassen. Wenn du auch das Upstream-Plugin Chat 2 installiert hast, funktionieren die alten Befehle dort weiter.

    Audit-Hardening

    • Privacy-Filter-Hinweis macht jetzt explizit: der Filter wirkt nur auf Storage, nicht auf die Live-Chat-Anzeige
    • EmoteCache verweigert Schreiben außerhalb seines eigenen Verzeichnisses, falls eine Drittanbieter-API mal kompromittiert wird
    • Retention-Sweep ist serialisiert. Der 24h-Auto-Sweep und der manuelle Button können nicht mehr parallel die SQLite-Connection beanspruchen
    • DbViewer-Paginierung mit int-Konstante und passendem SQL-Parameter-Namen (kleine Konsistenzkorrekturen)

    Visuelle Identität

    • Theme-Palette auf Arctic Cyan + Ember Orange aus der Hellion-Online-Media-BRANDING.md umgestellt
    • Aktive Tabs und Fenster-Titelbalken nutzen Brand-Dark-Teal als Identitätsfarbe statt Slate-Violet
    • Resize-Grips und Scrollbar-Grabs leuchten in Ember Orange statt Industrial Amber

    About-Tab

    • Neuer "Why this fork exists"-Block mit Mission-Statement in neutraler Tonart. Chat 2's Voll-Historie-Default wird als richtig für die meisten Nutzer beschrieben, dieser Fork wählt einen kleineren Default-Footprint
    • Vollständige Lokalisierung (EN+DE) der Hellion-spezifischen Sektionen
    • Webinterface-Abwesenheit als Fokus-Mismatch beschrieben (anderer Use-Case, erheblicher Umbau), nicht als Sicherheitsmangel
    • Translator-Liste am Tab-Ende ist auf kleineren Settings-Fenstern wieder erreichbar

    Installation

    Custom-Repo-URL in /xlsettings → Experimental (falls noch nicht):
    https://raw.githubusercontent.com/JonKazama-Hellion/HellionChat/main/repo.json

    Update erscheint automatisch in der Plugin-Liste.

    Basiert auf Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).

    Downloads
  • v0.2.0 705c7d3116

    JonKazama-Hellion released this 2026-05-02 00:30:42 +00:00 | 364 commits to main since this release

    Was sich geändert hat

    Nach einem internen Security- und Konsistenz-Audit wurde das vom Upstream geerbte Webinterface komplett entfernt. Es konnte nicht auf das Datenschutz-Niveau gehärtet werden, das Hellion Chat standardmäßig zusichert: 5-stelliger numerischer Auth-Code aus System.Random, Bind auf alle Netzwerk-Interfaces per Default, Cookies ohne Security-Flags und ein Server-Sent-Events-Stream der den Privacy-Filter umgangen hat. Der Härtungs-Aufwand stand in keinem Verhältnis zum Nischen-Use-Case.

    Konkrete Änderungen

    • Settings-Tab "Webinterface" entfernt, alle zugehörigen Configuration-Felder gelöscht (alte Einträge fallen beim nächsten Save automatisch aus dem JSON)
    • Kompletter ChatTwo/Http-Tree, das gebündelte Svelte-Frontend und der WebinterfaceUtil-Helper sind weg
    • Watson.Lite (HTTP-Server) und Newtonsoft.Json (nur vom Webinterface-Wire-Format genutzt) raus aus den Package-References
    • DBViewer "Chat2 JSON Export"-Button entfernt — er nutzte das Webinterface-Message-Protokoll. Der Privacy-Tab Export deckt mit Markdown, JSON und CSV plus Channel- und Datums-Filter dasselbe Bedarfsspektrum
      sauberer ab
    • About-Tab vermerkt die bewusste Abwesenheit, damit User aus Chat 2 nicht danach suchen
    • Configuration-Version Bump 7 → 8 mit einmaliger Notification (EN + DE)

    Privacy-Filter, Retention-Sweep, First-Run-Wizard und Exporter sind unverändert. Bestehender Chat-Verlauf bleibt erhalten.

    Diff-Bilanz: 58 Dateien, +104 / −4.779 Zeilen.

    Installation

    Custom-Repo-URL in /xlsettings → Experimental eintragen falls noch nicht geschehen:
    https://raw.githubusercontent.com/JonKazama-Hellion/HellionChat/main/repo.json

    Update erfolgt automatisch in der Plugin-Liste.

    Basiert auf Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).

    Downloads
  • v0.1.2 23e0f37dfb

    JonKazama-Hellion released this 2026-05-01 22:13:54 +00:00 | 370 commits to main since this release

    About-Tab im Hellion-Branding, DBViewer-Polish (Cherry-Pick aus Upstream), README im Hellion-Projekt-Stil. Tester bekommen das Update automatisch in der Plugin-Liste angeboten.

    Downloads
  • v0.1.1 135f7a9bf7

    JonKazama-Hellion released this 2026-05-01 21:42:37 +00:00 | 374 commits to main since this release

    Plugin icon now in the bundle, migration from Chat 2 robust against locked files, README troubleshooting section. Existing testers get an in-place update — Dalamud will offer it on the next plugin-list refresh.

    Downloads
  • v0.1.0 d8802881c8

    JonKazama-Hellion released this 2026-05-01 20:51:17 +00:00 | 378 commits to main since this release

    First public release. Install via the custom repo URL in the README.

    Downloads