|
Вопрос # 3 817/ вопрос открыт / |
|
Доброго времени суток, уважаемые эксперты!
Хочу узнать, можно ли как-то в Delphi создать программу, которая бы читала .DLL файлы с различных игр? Просто в них, на сколько я понимаю, заложен сам игровой процесс - т. е. что нужно сделать, чтобы выдала игра тот или иной файл на экран и т. д. Или уже есть какие-то программы подобного рода? Подскажите, пожалуйста!
 |
Вопрос задал: A000Y (статус: Посетитель)
Вопрос отправлен: 26 февраля 2010, 08:13
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 13; последнее сообщение — 26 февраля 2010, 16:26; участников в обсуждении: 3.
|
Dron (статус: Студент), 26 февраля 2010, 09:40 [#1]:
В общем смысле DLL - это такие же программы, как и EXE. Извлечь из них информацию можно только анализом машинного кода или дизассемблированием, что для обычного любителя-программиста является крайне сложной задачей.
Но иногда встаёт задача вытащить из игры музыку/графику/что-то ещё - здесь поможет программа Dragon Unpacker. Она анализирует файлы на наличие в них файлов стандартных форматов. Разработчики всячески прячут ресурсы, но в некоторых случаях их действительно можно извлечь. То же самое может оказаться применимым и к ходу игры - если всё записано в каких-то файлах наподобие INI, то можно попытаться достать их.
С уважением.
|
|
Вадим К (статус: Академик), 26 февраля 2010, 10:02 [#2]:
Игровой процесс может быть заложен где угодно. Например сейчас любят для этого дела использовать скрипты, написанные на LUA. Но там в основном "сценарий".
То есть скажем коротко - нет общего правила, как и где размещать какой код.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
A000Y (статус: Посетитель), 26 февраля 2010, 14:08 [#3]:
Dron, спасибо, но в том то и дело, что всякая музыка и т. д. лежат отдельными файлами - их достать не проблема... А вот с ходом игры - проблематично!
Вадим К, спасибо, но в моем конкретном случае "сценарий игры" лежит в одном из трех .dll файлов [больше ему просто негде быть] (кстати, файл формата .LUA тоже имеется, но он совсем мало весит - и в нем всего 2 строчки - если его текстовым просмотреть редактором) Но при этом есть lua5.1.dll...
Еще раз большое спасибо за помощь) Значит можно подвязывать этим страдать)
|
|
Вадим К (статус: Академик), 26 февраля 2010, 14:15 [#4]:
lua5.1.dll - это интерпретатор для языка LUA.
А с чего такая уверенность, что сценарий игры именно в dll? он может быть где угодно. Всё зависит от фантазии разработчиков.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
A000Y (статус: Посетитель), 26 февраля 2010, 14:30 [#5]:
>lua5.1.dll - это интерпретатор для языка LUA.
без особых проблем его как-то прочитать можно?
>А с чего такая уверенность, что сценарий игры именно в dll? он может быть где угодно. Всё зависит от фантазии разработчиков.
В игре 2 папки - одна видео, другая аудио - в первой только видео файлы - в другой только аудио. Есть сам EXE игры и 3 dll файла... + 1 файл - параметры конфигурации и почти пустой .LUA файл... И все... вроде, кроме dll файлов спрятать больше некуда сценарий)
|
|
Вадим К (статус: Академик), 26 февраля 2010, 14:39 [#6]:
а зачем читать файл lua5.1.dll? Вы точно понимаете смысл слова интепретатор и смысл слова "прочитать"?
Хотя если сильно хочется почитать, то можно вот тут http://www.lua.org/ftp/ взять исходники этой библиотеки. Но уверяю, там "сценария игры" не найдете.
а почему бы сценарий на запрятать в exe?
Галочка "подтверждения прочтения" - вселенское зло.
|
|
A000Y (статус: Посетитель), 26 февраля 2010, 14:57 [#7]:
> а почему бы сценарий на запрятать в exe?
- можно и запрятать в exe... но все равно его от туда достать не легче, чем из dll (не важно, где бы он не был бы). Или легче?
|
|
Вадим К (статус: Академик), 26 февраля 2010, 15:09 [#8]:
а в каком виде ожидается сценарий? он ведь может быть размазан по код тонким слоем так, что не соберешь.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
A000Y (статус: Посетитель), 26 февраля 2010, 15:16 [#9]:
Ну это я не знаю) Это я думал уже на месте разобраться... мне там единственное что нужно - узнать, каким образом (при каких условиях) запускается 1 видео файл, название которого мне известно)
|
|
Вадим К (статус: Академик), 26 февраля 2010, 15:29 [#10]:
ну тогда в чем проблема? кто мешает поискать его имя в всех подозрительных файлах? а сами файлы можно открыть даже блокнотом (главное не жать "сохранить" и не забыть сделать резервную копию). хотя лучше пользоваться хекс редактором.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
A000Y (статус: Посетитель), 26 февраля 2010, 15:38 [#11]:
>ну тогда в чем проблема? кто мешает поискать его имя в всех подозрительных файлах?
Проблемы найти файл - нет! Есть проблема залезть в exe файл и узнать, каким образом он будет в игре появляться
>а сами файлы можно открыть даже блокнотом (главное не жать "сохранить" и не забыть сделать резервную копию).
блокнот шифрование не распознает - выдает набор квадратиков, букв Ю и Я и т. д.
>хотя лучше пользоваться хекс редактором.
сейчас поищу - попробую) Спасибо!
|
|
Вадим К (статус: Академик), 26 февраля 2010, 15:42 [#12]:
"блокнот не распознает шифрование"... не, блокнот не дизассемблер. но строку в бинарнике он может найти не хуже хекс редактора.
Может ещё затариться дизассемблером? но это уже немножко выходит за пределы этого сайта...
Галочка "подтверждения прочтения" - вселенское зло.
|
|
A000Y (статус: Посетитель), 26 февраля 2010, 16:26 [#13]:
>Может ещё затариться дизассемблером? но это уже немножко выходит за пределы этого сайта...
Затариться то можно, но не думаю, что он мне поможет, с моими то знаниями во всем этом)
Еще раз большое спасибо!
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|