Перейти к содержанию

Дайджесты за январь-февраль

Обновления гайдов и аддонов

Январь Февраль

Мониторинг серверов и редактор аддонов

Представляем вам две легенды. То, о чем можно было только мечтать, стало реальностью.

Мониторинг серверов Редактор аддонов

Подсказки из игры на вашем сайте

Теперь вы можете отображать сведения о внутриигровых элементах простым наведением курсора мыши.

Подробнее

Апдейтер аддонов

Представляем вам программу для автообновления аддонов и делимся подробностями.

Подробнее Скачать

AO-Tools


Гость gsomgsom

Рекомендуемые сообщения

По просьбе SLA, выкладываю ao-tools.zip
 

Allods Online Tools

loc.extractor
Allods Online pack.loc resource extractor. v0.4 by gsomgsom .
Распаковывает ресурсы из файла pack.loc.
Вызов: loc.extractor [file.loc] [patch_to]

Распаковка может затянуться до 10 минут. Это вполне нормально.



loc.compiler
Allods Online pack.loc file compiler v0.5 by gsomgsom and kosh .
Компилирует файл ресурсов pack.loc.
Вызов: loc.compiler <patch> <file.loc>

Компиляция может затянуться до 10 минут. Это вполне нормально.



game.ver.info
Allods Online game.version file viewer v0.2 by gsomgsom .
Показывает содержимое файла game.version.
Вызов: game.ver.info [game.version]



game.ver.truncator
Allods Online game.version File Truncator v0.2 by SLA .
Программа урезает файл game.version таким образом, чтобы лаунчер Аллодов, при старте, не сканировал PAK-файлы в поисках изменённых файлов.
Вызов: game.ver.truncator [game.version [game.version.out] ]



Напоминаю, что все утилиты вы используете на свой страх и риск.

Для компиляции исходного кода использовалась программа
Bambalam PHP EXE Compiler/Embedder 1.21
-----
По необходимости пост будет обновляться.

UPD 24.03.2010: перезалил на другой сайт

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Судя по всему, в loc.extractor'е есть баг. Это обсуждалось здесь.

Во-первых, иногда он генерирует подозрительные имена файлов: "OrcMaleElite_SL.xdb22_22_Name.txt".

Во-вторых, например, в "\Characters\Orc_male\Instances\AstralIsle06" оба текстовых файла битые (битый utf-8 текст, не читается).

Я посмотрел исходник декомпилятора, там всё достаточно просто. Видимо, нужно дописать код, чтобы декомпилятор проверял соответствие всех "странных" данных тем константам, которые есть в исходнике компилятора. И если где-то не совпадёт, то нужно выдавать юзеру alarm.

Ещё один очень эффективный метод - сравнить в hex-редакторе содержимое оригинального pack.loc с декомпилированным и обратно скомпилированным pack.loc. Я ещё не пробовал.

В общем, кто-нибудь должен попробовать починить декомпилятор.

P.S. Ещё, extractor пишется через o. :)

Ссылка на комментарий
Поделиться на другие сайты

Поглядим на досуге.

Щас редко к компу подхожу, так что некогда.

Quote:
Ещё один очень эффективный метод - сравнить в hex-редакторе содержимое оригинального pack.loc с декомпилированным и обратно скомпилированным pack.loc. Я ещё не пробовал.

Не прокатит. Компилятор не пытается ничего оптимизировать. Так что просто если распаковать-запаковать, то полученный файл будет отличаться.

З.Ы. о - поправил в описании. Как руки дойдут - поправлю в архиве.

Ссылка на комментарий
Поделиться на другие сайты

  • 2 месяца спустя...

Вот что мне удалось раскопать. Для сравнения, приведу формат предыдущей версии (ver3), а затем, современной (ver4):

ver3

Code:
HEAD:

(4 байта) DATA size

(4 байта) DATA crc32

(4 байта) константа "00 00 00 05" или "00 00 00 02", ни на что не влияет.

DATA:

(4 байта) "ver3"

(4 байта) Version string size

(строка) Version string

(данные) Данные...

ver4

Code:
HEAD:

(4 байта) ???????? "Ключик"

DATA:

(4 байта) "ver4"

(4 байта) Version string size

(строка) Version string

(4 байта) Размер ZLIB-сжатых данных.

(данные) Данные В СТАРОМ ФОРМАТЕ, просто сжатые ZLIB'ом, сигнатура ZLIB "78 DA" (это максимальный уровень сжатия).

(24 байта) ???????? "Замочек"

Однозначно, где-то зарыт CRC32, т.к. при измененных ZLIB-сжатых данных, моментально обнаруживает "повреждение". Однако, я всё перерыл, и не нашёл, чьим CRC32 мог бы быть "Ключик" (4 байта).

"Ключик" и "Замечек" -- это условные названия. На самом деле, это может быть что угодно.

"Замечек" имеет длину 24 байта, то есть 192 бита. Гугл меня огорчает, т.к. на запрос "192 bytes code" выдаёт всякие алгоритмы криптографии... И это печально. У кого какие будут идеи?

"Ключик" и "Замочек" в версии 1.0.07.7:

  • 89 90 55 16
  • 35 AF A9 C4 7A 13 3F B7 FA D1 49 92 C6 94 03 A1 08 6F E5 5A 14 00 00 00

"Ключик" и "Замочек" в версии 1.0.07.8:

  • CE D8 34 9F
  • B9 CB DD FB 19 00 E4 5A D8 D9 D2 51 5C 32 19 A6 15 C1 43 87 14 00 00 00

Заметьте, кстати, "Замочек" всегда заканчивается "14 00 00 00" - может, это просто число 20 (0x14).

P.S. game.version - это только первый уровень защиты от моддинга PAK-файлов.

Для меня очень важно научиться снова подсовывать свои PAKи, или модифицировать оригинальные, т.к. это снова оживит "декоративные" моды. Просто не знаю, как я теперь буду играть за Империю, без мода RedAlert :) И AstralMapWithChat был отличной идеей. И лигийские квесты в бане, без мода AoNudePatch, выглядят абсурдно :) Понимаю, что разработчики тем самым защитили LUA-файлы от моддинга, но мне пофиг LUA-моды. Мне обидно за ТЕКСТУРНЫЕ моды, которые совершенно безвредны, за то, приносили столько фана в игру. Их то за что?

Ссылка на комментарий
Поделиться на другие сайты

  • 1 год спустя...

Да и в принципе версия по прямой ссылке с дропбокса думаю не помешает:

линк

Ссылка на комментарий
Поделиться на другие сайты

  • 3 месяца спустя...

Можете, пожалуста, расписать текст программы, что нужно делать. Я ничего не понимаю в этом.=(

Ссылка на комментарий
Поделиться на другие сайты

Поиграть хочется...У меня просто проблема с game.version, а остольное мне не очень нужно.

Ссылка на комментарий
Поделиться на другие сайты

  • 11 месяцев спустя...
Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...

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

Пользуясь сайтом, вы принимаете Условия использования