Elbereth Zone

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта

Dragon UnPACKer • История

На этой странице вы узнаете, как был создан Dragon UnPACKer и какими были шаги, приведшие его к текущей версии.

Quake UnPACKer v1: эра DOS.

Эта версия была создана для открывания и извлечения файлов из архивов Quake PAK. Поэтому программа называлась Quake UnPACKer. Под DOS программа написана на QuickBASIC. Последняя версия (1.10 за 1997) всё ещё доступна для загрузки: qupak110.zip

Dragon UnPACKer v2 & v3: трудный переход на Windows.

После того, как Quake UnPACKer начал поддерживать больше игровых форматов файлов, он был переименован в Dragon UnPACKer. Произошло это из-за того, что тогда я был Сисопом BBS по имени Gold Dragon.

Версия 2 была первой попыткой перехода на Windows, было выпущено несколько alpha-версий (практически все они были утеряны). Интерфейс был простым и мне не нравился. Это был простой список записей из открытых файлов. Был написан в Visual Basic 3. Из остатков версии 2 уцелел следующий инструмент: w2v-t1.zip (просмотрщик WAD2)

Разработка версии 3 была начата тогда, когда версия 2 носила статус alpha. Был изменён пользовательский интерфейс, хотелось сделать его похожим на Проводник Windows (папки в файле с левой стороны и записи из выбранной папки с правой). То же размещение осталось и в более поздних версиях - 4 и 5.

Обе версии (2 и 3) были разработаны под интерфейс Windows, но после выхода из строя диска разработка надолго остановилась

Dragon UnPACKer v4: Гнездо ошибок

Версия 4 была полностью переписана через 2 года, когда у меня появилось достаточно мужества для того, чтобы начать всё сначала (после выхода из строя диска *Ј$@). Написан в Visual Basic 5.

При написании этой программы не ставилась цель изменять файлы игр, только извлечение ресурсов. В версии 4 добавлена возможность создавать/править PAK файлы (существовал и условно-бесплатный инструмент под названием PAK Explorer, делавший то же самое).

Самой большой проблемой версии 4 является то, что она содержала немало ошибок и её было трудно поддерживать... Чтобы добавить один новый игровой формат файла, мне нужно было пересобирать всё заново.

Здесь вы найдёте все когда-либо выпущенные версии (обратите внимание на то, что эти версии не поддерживаются мною), для запуска программы может потребоваться установка библиотек VB (setupVB5.zip для всех версий, начиная с 4.10, setupVB6.zip для 4.00 и 4.01):

Версия
Дата
Размер
Файл
VB DLLs
Dragon UnPACKer v4.22.87 Release A 03/10/2001
1145 КБ
dup422.zip
setupvb5.zip
Dragon UnPACKer v4.21.86 Release A 22/07/2001 1129 КБ
dup421.zip
setupvb5.zip
Dragon UnPACKer v4.20.83 Release B 15/06/2001
1099 КБ
dup420.zip
setupvb5.zip
Dragon UnPACKer v4.14.80 Release C 05/04/2001 1020 КБ
dup414.zip
setupvb5.zip
Dragon UnPACKer v4.13.75 Release A 05/02/2001
1051 КБ
dup413.zip
setupvb5.zip
Dragon UnPACKer v4.12.70 Release D 08/12/2000
1007 КБ dup412.zip
setupvb5.zip
Dragon UnPACKer v4.11.64 Release A 14/09/2000
875 КБ
dup411.zip
setupvb5.zip
Dragon UnPACKer v4.10.59 Release D 20/08/2000
824 КБ
dup410.zip
setupvb5.zip
Dragon UnPACKer v4.01.47 Release G 15/04/2000
891 КБ dup401.zip
setupvb6.zip
Dragon UnPACKer v4.00.42 Release I 28/01/2000
732 КБ
dup400.zip
setupvb6.zip

Dragon UnPACKer v5

Версия 5 опять-таки снова полностью переписана с нуля с использованием Borland Delphi. Этот язык я довольно хорошо изучил в университете (Pascal , если честно) и мне захотелось использовать изученное (указатели, т. д...).

Главные преимущества кода версии 5 над версией 4:

  • Поддержка форматов игровых файлов, конвертация и HyperRipper функционируют за счёт плагинов
  • Выше скорость работы
  • Простота поддержки

Прошло немало времени, прежде чем версию 5 можно было функционально сравнить с версией 4. Ещё две функции пока не реализованы:

  • Возможность предварительного просмотра (запланирована в v5.4)
  • Возможность упаковки

С версии 5 я решил перейти на открытый исходный код под Mozilla Public License 1.1.

Иногда разработка идёт очень медленно, так как она выполняется для удовольствия и в моё свободное время. Иногда я просто не хочу, чтобы программирование затягивалось на несколько месяцев (и даже лет!).