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

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

80 Days

header.jpg

  • Метки: Приключение, Глубокий сюжет, Решения с последствиями, Выбери себе приключение, Стратегия
  • Платформы: PC iOS An MAC
  • Разработчик: Inkle Studios
  • Издатель: inkle Ltd
  • Дата выхода: 29 сентября 2015 года
  • Отзывы: 1100 отзывов, 91% положительных
1872 год, с элементами стимпанка. Филеас Фогг поспорил, что сможет обогнуть мир всего за 80 дней. Путешествуйте на дирижабле, подводной лодке, механическом верблюде, паровозе и многом другом. Соревнуйтесь с другими игроками и часами, которые никогда не останавливаются, в Игре 2014 года по версии журнала TIME.
Скриншоты
Изменено пользователем 0wn3df1x

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


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

Правильно оформи тему. Вверху ссылка на шаблон сообщения

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


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

Сразу расставлю все точки над I.

По признанию самих же разработчиков игру практически невозможно перевести из-за их замутов с технической частью.

Они просто разрабатывали её даже не задумываясь о возможности локализации. Поэтому там текстовые строки зачастую эквивалентны техническим. Поэтому, к примеру, во всех документах определённые тысячи слов должны совпадать между собой и т.д.

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


Ссылка на сообщение
Сразу расставлю все точки над I.

По признанию самих же разработчиков игру практически невозможно перевести из-за их замутов с технической частью.

Они просто разрабатывали её даже не задумываясь о возможности локализации. Поэтому там текстовые строки зачастую эквивалентны техническим. Поэтому, к примеру, во всех документах определённые тысячи слов должны совпадать между собой и т.д.

Очень жаль :sad:

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


Ссылка на сообщение
Очень жаль :sad:

На данный момент игру можно перевести.

Техническую часть возьму на себя, по вставке текста и его вытаскиванию.

Проблема в распознании Юникода в скриптах .json

Единственный вариант это закодировать символы под английский алфавит

Количество символов в строке может быть любое.

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

Текст присутствует везде, как в *.assets / level0 / mainData / *.dll

Бинарный, и в скриптах .json

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

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


Ссылка на сообщение
На данный момент игру можно перевести.

Техническую часть возьму на себя, по вставке текста и его вытаскиванию.

Проблема в распознании Юникода в скриптах .json

Единственный вариант это закодировать символы под английский алфавит

Количество символов в строке может быть любое.

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

Текст присутствует везде, как в *.assets / level0 / mainData / *.dll

Бинарный, и в скриптах .json

Здравствуйте! Спасибо вам за начинание. Надеюсь, что всё-таки перевод состоится.

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


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

Готов участвовать в переводе, правда, нотой никогда не пользовался и в саму игру не играл, по крайней мере, пока.

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


Ссылка на сообщение
В 15.10.2017 в 12:47, Tericonio сказал:

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

Если ещё актуально, то готов поучаствовать.

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


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

Верну немного рассуждение по теме.

Разработчики намутили прилично.

Подразобрал файл 80days.inkcontent — Первое что бросается, это строки созданные из движка одного сайта или на его основе.

Разберём первую строку которая появляется при первом диалоге:

LONDON, 1872

I have entered into the service of a new gentleman.

На первый взгляд строка вроде обычная, но, найдя слово “entered” в кавычках у черта на куличках, изменив одну букву игра не сломалась:

I have fntered into the service of a new gentleman.

fntered”

Получаем текст который в другой части считывает это слово, но таких слов в кавычках нашёл аж 5 мест, и изменил все.

Дальше ещё хуже, где-то прописан не хеш файла — иначе бы файл при замене одного символа не воспроизводил начальный текст, а его размер в байтах или в байтах но в хеше, из-за чего происходит после увеличения размера не воспроизведение первого диалога.

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

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


Ссылка на сообщение
On 27.09.2023 at 7:19 PM, Tericonio said:

LONDON, 1872

I have entered into the service of a new gentleman.

Не знаю, нет там такого текста :)

Spoiler

VorL3d1SLNNitEAbYlPEAhWGfrhjuAU0QVlH57hc

 

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


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

@clarkkent 

Разобрался в файле 80days.txt и 80days.inkcontent.txt

Как работает 

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

    "initial": "storycrashed",
    "indexed-content": {
        "filename": "80days.inkcontent",
        "ranges": {
            "storycrashed": "0 150", c 0 и  150 символов в первой строке
            "repeat_visit_bank": "150 1294", с 150 символа и 1294 символов в строке
            "village_bank": "1444 97",
            "medium_bank": "1541 97",
            "town_bank": "1638 97",
            "withdrawal_options": "1735 4753",
            "bank_done": "6488 24",
            "begging": "6512 408",

  • Надо делать SDF шрифты через Unity
Изменено пользователем Tericonio

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


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

@Tericonio да, я шрифты уже сделал, но с nunito и Oswald есть проблемы. Осталось с ними разобраться, и русификатор готов :)

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


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

@clarkkent 

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

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import json
import os
import shutil

def recalc_and_save(content_file, index_file, output_dir="ru"):
    """
    Пересчитывает байты (UTF-8) в content_file и обновляет index_file
    Сохраняет в папку output_dir с оригинальными именами файлов
    """
    
    # Создаём папку (например, "ru")
    if not os.path.exists(output_dir):
        os.makedirs(output_dir)
    
    # 1. Читаем файл контента как БАЙТЫ
    with open(content_file, 'rb') as f:
        raw_bytes = f.read()
    
    print(f"Файл контента: {len(raw_bytes)} байт (UTF-8)")
    
    # 2. Разбиваем на строки по \n в байтах
    lines_bytes = raw_bytes.split(b'\n')
    # Удаляем последнюю пустую строку если есть
    if lines_bytes[-1] == b'':
        lines_bytes.pop()
    
    print(f"Найдено строк (сцен): {len(lines_bytes)}")
    
    # 3. Читаем старый индекс
    with open(index_file, 'r', encoding='utf-8') as f:
        index_data = json.load(f)
    
    old_ranges = index_data.get("indexed-content", {}).get("ranges", {})
    scene_names = list(old_ranges.keys())
    
    print(f"Сцен в индексе: {len(scene_names)}")
    
    # 4. Пересчитываем ranges на основе реальных байтов
    new_ranges = {}
    current_offset = 0
    
    print("\n=== ПЕРЕСЧЁТ (В БАЙТАХ) ===")
    
    for i, name in enumerate(scene_names):
        if i >= len(lines_bytes):
            print(f"  ❌ Сцена '{name}' - нет строки")
            continue
        
        line_bytes = lines_bytes
        line_length = len(line_bytes) + 1  # +1 для \n
        
        new_ranges[name] = f"{current_offset} {line_length}"
        
        print(f"  '{name}': offset={current_offset}, length={line_length}")
        
        current_offset += line_length
    
    # 5. Обновляем индекс - имя файла ОСТАЁТСЯ ОРИГИНАЛЬНЫМ
    index_data["indexed-content"]["ranges"] = new_ranges
    index_data["indexed-content"]["filename"] = "80days.inkcontent"  # без .txt и без _ru
    
    # 6. Сохраняем индекс в папку output_dir с оригинальным именем
    output_index = os.path.join(output_dir, "80days.txt")
    with open(output_index, 'w', encoding='utf-8') as f:
        json.dump(index_data, f, ensure_ascii=False, indent='\t')
    
    print(f"\n[OK] Индекс сохранён: {output_index}")
    
    # 7. Копируем файл контента в папку output_dir с оригинальным именем
    output_content = os.path.join(output_dir, "80days.inkcontent.txt")
    with open(output_content, 'wb') as f:
        f.write(raw_bytes)
    
    print(f"[OK] Контент скопирован: {output_content} ({len(raw_bytes)} байт)")
    
    return new_ranges


# Запуск
if __name__ == "__main__":
    recalc_and_save("80days.inkcontent.txt", "80days.txt", "ru")

Сгенерировал скрипт для подсчёт символов

Извлечь файлы 80days.inkcontent.txt 80days.txt через UnityEX  и извлечётся в 80 Days_Data\Unity_Assets_Files\resources\

Потом запустить скрипт к примеру python Check_files.py где расположены эти файлы в папке resources\ после подсчёта создаст папку ru и в ней уже подсчитаны все суммы

Я пишу скрипты для символов которые есть в файле или в файлах потом собираю по группам к примеру 32-127,140 и на основе оригинального размера шрифта создаю SDF шрифт в Unity используя параметры извлечённые через UABEA c MonoBehaviour создав новый потом через UEBEA замещаю имя и все GUID 

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

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


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

@Tericonio я это всё уже сделал. Там просто есть жёлтый текст в диалогах, который собирается из кусков, и вот с русификатором эти куски на разной высоте располагаются.

Я думаю, что вечером уже добью это дело, ну или завтра, если сегодня не успею из-за другого русификатора. 

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

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


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

@clarkkent

Тут только весь SDF менять как mono так и texture, нужно либо поискать схожий шрифт и сравнить умляуты между собой по высоте чтобы были одинаковы, тогда не будут скакать 

Если структура файла не нарушена то должно всё быть в порядке

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: малиновка
      Winter Hubris

      Метки: Приключение, Point & Click, Визуальная новелла, 2D, Стилизация Разработчик: Melty Clown Studio Издатель: Melty Clown Studio Дата выхода: 31.01.2025 Отзывы Steam: 3 отзывов, 100% положительных  
    • Автор: SerGEAnt
      The Expanse: Osiris Reborn

      Метки: Космос, Ролевая игра, Экшен, Для одного игрока, Научная фантастика Платформы: PC XS PS5 Разработчик: Owlcat Games Издатель: Owlcat Games Русский язык: Интерфейс, Субтитры

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

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

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

    • Если  олед  то главное яркость как минимум 50+ держать ,особенно если самсунг  у них с шимами беда.
    • интересные экшены проходил totally-spies и scooby-doo-mystery-mayhem
    • з.з.ы https://store.steampowered.com/bundle/34896/Elite_Driver_Bundle/ Получатся там в паке  будет недоступна  игра?) Брать не буду,дрифт это не мое  Просто скорочтение книгу могу за 3- часа ± прочитать,недавно  даже тест проходил, 700 слов в минуту Я раньше то же ходил с 6 лет,помню как в читальном зале очередь  на новые книги  Волкова и Булычева были в детской библиотеки. В 5 лет меня научили читать,и понеслось)  А я прям начал проходить ,у меня многие сесионки  после ркн отлетели ,и время освободилсоь под белклог Ща проходу Роуг терйд  Екс машину  Эадор,   До этого пробежал Бастион Мое время в Портии (очень залепательная игр оказалось ) Брутал легенд  Стараюсь максимум 3-4 игры играть что бы не распылятся  Май тайи ин Портия  Я вот думаю в библиотеку отнести книги  2 шкафа  больших,оставить что то  избранное ,вроде Гашека,Соловьева , Булгакова на Бумаге ,а остальное отнести отдать.,пусть люди читают  У нас на форуме вроде и больше есть. НУ или около того  
    • Как-то раз-другой в начале санкция угораздило меня опробовать поиграть в то, что накупил “на потом”. Оказалось, что львиная доля всего этого безобразия для меня уже была совершенно не интересна. Ложка хорошо к обеду всё-таки, как показывает практика. Ничего себе, вот это уже вполне себе достижение. Сам-то за последние годы вообще книги толком не читал. Хорошо если за год пару-тройку томов прослушаю в виде аудиокниг или несколько ранобек полистаю. Что занятно, когда-то, ещё каких-то лет с двадцать тому назад из библиотеки меня было не вытащить — почти всё, что было в поселковой было мной прочитано. Просто ел эти книги на завтрак, обед и ужин. Нда, вот что оцифровизация с человеком делает. Почти читать перестал. >_<
    • У меня не было никакой плёнки с завода (какое-то время так с чехлом пользовался). Oneplus pad2 (3к разрешение, 12.1 дюймовый, 120 герц, ips, 6 динамиков, snapdragon 8 gen3). На телефоны частенько плёнку делают, но на планшетах не столько часто практикуется, особенно на крупных планшетах. Ага, сейчас как раз прохожу Moémon Star Emerald. Что-то на покемонов потянуло неожиданно, особенно после того как решил хак на моемонов опробовать-таки. Симпатичных девочек собирать вместо всяких зверюшек — прям второе дыхание открывает на уже приевшиеся механику. А так с большим экраном и нинтендо дс игры хорошо идут — два экрана хорошо помещаются даже не только в вертикальном, но и даже в горизонтальном положении. Жду пока геймпад дойдёт (хотя уже предвижу, что или с чезлом будет конфликт, или динамики будет перекрывать — тут уж не учёл момент, в т.ч. под такую диагональ найти подходящий, чтобы не ломать его, не так-то просто, как оказалось), так что не особо сильно балуюсь с эмуляцией.   К слову, рутуб опять поразил: если смотришь что-то на много серий (и нужно выбрать конкреную, например, когда с планшета на пк переходишь и закладки или вкладки надо так обновить), то его менюшка выбора серии входит в конфликт с жестом сворачивания-разворачивания на полный экран (взмах вверх откуда угодно). Выбрать какую-нибудь 14+ серию из-за этого задача крайне нетривиальная (постоянно сбрасывается менюшка, а видео сворачивается-разворачивается в фулскрин при этом). Более того, на пк, как оказалось, сделать это тоже не просто, хотя, казалось бы, тут-то никаких жестов нет, но при скроле колёсиком или протаскиванием ползунка мышою один смысл всё равно то окошко постоянно закрывается и сбрасывается положение внутри него. Называется, решил посмотреть сериальчик на отечественных ресурсах, ага. Как было фигово по юзабилити, так и осталось. Этого прикола ранее даже не помню, впрочем, этим меню особо раньше и не пользовался, так что мб оно и раньше было так плохо реализовано.
    • Думаю ещё взять https://store.steampowered.com/app/2566340/Gedonia_2/ https://store.steampowered.com/app/253230/A_Hat_in_Time/ https://store.steampowered.com/app/342560/Airships_Conquer_the_Skies/ Но пока не уверен . То что мне понравилось. А зачем сразу все брать,поиграю понравится докуплю длс,нет ну и ок. давно ,но за 5 лет доставал  раза 2  ,не мое это,я и реальности водить не люблю,с пада играть буду. Точное количество игр в Steam постоянно меняется, но по данным на начало 2025 года, неофициальная база SteamDB фиксирует около 84 500 уникальных приложений.   Ну играл я наверное в тысячи ~1 к ,к пенсии готовлюсь,буду сидеть и играть) (Оптимист )  Даи большинство игр было куплено в рассвет банлов(половина ,если не больше,всякие хамблы,инди галы,короли , гроупесы и подобные) ) и жирных времен. з.ы  А вот книг если верить  по ЯК я прочитал больше сотни в прошлом году )    
    • @allodernat выпустил нейросетевой русификатор для адвенчуры Wednesdays. @allodernat выпустил нейросетевой русификатор для адвенчуры Wednesdays.
    • это про защитную плёнку? она ж вроде по дефолту наклеена  зы кстати на планшете удобно проходить gba игры  да и  соневские, тк экранчик побольше и можно удобней подогнать бамперы под указательный палец 
    • Кто-то коллекционирует марки, кто-то деньги, кто-то фигурки, а кто-то циферки игр в профиле стима. На мой взгляд не столь уж и много людей, которые, имея большую библиотеку стима, реально играли во все купленные игры. Собственно, раньше до оцифровки всего с книгами была похожая история, когда люди буквально для красоты закупали себе библиотеки “на полки” в книжные шкафы и хорошо ещё если с десяток книг из них читали до конца. То есть смысл примерно тот же — показать себе и другим, что вот, у меня есть то-то и то. Только посыл несколько изменился с тех самых пор, т.к. книжные библиотеки собирали всё-таки не из абы чего, а чтобы показать себя человеком показательно образованным с хорошим вкусом (обычно, но это не точно). А в стиме частенько просто набирается всё подряд, особенно после определённого момента, в т.ч. нахаляву редко кто бывает вот прям избирательным в плане того что забрать, а что нет (либо не сразу становятся избирательными).
  • Изменения статусов

    • Jimmi Hopkins  »  SerGEAnt

      Это не просто перевод, а полноценная авторская сценарная адаптация. Диалоги переписаны так, чтобы персонажи звучали живо, остро и в характере. Добавлен чёрный юмор там, где авторы постеснялись. Убраны лорные противоречия, докручены мотивации. В результате игра стала умнее, злее и смешнее оригинала.
      · 0 ответов
    • ElikaStudio

      Долгожданный релиз полного сезона состоялся!
      https://youtu.be/mwBk2stm2OQ?si=qpJojB_XDABaC0We
      https://vk.com/video-48153754_456239394?sh=4&list=c62797c2b7d0725d6e
      Life is Strange: Before the Storm:
      Эпизод 1: "Прoбуждeниe"
      Эпизод 2: "О дивный новый мир"
      Эпизод 3: "Ад пуст"
      Бонусный эпизод: "Прощание"
      Русская озвучка уже доступна для скачивания!
      ElikaStudio выражает огромную благодарность всем, кто принял участие в создании проекта! 
      Группе Mechanics VoiceOver R.G. MVO , в частности их руководителю Дмитрию за неоценимую помощь в выпуске эпизода.
      Скачать для PC Classic (2018):
      GDrive: - https://drive.google.com/file/d/19CL_L80Mz0sIxcb54Ss64byAkeZmV22r/view?usp=sharing
      Скачать для PC Remastered (2022):
      GDrive: - https://drive.google.com/file/d/13q58Lpvw5_aYPYeZ7OGYZlAKOoS1gEbL/view?usp=sharing
      Скачать для Свитч(2022):
      GDrive: - https://drive.google.com/file/d/15e—T1LQiGQCYIHeNnj_C2qJA16Gvh1i/view?usp=sharing
      Ручная установка PC(оба издания):
      https://drive.google.com/drive/folders/1MJPd8965m4XxxAuOBt8enSHtv8_yy5xh?usp=sharing
      Баг репорт в обсуждении:
      https://vk.com/topic-48153754_55571577
      ___________________________________________
      Финансовый аппарат:
      www.donationalerts.com/r/elikastudio
      Пожертвовать средства на наши проекты:
      Кошелек ЮMoney 4100 1188 6818 3009
      карта Сбер банк 2202 2018 6334 1042
      карта Альфа банк 5559 4937 0209 8584
      Спасибо за вашу поддержку!
      #elikastudio #русскаяозвучка
      · 0 ответов
    • fox222  »  Siberian GRemlin

      Здравствуйте, хочу купить персональный доступ к переводам, сколько стоит?
      · 1 ответ
    • vitkach  »  eaZy

      Извините за беспокойство. Хотел спросить, а русификатор ещё когда-нибудь будет обновляться? Дело в том, что после его выхода выходили ещё обновления, в частности обновление 1.1, вышедшее летом 2023 года, где была добавлена целая сюжетная глава в конце если проходишь на лучшую концовку золотого пути, это где-то ещё полчаса диалогов. Также в игре присутсвуют иногда кракозябры вместо русского языка, это в основном связано с тем, что кое-где текст был изменён, в основном в обучающих сообщениях.
      · 0 ответов
    • TerryBogard  »  Siberian GRemlin

      C&C: RA: Retaliation (ПК) не работает.
      · 0 ответов
  • Лучшие авторы


×