Вопрос к знатокам движка Warcraft 3 по поводу модификации динамической библиотеки Game.dll. Какие хаки данной библиотеки вам известны?
Наверное, самый известный хак Game.dll для Warcraft 3 v1.26a позволяет раздавать по сети карты размером более 8 мегабайт.
Еще один хак на перекрашивание зеленой заплатки в черный цвет (видна в случае отсутствия BTN или DISBTN) недавно обсуждался в поднятом мной вопросе (закрыт буквально вчера): xgm.guru/p/100/Kak-zamenit-Green-Square-DISBTN-na-svoyu-ikonk-kG...
А что еще на вашей памяти конструктивно модифицировалось в Game.dll и какие на ваш взгляд могут быть предложения по этому поводу? Желательны советы по модификации, не вносящие какие-либо негативные изменения в игру, а наоборот - расширяющие и облагораживающие движок Warcraft 3 v1.26a.
`
ОЖИДАНИЕ РЕКЛАМЫ...
3
20
2 года назад
3
Не совсем по теме, но скажу так, патчить именно файл game.dll - всегда плохо, так как ломаются хеш суммы, да и аутентичность файла летит в урну. Правильный выход - патчить game.dll напрямую в памяти, что убирает вышеупомянутую проблему и позволяет "на ходу" патчить и снимать патчинг тех или иных данных, что по факту делает моя WFE. Альтернатива снятия 8 мб файла (которая и лучше) - это Map Size Limit Remover от Karaul0v, что позволяет не затрагивать сам game.dll но получить тот же эффект.
В остальном, любые дефолтные хаки/программы для War 3 как раз и делают то, что я описал выше, модифицируют память, в которой хранится game.dll, да и на деле это не "хаки" библиотеки, но это в целом и не важно. А набор программ, которые модифицируют игру - навалом (правда 99% из них - это мапхаки всякие).
2
3
2 года назад
Отредактирован borissuworov
2
Не совсем по теме, но скажу так, патчить именно файл game.dll - всегда плохо, так как ломаются хеш суммы, да и аутентичность файла летит в урну. Правильный выход - патчить game.dll напрямую в памяти, что убирает вышеупомянутую проблему и позволяет \"на ходу\" патчить и снимать патчинг тех или иных данных, что по факту делает моя WFE. Альтернатива снятия 8 мб файла (которая и лучше) - это Map Size Limit Remover от Karaul0v, что позволяет не затрагивать сам game.dll но получить тот же эффект.
В остальном, любые дефолтные хаки/программы для War 3 как раз и делают то, что я описал выше, модифицируют память, в которой хранится game.dll, да и на деле это не \"хаки\" библиотеки, но это в целом и не важно. А набор программ, которые модифицируют игру - навалом (правда 99% из них - это мапхаки всякие).
Unryze, благодарю за замечание насчет хешсумм... Насколько хэшсуммы файлов важны в рамках движка warcraft-a? Спешу напомнить, что от перестановки мест слагаемых сумма не меняется. Поэтому если посчитать суммарное число, которое я отнял или прибавил в шестнадцатиричном коде модифицироаэванных ячеек, а потом компенсировать его в некоторый свободный регистр (или в текстовую информацию) в файле, то мы выравняем хешсумму.
В крайнее время задаю ряд вопросов на xgm, т.к. собираю информацию перед чисткой оригинальных mpq архивов и некоторых сопутствующих файлов (подробнее об этом позже). Так что даже замена одной единственной модели повлечет за собой несовместимость или несопостовимость данных при игре по сети, с игроком, который играет на чистой сборке. Не говоря уже о том что односторонняя модификация файлов будет результативна лишь для конкретной персоны. Но меня это не останавливает.
Unryze, вы могучий кодер, и для меня честь читать ваши развернутые ответы в трэдах моих вопросов.
2
20
2 года назад
2
Не совсем по теме, но скажу так, патчить именно файл game.dll - всегда плохо, так как ломаются хеш суммы, да и аутентичность файла летит в урну. Правильный выход - патчить game.dll напрямую в памяти, что убирает вышеупомянутую проблему и позволяет \\\"на ходу\\\" патчить и снимать патчинг тех или иных данных, что по факту делает моя WFE. Альтернатива снятия 8 мб файла (которая и лучше) - это Map Size Limit Remover от Karaul0v, что позволяет не затрагивать сам game.dll но получить тот же эффект.
В остальном, любые дефолтные хаки/программы для War 3 как раз и делают то, что я описал выше, модифицируют память, в которой хранится game.dll, да и на деле это не \\\"хаки\\\" библиотеки, но это в целом и не важно. А набор программ, которые модифицируют игру - навалом (правда 99% из них - это мапхаки всякие).
Unryze, благодарю за замечание насчет хешсумм... Насколько хэшсуммы файлов важны в рамках движка warcraft-a? Спешу напомнить, что от перестановки мест слагаемых сумма не меняется. Поэтому если посчитать суммарное число, которое я отнял или прибавил в шестнадцатиричном коде модифицироаэванных ячеек, а потом компенсировать его в некоторый свободный регистр (или в текстовую информацию) в файле, то мы выравняем хешсумму.
Дам простой пример с картами Вар 3, любое изменение war3map.j или какого-либо файла, который сравнивается по хеш-суммам, карта считается \"новой\" и начинает качаться по-новой. Тот же эффект и тут, банально w3l или же всякие платформы типа Iccup или же RGC могут ввести проверку и там не получится поиграть, пока это не будет исправлено. Похожее было, когда я добавил иконку для war3.exe, оно напрочь отказывалось работать со всеми Battle.net (PVPGN) платформами как раз из-за разницы хеш-сумм.
В крайнее время задаю ряд вопросов на xgm, т.к. собираю информацию перед чисткой оригинальных mpq архивов и некоторых сопутствующих файлов (подробнее об этом позже). Так что даже замена одной единственной модели повлечет за собой несовместимость или несопостовимость данных при игре по сети, с игроком, который играет на чистой сборке. Не говоря уже о том что односторонняя модификация файлов будет результативна лишь для конкретной персоны. Но меня это не останавливает.
Замена моделей в MPQ ни на что не влияет, можешь их менять как твоей душе угодно. Исключение Рефордж (там вроде есть проверка CASC файлов на валидность и их автоматическое исправление), а на патчах-старичках такого нет и можно делать по факту что угодно. :)
Unryze, вы могучий кодер, и для меня честь читать ваши развернутые ответы в трэдах моих вопросов.
Благодарю за комплимент, но я лично себя считаю немного выше-среднего в этом плане (я строго критикую как других, так и себя точно так же). В остальном если у тебя будут ещё какие-то вопросы, можешь и напрямую мне в Дискорд писать, ибо оповещения в Дискорде таки удобнее, чем обновлять страницу на форуме. :D
Чтобы оставить комментарий, пожалуйста, войдите на сайт.