-
v0.5.4 Stable
released this
2026-05-02 21:57:26 +00:00 | 475 commits to main since this releaseDownloads
-
v0.5.3 Stable
released this
2026-05-02 21:46:26 +00:00 | 476 commits to main since this releaseDownloads
-
v0.5.2 Stable
released this
2026-05-02 21:33:22 +00:00 | 478 commits to main since this releaseDownloads
-
released this
2026-05-02 19:34:58 +00:00 | 503 commits to main since this releasePure hardening and polish patch on top of 0.5.0. No new features, no migration, no Configuration
version bump. Eight backlog items from the v0.5.0 codebase review collected into one release.What changed
Settings UX
- Cleanup preview in the Privacy tab now flags itself as out-of-date when you edit the whitelist after
the last refresh. The numbers grey out, a stale hint appears and the Refresh button is visually
emphasised so you know to recalculate before applying - Performance section in the General tab moves from a wall-of-text description to the standard
HelpMarker tooltip used everywhere else in v0.5.0 - Tabs and Database settings tabs now pull their display name from HellionStrings instead of the
upstream Language bundle, so all eight tabs share one i18n source
Auto-Tell-Tabs
- Greeted tabs now also dim their selection and hover backgrounds in the sidebar, not just the tab
name. The visual distinction at a glance is much stronger when you have a stack of greeted and
ungreeted tabs side by side
Hardening
- FontChooser results from the threadpool are now marshalled onto the framework thread via
Plugin.Framework.Runinstead of being written to settings state directly. Race-free against the
frame render - EmoteCache.LoadData drops
async voidforasync Taskso the two callers can fire-and-forget
cleanly. Fixes the four CS8618 build warnings the build has been carrying since v0.4.0 - All MessageStore SQL paths that fed dynamic value lists into interpolated SQL (CleanupRetainOnly,
StreamForExport, CountDateRange, GetDateRange, GetPagedDateRange, DeleteByRetentionPolicy) now use
named parameter bindings via a newBindIntListhelper. Same behaviour, defence against future
user-input regressions
What did not change
- Configuration version stays at 10. No migration runs, no notification appears
- Default tab layout is unchanged from 0.5.0 (General, System, Free Company, Party, Beginner when
applicable, Linkshell, Tell Exclusive) - Privacy filter, retention sweep and export pipeline behave identically to 0.5.0
Existing installs upgrade silently.
Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2)
Downloads
- Cleanup preview in the Privacy tab now flags itself as out-of-date when you edit the whitelist after
-
released this
2026-05-02 16:43:04 +00:00 | 516 commits to main since this releaseThe 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-backupbefore 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
nullculture 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
- Twelve tabs collapsed into eight: General, Appearance, Window, Chat, Tabs, Privacy, Database,
-
released this
2026-05-02 12:48:50 +00:00 | 540 commits to main since this releaseHellion Chat 0.4.0 — Auto-Tell-Tabs
Auto-Tell-Tabs lets you turn each
/tellinto 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@Worldon 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 reachingChatGui.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
SidebarTabViewsetting inpluginConfigs/HellionChat/HellionChat.jsonis 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
- Auto-spawn temp tab
-
released this
2026-05-02 02:11:13 +00:00 | 565 commits to main since this releaseWas 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- undTop100-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
-xausgefü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
-
released this
2026-05-02 02:02:28 +00:00 | 567 commits to main since this releaseWas 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.jsonUpdate erscheint automatisch in der Plugin-Liste.
Basiert auf Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
Downloads
-
released this
2026-05-02 00:30:42 +00:00 | 578 commits to main since this releaseWas 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 derWebinterfaceUtil-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 → Experimentaleintragen falls noch nicht geschehen:
https://raw.githubusercontent.com/JonKazama-Hellion/HellionChat/main/repo.jsonUpdate erfolgt automatisch in der Plugin-Liste.
Basiert auf Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
Downloads
-
released this
2026-05-01 22:13:54 +00:00 | 584 commits to main since this releaseAbout-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