DSH Translation Plugins in Action: the tav2 Game-Localization Pipeline

A frame-verified record of tav2 — the conversational game-localization plugin for DeepSeek Harness — recorded by its own author: initialize a translation from a chat message, confirm a five-stage pipeline, read the quality gates, lock the glossary and unpack the delivered archive. The plugin is now archived; this page records the workflow as demonstrated. Every screenshot deep-links to its second in the source video.

Last updated: 2026-10-07

The tav2 plugin asks a plain-language confirmation in DeepSeek Harness before running the full localization pipeline — prepare, glossary, world book, batch translation, verification, packaging — with cost-first alternatives one click away.
Talk first, translate second: the pipeline runs only after you confirm it.

Game localization is the hardest translation job: thousands of strings, recurring names, tone rules, and a packaged format that must drop back into the game. tav2 — "对话式游戏本地化:跟 AI 助手说说话,完成游戏翻译全流程" by Drhushi — attacked exactly that inside DeepSeek Harness: you talk, the workflow runs. This page walks the author's own seven-frame demo from the plugin's release video: initialize, confirm, measure, constrain, deliver.

Translation of game text is one axis; office documents live on another — Office work in DSH: one prompt to PPT

The short version

  • ▸The idea: the game folder becomes a dsh workspace, and "initialize the translation" is just a chat message — the workflow, not a form, drives everything.
  • ▸The pipeline was explicit and confirmable: prepare template → glossary → world book → batch translation → verification → packaging, with cost-first and prepare-only options beside the full run.
  • ▸Quality was measured, not claimed: 5,346/5,346 coverage, a tav2_check gate, 40+ locked glossary terms and 96 noise candidates cleaned — at a reported 924k tokens.
  • ▸Delivery was a package: the translated files land as a 7z archive in the game folder — and the plugin itself is now a read-only archive, succeeded by the author's standalone GameTrans.

The walkthrough: seven verified steps

From one sentence to a confirmed pipeline

  1. 1

    The name card: what tav2 claims to be

    The demo opens with the plugin's own name card: a gradient icon and three lines — "tav2: DSH 插件 / 用于游戏本地化 / 首发支持 Ren'Py" (a DSH plugin, for game localization, shipping Ren'Py support first). The card matches the GitHub description word for word: conversational game localization — talk to your assistant, complete the whole translation pipeline; engine-adapter architecture, Ren'Py supported first. The adapter architecture is the design: one workflow, engines plugged in as adapters.

    The in-video name card introduces tav2 as a DSH plugin for game localization with Ren'Py support shipped first, matching the plugin's GitHub description word for word.
    Three lines on a card: the plugin's whole positioning.Watch at 0:03
  2. 2

    Point it at a game: folder as workspace

    Initialization starts like any dsh task: the game's folder is selected as the workspace (visible in the frame's workspace picker), Standard mode is chosen, and the chat message is simply "初始化翻译" — initialize the translation — with the add button and a batch-selection dropdown standing by on the card. No separate app, no config hand-editing: the conversation is the console.

    Starting a tav2 translation means picking the game folder as the DeepSeek Harness workspace and sending an initialize-translation message from the composer.
    The game folder is the workspace; the chat is the console.Watch at 0:10
  3. 3

    Confirm the pipeline — or don't

    The heart of the demo: tav2 answers with a plain-language confirmation — "确认本轮按「全流程」推进吗?(prepare 生成模板 → 术语 → 世界书 → 分批翻译 → 校验 → 打包)" — and three options: run the full pipeline in one go (recommended, with a small-batch trial first), prepare only to see scene counts and cost estimates, or prepare first and decide after a token/cost report. Above the dialog, a "Deep sleeping… 3m58s" timer shows the agent waiting for your answer instead of guessing.

    A Deep sleeping timer runs above the tav2 pipeline confirmation dialog while the translation agent waits for the player's answer instead of burning tokens.
    The agent sleeps until you choose: full run, prepare only, or cost first.Watch at 0:18
  4. 4

    Read the receipt: coverage, gates, terms, cost

    The results panel turns the run into numbers: coverage 5,346/5,346 (100%), the green "tav2_check" gate, "术语 40+ 锁定" — more than forty glossary terms locked — and 96 noise candidates cleaned, under a header counting two subagents in standard mode. The video's caption quotes a 924k-token cost. Quality here is a receipt, not a promise.

    The tav2 results panel in DeepSeek Harness reports 100% coverage across 5,346 strings, a passed tav2_check gate, forty-plus locked glossary terms and 96 cleaned noise candidates.
    Quality as numbers: coverage, gate, glossary, noise — and the token bill.Watch at 0:28

Quality gates and the packaged delivery

  1. 5

    Lock the glossary, set the tone

    The constraint sheet is where translation quality is decided: numbered rules pin recurring names — the frame shows franchise terms like Thor → 索尔, Batman → 蝙蝠侠, Spiderman → 蜘蛛侠, Mona Lisa → 蒙娜丽莎, Lord of the Rings → 指环王 — alongside scene-style entries fixing time, place and tone. Locked terms stop the classic drift where one name becomes three spellings by chapter five.

    A style-and-glossary sheet inside DeepSeek Harness locks recurring names and franchises — Thor, Batman, Mona Lisa, Lord of the Rings — so the game translation keeps one consistent rendering.
    Locked terms and fixed tone: where translation drift goes to die.Watch at 0:44
  2. 6

    Delivery: a package back into the game folder

    The output is deliberately boring: a file-manager window in the game's directory showing one fresh 7z archive, dated 2026/8/29 2:22 — the translation delivered as a package that drops back beside the game's own files. Patch-style, non-invasive delivery was the plugin's stated design: nothing in the original game is touched, and removing the package restores the original.

    The finished tav2 translation lands in the game folder as a fresh 7z archive dated 2026/8/29, the packaged delivery step of the workflow inside DeepSeek Harness.
    Delivery is a package: drop it in, remove it, and the game is untouched.Watch at 0:48
  3. 7

    The long run: queues, failures, retries

    Scale shows up as a progress panel: the current batch at 73% with a green bar and a view-log link, a next step reading 1,451 strings queued for translation, one failed row flagged with a red badge and a model-retry control, plus world-book and scene-level counters below. The panel structure is the story: batch queues, per-row failures and retries are the normal shape, not exceptions.

    The translation progress panel shows 73% coverage on the current batch, one failed row flagged for model retry and a 1,451-string queue waiting below.
    At scale: green bars, red badges and retries are the daily shape.Watch at 0:54

DSH translation plugin questions, answered

The archived status, engine adapters, glossary discipline, quality gates — and where this page's duties end.

Can I still install tav2?

We recommend no, and this page deliberately ships no install command. Maintenance stopped on 2026-09-30 per the author's own README; the repository is a read-only archive, and the release video's title already said so. The successor is Drhushi/GameTrans — a standalone Windows app that no longer uses the dsh plugin form. This page exists as a workflow record of what conversational game localization looked like at its first release.

Which game engines did it support?

The design was an engine-adapter architecture, with Ren'Py supported first — stated on the in-video name card and in the GitHub description alike. The recorded run targets a Ren'Py-style game: the delivered archive drops back beside the game's own files, and the progress panel counts scenes and strings in the engine's own units.

How does the glossary stay consistent across thousands of strings?

By locking, twice over. Before the run, a constraint sheet pins recurring names — the frame shows franchise terms like Thor → 索尔 and Lord of the Rings → 指环王 — and after it, the results panel reports "术语 40+ 锁定" as a completed count. Locked terms are checked by the tav2_check gate rather than trusted.

How did it keep translation quality measurable?

Three habits visible in the frames: a small-batch trial before the full run (offered right in the confirmation dialog), a coverage receipt — 5,346/5,346 with the tav2_check gate — and a noise pass that cleaned 96 candidates. The 924k-token cost line matters too: the workflow reports its bill instead of hiding it.

Is the demo content on this page safe for work?

The recording localizes an adult game, and two frames show its folder name. This page deliberately never repeats the game's name or describes its content — everything above talks panels, pipelines and packaging. The author's own red-text statement (in a segment this page never frames) forbids using the plugin for commercial gain in any form.

What about general-purpose translation plugins for dsh?

A wider cluster of community translation plugins exists around DeepSeek Harness — general document and chat translation rather than game packaging. They belong to the directory track; this page stays in its lane as the hands-on record of the game-localization pipeline. For document-shaped translation work, the office-docs guide is the neighboring read.

Related guides

The neighboring axes: office documents, fiction writing, academic papers, and roleplay cards.

Sources & credits

All seven frames come from the single screen recording credited above, by the plugin's own author 胡适不打牌 (Bilibili) = Drhushi (GitHub), cropped to remove the watermark and the burned-in subtitle band. The author's self-camera segment at t≈55-65 (which carries the no-commercial-use statement) was never framed; t≥66 is a black outro. The view count is the yt-dlp API value — the Bilibili search page showed 82,571 against 8,257 actual (a 10x inflation case). Repository facts re-checked against the GitHub API on 2026-10-08, including the GameTrans successor and the 2026-09-30 archive date.

DSH Plugins is an independent community directory of DeepSeek Harness plugins. Not affiliated with or endorsed by DeepSeek. Third-party plugins are not security-audited — review the source before installing.

New DeepSeek Harness plugins, weekly. No spam.