1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.
  3. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление
    1. Если вы сделали перевод или русификацию игры, то вы можете поделиться своим творением здесь.
    2. О правилах вступления в группу переводчиков можно прочитать здесь.
    3. Русификации следует искать там.

Wing Commander IV: Цена свободы

Тема в разделе "Переводы своими руками", создана пользователем Рыжий Тигра, 8 янв 2007.

  1. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Процесс перевода игры "Wing Commander IV: Цена свободы"- в разгаре. Желающие опробовать то, что получилось, могут добраться сразу до описания перевода и ссылок на его скачивание, щёлкнув по этой ссылке.

    Желающим посоучаствовать в переводе - рекомендую: полезные для переводчика ссылки - словари, книги, статьи и прочие материалы. Пополнение копилки приветствуется!

    См. также:
    Самая свежая тестовая сборка и инструкции по её установке
    Бета-тестеры, wэлкам!
    31 дек 2016

    Upd 1:
    В связи с участившимися постами здесь "чисто для поржать" - вынужден объясниться.
    6 янв 2014

    Upd 2:
    Приглашаю желающих поучаствовать в переводе. Отозвавшиеся будут увековечены в финальных титрах. (Никаких более материальных благ, к сожалению, обещать не могу. :( )
    27 мая 2014

    Upd 3:
    Наконец удалось пробить барьер несовместимости моего перевода с версией игры от GOG!!! Желающим опробовать - wэлкам!
    2 окт 2014
     
    Последнее редактирование: 21 апр 2017
    kirik-82 нравится это.
  2.  
  3. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Нету строк. Есть бинарник в порядка полста мег. В этом бинарнике есть дохрена (порядка пары сотен) участков, подлежащих замене, их длины и смещения в бинарнике известны. Операция чтения из бинарника перехвачена. Надо дать программе прочитать что она там хочет, а потом в прочитанном подменить.
    Потому что на компакт-диске или flash'ке. Вообще-то запаса метров пять, но мне и на другие нужды надо.
    Свят-свят-свят. Тупо в лоб перебрать пару сотен записаей - куда быстрее, чем считывать с носителя 170 мег файла индексов.
    А нету частоты. Использованы будут за один вылет (может - 10 минут, а может и на всю ночь) хорошо если 4-5 одних и тех же замен из пары сотен, каждая по не одной сотне раз. В следующем вылете будут использоваться замены уже другие.
     
  4. Val07og

    Val07og

    Регистрация:
    1 апр 2008
    Сообщения:
    897
    Рыжий Тигра, так не все же возможные индексы перебираются, а только те, что есть. Вот так примерно:
    o-l-s_280.gif
     
  5. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
    при таких начальных условиях выборку можно по RND делать... И не заморачиваться.
     
  6. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Что-то я невнимательно прочитал, видимо. О длине, собственно, чего речь идёт - подменяемого участка или запроса на чтение? Так ведь количество подмен на пару порядков меньше, чем количество возможных длин чтения. При таких раскладах - опять же куда натуральнее будет просто перебрать все подмены.
     
  7. gudleifr

    gudleifr

    Регистрация:
    16 сен 2006
    Сообщения:
    2.592
    Вы что там все уже третий час пьете?! Без меня?!
     
    Bato-San нравится это.
  8. Val07og

    Val07og

    Регистрация:
    1 апр 2008
    Сообщения:
    897
    Рыжий Тигра, о длине подменяемого участка - ведь по ней же выбирается тройка?

    Т. е. сначала ищется нужное по списку смещений (а он меньше, чем полный список троек, поэтому поиск быстрее), а потом длина - опять, не по всему списку, а только в группе троек с уже найденным смещением.
    Поэтому полный перебор почти всегда дольше получается.
     
  9. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Val07og, длина каждого подменяемого участка постоянна (иными словами, массив подмен одномерен). Участки не перекрываются. Одного перебора вполне хватает.
     
  10. gudleifr

    gudleifr

    Регистрация:
    16 сен 2006
    Сообщения:
    2.592
    Все, Сириусу больше не наливать!
     
    Val07og и Bato-San нравится это.
  11. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    И вообще, узкое место в задачке - либо построение сбалансированного дерева поиска из отсортированного массива, либо к поиску в двоичной куче. Всё остальное более-менее понятно.
     
  12. Val07og

    Val07og

    Регистрация:
    1 апр 2008
    Сообщения:
    897
    Рыжий Тигра, если массив одномерный - тогда я не в тему - мне показалось, что речь про 2 параметра поиска. :)
     
  13. gudleifr

    gudleifr

    Регистрация:
    16 сен 2006
    Сообщения:
    2.592
    Что, во-первых, одно и то же, а, во-вторых, как это сделать описано выше.
    Например, массив из 5 строк:
    Доращиваем до 8, т.к. делать всегда три шага, чем проверять на исчерпания на каждом шагу. (Массив троек расширяем фиктивными записями со смещением maxint).
    Сортирующий массив (для удобства разбит по шагам):
    Проверяем на "не меньше" (2i+1), иначе (2i) (это, если считать с 1).
    4 . 2 6 . 1 3 5 7 . 0 1 2 3 4 5 6 7
    Если жалко, не будем увеличивать массив троек:
    4 . 2 4 . 1 3 4 4 . 0 1 2 3 4 4 4 4

    ---------- Сообщение добавлено в 23:02 ---------- Предыдущее сообщение размещено в 22:58 ----------

    P.S. Поэтому я и говорил, что считать "на лету" проще, чем строить дерево.
     
    Последнее редактирование: 29 окт 2013
    Рыжий Тигра нравится это.
  14. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
    Кстати, если писать на асме, есть очень красивый и быстрый вариант поиска, при котором количество тактов затрачиваемых на сравнение растёт только вплотную к искомому значению. Ну, вы уже собственно поняли, наверное, про что я. :) К сожалению, при попытке изобразить это на С - возникает масса левых команд. :(
     
  15. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Спасибо всем отозвавшимся! Прошу прощения, получилось, что морочу головы. :-(
    После некоторого чесания в затылке спёр bsearch() в качестве "козы" - доработаю под свой вкус и этим ограничусь.
     
  16. povard

    povard

    Регистрация:
    28 окт 2013
    Сообщения:
    2
    Я так понял 3-й частью никто не занимается. Печально.
    Может хоть промтовский перевод есть?
     
  17. gudleifr

    gudleifr

    Регистрация:
    16 сен 2006
    Сообщения:
    2.592
    Это честная реализация самого тупого алгоритма бинарного поиска. Обладает бешеной избыточностью. Лишние переменные, лишние сравнения... И хватило же у кодера совести на этакое копирайт ставить...

    ---------- Сообщение добавлено в 10:47 ---------- Предыдущее сообщение размещено в 10:30 ----------

    полистал, утвердился в мнении
     
    Bato-San нравится это.
  18. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    (нетерпеливо топая лапой) Ну так возьмись!
    Дарагой, куда спешить в такой жара? Я только с месяц назад вообще допёр, с какого конца тут можно взяться.
    Ну возьми скрипты, которые я дал ссылку на, скорми гуглопромту и прочитай.
    Или хочешь совсем на готовенькое? Тогда увы - мы делаем вещи, которые хрен кому продашь, но и хрен где готовые купишь. :-
    Вроде бы ж давно расписал. И тут обсуждалось, и на рутрекере, и тут, и тут...

    Не страшно. Что будет сильно путаться под ногами - пооптимизю, найду лучше - заменю.
     
    Val07og и Bato-San нравится это.
  19. gudleifr

    gudleifr

    Регистрация:
    16 сен 2006
    Сообщения:
    2.592
    Обсуждать можно долго. Но если решение принято, почему это не сказалось ни на текущем обсуждении перевода, ни на пьесе?
    Первый шаг оптимизации - выкинуть нафиг. Если не лень, посмотреть Кнута - т.3, глава 6, раздел 6.2.1 (из начала которого с мясом выдран этот "алгоритм"). Если лень, просто подумать:
    1. Зачем нам сравнение на равенство?
    2. Зачем нам три переменные для определения отрезка?
     
    Рыжий Тигра и Bato-San нравится это.
  20. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
    gudleifr, не мучайся... к сожалению у Тигры есть паталогический недостаток - полностью ситуацию или задумку не расписывает (принцип "пойди туда, не знаю куда..."), а решение всегда принимает именно то, которое позиционирует как "нежелательное". :D
    В данном случае, если учесть вышенаписанное - становится вообще непонятно, зачем городить такой огород с навесным кодом (что не улучшает самочувствие игры и системы), когда можно сделать два пака, один на русском, а второй на языке оригинала, добавить лоадер, который будет их переключать, отсобачить программу от двд-зависимости перенеся всё на винт (или сделав это опцией по желанию пользователя) и не знать проблем ? Размер оправданием к настоящему времени не является. У игры итак уже размерчик зашкаливает.
     
  21. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Будешь смеяться, но я в исходник даже не присматривался. Доберусь - лишнее выкину, не переживай. :-)
    Давно принято. Моделируется "по Nazgul'у" конфликт между прогнившим и вконец офашизевшим государством ("конфедами") и сетью комми-анклавов (Порубежьем). Я ж про это писал уже.
    Мне так удобнее играть и отлаживать. Да и править перевод каждые 10 минут так удобнее.
    Переписывать с места на место сотни мег файлА? Увы, но у меня винты и flash'и не резиновые. :-(
    А её изначально не было. Скопируй оба DVD'я на винт и убедись.
    Полгига всего-то. Ради жалких нескольких сотен кил перевода всё это файло дублировать влом.
     
  22. gudleifr

    gudleifr

    Регистрация:
    16 сен 2006
    Сообщения:
    2.592
    Лозунг понятен. Но возьмем ту же перестрелку во вражьем ЦУ. Убивают много врагов и одного нашего. Но никакого эмоционального напряга не присутствует. И те - "навскидку", и эти - "навскидку".

    Буду. "Я нашел решение, но я его еще не читал",- это что-то про Брежнева и "Малую землю".

    ---------- Сообщение добавлено в 12:55 ---------- Предыдущее сообщение размещено в 12:48 ----------

    Фигня какая-то. Если это коммунизм, то подчиняется законам МЛФ, следовательно для дефиниции, вместо кучи альтернативной мутоты, достаточно было бы доть пару-тройку цитат из классиков.
     
    Sherhan007 и Bato-San нравится это.
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление