1. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

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

Trainers

Тема в разделе "Мастерская", создана пользователем iunnamed, 26 мар 2018.

  1. iunnamed

    iunnamed

    Хелпер

    Регистрация:
    15 янв 2007
    Сообщения:
    1.202
    Решил создать тему куда все желающие смогут выкладывать свои трейнеры с исходными кодами (или без) для игр. Закину для двух DOS игр:
    - Metal Mutant
    - Prehistorik (первый)
    Трейнер для Metal Mutant сделан на основе трейнера от Venus Software (мало того что упакован, так ещё и зашифрован был) для французкой версии, но доделан и теперь поддерживает все три версии игры: французкую, английскую и испанскую. В последней, вроде бы, даже нет защиты от копировния (или уже сломали в версии на сайте). Да, этот трейнер не только позволяет включить/отключить бесконечную энергию при нажатии на Ins на клавиатуре справа, но и автоматически отключает проверку на слово из руководства и теперь можно вводить что угодно (если слово было введено неверно, то в обычном виде защита выключает все улучшения мутанта и игра становится непроходимой). Трейнер полностью протестирован с английской версией игры, т.е. вся игра пройдена и проблем не было замечено. Трейнер содержит только самое необходимое, никаких заставок и прочих бесполезных свистелок как в оригинале. Каким способом Venus Software отключали защиту не спрашивайте, возможно, это не самый оптимальный вариант, но разбираться с кодом Metal Mutant, а там ещё та каша, времени не было.
    Трейнер для первого Prehistorik писался с нуля, ибо от Venus Software мало того что использовал недокументированную функцию DOS для запуска дочернего процесса которая в последней версии DOSBox 0.74 (последняя официальная, не SVN) не эмулировалась, так ещё и сделан был так, что толком не разберёшься что и где делается. Плюс ко всему туда добавлено много новых возможностей, которых в оригинальном трейнере не было и о них даже мечтать нельзя было, например, можно ходить мимо шипастого камня (разносится несколькими ударами дубинкой), который в оригинале сразу жизнь отнимает при столкновении. Этот трейнер ещё интересен и тем, что прыгает по цепочке сегментов (relocation table же), чтобы дойти до того кода, который нужно пропатчить. Если кто захочет сделать свой трейнер, то рекомендую изучить исходные коды. А ещё он использует по минимуму памяти после загрузки - к сожалению, в Интернете и даже в TechHelp последней версии толком нет примера как нужно уменьшать размер программы через int 21h сервис 4Ah, а также как правильно уменьшать регистр SP от стека, так что с этим пришлось серьёзно повозиться разбираясь как оно работает, чтобы уменьшилось правильно, не осталось лишнего и не уменьшилось за пределы того что можно (чтобы загруженный код не начинал уничтожать дочерний процесс).
    К обоим трейнерам идут исходные коды на FASM с комментариями.
    Чтобы воспользоваться трейнером нужно положить его в папку к игре и запустить, после чего до нажатия любой клавиши и запуска игры на экране будет выведен текст со справкой по использованию.
     

    Вложения:

    • METALTRN.ZIP
      Размер файла:
      2,7 КБ
      Просмотров:
      57
    • HISTRTRN.ZIP
      Размер файла:
      3,2 КБ
      Просмотров:
      64
    bvedargh, Gamerun, AndyFox и 2 другим нравится это.
  2.  
  3. AndyFox

    AndyFox

    Регистрация:
    22 июл 2009
    Сообщения:
    1.642
  4. iunnamed

    iunnamed

    Хелпер

    Регистрация:
    15 янв 2007
    Сообщения:
    1.202
    Основной упор этой темы именно вот в этом:
    Вообще, думал, написать руководство как трейнер сделать, основные вопросы разобрать и т.д. Но времени свободного никак найти не могу. В той теме, думаю, это было бы не сильно уместно.
    Тут же вопрос-то не только в трейнерах. Например, можно взять код любого трейнера и переработать его, чтобы сделать загрузчик к игре (loader), который будет отключать проверку документации и/или выправлять какие-то ещё технические проблемы связанные с DOSBox, например, которые вот так вот просто, изменением пары байтов в файлах игры, не реализуешь (места для кода нет или ещё что-то).
    Технические-то решения кода трейнеров универсальные - их можно использовать не только для того чтобы в расслабленном и неторопливом режиме поиграть.
     
    Dimouse нравится это.
  5. Helmut Herr Mannelig

    Helmut

    Переводчик

    Регистрация:
    18 мар 2008
    Сообщения:
    6.494
    ZaRR и iunnamed нравится это.
  6. iunnamed

    iunnamed

    Хелпер

    Регистрация:
    15 янв 2007
    Сообщения:
    1.202
    Продолжим тему.
    Загрузчик для игр (только для этих двух версий, для Delux CD издания не нужен):
    The Terminator 2029 (1992, DOS)
    The Terminator 2029: Operation Scour (1993, DOS)
    Отключает необходимость ввода слова из руководства (можно вводить что угодно) и требование 386-го в настроках DOSBox (из-за этого навесная защита пытается перезагрузить компьютер). Исходные коды в комплекте.
    Вообще, ещё раз хочу обратить внимание, особенно технических специалистов и хелперов, что загрузчик - вещь универсальная:
    - Не хватает жизней/ресурсов/времени? Делаем загрузчик, патчим код в памяти.
    - Мешает защита? Игра проверяет целостность своего файла или вдобавок как в Terminator 2029 использует 6 разных шифрований кода? Делаем загрузчик.
    - Нет места для русских строк или шрифтов при переводе игры? Делаем загрузчик - выносим все строки, шрифты и прочие необходимые ресурсы туда, после чего патчим игру перенеся указатели на сегмент и смещение данных в загрузчике. Это, кстати, ещё и упростит установку перевода - достаточно кинуть загрузчик (и его файлы, если что-то необходимо держать отдельно) к игре и запустить игру через загрузчик. Удаление точно такое же простое - никакие файлы игры не затрагиваются, достаточно удалить файлы перевода. Возможно, такой способ не для всех игр подойдёт (ещё не смотрел что там с защищённым режимом), но вещь чертовски удобная.
    - И многое-многое другое, на что только фантазии хватит.
     

    Вложения:

    • T2029LDR.zip
      Размер файла:
      2 КБ
      Просмотров:
      19
    bvedargh, TES, Dimouse и ещё 1-му нравится это.
  7. iunnamed

    iunnamed

    Хелпер

    Регистрация:
    15 янв 2007
    Сообщения:
    1.202
    Чтобы не быть голословным - вот перевод Knights of Xentar (1994, DOS) с сайта в виде загрузчика. Вообще, хотел Teenagent взять, но там больше времени нужно на переделку под загрузчик (зато можно было бы и строки уже нормально переводить, не беспокоясь о размере и статический буфер под шрифт увеличить и ещё много чего).
    Что сделать: скачать игру и распаковать содержимое архива к игре, затем запустить KX_RUS.COM. Всё.
    На всякий случай дерево файлов должно быть такое:
    \Xentar\KX.EXE
    \Xentar\KX_RUS.COM
    \Xentar\KX_RUS\
    Файлы из "KX_RUS" в корень не вытаскивать! И ничего не заменять! Загрузчик будет смотреть что за файл игра пытается открыть и, если он есть в \KX_RUS\, то будет открыт оттуда.
    Также в загрузчик всунут код сдвига и перерасчёта ширины шрифта, а также текста статус бара.
    Если нужно передать какие-то параметры игре, то их можно точно также передавать и загрузчику:
    KX_RUS.COM E
    В этом смысле работа загрузчика полностью прозрачена - всё что получил на входе передаёт игре.
    Перехватчиков именно строк и ресурсов в коде нет, потому что всё патчится в памяти, но, кто будет переделывать под другие игры, думаю, разберётся куда добавить можно.
    Исходные коды в комплекте - KX_RUS.ASM, менять можно как угодно, компилируется в FASM очень просто:
    fasm.exe kx_rus.asm
    на выходе сразу будет KX_RUS.COM, никакие линковщики и прочие заморочки не нужны.
    Писалось на скорую руку (нет всяких проверок на отсутствие файлов и других ошибок), так что код не сильно красивый и возможны какие-то недоделки, хотя игра нормально работает (во всяком случае начало новой и загрузка старой).
     

    Вложения:

    • koxruldr.zip
      Размер файла:
      147,2 КБ
      Просмотров:
      15
    bvedargh и Dimouse нравится это.
  8. Solanacean

    Solanacean

    Регистрация:
    15 июн 2018
    Сообщения:
    71
    Загрузчик для Ishar: Legend of the Fortress (версии, которую продает GOG).

    Исходники и инструкция по применению на GitHub

    Избавляет от назойливой защиты от копирования и необходимости расплачиваться золотом за каждое сохранение.

    Такое руководство есть.
     
    Последнее редактирование: 1 июн 2019
    bvedargh, AndyFox и iunnamed нравится это.
  9. iunnamed

    iunnamed

    Хелпер

    Регистрация:
    15 янв 2007
    Сообщения:
    1.202
    О, кто-то тему поддерживает - отлично!
    Руководство хорошее и детальное, но, вообще, хотелось написать, во-первых, на русском, а, во-вторых, с использованием современного инструментария: FASM, DOSBox Debugger и вот это, чтобы порог вхождения был ниже и больше людей было вовлечено.
     
    bvedargh и Gamerun нравится это.
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление