Вчера обнаружив на форуме Team17 патч OMG для W4, я его скачал, после чего сильно разочаровался, Текстуры на новых картах в W4 ужасно убогие...
И у меня возникла идея!!!!!
1. Итак, текстуры загружаются при загрузке игры.
2. Все текстуры являются файлами, и чтобы попасть в игру проходят через функцию kernel32.CreateFile или msvcr71.fopen
3. Создав перехватчик этой функции МЫ МОЖЕМ открывать любой файл, вместо заданного!!!!!
Первые наброски:
1. Создается перехватчик функции, в виде загрузчика, который будет перехватывать все имена файлов для открытия, сравнивать их с заданной таблицей, и изменять.
1.1 Найти нужное место для перехвата.
1.1.1 Исследовать открытие файлов.
1.2 Создать загрузчик перехвата.
1.3 На ассемблере написать функцию обработки перехвата и сравнения с таблицей.
1.4 Организовать корректную работу.
2. Создать таблицу где текстураW4 = ТекстуреW3D
3. Создать конвертер, который возьмет все текстурные файлы и заменит в них текстуры согласно таблице
4. Создать генератор databank.xml и scripts.xml из scripts.xom
5. Достать все текстуры из W3D и положить их в отдельную папку для W4.
6. Организовать правильную работу.
7. Создать Патч W3D карт для W4 =)
И не говорите мне, что это не риально =)