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

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

? Две новых зоны - 'Вулкан' и 'Канал';

? Новый босс - Смертельное Трио;

? Поддержка нескольких сохранений

...и многое другое!

Spoiler

b6704ecebe26.jpg

04c206452e43.jpg

Перевод игры: http://notabenoid.org/book/53432

Прогресс перевода на нотабеноид: 51.png

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


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

В принципе, с радостью бы помог перевести сей достойный представитель жанра платформеров, если кто-нибудь разберет формат файлов игры.

P.S. Сам я его назвать затрудняюсь.

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


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

Текстов там совсем немного, но с радостью присоединюсь. Разделим русификацию отдельных персонаджей между разными авторами, чтоб получить уникальные стили речи! :)

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


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

Парни, сделайте пожалуйста перевод для Guacamelee! Gold Edition, игра реально цепляет, но с переводом вобще конфетка будет.

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


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

Вот до чего же некоторые оформляторы не хотят заинтересовывать переводчиков!

Guacamelee! в Steam

Трейлер:

 

Оценки:

IGN - 91

Game Spot - 90

Eurogamer Germany - 90

 

Spoiler

IGF_finalist.jpgIndieCadeFinalist2012.png

PAX Prime 2012

234222-paxaward.jpgDSCF53431-500x281.jpg

E3 2012

E3-2012-AWARD-WINNER.jpgdest-229061-image00.png

g4-announces-best-of-e3-2012-winners.jpg

sello_HG_e3.jpg

PaxEast 2012

destructoid_PAXEast2012.jpgcg_PaxEast2012.jpg

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


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

 

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

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


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

 

parabashka, я подразумевал именно команду переводчиков, а в ней всегда должен быть ресурсопотрошитель. А желающие переводить с английского найдутся.

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


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

Знающие люди! Обратите,пожалуйста, внимание на одну из лучших инди игру года :)

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


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

Аууу, ни кому не надо что ли, хоть начните, дальше поможем.

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


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

Жалко, игра классная, перевода не хватает как огранки для алмаза...

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


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

Да уж,обидно.Игра действительно стоящая.И,как я понял,текста в ней не так уж и много.Так в чём же проблема?Вроде бы и люди есть,согласившиеся перевести. <_<

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


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

Похоже никому нет дела до этой игры,кроме нескольких переводчиков.Хотя бы описали,в чём проблема.Я не силён в этом,но ,думаю, распаковщик текстовых файлов можно найти. В общем,было бы желание. На ZOG всегда было много отличных переводчиков. А вот с "технарями" беда...... Остаётся лишь только ждать..... Верить и ждать .....

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


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

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

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

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

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

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

Войти

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

Войти сейчас

  • Похожие публикации

    • Автор: SerGEAnt
      Mortal Shell 2
      Метки: Не указан Платформы: PC XS PS5 Разработчик: Cold Symmetry Издатель: Playstack Дата выхода: 20 августа 2026 года
    • Автор: tilifunkin

      https://store.steampowered.com/app/741140/Baldr_Sky/ — страница игры
      Жанр: Визуальная новелла Разработчик: GIGA Издатель: GIGA, Sekai Project Платформы: Windows Дата выхода: 20 Декабря 2019 (2009 - релиз). Состав сборника: Baldr Sky Dive1 “Lost Memory”,  Baldr Sky Dive2 “Recordare”  
      Переводом Steam версии Baldr Sky занимается группа SnowLabs.
      Инструкцию по установке перевода можно найти тут.
      Автор перевода ищет новый переводчиков, писать - SunRay27(zog) или ВК.
      Переведено — 41.31% — 09/05/2026 13:38
      Рэйн — 100% Наноха —  100% Тинацу — 2% Прошлое — 3% Аки — 1% Макото — 1% Финал — 1% Бонусный контент — 1% Система и интерфейс — 91% Обучение — 100%

  • Сейчас популярно

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

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

    • А другие модели там замеряли? просто интересно стандартное это явление или нет, вон Питон пишет что 5090 может до 1200w прыгать. и если это обычное явление для всех карточек то чего так акцентироваться на 9070? и хаять именно ее.)
    • Собственно, обычное явление, когда карта делает резкие околомгновенные пики потребления сверх обычного значения. 12 пиновый контакт вполне позволяет карте столько запрашивать от бп, так что не вижу, чему тут удивляться. Если поставишь не просто мониторинг на экране, а запись значений на какое-то время, то и сам увидишь удивительные циферки. Не один и не два человека уже замеряли как напрямую, так и банально логируя, в т.ч. и просто выставляя столбец пиковых значений. Такая фигня обычно происходит с играми на 5-м анриле новыми. Он с андервольтингом сидит, ещё б ты там видел большие числа. А так карта в стоке и 400 постоянных в нагрузке без учёта пиков может выдавать в ряде игр, судя по реддиту. Собственно, у обычных моделей 2 8пин+ питание от пси-е, это под 400 ватт возможного жора без оверлимита с возможностью тянуть и того больше (и отваливаться, когда карта требует больше, чем ей могут по линиям выдать). 12 пиновый новомодный даёт сам по себе около 600 без перегрузки+75 ватт по материнке.
    • Люди, подскажите, какой русификатор на lost judgment самый более-менее цивильный? И если есть возможность, скиньте его ссылкой в ЛС.
    • Игрушка вроде красочная, но отзывы: что очень глупый сюжет. Юмора вроде достаточно, но как ИИ справился с его адаптацией?
      Меня отпугнуло больше количество голубцов, которое якобы в игре присутствует (судя по отзывам). Я не гомофоб, но все же...
    • Это чтобы наши с Мирославом жопы горели в унисон?
    •  что это.   Нет, я помню что что-то  такое писал, но мать твою.... Кратковременный пик это то, что может не засеч мониторинг если у тебя там не а 1/10 сек строчит. Я слышал, что у 5090 это может быть 1200-1300w.
    • Ну к слову, я в основном играю c достаточно серьезным андервольтом снижающем постоянное потребление с 330w до 250w но теперь мне охота посмотреть будут ли тикие пики под 600w или хотя бы 400-500w
    • Будет ли апдейт под 2.0?
    • //------------------------------------------------ //--- 010 Editor Binary Template // // File:        Asura_TXTH.bt // Authors: Giza+AI // Description: Asura Engine Text Resource (.ASRBE / .ASR / TXTH chunk) // File Mask:   *.ASRBE,*.asr,*.bin // ID Bytes:    41 73 75 72 61 20 20 20 54 58 54 48 // "Asura   TXTH" //------------------------------------------------ BigEndian(); // ------------------------------------------------ // Header Definition (36 bytes / 0x24) // ------------------------------------------------ struct HEADER {     char   magic[8]        <comment="Engine signature: 'Asura   '">;     char   chunkType[4]    <comment="Chunk signature: 'TXTH' (Text Header)">;     uint32 chunkSize       <comment="Total size of remaining chunk payload (FileSize - 24)">;     uint32 version         <comment="Structure version (typically 1)">;     uint32 flags           <comment="Resource flags">;     uint32 entryCount      <comment="Number of localized string entries">;     uint32 archiveHash     <format=hex, comment="Archive/File 32-bit Hash ID">;     uint32 totalTextBytes  <comment="Total raw byte size of all UTF-16 text data">; } header <style=sHeading1>; // ------------------------------------------------ // Localized Text Entry // ------------------------------------------------ typedef struct {     uint32  keyHash   <format=hex, comment="32-bit hash identifier for the key name">;     uint32  charCount <comment="String length in UTF-16 characters (including null terminator)">;     wchar_t text[charCount] <comment="UTF-16BE encoded text">;          // 4-byte padding alignment     local int textBytes = charCount * 2;     if ((textBytes % 4) != 0) {         ubyte padding[4 - (textBytes % 4)] <comment="Alignment padding">;     } } TEXT_ENTRY <read=ReadTextEntry>; wstring ReadTextEntry(TEXT_ENTRY &entry) {     return entry.text; } // ------------------------------------------------ // Text Entries Table // ------------------------------------------------ struct TEXT_ENTRIES {     TEXT_ENTRY entries[header.entryCount] <optimize=false>; } textEntries <style=sSection1>; // ------------------------------------------------ // Key Names Table (ASCII / null-delimited) // ------------------------------------------------ typedef struct {     string keyName <comment="Identifier key corresponding 1-to-1 with entry index">; } KEY_ENTRY <read=ReadKeyEntry>; string ReadKeyEntry(KEY_ENTRY &k) {     return k.keyName; } struct KEY_TABLE {     uint32 keyTableSize <comment="Total size in bytes of raw string table">;     KEY_ENTRY keys[header.entryCount] <optimize=false>;          // Remaining alignment padding to EOF (aligned to 16 bytes)     if (!FEof()) {         ubyte filePadding[FileSize() - FTell()] <comment="End-of-file padding">;     } } keyTable <style=sSection2>;   на основе этого ии написал пайтон скрипт:
        #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ Asura Engine TXTH (.ASRBE) Text Exporter & Importer Supports Big-Endian Asura text archives (PS3 / Xbox 360). """ import sys import os import struct import json import argparse def export_asrbe(file_path, output_path=None): if output_path is None: output_path = os.path.splitext(file_path)[0] + ".json" with open(file_path, "rb") as f: data = f.read() if len(data) < 36: raise ValueError("File is too small to be a valid ASRBE file.") magic = data[:8].decode("latin1") chunk_type = data[8:12].decode("latin1") if magic != "Asura " or chunk_type != "TXTH": raise ValueError(f"Invalid header signature: {magic!r} / {chunk_type!r}") chunk_size, version, flags, entry_count, archive_hash, total_text_bytes = struct.unpack(">IIIIII", data[12:36]) offset = 36 entries_data = [] for i in range(entry_count): key_hash, char_count = struct.unpack(">II", data[offset:offset+8]) offset += 8 text_raw = data[offset:offset + char_count * 2] text = text_raw.decode("utf-16-be").rstrip("\x00") offset += char_count * 2 # 4-byte padding alignment if offset % 4 != 0: offset += 4 - (offset % 4) entries_data.append({ "key_hash": f"0x{key_hash:08X}", "raw_hash": key_hash, "text": text }) # Read Key Table key_table_size = struct.unpack(">I", data[offset:offset+4])[0] offset += 4 keys_raw = data[offset:offset + key_table_size] # Split null-delimited keys key_names = [k.decode("latin1") for k in keys_raw.split(b"\x00") if k] # Combine keys and entries output_entries = [] for i in range(entry_count): k_name = key_names[i] if i < len(key_names) else f"UNKNOWN_KEY_{i}" output_entries.append({ "index": i, "key": k_name, "key_hash": entries_data[i]["key_hash"], "text": entries_data[i]["text"] }) meta = { "format": "Asura_TXTH", "endian": "big", "version": version, "flags": flags, "archive_hash": f"0x{archive_hash:08X}", "raw_archive_hash": archive_hash, "entry_count": entry_count, "entries": output_entries } with open(output_path, "w", encoding="utf-8") as f: json.dump(meta, f, ensure_ascii=False, indent=2) print(f"[+] Successfully exported {entry_count} entries to {output_path}") def import_asrbe(json_path, output_path): with open(json_path, "r", encoding="utf-8") as f: meta = json.load(f) entries = meta["entries"] entry_count = len(entries) version = meta.get("version", 1) flags = meta.get("flags", 0) archive_hash = meta.get("raw_archive_hash") if archive_hash is None: archive_hash = int(meta["archive_hash"], 16) # Build text entries block text_entries_bytes = bytearray() total_text_bytes = 0 for entry in entries: raw_hash = entry.get("raw_hash") if raw_hash is None: raw_hash = int(entry["key_hash"], 16) text = entry["text"] + "\x00" # include null terminator text_utf16 = text.encode("utf-16-be") char_count = len(text) entry_bytes = bytearray() entry_bytes.extend(struct.pack(">II", raw_hash, char_count)) entry_bytes.extend(text_utf16) # 4-byte padding text_len = len(text_utf16) total_text_bytes += text_len if len(entry_bytes) % 4 != 0: pad_len = 4 - (len(entry_bytes) % 4) entry_bytes.extend(b"\x00" * pad_len) text_entries_bytes.extend(entry_bytes) # Build keys table keys_raw = bytearray() for entry in entries: keys_raw.extend(entry["key"].encode("latin1")) keys_raw.append(0) # null terminator key_table_bytes = bytearray() key_table_bytes.extend(struct.pack(">I", len(keys_raw))) key_table_bytes.extend(keys_raw) # Payload = text entries + key table payload = text_entries_bytes + key_table_bytes # Pad payload to 16 bytes alignment pad_rem = len(payload) % 16 if pad_rem != 0: payload.extend(b"\x00" * (16 - pad_rem)) # Total chunk size = total file size - 24 # Header is 36 bytes -> header[24:] is 12 bytes + payload chunk_size = 12 + len(payload) header = bytearray() header.extend(b"Asura ") header.extend(b"TXTH") header.extend(struct.pack(">IIIIII", chunk_size, version, flags, entry_count, archive_hash, total_text_bytes)) full_data = header + payload with open(output_path, "wb") as f: f.write(full_data) print(f"[+] Successfully packed {entry_count} entries to {output_path} ({len(full_data)} bytes)") def main(): parser = argparse.ArgumentParser(description="Asura Engine TXTH (.ASRBE) Converter") subparsers = parser.add_subparsers(dest="command", required=True) # Export p_export = subparsers.add_parser("export", help="Export .ASRBE to .json") p_export.add_argument("input_file", help="Path to input .ASRBE file") p_export.add_argument("-o", "--output", help="Path to output .json file") # Import p_import = subparsers.add_parser("import", help="Import .json back to .ASRBE") p_import.add_argument("input_json", help="Path to input .json file") p_import.add_argument("output_file", help="Path to output .ASRBE file") args = parser.parse_args() if args.command == "export": export_asrbe(args.input_file, args.output) elif args.command == "import": import_asrbe(args.input_json, args.output_file) if __name__ == "__main__": main()  
  • Изменения статусов

    • axe66  »  SerGEAnt

      здравствуйте. можете добавить на сайт раздел для игры She’s Leaving и русификатор к нему? и как и куда вам скинуть фото и сам русификатор?
      [h2] Версия: 1.0.1 (от 22.05.2026)
      Совместимость: для сборки 20909321 [/h2]
       Информация:
      Машинный перевод моделью gemma2:9b-instruct с несколькими этапами автоматической перепроверки (модель "самопроверялась") и финальными ручными правками.
      Это не финальная версия — по мере нахождения ошибок перевода будут выходить обновления.
      Известные нюансы:
      * Возможны неточности и ошибки в переводе.
      * Некоторые элементы интерфейса остались без перевода.
       Установка:
      1. Запустить Russifier.exe
      2. Нажать "Выбрать папку"
      3. Выбрать папку с игрой и нажать ОК
      4. Нажать "Установить"
      5. Дождаться завершения установки и закрыть программу.
      После установки запустите игру и наслаждайтесь!
      Если заметили ошибки или некорректные формулировки — оставляйте комментарии, будем исправлять!
       
      Автор: Serjik Sokolov История изменений:   Версия 1.0.1 от 22.05.2026 - Установщик теперь автоматически определяет корневую папку игры, даже если случайно выбрана вложенная папка.   Версия 1.0.0 от 03.12.2025 - Релиз
      · 0 ответов
    • Perfect End Strange  »  SerGEAnt

      Привет, озвучку для Silent Hill 4: The Room выпустил энтузиаст под ником Perfect End Strange, а вы написали совсем другую студию, пожалуйста, исправьте эту оплошность
      · 0 ответов
    • Jimmi Hopkins  »  SerGEAnt

      я его уже открыл в свободный доступ, чтобы не потерялось среди новинок
      · 0 ответов
    • NekoNya  »  Onzi

      https://www.dropbox.com/scl/fi/4xncxr2tqy77vz4644q08/text_RU_FINAL.json?rlkey=xckxss3jkql4gjmc1ah6qjb5e&st=k5ql651f&dl=0 
       
      Вот, то что вышло. Извинюсь, что зря говорил, что помогу (
      · 2 ответа
    • serfly  »  SerGEAnt

      Доброго времени! Недавно столкнулся с проблемой автоперевода XUnity AutoTranslator BeplnEx iL2cc. Пару последних лет часто пользовался, теперь консольные команды виснут на стадии загрузки библиотек, хотя они есть там изначально. На GitHub есть подобные вопросы, но ни одного рабочего ответа я не нашел. А Вы что можете посоветовать?
      · 0 ответов
  • Лучшие авторы


×