Перевод игр с помощью AI и n8n для Indie GameDev
Думаю, многим инди-разрабам это знакомо: "Ты вложил в свою игру всю душу и тысячи часов. Ты хочешь, чтобы в нее поиграл весь мир", но для этого нужны переводы, которые порой стоят больше чем вся разработка ранее. Я не GameDev разработчик, но я вижу, как многие соотечественники сталкиваются с этой проблемой. Я решил потратить пару часов и свои навыки в разработке цепочек автоматизации n8n, для того, чтобы отечественная инди-разработка могла иметь возможность получить средненький перевод и существенную экономию на данном процессе.
Почему нельзя просто закинуть текст в ChatGPT?
Первая мысль, конечно, взять все реплики и тексты из игры и просто скормить их нейросети. Я пробовал. Не работает оно так :(
Дело в том, что в играх всё решает контекст. AI без понятия, что значит одно и то же слово в разных ситуациях:
- Слово Fire — это кнопка «Стрелять»? Заклинание «Огонь»? Или кто-то у костра кричит «Огонь!»?
- Слово Rose — это имя персонажа Роуз или цветок роза?
- Фраза Follow me — это приказ компаньону «Следуй за мной» или кнопка в меню «Подписаться»?
Без контекста даже самый умный AI будет постоянно ошибаться. Вы потратите больше времени на исправление его косяков, чем если бы переводили сами.
Двухэтапный процесс в n8n
Я понял, что мне нужен не просто переводчик, а система, которая сначала поймет контекст, а уже потом будет переводить. Я собрал ее в n8n, и она состоит из двух простых систем.
Как завести свой n8n можете почитать у меня в заметках тут.
Шаг 1: Готовим таблицу и AI-аналитика
Все начинается с обычной Google-таблицы. В ней несколько колонок: ID (номер строки), Original (оригинальный текст), Context (пока пустая), Suggest (пустая), Translation (тоже пустая) и Needs Review (один для контекста, другой уже для самого перевода).
Дальше я запускаю первую часть своего workflow в n8n. Он берет все строки, по сути изначально у нас заполнена только колонка Original, и отправляет их в нейросеть.
Но я прошу ее не переводить текст.
Я прошу ее сделать другое: «Ты — специалист по локализации игр. Посмотри на эту строку и скажи, что это, скорее всего: кнопка в интерфейсе, реплика персонажа, название предмета и т.д.».
AI проходит по всем строкам и заполняет колонку Context и Suggest. Suggest помогает подсветить спорные моменты, где LLM может галлюцинировать и понимать слово иначе. Главная проблема решена еще до начала самого перевода (по крайней мере большая её часть).
Шаг 2: Запускаем AI-переводчика с подсказками
Теперь, когда у нас есть контекст, начинается второй этап. n8n снова идет по таблице, но на этот раз запускает перевод. И промпт (инструкция) для нейросети здесь уже гораздо шире. Я даю ей:
- Краткую справку об игре: жанр, сеттинг, тон повествования.
- Контекст конкретной строки: например, UI: Кнопка.
- Четкие правила: как обращаться с переменными вроде {player_name} и, самое главное, когда просить о помощи. Если AI не уверен в переводе, адаптирует сложную шутку или идиому, он ставит в колонке Need Review флажок TRUE.
Цепочка в текущем виде делает 90% рутинной работы, а сложные моменты оставляет для проверки человеком.
Исходники данного воркфлоу и используемые Prompt's можете найти вот тут.
Про экономию
Возьмем небольшую игру на 50 000 слов.
• Работа с агентством: обойдется примерно в 5-10 рублей за 1 слово и займет 20-30 дней. Итого: 375 000 рублей. Математику строил на основе информации по расценкам различных фриланс площадок.
• Мой workflow в n8n: запросы к нейросети обойдутся примерно в 1-3$ (165 000 токенов). Весь процесс займет пару часов на автоматический прогон и еще день-два на проверку строк, которые AI пометил флажком.
Экономия – больше 99%. Но, есть естественно одно "но".
Что важно понимать
Конечно, это не волшебная кнопка, хотя очень хотелось бы.
• Перевод получается посредственный. Чтобы сделать прям совсем идеальный, нужно запарываться над RAG (например поддержку длинных диалогов и полотна сюжета), а также OCR определение на основе интерфейса (помимо текстового контекста, еще и скрин из игры где этот текстовый элемент находился). По моим расчетам, такая штука обойдется уже в 100$+ чисто на запросах в AI модели.
• Это не полная автоматизация. AI делает основную работу, но финальная проверка и ответственность всё же за разработчиком.
• Качество зависит от вас. Чем лучше вы опишете игру и термины для AI, тем меньше вам потом придется исправлять.
• Нужна реализация потоков. Сейчас в workflow нет разделения на потоки, лучше конечно за раз обрабатывать не более 50 строк (можно и больше, но помните про контекстное окно самих LLM). Уверен, что те, кто захочет развернуть у себя нечто подобное, смогут легко разобраться в особенностях работы n8n и достроить эту цепочку конкретно под свои нужды.
• Это не для ААА-игр. Для огромного проекта со сложным литературным языком все еще нужен профессиональный переводчик. Но для инди-игры, чтобы выйти на новые рынки и получить начальный фидбэк, этого более чем достаточно.
Какие модели рекомендую использовать
- Gemini 2.5 Flash Lite (дешёвая, хорошо в English и другие популярные языки);
- GPT 5 Mini (подороже, чуть лучше качество, хорошо переводит в различные языки);
- Можете пробовать совсем дорогие и навороченные модели по типу Gemini 2.5 Pro или обычную GPT-4o / GPT-5, но цена сразу взлетает в несколько раз и мне не совсем понятна метрика цена/качество на выходе. Подобные эксперименты на существенных объемах по переводу не проводил. Если среди нас есть энтузиасты, которые подобные вещи уже тестировании, буду рад услышать их мнение в комментариях.
Вместо заключения
Собственно, как-то так. Вот такой подход у меня получился и я очень хотел бы, чтобы он позволял маленькой команде или даже одному разработчику донести свою игру до аудитории по всему миру. И это, на мой взгляд, и есть самое правильное применение подобных технологий – делать то, что раньше казалось невозможным, доступным.