Тема для фанов Warcraft 3 времен, когда в ходу были MPQ архивы. Итак... тема не нова, но по моему мнению, раскрыта недостаточно всеобъемлюще. Максимум, что удавалось найти, это комментарии о том, что подгрузка стандартных MPQ архивов осуществляется следующим образом:
Примерно для roc: war3.mpq > war3patch.mpq > map.w3m (карта по сути тоже mpq архив)
Примерно для tft: war3.mpq > war3x.mpq > war3xlocal.mpq > war3patch.mpq > campaign.w3n (опционально) > w3x/w3m.
Понятно, что помимо mpq архивов, warcraft 3 v1.26a подгружает еще и dll библиотеки на разных этапах и если в них встраивать MPQ, то вроде-как эти пользовательские архивы тоже будут подгружаться. Прибавим к этому пользовательские MPQ архивы в War3.exe и MIX файлах.
Но существует ли подгрузка MPQ архивов определенной картой по некоторому условию? Хотелось бы услышать ответ от знатоков. В частности, внутри war3.mpq и war3x.mpq существуют другие MPQ архивы под литерами A, B, C и т.д.... На каком этапе подгружаются тогда они?
...и можно ли составлять некоторые структуры из наборов пользовательских MPQ архивов, чтобы подгружая их в разных последовательнастях и выборках, карты выглядели иначе?
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
3
borissuworov, Хм, war3exe это уже интересно. Это дизассемблированный файл? Кстати, а рабочий ли он? Это важно.
Если сможете связаться с автором Render edge, спросите у него, пожалуйста, как вшить файлы рендер эдже в варик, и можно ли. И скажите мне. Буду весьма признателен. Просто я ему писал, он не ответил.
Вот... В этой теме засветился несколько модифицированный код исходника: xgm.guru/p/wc3/warcraft-iii-portable
Не разбираюсь в кодах и не могу сказать, получен-ли был этот код в ходе реверс-инженеринга и т.п...
Ev3nt уже начал ковырять исходники, и пытался отвязать warcraft 3 от реестра. Но я тестил, и на текущем этапе дело до конца не доведено. В частности, ветка "Video" исправно сохранятся в файл, но при запуске игры, отказывается считываться... Эх! Еслиб кто закончил начатое!
23
borissuworov, О да, крутая тема. Интересно, можно ли туда уникальные абилки вписать?
Ну я закончить не смогу, ибо в С++ не могу, увы.
8
Доступ к ресурсам в архивах осуществляется в зависимости от приоритета при загрузке этих архивов. Более того, такой архив можно грузить из карты или любого другого архива.
Есть достаточно много способов грузить свой архив, например мемхаком или миксом.
Можно грузить и несколько архивов с разными приоритетами, если на то есть желание.
3
Доступ к ресурсам в архивах осуществляется в зависимости от приоритета при загрузке этих архивов. Более того, такой архив можно грузить из карты или любого другого архива.
Есть достаточно много способов грузить свой архив, например мемхаком или миксом.
Можно грузить и несколько архивов с разными приоритетами, если на то есть желание.
Про приоритеты вкурсе. Предположим у нас есть намертво запротекченная карта. Я хочу сделать так, чтобы исключительно при ее загрузке подгружались некоторые мелкие MPQ архивы лежащие по четко обозначеным путям в нужной последовательности. Как это реализовать?

borissuworov, О да, крутая тема. Интересно, можно ли туда уникальные абилки вписать?
Ну я закончить не смогу, ибо в С++ не могу, увы.
Абилки обычно вписываются в slk таблицы и в файл blizzard.j, если потом их в редакторе хочешь пощупать. Для чего-то экстраординарного следует в game.dll лезть.
23
borissuworov, Не совсем так. В листе ability data slk, прописаны общие параметры, поля данных прописаны в ability meta data slk, а вот сами коды работы абилок спрятаны в коде игры и запускаются исходя из равкода абилок, в столбце aliasCode таблицы. То есть, нельзя просто так сделать абилку с новыми данными и скриптом, остаётся только комбинировать из стандартных (или новых на основе стандартных).
А что находится в game.dll?
20
А что находится в game.dll?
Вся логика игры и World Editor, в Storm.dll находится вся логика работы с файлами, пакетами и прочим (на которую ссылается game.dll). В Рефорджеде эти дллки либо вшили в .exe либо перенесли весь код .dll в .exe.
23
Unryze, Понял, спасибо!
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.