Форум сайта 'Гавань Корсаров'
 

Вернуться   Форум сайта 'Гавань Корсаров' > Игры Пиратской Тематики > Другие игры морской тематики > Пиратские игры в целом

Важная информация

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


  Информационный центр
Последние важные новости
 
 
 
 
 
Ответ
 
Опции темы Опции просмотра
Старый 01.07.2015, 14:21   #1
reverse engineer
Салага
 
Регистрация: 04.05.2015
Сообщений: 3
Нация: Англия
Пол: Мужской
Офицеры Корабли
Репутация: 0
По умолчанию Мультизагрузчик аддонов #2

Предыдущая [Для просмотра данной ссылки нужно зарегистрироваться] закрыта, продолжим здесь.

Здравствуйте, господа.
Меня заинтересовала данная тема. Решил написать такой загрузчик. Сейчас есть работающий прототип, протестированный на ГПК и ТДМ. Работа игр осталась "стабильно нестабильной", как и была до этого.

Идея загрузчика - замена файла stormext.dll.
Оригинальный файл stormext.dll в играх, которых он есть, является т.н. "dll-proxy", т.е. посредник между приложением и файлом kernel32.dll с перехватом и изменением поведения необходимых функций (в оригинале это открытие и чтение закрытых исходников скриптовых файлов). Поэтому там, где этот файл используется игрой, никаких дополнительных действий производить не нужно.

Начну с недостатков:
1. Если игра не использует файл stormext.dll (ТДМ, например), необходимо патчить ENGINE.EXE, а именно заменить KERNEL32.DLL (именно в таком виде будет в exe-файле) на stormext.dll.
2. Видео не будет воспроизводиться, кроме случая, когда лежит в корне диска с игрой.
3. Звука не будет, пока не пропатчить fmodex.dll как в п.1 (есть в архиве).
4. Мне не хочется делать GUI, поэтому придётся править всё руками.

Почему нельзя переименовать файл stormext.dll в kernel32.dll и ничего не патчить в версиях игры, где этого файла нет? Потому что файл kernel32.dll является системной библиотекой и операционная система не даст законными методами загрузить свою.

Достоинство такого метода: файлы от игры могут находиться в любом месте. Например, необходимая база для модов по своему пути установки, моды к ней в своих директориях.

Как написано выше, работает без необходимости патча с ГПК. Для ТДМ уже необходимо патчить ехе-файл.
Теоретически, может работать с играми, у которых следующие версии файла stormext.dll:
1. версия 1.9.7.73 (из ГПК), размер файла для справки 148992 байт;
2. версия 1.9.4.60 (из ВМЛ), размер файла 118784 байт.
Есть ли другие версии?

Как безопасно протестировать (на примере ГПК).
Это первая, сырая альфа-версия загрузчика, многие проверки убраны, не испытывайте её на прочность, указывайте корректные значения.
1. Переименовываем файл stormext.dll на, например, stormext1.dll
2. Переименовываем файл fmodex.dll на, например, fmodex1.dll
3. Переименовываем папку resource на resource1
4. Копируем файлы stormext.dll, fmodex.dll и stormext.ini в корневую директорию с игрой.
5. Редактируем stormext.ini, при необходимости. Там немного расписал параметры.
6. Запускаем игру и смотрим вывод файла stormext.log.

Если кого заинтересует, буду расписывать подробнее.
Ссылка на скачивание: [Для просмотра данной ссылки нужно зарегистрироваться] или вложение.

Последний раз редактировалось reverse engineer; 14.07.2015 в 13:42.
reverse engineer вне форума Ответить с цитированием
Пользователь сказал cпасибо:
Королёв (05.07.2015)
Реклама
Старый 02.07.2015, 17:28   #2
reverse engineer
Салага
 
Регистрация: 04.05.2015
Сообщений: 3
Нация: Англия
Пол: Мужской
Офицеры Корабли
Репутация: 0
По умолчанию Re: Мультизагрузчик аддонов #2

Мда, печально.
reverse engineer вне форума Ответить с цитированием
Реклама

Зарегистрированным пользователям показывается меньше рекламы!

Старый 05.07.2015, 08:23   #3
Королёв
Старожил
Лейтенант
Бермудский модмейкер
 
Аватар для Королёв
 
Регистрация: 29.06.2010
Адрес: СПб, ЕКБ, НТ
Сообщений: 2,017
Нация: Испания
Пол: Мужской
Офицеры Корабли
Репутация: 685

Награды пользователя:

По умолчанию Re: Мультизагрузчик аддонов #2

У меня нет возможности это проверить, но если оно работает, то это круто.
__________________
Every day and every night
When it gets dark niggas get outta sight

At Madison Square I shot a fair one


Спойлер:

[Для просмотра данной ссылки нужно зарегистрироваться]
[Для просмотра данной ссылки нужно зарегистрироваться]
[Для просмотра данной ссылки нужно зарегистрироваться]

"Проекты":
[Для просмотра данной ссылки нужно зарегистрироваться]
[Для просмотра данной ссылки нужно зарегистрироваться]

Королёв вне форума Ответить с цитированием
Реклама
Ответ



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 23:40. Часовой пояс GMT +3.


Powered by vBulletin®
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd. Перевод: zCarot
© MONBAR, 2007-2022
Corsairs-Harbour.Ru
Скин форума создан эксклюзивно для сайта Corsairs-Harbour.Ru
Все выше представленные материалы являются собственностью сайта.
Копирование материалов без разрешения администрации запрещено!
Рейтинг@Mail.ru Яндекс.Метрика Яндекс цитирования