The About tab copy was hand-written in English directly in About.cs,
which left the German users on the upstream Chat 2 wording for the
Hellion-specific blocks. The copy itself also leaned on em-dashes
mid-sentence and on a tone that could read as accusing Chat 2 of
GDPR violations, which was never the intent. This commit moves the
six About-tab sections (Maintainer, Why this fork exists, Built on
Chat 2, License, FFXIV disclaimer, Localization) into HellionStrings
and tightens the wording in both languages.
Tone change is the substantive part. Chat 2's full-history default
is now described as "the right one for most users" rather than a
problem the fork is fixing, and the webinterface removal is framed
as a focus mismatch — Chat 2's webinterface targets remote chat
access from a second device, this fork targets a smaller default
footprint, neither approach is wrong. The personal trigger for the
fork (two million logged messages over two years, mostly /say and
/yell from strangers) stays as it is honest context rather than
criticism.
The same neutralised wording is mirrored in three more places that
described the webinterface removal: the README "Was gegenüber
Chat 2 fehlt" block, the HellionChat.yaml description and changelog,
and the matching repo.json fields. The 0.2.0 changelog no longer
recites the upstream auth-flow internals; "different use case,
substantial rebuild, removed" is enough for users.
Em-dashes were also removed from two body strings that previously
used them as comma replacements (Privacy filter storage-only help
and the retention default description). Heading-level dashes
("Hellion Chat — Welcome", "Export (GDPR Art. 15 — right of
access)") stay because dashes are appropriate as separators in
titles.
The Theme description was already inaccurate — it still talked
about slate-violet tabs and amber highlights even though the brand
sweep moved everything onto Arctic Cyan plus Ember Orange. Updated
to describe the current palette honestly.
README's Stability section gains a "what is missing compared to Chat 2"
block that names the five concrete reasons the upstream webinterface
could not stay (System.Random auth code, bind on all interfaces,
unflagged cookies, SSE stream that bypassed the privacy filter, and
the cumulative hardening cost). The project status list reflects
0.2.0 with Phase 1.5 marked done and the remaining audit follow-ups
queued under Phase 2.
The About tab gets a single-line acknowledgement that the upstream
webinterface is intentionally absent, so users coming from Chat 2 do
not look for it under settings or assume it broke.
The Obsidian project note is updated separately under
Vault/Ideen/Hellion Chat Plugin (ChatTwo Fork).md to record the audit
decision and the six-commit cleanup.
Manifest moves to 0.1.2.0 so existing testers get an in-place
update offer once the matching GitHub release is published.
Changes since 0.1.1 are surface and packaging:
- The inherited About tab now reflects the fork: Hellion Online
Media as maintainer with hellion-media.de as the contact
channel, EUPL-1.2 dual-copyright statement, FINAL FANTASY XIV
SQUARE ENIX disclaimer, explicit acknowledgment of Chat 2 by
Infi & Anna as the upstream foundation, and the original
ChatTwo translator list relabelled as upstream Crowdin
contributors so it isn't mistaken for Hellion translators.
- Cherry-picked the upstream DBViewer UI improvements
(auto-scroll-reset on page change, localized tooltips on the
date reset, folder export, export-running notifications and
the pagination arrows).
- README rewritten in the Hellion project style: German prose,
tech-stack table, architecture tree, database column list, a
proper migration guide for users coming from Chat 2 (with
Linux and Windows manual recovery commands), upstream-sync
workflow notes for cherry-picks, project-status checklist
separating bootstrap-done from phase-2-open work, and the
Hellion Online Media footer.
- repo.json regenerated to point at the v0.1.2 GitHub release
asset URL.
Bundle changelog summarises the same so testers see the new
content in their plugin list before they pull the update.
A tester migrating from upstream Chat 2 ended up with a zero-row
database in the new layout: Chat 2 was still loaded when Hellion
Chat first started, the SQLite handle kept chat-sqlite.db locked,
and File.Move silently fell into the catch-all without telling
the user anything. Anyone hitting this would think Hellion Chat
lost their history when it just hadn't been allowed to take it.
Wrap each move on its own so a single locked file no longer
abandons the rest of the migration: the JSON config, font cache
and EmoteCacheV1 directory still travel even if the database
itself is held open. When any IOException fires during the moves,
flag a sticky 30-second warning notification on plugin start that
tells the user exactly what's going on — disable Chat 2, fully
close the game, restart — and points at the README troubleshooting
section.
The README now spells out the migration order step by step in two
sections (fresh install vs. coming from Chat 2) and includes the
manual mv/Move-Item one-liner for both Linux and Windows so users
can recover without waiting for the next plugin update.
Add repo.json at the repo root so testers can drop the raw URL
into Dalamud's Custom Plugin Repositories list and pick Hellion
Chat up like any other Dalamud plugin. The file is generated from
the in-assembly HellionChat.json plus the extra fields a Dalamud
custom-repo entry needs:
- DownloadLinkInstall / Update / Testing point at the GitHub
release asset for v0.1.0 (latest.zip), so refreshing the
plugin list pulls the released ZIP rather than building from
source.
- IconUrl points at the raw icon.png in the repository so the
plugin list can render the Hellion logo even before the user
installs the plugin.
- CategoryTags, IsHide and IsTestingExclusive use sane defaults
for a single-track release.
README gains an Install section with the exact custom-repo URL,
the steps to add it in Dalamud and a note about disabling
upstream Chat 2 first so the layout migration runs clean.
Replace the inherited upstream README with a Hellion-specific one
that lists the privacy/retention/cleanup/export features, links to
upstream and the relevant unanswered filtering issues, documents
the EUPL-1.2 license relationship, and acknowledges Infi & Anna for
the Chat 2 engine that everything builds on.
Add AI_DISCLOSURE.md with the goatcorp Pair classification, an
explicit list of what AI is and is not used for in this fork
(translations, visual assets and license-sensitive boundaries are
handled by the maintainer), and the tooling list. Drops in before
v0.1 so it's already in place when the repo goes public.
HellionStyle.Push() returns a disposable bundle of ImGui color
pushes (cyan-teal accents on a deep-slate frame with steel
borders) and pops them in reverse on Dispose. Privacy tab and the
first-run wizard wrap their Draw with `using var _style =
HellionStyle.Push()` so only Hellion-owned surfaces get the
HUD-flavored palette while upstream Chat 2 tabs render in their
original style — important so cherry-picks from upstream don't
fight with our color overrides.