{"id":46644003,"url":"https://github.com/leonchen83/miz-translator","last_synced_at":"2026-04-19T07:07:48.928Z","repository":{"id":277087686,"uuid":"931293110","full_name":"leonchen83/miz-translator","owner":"leonchen83","description":"DCS world, translate campaign(miz mission) to Chinese or Japanese or Korean","archived":false,"fork":false,"pushed_at":"2026-02-27T08:56:54.000Z","size":5264,"stargazers_count":12,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-02-27T13:05:51.038Z","etag":null,"topics":["campaign","chinese","dcs","dcsworld","japanese","korean","miz","translate"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leonchen83.png","metadata":{"files":{"readme":"README.en.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-02-12T03:07:51.000Z","updated_at":"2026-02-27T08:56:57.000Z","dependencies_parsed_at":"2025-02-12T04:25:52.850Z","dependency_job_id":"bd45baec-1e36-4b8a-9adf-3b857537b74e","html_url":"https://github.com/leonchen83/miz-translator","commit_stats":null,"previous_names":["leonchen83/miz-translator"],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/leonchen83/miz-translator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leonchen83%2Fmiz-translator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leonchen83%2Fmiz-translator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leonchen83%2Fmiz-translator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leonchen83%2Fmiz-translator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leonchen83","download_url":"https://codeload.github.com/leonchen83/miz-translator/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leonchen83%2Fmiz-translator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30244589,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-08T00:58:18.660Z","status":"online","status_checked_at":"2026-03-08T02:00:06.215Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["campaign","chinese","dcs","dcsworld","japanese","korean","miz","translate"],"created_at":"2026-03-08T04:04:24.059Z","updated_at":"2026-04-19T07:07:48.918Z","avatar_url":"https://github.com/leonchen83.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DCS Mission Translator\n\n## Introduction\n\n### 🌐 Language | 语言 | 言語 | 언어\n\n- 🇨🇳 [简体中文说明](./README.md)\n- 🇺🇸 [English README](./README.en.md)\n- 🇯🇵 [日本語の説明](./README.ja.md)\n- 🇰🇷 [한국어 설명](./README.ko.md)\n\nDCS Mission Translator is a tool designed to translate DCS mission files into Chinese, Japanese, or Korean.\nIt extracts text from mission files, uses AI to perform the translation, and then writes the translated content back into the original mission file.\n\n### 📝 Other Supported Languages (no separate README)\n- 🇪🇸 Español\n- 🇫🇷 Français\n- 🇩🇪 Deutsch\n- 🇮🇹 Italiano\n- 🇳🇱 Nederlands\n- 🇵🇱 Polski\n- 🇸🇪 Svenska\n- 🇳🇴 Norsk\n- 🇩🇰 Dansk\n- 🇷🇴 Română\n- 🇨🇿 Čeština\n- 🇭🇺 Magyar\n- 🇧🇬 Български\n- 🇺🇦 Українська\n- 🇻🇳 Tiếng Việt\n- 🇲🇾 Bahasa Melayu\n- 🇬🇷 Ελληνικά\n- 🇮🇱 עברית\n- 🇸🇦 العربية\n\n\u003e ⚠️ Note: For these additional languages, the program supports translation,  \n\u003e but there is no separate README file. Use the English or Chinese README for instructions.\n\n## Usage\n\n### Installation\n\ndownload the latest version of the mission translator. You can get the latest release from [here](https://github.com/leonchen83/miz-translator/releases/latest/download/miz-translator-release.zip). Extract it to `/path/to/miz-translator`.\n\n### Running\n\ndouble click `/path/to/miz-translator/bin/transgui.cmd`.\nchoose miz folder, input `APIkey`, click `translate` button.\n\n### Configuration\n\nIn the `/path/to/miz-translator/conf` directory, there is a file named `trans.conf`. You can configure the translator using this file.\n\n```properties\n# Prompt for the AI; here \"F/A 18\" is an example. You can modify the aircraft type or campaign as needed.\nhint=You are a translator. The following English texts are related to the F/A 18 fighter jet. Translate them into Simplified Chinese without using markdown formatting. Keep the original line breaks and do not add extra explanations. Preserve acronyms written in uppercase.\n\n# Target language \n# language code + country code, e.g., zh-CN for Simplified Chinese, ja-JP for Japanese, ko-KR for Korean\nlanguage=zh-CN\n\n# AI translators supported: deepseek, doubao, and openai\ntranslator=deepseek\n\n# API Key for the translator. If using deepseek or doubao, you must fill in your API Key here.\napikey=your-api-key\n\n# Base URL for the Open API\nbaseurl=https://api.deepseek.com/v1\n\n# AI model to use\nmodel=deepseek-chat\n\n# Temperature for the AI. Use a negative value for the default.\ntemperature=1.3\n\n# Max tokens for the AI; default is 4096\nmaxTokens=4096\n\n# Minimum text length to trigger translation; texts shorter than 12 characters will be kept as-is\nminimumLength=12\n\n# Phrases to exclude from translation. Use multiple filters, each starting with 'filters'\nfilters1=JAMMER COOLING\nfilters2=INSERT ON COURSE AUDIO\n\n# Keys to exclude from translation. Use multiple keyFilters, each starting with 'keyFilters'\nkeyFilters1=DictKey_UnitName_\nkeyFilters2=DictKey_WptName_\nkeyFilters3=DictKey_GroupName_\nkeyFilters4=DictKey_ActionRadioText_\n````\n\n### Run\n\n```shell\ncd /path/to/miz-translator/bin\n./trans -f /path/to/missions\n```\n\nHere, `/path/to/miz-translator/bin` is the path to the extracted folder, and `/path/to/missions` is the path to the mission file you want to translate.\n\n### Step-by-Step Mode\n\n```shell\n# You can also run it step by step\ncd /path/to/miz-translator/bin\n\n# Extract text from the mission file into a JSON file\n./trans -f /path/to/missions -d\n\n# Translate the JSON file\n./trans -f /path/to/missions -t\n\n# Compress the translated text back into a .miz mission file\n./trans -f /path/to/missions -c\n```\n\n### Voice Translation\n\nVoice translation requires the installation of `edge-tts`,`faster-whisper` and `ffmpeg`.\n\n```shell\n# MacOS\nbrew install python\nbrew install ffmpeg\npip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple\nuvicorn bin.main:app --host 0.0.0.0 --port 8000\n\n# Windows\nwinget install Python.Python.3.11\nwinget install -e --id BtbN.FFmpeg.LGPL.8.0\npip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple\nuvicorn bin.main:app --host 0.0.0.0 --port 8000\n\n# verify install\n$ edge-tts --version\n$ ffmpeg -version\n```\n\nVoice translation first requires running the `trans` command to generate the translated voice text, then use the following command to generate the voice files and package them into the miz mission file.\n\n```shell\ncd /path/to/miz-translator/bin\n./trans -f /path/to/missions\n./trans-voice -f /path/to/missions\n```\n\n### Docker\n\n```shell\n# pull docker image\ndocker pull redisrdbcli/miz-translator:latest\n\n# run text translation\ndocker run --rm \\\n  -v /path/to/trans.conf:/app/miz-translator/conf/trans.conf:ro \\\n  -v /path/to/miz:/tmp/miz-uploaded \\\n  miz-translator:latest \\\n  trans -f /tmp/miz-uploaded\n\n# run voice translation\ndocker run --rm \\\n  -v /path/to/trans.conf:/app/miz-translator/conf/trans.conf:ro \\\n  -v /path/to/miz:/tmp/miz-uploaded \\\n  miz-translator:latest \\\n  trans-voice -f /tmp/miz-uploaded\n  \n# use environment variables instead of a config file\ndocker run --rm \\\n  -v /path/to/miz:/tmp/miz-uploaded \\\n  -e API_KEY=\"${api-key}\" \\\n  -e LANG=\"{{languageCode-countryCode}}\" \\\n  -e BASE_URL=\"https://api.deepseek.com/v1\" \\\n  -e HINT=\"${hint}\" \\\n  -e PROXY=\"http://proxy.example.com:8080\" \\\n  miz-translator:latest \\\n  trans -f /tmp/miz-uploaded\n  \ndocker run --rm \\\n  -v /path/to/miz:/tmp/miz-uploaded \\\n  -e API_KEY=\"${api-key}\" \\\n  -e LANG=\"{{languageCode-countryCode}}\" \\\n  -e BASE_URL=\"https://api.deepseek.com/v1\" \\\n  -e HINT=\"${hint}\" \\\n  -e PROXY=\"http://proxy.example.com:8080\" \\\n  miz-translator:latest \\\n  trans-voice -f /tmp/miz-uploaded\n  \n# use local web service\ndocker run -d \\\n  --name miz-translator \\\n  -p 8000:8000 \\\n  -v /path/to/miz:/tmp/miz-uploaded \\\n  miz-translator:latest \\\n  uvicorn bin.main:app --host 0.0.0.0 --port 8000\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleonchen83%2Fmiz-translator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleonchen83%2Fmiz-translator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleonchen83%2Fmiz-translator/lists"}