» TeamX (Архив Форума)«


Форум TeamX » Исследования » Dat2 (Версия 2.3) (Обновление)

Переход по темам
<< Пред. След. >>
Единственная страница этой темы

 
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Dat2 обнорвлен до версии 2.3
Заделан ряд очень серьезных багов с добавлением файлов и  сжатием DAT-ов.

http://homepages.atnet.ru/drony/dat2_2.3.rar

Отправлено: 11:09 - 19 Ноября, 2005
Ray
Модератор

Откуда: Донецк,Украина
Регистрация: Янв. 2004

Всего: 746 сообщений

Радует. Такое наблюдение:

В версии 2.2, если запаковывать очень (~1000 и больше) файлов в новый архив(полностью пустой), то он создаётся нормально, вроде все работает, дерево файлов тоже правильной структуры, но сами файлы в архив добавляются не по порядку, а как-то выборочно. Это вроде и не глюк, но странно как то. Если брать не большое количество файлов (~100 или меньше, может и больше но не проверял) - тогда все файлы запаковываются нормально и по порядку.
Ну и такой вопрос: изминил ли ты алгоритм удаления файлов? Версии 2.2 нормального удаления я так и не увидел (может какие параметры есть?).
Сейчас докачаю версию 2.3, погоняю на наличие багов.  


(Добавление от 14:48 - 19 Ноября, 2005.)


Добавлено:

В новой версии всё тоже. Багов не замечено.

-----
Не бывает невозможных задач – бывает мало времени.

Отправлено: 14:21 - 19 Ноября, 2005
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

НОрмальное удаление - это что?

Отправлено: 9:15 - 20 Ноября, 2005
Ray
Модератор

Откуда: Донецк,Украина
Регистрация: Янв. 2004

Всего: 746 сообщений

Когда dat2 удаляет файлы он только изменяет данные в дереве файлов в dat'e (просто удаляет данные по длинне файла, имени и т.д.) Сами же данные в зажатом виде остаются на месте. В результате чего размер архива практически не уменьшается (всего на 17 байт+длинна имени).
НОрмальное удаление: когда удаляется всё, что относится к нужному файлу

А вообще прога супер. Больше замечаний нет

-----
Не бывает невозможных задач – бывает мало времени.

Отправлено: 11:56 - 20 Ноября, 2005 | ИСПРАВЛЕНО: Ray - 10:56 - 20 Ноября, 2005
Wasteland Ghost
Маленькое Злое Привидение

Откуда: Россия, Самара
Регистрация: Дек. 2002

Всего: 2251 сообщение

Подтверждаю: при удалении файла из дат-архива, он удаляется только из списка, сами же данные остаются на месте. Хорошо бы пофиксить .

Отправлено: 16:09 - 20 Ноября, 2005
Mynah
Модератор

Откуда: Пермь
Регистрация: Окт. 2004

Всего: 469 сообщений

Полное удаление == перепаковка всего архива. Будет занимать очень много времени.

2Anchorite:
Я ведь прав?

Отправлено: 17:05 - 20 Ноября, 2005
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

1. Dat2 обновлен до версии 2.31. В ряде случаев при опреации сжатия  DAT-файла предыдущие версии могут не вытолкнуть список файлов на диск (короче испоганить насмерть)

http://homepages.atnet.ru/drony/dat2_2.31.rar

2. В версии 2.2 была добавлена комнада "k - Shrink", которая позволяла "выпустить воздух" из DAT-файла.
Если уж вам так необходимо можете дать в консоле слудующие комнады

Удалить: dat2 d DAT-file.dat file && dat2 k DAT-file.dat
Добавить: dat2 а DAT-file.dat file-list && dat2 k DAT-file.dat

Если же хотите это дело интегрировать в FAR,  то выглядеть это будеть чуть по другому

Delete="cmd /c dat2 d {%%AQ} {@%%LMQ} && dat2 k {%%AQ}"
Add="cmd /c dat2 a {%%S} {-t %%R} {%%AQ} {@%%LMQ} && dat2 k {%%AQ}"
AddRecurse="cmd /c dat2 a -r {%%S} {-t %%R} {%%AQ} {@%%LMQ} && dat2 k {%%AQ}"

И вообще, как говорили в одном мультфильме: "Смелее надо быть и изобретательнее"

3. 2Mynah:
Не совсем. Происходит не перепаковка файлов, а их перемещение внутри DAT-файла. Гораздо проще реализовать ее как отдельную опрацию, чем городить эту возможность в оперциях удаления и довавления файлов.


Отправлено: 17:19 - 20 Ноября, 2005 | ИСПРАВЛЕНО: Anchorite - 17:23 - 20 Ноября, 2005
Perceptron
Модератор

Откуда: Ivanovo
Регистрация: Май 2003

Всего: 502 сообщения

По этой ссылке: http://www.teamx.ru/utils/dat2.rar вы можете скачать DAT2 с дополнениями не только для Far'а, но также и для Total Commander'a, исправленные по методу Анхорита (см. предыдущий пост), с инструкцией по установке.
Так что: "Польуйтесь файловым разделом TeamX - у нас всегда лучше, выше, сильнее..." :)
Примечание: исходники см. в разделе Ресурсы.

Отправлено: 3:05 - 23 Ноября, 2005
daemonserj
Пользователь

Откуда: нск
Регистрация: Янв. 2006

Всего: 17 сообщений

dat2 при попытке запаковать весь master.dat для f1 запаковывает только первые 200 метров ,после чего идет flushing buffers и вылет.

Отправлено: 8:22 - 14 Янв., 2006
Wasteland Ghost
Маленькое Злое Привидение

Откуда: Россия, Самара
Регистрация: Дек. 2002

Всего: 2251 сообщение

Цэ странно. У меня всё запаковалось, когда я собирала себе "англофицированную" 1.2. Цельный master.dat со всем содержимым. Примерно 300 Мб.

Отправлено: 11:52 - 14 Янв., 2006
daemonserj
Пользователь

Откуда: нск
Регистрация: Янв. 2006

Всего: 17 сообщений

строка запуска dat2 a -s -r master.dat *.*

Оффтоп удалён. Больше так не делай.
WG

Отправлено: 13:33 - 14 Янв., 2006
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Сейчас благополучно запоковал ресурсы из master.dat и cretter.dat от FO1 (это около 900Мб) в один здоровый файл. Получился DAT размером около 400М. Т.е.  у меня все работает нормально.

Давай для начала выясним какой версией dat2.exe пользуешься?

Отправлено: 13:53 - 14 Янв., 2006
daemonserj
Пользователь

Откуда: нск
Регистрация: Янв. 2006

Всего: 17 сообщений

версия 2.31
винды - win2003 server sp1 если что.

Ещё одно предупреждение за препирательства с админом и завуалированное оскорбление.
WG

PS У нас есть специальные форумы с уже открытыми подходящими темами. Там и спрашивай. Эту тему в хлам превращать не надо.

Отправлено: 16:46 - 14 Янв., 2006
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Тогда попробуй так dat2 a -s -r master.dat *

Отправлено: 17:26 - 14 Янв., 2006
daemonserj
Пользователь

Откуда: нск
Регистрация: Янв. 2006

Всего: 17 сообщений

тоже самое

&#9556;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552; C:\1 &#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9559;
&#9553;р       Имя        &#9474;        Имя        &#9553;
&#9553;..                 &#9474;FONT3           FON&#9553;
&#9553;ART                &#9474;FONT5           FON&#9553;
&#9553;DATA               &#9474;COLOR           PAL&#9553;
&#9553;MAPS               &#9474;                   &#9553;
&#9553;PREMADE            &#9474;                   &#9553;
&#9553;PROTO              &#9474;                   &#9553;
&#9553;SCRIPTS            &#9474;                   &#9553;
&#9553;SOUND              &#9474;                   &#9553;
&#9553;TEXT               &#9474;                   &#9553;
&#9553;FONT0           AAF&#9474;                   &#9553;
&#9553;FONT1           AAF&#9474;                   &#9553;
&#9553;FONT2           AAF&#9474;                   &#9553;
&#9553;FONT3           AAF&#9474;                   &#9553;
&#9553;FONT4           AAF&#9474;                   &#9553;
&#9553;master          dat&#9474;                   &#9553;
&#9553;FONT0           FON&#9474;                   &#9553;
&#9553;FONT1           FON&#9474;                   &#9553;
&#9553;FONT2           FON&#9474;                   &#9553;
&#9567;&#9472;&#9472;&#9472; 463,798,671 байтов в 19 файлах &#9472;&#9472;&#9472;&#9472;&#9570;
&#9553;master.dat         200 М 14.01.06 21:20&#9553;

Отправлено: 18:22 - 14 Янв., 2006
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Ты не чего не путашь?

Даже из этой билеберды видно что в DAT упаковалось фалов на 400Мб!!! Да и размер DAT-а подходящий - 200Мб.

Отправлено: 21:10 - 14 Янв., 2006 | ИСПРАВЛЕНО: Anchorite - 21:21 - 14 Янв., 2006
daemonserj
Пользователь

Откуда: нск
Регистрация: Янв. 2006

Всего: 17 сообщений

эти 400 с лишним pack jv полностью упаковываются в 300 с копейками. не хочешь верить - не верь.

Отправлено: 22:10 - 14 Янв., 2006
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

И что это такое pack jv ?

Тебя что смущает размер получаемого DAT-файла? И ты считаешь что в нем что-то не так?
Может стоит просто распаковать полученный DAT и сравнить получившиеся файлы с исходными?

Отправлено: 22:37 - 14 Янв., 2006 | ИСПРАВЛЕНО: Anchorite - 22:47 - 14 Янв., 2006
daemonserj
Пользователь

Откуда: нск
Регистрация: Янв. 2006

Всего: 17 сообщений

pack - это как я понимаю интерплеевской dos4gw пакер.
я же написал что пакует только пока файл не достигнет 200 мб. естественно я фаром с dat2 плагином заходил внутрь и видел что там половины файлов нет. если надо могу ещё один листинг показать

Отправлено: 7:33 - 15 Янв., 2006
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Кхмм... Тогда я вообще ничего не понимаю.
Пришли пожалуйста протокол работы dat2 (перенаправь его вывод в файл).
А также листинг содержимого получающегося dat-а.


Адрес можешь найти в моих личных данных.

Отправлено: 9:04 - 15 Янв., 2006
daemonserj
Пользователь

Откуда: нск
Регистрация: Янв. 2006

Всего: 17 сообщений

причина найдена
есть писать вот так :
dat2 a -s -r c:\master.dat *
то всё ок - полный архив.
а если просто
dat2 a -s -r master.dat *
то он его складывает в тот же каталог , и как-то об него спотыкается.

Отправлено: 18:56 - 15 Янв., 2006
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Похоже придется предусмотреть этот случай.
Спасибо за наводкую Мне этот как-то даже в голову не приходило.

Отправлено: 20:18 - 15 Янв., 2006
Jordan 63
Пользователь

Откуда: Россия, Самара
Регистрация: Июль 2007

Всего: 228 сообщений

Anchorite

Может ли твоя прога распаковывать dat файл частями т.е не целиком а отдельную папку
мне нужно что бы он из master.dat извлек только папку text как это сделать?

Отправлено: 14:38 - 25 Янв., 2008
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Вроде так

dat2 x master.dat text\*

Отправлено: 16:19 - 25 Янв., 2008
Jordan 63
Пользователь

Откуда: Россия, Самара
Регистрация: Июль 2007

Всего: 228 сообщений

Anchorite

Цитата:
dat2 x master.dat text\*


Работает!

Отправлено: 16:48 - 25 Янв., 2008 | ИСПРАВЛЕНО: Jordan 63 - 16:48 - 25 Янв., 2008
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Тебе повезло. А у меня собственную тулзу таращит. Не могу создать файл, говорит

Отправлено: 22:54 - 25 Янв., 2008
Alchemist
Модератор

Откуда: Арзамас-17
Регистрация: Дек. 2004

Всего: 298 сообщений

Кстати, мы тут с WG заметили весёленькую странность за dat2 v2.32. Если подсунуть ему critter.dat от какого-либо из европейских бездетных релизов первого Fallout и дать команду на распаковку всех файлов из архива, создаётся растущий critter.lst. По достижении этим файлом размеров в районе 290Mb утилита крешится. Более ранние версии подобным дефектом не страдают. Где-то  появился баг.

-----
/// What'ya be sain'? Vault 100+? We need nothing o'that!

Отправлено: 17:52 - 26 Янв., 2008 | ИСПРАВЛЕНО: Alchemist - 17:53 - 26 Янв., 2008
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Посмотрим

Отправлено: 21:14 - 27 Янв., 2008
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Не у кого не осталось сырцов старых версий DAT2?

И еще выложите куда-нить проблемный critter.dat.
Надо разобраться что с ним не так.

Отправлено: 22:50 - 4 Фев., 2008
Ray
Модератор

Откуда: Донецк,Украина
Регистрация: Янв. 2004

Всего: 746 сообщений

У меня остались: Fallout DAT-files packer/unpacker, version 2.01

надо?

-----
Не бывает невозможных задач – бывает мало времени.

Отправлено: 0:23 - 5 Фев., 2008
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Выкладывай.

Отправлено: 8:06 - 5 Фев., 2008
Ray
Модератор

Откуда: Донецк,Украина
Регистрация: Янв. 2004

Всего: 746 сообщений

Я лишь удалил папку Release

http://ifolder.ru/5229039

-----
Не бывает невозможных задач – бывает мало времени.

Отправлено: 10:53 - 5 Фев., 2008
Alchemist
Модератор

Откуда: Арзамас-17
Регистрация: Дек. 2004

Всего: 298 сообщений

Anchorite:
В общем, при внимательном тестировании выяснилось, что со стандартным critter.dat от US 1.0 (идентичнен с Фаргусовским) последняя сборка тоже не дружит. Так что, если у тебя ещё есть диск с Fallout 1, просто попробуй на нём для начала. Если не воспроизведётся -- выложу свой critter.dat.

Пока выкладываю только граничные сборки утилиты:
Dat2_2.31.rar -- баг отсутствует.
Dat2_2.32.rar -- баг имеется.

Как воспроизвести: dat2 x critter.dat

Судя по всему, "поломан" код, отвечающий за отслеживание конца записи. И, при попытке извлечь что-либо, в результирующий файл пишется результат распаковки абсолютно всего. От начала, собственно, запрошенного файла и покуда хватет сжатого потока. Заканчивается всё, естественно, ошибкой.

-----
/// What'ya be sain'? Vault 100+? We need nothing o'that!

Отправлено: 15:18 - 6 Фев., 2008 | ИСПРАВЛЕНО: Alchemist - 15:19 - 6 Фев., 2008
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

Проверил сегодня dat2 версии 2.32 на critter.dat от американской (вроде-бы, т.к. есть FRM-ы детей) версии FO1. Версия игры 1.0

Размер файла - 158 022 057.
MD5 - b92ca2ad7c9afc404468a9287983ad90

Все распаковалось без всяких проблем.

Если не сложно, выложите проблемный critter.dat куда-нибудь.

Отправлено: 21:24 - 11 Фев., 2008 | ИСПРАВЛЕНО: Anchorite - 21:25 - 11 Фев., 2008
Alchemist
Модератор

Откуда: Арзамас-17
Регистрация: Дек. 2004

Всего: 298 сообщений

Цитата:
Размер файла - 158 022 057.
MD5 - b92ca2ad7c9afc404468a9287983ad90

Все распаковалось без всяких проблем.

Точно такой же файл у меня даёт ошибку. Есть подозрение, что дело может быть в файловой системе раздела или версии одной из приложенных DLL. Я теcтировал только на NTFS.
Critter.dat от европейской версии игры я загружу и дам ссылку. Ещё один товарищ обратился с master.dat от довольно экзотического русифицированного диска, на котором наблюдается аналогичная проблема, но не со всем содержимым, а только с изменёнными MSG. Как выложит -- тоже дам ссылку.
А ты не мог бы отдельно выложить свои нынешние msvcr71.dll и zlib1.dll?


(Добавление от 20:26 - 13 Фев., 2008.)


--- Update ---
Залил critter.dat.
CRITTER.DAT-1.2-EU-11.03.1998.part1.rar  73400320 байт
CRITTER.DAT-1.2-EU-11.03.1998.part2.rar  65899466 байт
Пароль: buggybuggyroach

-----
/// What'ya be sain'? Vault 100+? We need nothing o'that!

Отправлено: 19:19 - 13 Фев., 2008
Anchorite
Пользователь

Откуда: Не здесь
Регистрация: Янв. 2003

Всего: 283 сообщения

В dat2 версии 2.32 zLib и ран-тайм прилинкован статически.
msvcr71.dll и zlib1.dll ему просто не нужны.

Отправлено: 10:33 - 14 Фев., 2008
Alchemist
Модератор

Откуда: Арзамас-17
Регистрация: Дек. 2004

Всего: 298 сообщений

Цитата:
В dat2 версии 2.32 zLib и ран-тайм прилинкован статически.

Ну, это не было отражено во внешней документации. А я так привык к их присутствию, что сам не догадался.

Вот обещанный master.dat.
MASTER.part1.rar 100431872 байт
MASTER.part2.rar 100431872 байт
MASTER.part3.rar   95649037 байт
без пароля

С ним более менее понятно, что локализаторы напортачили. Но очень уж поведение похоже на описанную выше проблему с critter.dat.

Внутри DAT'а есть файл 1MOLRAT1.MSG, согласно листингу, выдаваемому dat2, имеющий нулевую длинну. При попытке сделать dat2 x master.dat, ранние версии утилиты (по 2.31 включительно) нормально производят распаковку ресурсов то тех пор, пока не уткнутся в этот файл:
Код:
Fallout DAT-files packer/unpacker, version 2.31 
Copyright (C) Anchorite (TeamX), 2004,2005
anchorite2001@yandex.ru

Extracting: COLOR.PAL
Extracting: FONT0.AAF
Extracting: FONT0.FON
Extracting: FONT1.AAF
Extracting: FONT1.FON

...

Extracting: TEXT\ENGLISH\CUTS\NAR_39.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_4.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_40.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_41.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_42.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_44.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_45.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_46.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_5.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_6.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_7.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_8.TXT
Extracting: TEXT\ENGLISH\CUTS\NAR_9.TXT
Extracting: TEXT\ENGLISH\CUTS\NARRATE.TXT
Extracting: TEXT\ENGLISH\CUTS\OVRINTRO.SVE
Extracting: TEXT\ENGLISH\CUTS\OVRINTRO.TXT
Extracting: TEXT\ENGLISH\DIALOG\1MOLRAT1.MSG Error!!!

Flushing buffers...

При чём на диске остаётся двухмегабайтный 1MOLRAT1.MSG, представляющий из себя непрерынеую склейку из содержимого всех MSG в игре. Если распаковывать файлы по одному, не затрагивая проблемный,  эти самые MSG удаётся извлечь корректно, без склеек. При вызове dat2 x MASTER.DAT TEXT\ENGLISH\DIALOG\1MOLRAT1.MSG так же происходит ошибка и извлекается файл-склейка длинной около 2Mb.



Если же вызвать dat2 x master.dat на версии 2.32, сразу же происходит авост:
Код:
Fallout DAT-files packer/unpacker, version 2.32 
Copyright (C) Anchorite (TeamX), 2004-2006
anchorite2001@yandex.ru

Extracting: COLOR.PAL Error!!!

Flushing buffers...


Команда dat2 x MASTER.DAT TEXT\ENGLISH\DIALOG\1MOLRAT1.MSG как и на старых версиях заканчивается ошибкой, но извлекается действительно файл нулевой длинны.
При попытке извлекать текстовые файлы поимённо так же происходит создание файлов нулевой длинны.


Ошибка с приведённым выше critter.dat у меня воспроизводится стабильно. И ещё, как минимум у двух человек.

-----
/// What'ya be sain'? Vault 100+? We need nothing o'that!

Отправлено: 15:33 - 16 Фев., 2008 | ИСПРАВЛЕНО: Alchemist - 15:35 - 16 Фев., 2008
 

Переход по темам
<< Пред. След. >>
Единственная страница этой темы


Powered by Ikonboard 2.1.9 RUS
Modified by RU.Board Team
© 2000 Ikonboard.com