Перейти к содержимому
Zone of Games Forum
Tericonio

Руководство по русификации игр от Adventure Game Studio

Рекомендованные сообщения

Программы для работы с файлами

agsutils, Любой HEX-редактор, Photoshop, Notepad++

 

Скрытый текст

 

Поддержка версии Adventure Game Studio (2.0 + /3.0 +)

Для распаковки исполняемого файла нам понадобится agsutils

Скачиваем с репозитория и извлекаем архив в удобное место к примеру на диск D:\

Переносим в папку agutils —  исполняемый файл с которым будем работать и запускаем из этой директории CMD

Команда распаковки исполняемого файла: agstract file.exe folder1

Команда распаковки AGS файла: agstract file.ags folder1

Если имя исполняемого файла с пробелом то закомментируем в кавычки, так же и Папку куда распаковывать, если у папки будет пробел

Скрытый текст

acsprset.spr // Спрайты игры

*.wfn //Информация о шрифте

*.ttf //Шрифт

agspack.exestub // Игровой Player или исполняемый файл самого движка

agspack.info //Информация о распакованных файлах

*.ogg //Внутренние файлы диалогов персонажей или комментариев разработчиков либо ещё музыка может быть

*.dta //Информация с текстами на кнопки, расположение текста и т.д.

*.pcx //Загрузочный экран — открывается в Photoshop

room*.crm //Комнаты в которых тоже присутствует текст и часть скриптов за их вывод

sprindex.dat // Всякие данные о спрайтах

 

 

Скрытый текст

 

agscriptxtract -oblf folder1 folder2

Редактирование *.s скриптов в folder2

Открываем в Notepad++ и находим через поиск li ax, "

В строке li ax, " — Будет текст диалогов

Ниже строк __NEWSCRIPTSTART — операнды диалогов из li ax 

Всё что ниже __NEWSCRIPTSTART  вырезаем в другой файл и сохраняем чтобы не мешало, пока переводим, а когда переведёте, верните назад в файл

Текст замещаем только в li ax, ",  а также смотрим на регулярки внимательно : \? & \’  \”

Пример 1: What…\? — Что\?.. = Что?..  ← Итог

Пример 2: &What… — &Что... = Что...  ← Итог

Пример 3: \’ What\’ … — \’ Что\’... = ‘Что’... ←  Итог

Теперь преобразовываем в кодировку ANSI и сохраняем

 

Скрытый текст

agssemble folder2/script.s

 

Скрытый текст

 

К примеру, мы распаковали игру и у нас вышли такие *.s скрипты

dialogscript.s / gamescript0.s /gamescript1.s /globalscript.s /room1.s /room2.s

Упаковка будет такая:

agsinject 0 RU_s/globalscript.o RU/game*.dta   //(0 — первый скрипт на упаковку в *.dta) (Первый глобальный)
agsinject 1 RU_s/dialogscript.o RU/game*.dta  //(1 — второй скрипт на упаковку в *.dta) (Второй диалоговый)
agsinject 2 RU_s/gamescript0.o RU/game*.dta  //(2 — третий скрипт на упаковку в *.dta) (Третий внутриигровой)
agsinject 3 RU_s/gamescript1.o RU/game*.dta  //(3 — четвёртый скрипт на упаковку в *.dta) (Четвёртый внутриигровой)

и т.д. если gamescript2 то уже будет после:  agsinject 4

Для комнат всегда будет 0
agsinject 0 RU_s/room1.o RU/room1.crm  //(0 — первый скрипт на упаковку в *.crm поскольку скрипт в комнате всегда будет один)
agsinject 0 RU_s/room2.o RU/room2.crm  //(0 — первый скрипт на упаковку в *.crm поскольку скрипт в комнате всегда будет один)

 

Поскольку текст не весь распаковывается из скриптов то часть остаётся ещё в *.crm и *.dta

 

Скрытый текст

После того как уже перевели в скриптах диалоги и вставили обратно в *.crm

Открываем в HEX-редакторе *.crm поэтапно

Первые 3 байта заголовок комнаты 21 00 01

2-3 байта размер секции или смещение (будем править после перевода до секции SCOMS/SCOMZ — самого скрипта)

с 5/6 байт по 0a — 0 байты

Со смещения 0x0b начинается первый отрезок комнаты и будет начало первого отрезка указанное в смещении 0x03

Теперь переходим к смещению 0x101, если первый текст объекта No hotspot или Hotspot*, то такие не переводим, а ищем между ними или же бывает объекты начинаются для перевода со смещения 0x101 (сам текст) а размер на смещении 0xFD

Включаем режим вставки, чтобы текст не замещался а вставлялся в кодировке ANSI (А  — С0) и перед объектом-текста за минусом 4 байта длина текста

Пример: 04 00 00 00 54 65 78 74 00 00 00 00 (04 — размер  3 байта нулевых поскольку предложение даже не превышает значение ff  и дальше пошёл текст 54 65 78 74 — Text)

Когда всё перевели между No hotspot и Hotspot* и заменили размер байтов перед текстом, ищем Начало следующей части комнаты, а именно SCOMZ или SCOMS,  и слева от SCOM через -9 байт будет начало первого нашего отрезка, сразу же после разделителя 07 (ID Скрипта) — И теперь выделяем с этой части и до 0x0b и будет наш размер или смещение на первую часть, и вписываем в смещение с 0x03 в перевёрнутом виде : 1с20 = 201с или 10020 = 200001

 

Как только заменили первый участок, ищем следующий через текст юКпѕ — сразу после него будет разделитель комнаты — 1 байт, а после будет уже размер отрезка — начало отсчёта 8 байт (количество объектов) после смещения и будет отрезок до следующего разделителя, и переводим так же как и в начале *.crm файла и после перевода и исправления размера перед текстом правим размер этого отрезка и сохраняем и так проделываем со всеми скриптами *.crm

 

Скрытый текст

После того как упаковали все скрипты обратно в *.dta 

Открываем в HEX-редакторе в 3 частях файла

 

Первая часть

После смещения 1800 будет первый текст на объекты или предметы, который надо переводить

Здесь не включаем Режим вставки, а просто замещаем текст 

Размер общего блока под объект/предмет 44 байта, под текст где-то 16 байт 

Править смещения не надо или размер общего файла

 

Вторая часть

Теперь переходи к последнему скрипту SCOM по поиску через юКпѕ

И после этих строк до btn или lbl находим имена персонажей, оставшиеся диалоги выбора или какой либо ещё текст

Для имён персонажей 24 байта для вариантов ответов или вопросов или диалогов 94 байта

Так же вставляем текст как и в первой части

 

Третья часть

Это оставшаяся часть с редактированием текста в btn  или lbl, и сам размер перед текстом  -4 байт и с включённым режимом вставки

В этом же месте можно изменить расположение текста и кнопок по осям X и Y (позднее напишу)

 

Скрытый текст

agspack -e folder1/ file.exe

Под обновление

Изменено пользователем Tericonio
  • Спасибо (+1) 2

Поделиться сообщением


Ссылка на сообщение

@Amigaser 

Такой движок использую для Квестов — бродилок, с небольшим ACT или TBS

Это не Unity где тебе надо упаковать шрифт и текст в файлы, в этой игре все комнаты подхватываются как и шрифты

 

Изменено пользователем Tericonio

Поделиться сообщением


Ссылка на сообщение
36 минут назад, adm-244 сказал:

Возможно у нас отличаются версии игры, тут нужно разбираться.

А вы откуда взяли игру? Может у вас это демо со стима?

Поделиться сообщением


Ссылка на сообщение

@Tericonio ну, тогда тем более непонятно, почему у него работает изменение на кнопках меню в простейшем tra, а у меня нет.

Поделиться сообщением


Ссылка на сообщение

@Amigaser 

Что-то я не увидел где было переведено меню o_O

Текст диалогов да, но меню — Нет

Скриншоты в студию — в чёрном ящике :laugh:

Текст чёрный слева от кнопок — Текстуры, разбираются так же, на github есть команды по разбору спрайтов в png

Изменено пользователем Tericonio

Поделиться сообщением


Ссылка на сообщение
11 минут назад, Tericonio сказал:

Что-то я не увидел где было переведено меню

 В кнопке TEST написано, вместо Neues Spiel

Поделиться сообщением


Ссылка на сообщение

@Amigaser 

У меня блокирует скриншоты с imgur.com

Поэтому не видно было

У него версия новее и со Steam скорее всего

И файлы скорее всего были выкинуты отдельно а не в сам файл *.ags

 

Поделиться сообщением


Ссылка на сообщение

@Amigaser у меня версия из steam v1.02.

Взял на проверку версию из GOG v1.00.1 и проверил на ней тот же tra файл — тоже работает:

YTBIbju.jpeg

Как вариант почистить содержимое папки “%HOMEPATH%\Saved Games\Rosewater”. Магии не бывает, что-то значит отличается :unknw:

Поделиться сообщением


Ссылка на сообщение

@adm-244 

У меня тоже заработало, без чистки

Надо писать немецким первым, а русским вторым

Neues Spiel — 1 строка

Новая игра — 2 строка

А вот если писать

New Game — 1 строка

Новая игра — 2 строка

То не будет работать ни на Английской, не в Немецкой

@Amigaser @adm-244 

Почему-то игра берёт German первый, а не English

Изменено пользователем Tericonio

Поделиться сообщением


Ссылка на сообщение

@adm-244 

Забыл про папку сохранений

Так что можно спокойно делать файл Russian.trs

В той папке по пути %HOMEPATH%\Saved Games\Rosewater в файле acsetup.cfg прописываешь за место Emglish — Russian

В итоге файл подхватывается Russian.tra и текст английский тоже переводится

@Amigaser 

agsfnt4.ttf — Главное меню и Дополнительные настройки

agsfnt1.ttf — Диалоги / Титры

Изменено пользователем Tericonio

Поделиться сообщением


Ссылка на сообщение

@Amigaser 

Через Notepad++ создаём чистый Russian.trs

Вписываем в Russian.trs в первую строку //#Encoding=UTF-8

Дальше вставляем текст с какого языка будет подхватываться текст

К примеру с английского:

2 строка — New Game

3 строка — Новая игра

Удаляем как писал @adm-244  по пути %HOMEPATH%\Saved Games\Rosewater все файлы

Компилируем через AGSUnpacker — *.tra

Через программу winsetup.exe выставляем в Game language: Russian и нажимаем Save

Запускаем игру и радуемся жизни

Глянул файлы по этой игре, комнат вообще нет, так что текст легко весь переведётся, кроме тккстур

Текстуры через AGSUnpacker , можно вытащить и положить рядом с исполняемым файлом и они подхватятся

Изменено пользователем Tericonio
  • Спасибо (+1) 1

Поделиться сообщением


Ссылка на сообщение

@Tericonio да, спасибо. У меня тоже всё сдвинулось с мёртвой точки. Разобрался что у меня не так. Я распаковывал ресурсы той же утилитой AGSUnpacker, и они распаковались из Rosewater.ags в папку Rosewater рядом. И, видимо, приоритетно текст берётся движком оттуда. Удалил эту папку, и текст из tra-файла стал подхватываться. Шрифт в папку с игрой можно положить любой ttf с поддержкой кириллической таблицы, переименовав его в agsfnt0.ttf. Затем скопировать этот же файл несколько раз с именами agsfnt1.ttf, agsfnt4.ttf, agsfnt5.ttf, agsfnt6.ttf, agsfnt8.ttf и agsfnt14.ttf 

Изменено пользователем Amigaser

Поделиться сообщением


Ссылка на сообщение
1 час назад, Tericonio сказал:

Текстуры через AGSUnpacker , можно вытащить и положить рядом с исполняемым файлом и они подхватятся

А в каком виде они там должны быть? Я вытащил утилитой png-картинки из acsprset.spr. Там они под номерами sprХХХХХ.png. Просто под таким же именем кинуть в папку с игрой? Так они у меня не подхватываются.

Изменено пользователем Amigaser

Поделиться сообщением


Ссылка на сообщение

@Amigaser 

Напишу чуть позднее по текстурам

Поделиться сообщением


Ссылка на сообщение

@Amigaser 

Извлекать весь acsprset.spr и упаковывать также в acsprset.spr + sprindex.dat

И если потом перекинуть в корневую папку Rosewater/ — то тогда только будет загружаться спрайты, но это дополнительные 3 гб + 

Если упаковать только тот спрайт что перерисовал, то другие спрайты подгружаться не будут и игра не запуститься

Лучше всего так:

Распаковал с помощью agstract.exe Rosewater.ags

Распаковал с помощью AGSUnpacker acsprset.spr (поскольку на выходе будут *.png)

Перерисовал текстуры

Запаковал с помощью AGSUnpacker и на выходе получил acsprset.spr + sprindex.dat новый в папке packed

Перекинул в папку где распаковал Rosewater.ags и заменил, а с помощью agsutils упаковал файлы в новый Rosewater.ags

Создал патч на основе патча Visual Patch или схожих программ для создания патча и пропатчить оригинальный Rosewater.ags

Такой способ единственный

Изменено пользователем Tericonio

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Продвигаемые темы

  • Последние сообщения

    • https://image.zone-game.info/image/jdC
    • в русском переводе такое чувство что после каждой буквы пробел. а  пробелы вообще отсутствуют)
      текст выглядит так — П р о д а в е ц о б о р у д о в а н и я
      текст поверх карт плохо читается. и пропали в тексте значки славы, известности, бесчестия. там где пишут “вы получили +1 к славе”
      в остальном вроде норм.
    • @FILLDOR ЛЕГЕНДОЙ будешь, если чё-нить получится! 
    • Всем привет, я бы тоже поучаствовал в переводе 2 части. 
    • инструкцию люди читать не могут...
    • Поиграл. Честно говоря, игра понравилась. Да, видно, что игра бюджетная. Анимации слабенькие, боёвка немного корявенькая, но вроде прикольная, есть свои самобытные вещи. Например в игре можно ХП восстановить бив врага, ты накапливаешь эдакую серую полоску в строке ХП, которая при определённом игровом свечении, если во время на одну кнопку нажать, то это серая полоска восполнит ХП. Звучит вроде как просто, но во время боя не всегда замечаешь нужный момент для прожатия кнопки, чтобы ХП восполнить. Такой псевдо элемент, который даёт тебе возможность восстановить часть здоровья, без аптечки, но тоже надо иметь сноровкость, чтобы успеть во время всё прожимать. Тем более с уменьшением ХП, уменьшается школа выносливости, что сокращает твоё количество атак и уклонении. Поэтому держать ХП на максимум, тут как бы важный элемент. В общем выглядит и работает это любопытно и не обычно. Что-то новое! А так в целом, атмосфера хорошая, есть какая-то интрига в сюжете, хочется узнать мир по лучше. Мир выполнен виде кишкообразных локации, что-то похожее на Экспедицию и ДС. За ручку никто не ведёт, загадки решаешь за счёт внимательности. Собираешь предметы в стиле РЕ, потом возвращаешься, вставляешь предметы, открываешь скрытые локи. Сам геймплей это калька аля Соусл-лайка, но сама игра по себе не сложная. По крайне мере, в игре ни разу не умер за всё демо. Боссов в демке не было, статичные мобы пока легко бьются. Всё как в ДС, есть парирование, перекаты, всякие способности, - из доступных пока только отвлечение дроном мобов. Оружие разные: мечи, топоры. Есть определённая школа энергии у них, с помощью которой можно произвести особый приём. Удачное парирование, также даёт мощное добивание. Есть враги, которых надо тактически убивать. Есть специальные места сохранения, аля ДС. При этом то, что игра имеет элементы Соусл-лайка, она гибко по сложности настраивается. Тут можно отдельно отключить многих раздражающую вещь, когда после смерти воскрешаются враги и теряется накопленный опыт. Хоть кто-то додумался эту опцию добавить. Но если хочется как по старинке в Соусл-лайке, можно это опцию оставить, чтобы после смерти все мобы воскрешались и за опытом надо заново к точке смерти бежать. Также сложность боёв настраивается, можно даже задать какой урон будешь получать ты, какой мобы, прям напомнило свежий Дум. В целом игра явно метить на массового потребителя, поэтому если хочется запотеть(наверно), ставишь себе всё самое сложное. Если не хочется особо потеть, опускаешь всё до комфортного уровня и играешь.  По производительности, тут прям ситуация с Экспедицией 33. На 4080, в 2к, ультра, с DLAA идёт примерно от 50 до 70 кадров. Если поставить DLSS на качество то идёт уже 90-110 кадров. Оптимизация не ахти какая, да и графика не сильно прям поражает, хоть и не плохая, но это УЕ5. Из приятное в плане оптимизации, что фремрейт ровный, статеров вообще нет, картинка идёт чётко и плавно, без подёргивании. Также отсутствует компиляция шейдеров. Прям всё аналогично Экспедиции 33.  В целом, мне понравилось. Да игра местами кривенькая, вполне ощущается бюджетность, но какой-то есть у неё свой шрам в плане необычного мира. Есть какие-то свои фишки и элементы в геймплее. Игра без карты и стикеров куда идти, никто за ручку не ведёт, что почётно. Нужно всё самому читать, изучать, думать куда дальше двигаться. Может быть нас ждёт очередная Экспедиция 33, где тоже всё бюджетненько и простенько, но сделано с душой, с интригующим сюжетом и хорошим геймплеем. Стоит ли игра своих 3к? Не знаю. Я бы подождал релиза, и уже там делал выводы. В любом случае, если игра не окажется такой же хорошей как Экспедиция 33, возможно на распродажи, с хорошей скидкой, игру всё ровно бы купил, так как заинтересовала. И снова тут нет — “ой, извините”. 
    • @Zifirkin там же идёт папка в архиве, кинь ее в основную папку игры, появится окошко заменить нажми да
    • а куда кидать файлы  
    • Дедушка стражник поверил в себя и решил дать леща призракам из лорд фаллен но сдох почти вначале, теперь я дедушка стражник младший ps: ощущение игра для мобилок, слишком картонное и дешёвое, про парирование вообще не понимаю, “угадай что вытворю” 
    • Мда,вот только щас узнал что у других провайдеров это денег стоит,мой так дает. И стоит почти как пол моего тарифа( от 120 до 200 в месяц) ..жесть. Деньги на воздухе гребут. 
  • Изменения статусов

    • Дмитрий Соснов  »  Tirniel

      Привет! ты разбираешься в компьютерном железе, сможешь помочь с советом по апгрейду старого компа?
      · 1 ответ
    • SHAMAH

      Куда вход на сайт убрали и ЗАЧЕМ? Хотел файл скачать, там только медленная загрузка и “зарегистрируйтесь”. Все. Пришлось вручную страницу входа прописывать.
      · 0 ответов
    • Nosferatu  »  behar

      Добрый вечер.
      Подскажите пожалуйста, у вас не осталось случайно исходников для фикса на широкоформатные мониторы для игры Vampire The Masquerade Redemption?
      Если да, то не могли бы вы ими поделиться, а если нет, то прошу прощенья что побеспокоил.
      Заранее спасибо.
      · 0 ответов
    • AlcoKolyic  »  makc_ar

      Здраствуйте! Извините, а можно попросить ссылку на место где можно взять перевод (патч или образ игры с переводом) El Shaddai: Ascension of the Metatron для ps3, пожалуйста? А то в теме к этой игре у меня не получилось найти работающие ссылки… Первая ведет в группу в которой удалены большинство постов, а пост с этой игрой ведет на сайт https://psnext.ru который сейчас не имеет отношения к видеоиграм. 
      · 0 ответов
    • oleg72  »  Boor

      https://www.skidrowcodex.net/fate-reawakened-goldberg/
      · 0 ответов
  • Лучшие авторы


Zone of Games © 2003–2025 | Реклама на сайте.

×