-
v2.0.6
StableForge Announce / Post changelog to Hellion Forge (push) Failing after 0sRelease / Build and attach release ZIP (push) Failing after 0sSecurity Scan (reusable) / Security Scan (push) Successful in 27sSecurity / scan (push) Successful in 27sBuild / Build (Release) (push) Successful in 32sreleased this
2026-09-20 15:17:36 +00:00 | 0 commits to main since this releasev2.0.6 — Status bar, optional (2026-09-20)
One question from the Discord, small enough to ship on its own: are the pills along the bottom edge fixed in the code? They were.
- The status bar can be switched off. The row at the bottom of the chat window (channel, privacy state, message counts, tells, clock, version) had no switch. Settings → Window → Window style has "Show status bar" now. Off, the chat body takes the space; on for everyone until you turn it off, so nothing changes by itself. One thing to know: the camera and the lock live in that row, so with the bar hidden, screenshot mode and the privacy filter give no visible sign.
- Suggested by Ashy ^.^, and it says so. The toggle carries a "Suggested by" line under it. Whoever proposes a feature should see their name where the feature lives, not in a changelog they will never open. The line is translated into all 25 languages and is a generic key, ready for the next suggestion.
How to install
This release is distributed via the HellionChat custom repository, not the Dalamud main plugin repo.
To install:- In XIVLauncher: Settings → Experimental → Custom Plugin Repositories
- Add the URL:
https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json - Enable, save, then
/xlplugins→ search Hellion Chat → install
Project documents
- README
— features, architecture, build - Privacy notice
— what the plugin stores and sends - Third-party notices
— dependencies and licences - Security policy
— vulnerability reporting - Support
— bug reports, questions, contact paths
Licence
Downloads
-
v2.0.5
StableForge Announce / Post changelog to Hellion Forge (push) Successful in 10sSecurity Scan (reusable) / Security Scan (push) Successful in 25sSecurity / scan (push) Successful in 25sBuild / Build (Release) (push) Successful in 35sRelease / Build and attach release ZIP (push) Successful in 30sreleased this
2026-08-23 00:18:06 +00:00 | 4 commits to main since this releasev2.0.5 — Focus, and a way out (2026-08-23)
Two tester reports, both about the same corner: what a tell does to what you were doing, and what you can do about a tab once it exists.
- A tell arriving while you were typing took the keyboard. The tab switched under you, and in this game that means the next thing you type walks your character around. It could also send your sentence to the wrong person: what you have typed belongs to the window, while the recipient is read off whichever tab is active when you press Enter — so a line meant for one person could leave addressed to whoever had just written. Nothing is revealed now while you are mid-sentence, in any mode. The tab still appears with its unread mark and waits for you.
- A tell tab could not be closed. The entry was lost in the 2.0.0 window rebuild: it lived in the old menu, and the rebuilt one restored renaming, sounds, pop-outs and pinning but not this. Tell tabs are kept out of the settings editor on purpose, with a note pointing at the context menu — which could not close them either. Right-click any tab to close it. A pinned tell tab asks you to unpin it first, so one misclick cannot end a conversation you meant to keep.
- Two settings decided where a tell opens, and the older one always won. "Open new /tell tabs as a pop-out" fired when the tab was created, a tick before the mode below it was ever asked — which is why that mode looked like it did nothing. They are one setting now and your existing choice carries over. "Off" went with them: it never stopped tell tabs from being created, that is the switch further up, it only stopped the jump to them, which is what the switch below it does.
- Closing a tab could break a pop-out you were using. Re-anchoring always jumped to the first tab in the list, even when that tab was open in its own window, and stripped its tell binding on the way there.
- Smaller things. "Pop Out" in the context menu was English on every client, as were the tell-open modes. The pinned-tab limit still pointed at a feature removed in May. Spanish had a word that does not exist, Greek had an untranslated one, Portuguese contradicted its own button. Segmented settings rows cut long labels in half. The last compiler warning in the project is gone.
How to install
This release is distributed via the HellionChat custom repository, not the Dalamud main plugin repo.
To install:- In XIVLauncher: Settings → Experimental → Custom Plugin Repositories
- Add the URL:
https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json - Enable, save, then
/xlplugins→ search Hellion Chat → install
Project documents
- README
— features, architecture, build - Privacy notice
— what the plugin stores and sends - Third-party notices
— dependencies and licences - Security policy
— vulnerability reporting - Support
— bug reports, questions, contact paths
Licence
Downloads
-
v2.0.4
StableSecurity Scan (reusable) / Security Scan (push) Successful in 20sSecurity / scan (push) Successful in 20sForge Announce / Post changelog to Hellion Forge (push) Successful in 12sBuild / Build (Release) (push) Successful in 29sRelease / Build and attach release ZIP (push) Successful in 29sreleased this
2026-08-20 16:22:15 +00:00 | 7 commits to main since this releasev2.0.4 — Housekeeping (2026-08-20)
Nothing changes in how the plugin behaves. Two pieces of tidying that were overdue.
- The installer description was long, and one line of it was wrong. It ran to 908 characters and opened by naming a category instead of saying what the plugin does. It also claimed 24 interface languages when there are 25, and the two manifests carried different one-line summaries, so the store listing and the plugin details showed different sentences.
- 30 translation keys for the webinterface are gone. That feature, its HTTP routes and its frontend left the code in May; the strings stayed behind in all 25 languages, along with a generated property for each. Every key was checked against the whole repository before anything was removed.
How to install
This release is distributed via the HellionChat custom repository, not the Dalamud main plugin repo.
To install:- In XIVLauncher: Settings → Experimental → Custom Plugin Repositories
- Add the URL:
https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json - Enable, save, then
/xlplugins→ search Hellion Chat → install
Project documents
- README
— features, architecture, build - Privacy notice
— what the plugin stores and sends - Third-party notices
— dependencies and licences - Security policy
— vulnerability reporting - Support
— bug reports, questions, contact paths
Licence
Downloads
-
v2.0.3
StableSecurity Scan (reusable) / Security Scan (push) Successful in 24sSecurity / scan (push) Successful in 23sBuild / Build (Release) (push) Successful in 32sForge Announce / Post changelog to Hellion Forge (push) Successful in 6sRelease / Build and attach release ZIP (push) Successful in 29sreleased this
2026-08-20 06:04:41 +00:00 | 12 commits to main since this releasev2.0.3 — Pop-out context menu, screenshot mode (2026-08-20)
- The context menu never opened in a pop-out window. Right-clicking a name or an item there did nothing at all. Every chat surface shares one popup state, and whichever window drew first cleared the menu it had not opened before the pop-out got its turn. The menu now stays with the window the click came from.
- Screenshot mode could not be turned off. It is a saved setting, but neither of its two toggles wrote the change to the config file, so switching it off never survived a reload and the mode came back on at every plugin load. Both toggles save now. If it is stuck on for you, one click off is enough.
- Text the game colours itself could render invisible. Some of those colours arrive without an alpha byte, and the byte order swap then left them fully transparent.
How to install
This release is distributed via the HellionChat custom repository, not the Dalamud main plugin repo.
To install:- In XIVLauncher: Settings → Experimental → Custom Plugin Repositories
- Add the URL:
https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json - Enable, save, then
/xlplugins→ search Hellion Chat → install
Project documents
- README
— features, architecture, build - Privacy notice
— what the plugin stores and sends - Third-party notices
— dependencies and licences - Security policy
— vulnerability reporting - Support
— bug reports, questions, contact paths
Licence
Downloads
-
v2.0.2
StableForge Announce / Post changelog to Hellion Forge (push) Successful in 9sSecurity Scan (reusable) / Security Scan (push) Successful in 27sSecurity / scan (push) Successful in 27sBuild / Build (Release) (push) Successful in 34sRelease / Build and attach release ZIP (push) Successful in 31sreleased this
2026-08-19 21:34:48 +00:00 | 20 commits to main since this releasev2.0.2 — Emotes out, placeholders fixed (2026-08-19)
- BetterTTV emote support is gone. Its shared-emote endpoint went behind authentication, and that was where nearly all of them came from — what remained was a 65-entry global set, eleven of which are on the known-broken list, so 54 mostly static images from Twitch's early days. Exactly one was animated, and that one wanted 492 frames and 37 MB of video memory. The plugin now makes no outbound network calls at all. Messages stored with emotes still read fine; they show the code that was typed.
- Five settings descriptions printed
{0}instead of the plugin name. All 25 languages were affected, English included — it just hid better there, since "Hide {0} during cutscenes" still scans as a sentence while German puts the placeholder first. A test now walks every resource string with a placeholder and fails if one reaches a widget unformatted. - New preview images. The ones in the plugin installer were from 8 May and showed the interface as it looked before any of the window rebuilds.
How to install
This release is distributed via the HellionChat custom repository, not the Dalamud main plugin repo.
To install:- In XIVLauncher: Settings → Experimental → Custom Plugin Repositories
- Add the URL:
https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json - Enable, save, then
/xlplugins→ search Hellion Chat → install
Project documents
- README
— features, architecture, build - Privacy notice
— what the plugin stores and sends - Third-party notices
— dependencies and licences - Security policy
— vulnerability reporting - Support
— bug reports, questions, contact paths
Licence
Downloads
-
v2.0.1
StableForge Announce / Post changelog to Hellion Forge (push) Successful in 8sSecurity Scan (reusable) / Security Scan (push) Failing after 24sSecurity / scan (push) Failing after 24sBuild / Build (Release) (push) Successful in 34sRelease / Build and attach release ZIP (push) Successful in 30sreleased this
2026-08-19 20:46:17 +00:00 | 24 commits to main since this releasev2.0.1 — Hotfix (2026-08-19)
A same-day follow-up to 2.0.0 with no user-facing changes. Install it if you picked up 2.0.0 in the first hour; there is nothing new to look at, it just carries a dependency update the 2.0.0 archive was built without.
- MessagePack raised from 3.1.4 to 3.1.7. It handles the payload serialisation behind the message database. The advisories are a recursion-depth limit in
Skipand a fault in LZ4 decompression, both reachable only through crafted input — this plugin writes and reads its own bytes in a local file, so the practical exposure needs someone who already has write access to it. Lifted anyway, because it costs nothing. - The release workflow publishes through the Gitea API directly. The 2.0.0 build succeeded and then failed to attach its own archive, which is why that release had to be completed by hand.
How to install
This release is distributed via the HellionChat custom repository, not the Dalamud main plugin repo.
To install:- In XIVLauncher: Settings → Experimental → Custom Plugin Repositories
- Add the URL:
https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json - Enable, save, then
/xlplugins→ search Hellion Chat → install
Project documents
- README
— features, architecture, build - Privacy notice
— what the plugin stores and sends - Third-party notices
— dependencies and licences - Security policy
— vulnerability reporting - Support
— bug reports, questions, contact paths
Licence
Downloads
- MessagePack raised from 3.1.4 to 3.1.7. It handles the payload serialisation behind the message database. The advisories are a recursion-depth limit in
-
v2.0.0
StableSecurity Scan (reusable) / Security Scan (push) Failing after 24sSecurity / scan (push) Failing after 24sForge Announce / Post changelog to Hellion Forge (push) Successful in 11sBuild / Build (Release) (push) Successful in 33sRelease / Build and attach release ZIP (push) Failing after 30sreleased this
2026-08-19 20:37:04 +00:00 | 26 commits to main since this releasev2.0.0 — Rebuilt, Repaired, Reset (2026-08-19)
Nine development cycles in one release. Everything built as v1.6.0 through v1.15.0 ships here; those versions were never published on their own.
This update resets your settings. Nine cycles of rebuilding left saved values pointing at surfaces that no longer exist, and starting over is the only way to be sure every install is on the same defaults. Your message history is untouched — it lives in a separate database. Your old settings are kept next to the config file as
HellionChat.json.pre-2.0.0.bak.Fixed, and several of these lost data or hid it:
- Retroactive cleanup could never be applied at all. The preview took the database lock itself and that counted as a change, so every preview went stale the instant it finished and the apply button never appeared.
- Compacting the database ran against an open reader and failed, after which the plugin reported that nothing had been deleted — while everything had.
- Deleting messages left them in the search index, so search kept returning rows that were already gone.
- Pinned tell tabs came up empty for a whole session: the history query ran at plugin start, before any character is logged in, and never tried again.
- Export wrote invalid JSON where a setting value was involved, and a byte-order mark that strict parsers reject.
- A pop-out with its title bar switched on could not be closed, and a tell from a popped-out partner hijacked the main window's active tab.
- One third-party emote service started returning 403, and that response took all 65 working global emotes down with it on every start.
- The GDPR notice for the full-history profile had been translated into 25 languages and shown nowhere since May.
Changed, and one of these changes what gets stored:
- The channel grid is now authoritative. Until now the unknown-channel failsafe was applied to known channels too, so a channel you had unticked was still being written while that failsafe was on. If that was you, this release stores less than before. Nothing already in the database is touched.
- Every window is drawn by the plugin rather than by ImGui defaults, and they share one visual language: structure carried by typography, a surface on anything you can press, and colours measured against what sits behind them.
- Typography has named roles — sender, body and timestamp mean the same thing everywhere, timestamps sit in their own column, system messages are italic.
- Export, the tab editor, database maintenance and pinning had lost their entry points during the rebuild and are reachable again.
- Screenshot mode reached one of four surfaces that draw a tab name. It reaches all four now.
Removed: six settings that had a control and a saved value but no reader anywhere in the plugin; a per-tab regex filter the game's own blackword filter covers; and a wizard checkbox that was collected, reported as applied and never read.
New: an Emote tab in the default layout, local and server clocks in the status bar, a screenshot mode reachable from the input row,
/hellion wizardto reopen the setup wizard, a style lab under/hellion lab, and 25 UI languages with the settings window and wizard fully covered.Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2). The two codebases have diverged far enough that they no longer line up.
How to install
This release is distributed via the HellionChat custom repository, not the Dalamud main plugin repo.
To install:- In XIVLauncher: Settings → Experimental → Custom Plugin Repositories
- Add the URL:
https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json - Enable, save, then
/xlplugins→ search Hellion Chat → install
Project documents
- README
— features, architecture, build - Privacy notice
— what the plugin stores and sends - Third-party notices
— dependencies and licences - Security policy
— vulnerability reporting - Support
— bug reports, questions, contact paths
Licence
Downloads
-
v1.5.6
Stablereleased this
2026-05-23 07:08:13 +00:00 | 357 commits to main since this releasev1.5.6 — Settings Overhaul + Filter & Notification Polish (2026-05-23)
- Settings window reorganised: ten tabs down to seven (General, Appearance, Chat, Window, Channels, Data & Privacy, About). Each tab now uses collapsible sections grouped by control type. Sections start collapsed every time you open a tab — less noise, easier to find what you need.
- New sender-name display options under Chat → Messages: separate world-suffix and name-format modes (Full name / First name only / Initials × Never / Other worlds only / Always).
- Plugin-only symbols now show a pre-send warning so other players do not get empty boxes (Chat → Messages → "Warn before sending plugin-only symbols").
- Separate window opacity for focused vs. inactive chat window (Appearance → Window style → "Inactive window opacity"). The slider above sets the focused value.
- Custom notification sound volume slider (General → Sound, and mirrored in Channels → per-tab → Notification). Affects only the three bundled custom sounds; the 16 game sounds are unaffected.
- The per-tab regex filter that briefly shipped earlier in this cycle has been removed — FFXIV's built-in blackword filter covers the same need.
- All 24 locale files updated for the new section labels and the v1.5.6 control labels (machine translation; native review continues via the Hellion Forge Discord).
Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
How to install
This release is distributed via the HellionChat custom repository, not the Dalamud main plugin repo.
To install:- In XIVLauncher: Settings → Experimental → Custom Plugin Repositories
- Add the URL:
https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json - Enable, save, then
/xlplugins→ search Hellion Chat → install
Project documents
- README
— features, architecture, build - Privacy notice
— what the plugin stores and sends - Third-party notices
— dependencies and licences - Security policy
— vulnerability reporting - Support
— bug reports, questions, contact paths
Licence
Downloads
-
v1.5.5
Stablereleased this
2026-05-21 19:28:12 +00:00 | 380 commits to main since this releasev1.5.5 — Upstream-Sync Tab-Features (2026-05-21)
A backlog-sync cycle: inherited tab-feature items plus a new fox
banner image and custom notification sounds.User-visible:
- Failed tells now raise a warning toast when a message you sent
could not be delivered (recipient offline, in an instance, or
blocking you). Toggle in Settings, Chat tab. - Per-tab notification sound: each tab can play a sound when a
message arrives while you are looking at a different tab. Pick
one of the 16 game chat sounds or one of three bundled Hellion
sounds, with a preview button to hear it. Off by default,
respects the global sound toggle. - The tab rename field in the right-click menu now focuses
itself when the menu opens and accepts up to 512 characters,
matching the settings-tab rename. - A jump-to-latest button appears in the chat log header while
you are scrolled up from the live end. - Map flags and item links can be inserted into the chat input
from its right-click menu. - The Hellion Forge fox banner in the first-run wizard and the
Information tab is now a real image instead of ASCII art.
Schema bumped to v18 (additive fields only, no data migration).
Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
How to install
This release is distributed via the HellionChat custom repository, not the Dalamud main plugin repo.
To install:- In XIVLauncher: Settings → Experimental → Custom Plugin Repositories
- Add the URL:
https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json - Enable, save, then
/xlplugins→ search Hellion Chat → install
Project documents
- README
— features, architecture, build - Privacy notice
— what the plugin stores and sends - Third-party notices
— dependencies and licences - Security policy
— vulnerability reporting - Support
— bug reports, questions, contact paths
Licence
Downloads
- Failed tells now raise a warning toast when a message you sent
-
v1.5.4
Stablereleased this
2026-05-20 14:43:00 +00:00 | 402 commits to main since this releasev1.5.4 — Polish and Motion (2026-05-20)
A polish cycle: smoother theme switching, faster theme and tab
access, and subtle hover motion. Three P3 items plus an
accessibility toggle.User-visible:
- Theme switches now crossfade smoothly over ~300 ms across every
Hellion-rendered surface — sidebar, title, buttons, tabs,
scrollbar, separators. The window background snaps deliberately
so the per-window opacity override from Dalamud's pinning menu
stays untouched. - New header quick-picker: a palette button left of the cog opens
a compact popup with two sections — every built-in and custom
theme, and every tab. The active entry carries a check glyph;
clicking another switches without closing the popup. - Sidebar icons ease their opacity on hover, and card-mode message
borders highlight per tab while the cursor is over their rows.
Framerate-independent, so a stalled Wine frame cannot overshoot
the animation. - New "Reduce motion" toggle in Theme & Layout disables the
crossfade, the hover animations and the unread-tab pulse for
users who prefer a static UI.
Under the hood:
- Two pure-helper lerp paths (ThemeAbgrCacheLerp, FrameLerp) with
xUnit coverage in the Build Suite, plus a ColourUtil.ApplyAlpha
alpha modulator. Two new /xlperf self-test steps pin the
crossfade and quick-picker contracts.
No schema bump, no migration. Migration v17 stays.
Based on Chat 2 1.35.3 (upstream Infiziert90/ChatTwo, EUPL-1.2).
How to install
This release is distributed via the HellionChat custom repository, not the Dalamud main plugin repo.
To install:- In XIVLauncher: Settings → Experimental → Custom Plugin Repositories
- Add the URL:
https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json - Enable, save, then
/xlplugins→ search Hellion Chat → install
Project documents
- README
— features, architecture, build - Privacy notice
— what the plugin stores and sends - Third-party notices
— dependencies and licences - Security policy
— vulnerability reporting - Support
— bug reports, questions, contact paths
Licence
Downloads
- Theme switches now crossfade smoothly over ~300 ms across every