Автор статьи Cool-Spot
Перевод Java-игр - дело очень легкое. Но это, смотря какую игру переводишь. Если в игре используются стандартные шрифты, то перевести игру не составит труда. А вот, если в игре используются «рисованные» шрифты, и текст игры находится не в «классах», а в разных .bin, .pak файлах, придется попотеть.
Начнем с простого.
Перевод java игр со стандартным шрифтом.
Это, как правило, старенькие, либо простенькие игрушки. Возьмем для примера игру Bobby Carrot.
Перевод на компьютере.
Необходимое:
1)MobiTrans (можно скачать с нашего сайта в разделе «программы»)
2)Любой графический редактор (я использую Paint.net)
3)Архиватор (я использую WinRar)
4)Эмулятор Java-игр (Советую KEmulator)
Если вы не знали, java-игра представляет собой архив, в котором находятся спрайты, код игры и т.д. Итак, сначала разберемся с устройством jar-архива. Берите игру «Bobby Carrot» и распаковываете его любым архиватором.
Распаковали? Что мы видим:
1)Файлы MID (Как вы уже, наверное, догадались, это музыка из игры)
2)Файлы PNG (Это графика из игры, и она хранится в обычных PNG-шках, т.е. ее можно будет отредактировать в любом графическом редакторе)
3)Файлы BLM (Это, как вы уже догадались, уровни из игры. Но они нам не нужны)
4)Файлы CLASS (Вот в этих фалах-то и хранится весь текст, а также код игры).
Открываем Mobitrans, и поочередно открываем каждый CLASS-файл, используя ClassPlugin.
Как вы уже заметили, весь наш текст находится в файле «a.class». Теперь приступаем к переводу.
Правила перевода:
1)Не переводить непонятные слова, типа «ba, ap, sasds»
2)Не переводить команды типа «startApps(), BobbyCanvas(), loadCurrentLevel()» и др.
3)Не переводить директории типа «/hud.png, /logo.png»
Нажимаете на нужную Вам строку двойным щелчком левой кнопки мыши, и переводим в нижнем окошечке. Важно заметить, что некоторые игры используют некоторые символы для форматирования текста. Например, в Bobby Carrot, знак «~» используется для перехода на новую строку (говоря языком «HTML», «
»).
Все сделано? Жмем на дискетку, заходим в директорию распакованной игры, и видим, там появились новые непонятные файлы. Нам нужен файл «a.class.rus». Удаляем файл «a.class», и переименовываем файл «a.class.rus» в «a.class». Теперь открываем jar-файл через архиватор, перекидываем в него файл «a.class», запускаем на эмуляторе. Если все прошло успешно, игра запустится, и вы будете любоваться своим переводом. Если же игра не запустилась, вы совершили ошибку в переводе.
Перевод прямо в телефоне.
Существует уникальная в своем роде программа, с помощью которой можно переводить java игры прямо в телефоне, и прямо в jar-архиве.
Качаем Class Translator – он имеется у нас в каталоге файлов.
Берем любую старую игрушку со стандартными шрифтами и кидаем ее в папку «Прочее». Устанавливаем Class Translator. Запускаем его. Выбираем диск, на котором находится ваша игра (С: - это телефон, Е: - это «флешка»). Открываем ее. Открыли? Жмем левую софт кнопку, ищем слова и переводим. После перевода жмем «назад» - «функции» - «сохранить». Заходим в папку «прочее, устанавливаем игру. Любуемся результатом.
Перевод java игр с «рисованным» шрифтом.
Перевод этих игрушек практически не отличается от обычных. Т.е. ищем текст в классах и переводим. Но стоит учесть, что игра рассчитана на английские буквы, а не на русские. Так что придется вам переводить АНГЛИЙСКИМИ буквами, на РУССКОМ языке, предварительно перерисовав шрифт в «PNG-шке». Например, вот английский алфавит:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
Я перерисовал в:
АВСДЕФЖНИГКЛМЙОРЙЁЫТЮБЦЬУЯ
Следовательно, Level надо переводить в YPOBEHX
Не обязательно перерисовывать, так как я, вы можете делать, как вам захочется, но вы должны понимать, что каждая английская буква соответствует английской буквы в шрифте.
Перевод .BIN
Внимание! Данная статья предназначена только для тех, кто знает, что такое хекс-редактор и 16-ричная система счисления. Если же вы это не знаете, попробуйте почитать статьи на Шедевре.
В некоторых играх (например, Bobby Carrot 4), текст располагается в файле .bin.
Например, в Bobby Carrot это «EN.bin».
Попробуем открыть его в блокноте. Видите текст? Но не спешите его переводить, переводить в блокноте такие файлы нельзя, иначе игра просто не запустится.
Для перевода таких файлов вам нужен будет хекс-редактор, например, Transhextion.
Открываем через него файл «EN.bin».
Если хорошо приглядеться, будет заметно, что после каждого слова (и, перед ним) располагается символ «00». Этот символ обозначает конец слова. Т.е. после каждого слова вы должны ставить символ «00». Далее, после этого символа стоит еще один символ, каждый раз по-разному. Этот символ отвечает за количество букв, находящихся в слове. Например: 00 0А НОВАЯ ИГРА 00 05 ОПЦИИ (без пробелов).
© Cool-Spot