Версия 5.6.1 почти готова
2011-04-04 14:11:45

Выход версии 5.6.1 задержался, так как за прошлые выходные я так и не смог исправить все найденные ошибки. Но я думаю, что наконец, исправил последнюю ошибку (всё ещё жду подтверждения от Paul из http://www.spookcentral.tk)  и надеюсь, что текущая сборка 262 (SVN 601) будет выпущена сегодня или завтра. Мне просто нужно внести изменения в документацию (сценарии для установщика уже готовы).

Проблемы в v5.6.0
2011-03-28 19:32:41

Просто заметил, что в Dragon UnPACKer v5.6.0 не работает нечто важное (причём работало в 5.5.1 Beta), например: сортировка в списке содержимого (lstContent)... Как можно скорее выпущу версию 5.6.1 (если получится, то в конце недели).

Dragon UnPACKer v5.6.0 "Exedra" (стабильная сборка)
2010-10-15 07:45:54

Вот, наконец, новая стабильная версия Dragon UnPACKer: 5.6.0!

Основные новости:

  • Теперь программа правильно работает под Windows Vista/7 с включённой UAC и без административных прав. Это вызывает пресловутую проблему "Всегда по-французски"... Извините, с этого момента я буду тестировать программу в системе с включённой UAC.
  • Сокращение количества используемых не совместимых с Lazarus библиотек от третьих сторон.
  • HypeRipper 5.6: плагины встроены в ядро (плагины больше не поддерживаются). Надеюсь, что это поможет мне в разработке многопоточной версии HyperRipper. Эта версия должна быть несколько надёжнее и быстрее, чем 5.5d.
  • Исправлены многие ошибки и повышено удобство использования.
  • Поддерживаются новые форматы файлов игр:
    • Battleforge .PAK
    • Dragon Age: Origins .ERF
    • Sid Meier's Civilization V .FPK

См. журнал изменений, чтобы узнать обо всех нововведениях!

Новую версию можно загрузить отсюда: Dragon UnPACKer > Downloads.

Доказательство концепции
2010-07-16 09:18:05

Я начал писать код для ветки v6.x. Начал с нуля (как указывал 2 статьи назад) используя в качестве основы Lazarus/FPC. Таким образом, он максимально открыт (изначально исходный код ветки 5.x был закрыт, некоторые решения не имеют смысла, как, например, просматривать "скомпилированный" файл, содержащий значки).

Также, в доказательство концепции, я стараюсь двигаться в сторону объектно-ориентированных плагинов, похоже, это хорошо работает, поэтому я буду её придерживаться.

Исходный код нового Dragon UnPACKer'а может быть загружен из SVN с использованием имени модуля DragonUnPACKerLazarus вместо DragonUnPACKer. Обратите внимание, это далеко не пригодная к использованию точка, я реализовал основные элементы интерфейса и поддержку тем, плюс ультра базовый PoC объектно-ориентированных плагинов.

В ветке 5.x, нет ничего нового, но после сообщения об ошибке я заметил некоторые недостатки в Dragon Update Server и Duppi, поскольку после загрузки файлов с Sourceforge, они оказывались нерабочими (загруженные файлы были "повреждены"). Причиной было то, что на SourceForge пока не изменились адреса на загрузку и Duppi не получал нужные D5P файлы. Но я также решил внести некоторые изменения как в DUS, так и в Duppi.

В течение некоторого времени DUS содержит список доступных для загрузки серверов, но они не используются Duppi, который использует только первый доступный. Я изменил Duppi так, что он использует по порядку все серверы, пока загрузка не будет успешно завершена. Для этого в каждый D5P я добавил хэш SHA-1 для DUS и размера файла (в байтах). В SVN ревизии 505 Duppi уже делает такие обновления для Duppi, что не очень хорошо для использования на данный момент. Я изменю все доступные для загрузки рабочие файлы DUS v3.2.0 с изменениями живут более недели и Duppi v3.3.0 будет доступен на следующей неделе (если позволит время).

Ночные сборки
2010-04-22 13:10:10

Коротко: я, наконец, смог добавить ночные сборки для Dragon UnPACKer.

Длиннее: я всегда хотел добавить автоматическое создание ночных сборок для Dragon UnPACKer, таким образом при каждом изменении мною кода CVS, бинарные версии будут автоматически доступны пользователям (если они когда-либо захотят проверить).

Проблема в том, что я хотел сделать на основе своей Debian (Linux) выделенный сервер, а Dragon UnPACKer использует Borland Delphi, среда разработки и компилятор которой работают только под Windows.

Я знал, что решением было использование компилятора командной строки (DCC32.EXE) из Borland Delphi 7 вместе с Wine (позволяет запускать Windows-приложения под Linux). Но использование компилятора командной строки (clc) сложнее, чем использование компилятора через среду разработки (IDE). Во всяком случае вчера я потратил несколько часов на настройку и вуаля!

С помощью cron, каждую ночь в 00:30 (GMT+1) CVS загружает исходный код из последней (HEAD) ветки. Написанная мной на PHP небольшая программа сравнивает дату изменения каждого файла с датой компиляции. Если были изменения, то выполняется сборка (исполняемого файла ядра, плагинов, duppi и dlngc собраны и скомпилированы, сгенерированы языковые файлы). После этого полученные файлы сжимаются с помощью p7zip (Linux-версия 7zip) и выгружаются (при этом создаётся файл журнала) на сервер загрузки, который зеркалируется каждые 30 минут двумя другими серверами).

Можете попробовать последнюю ночную сборку HyperRipper, обладающую более высокой скоростью работы и исправленными ошибками. Вчерашняя сборка (20100421) также должна быть очень стабильной (даже лучше последней нестабильной...). Я был бы рад получить ваш отзыв об этой версии, так как я в первый раз использую clc для Dragon UnPACKer.

Загрузить можно отсюда: Dragon UnPACKer Development > Nightly Builds.