Пишу скрипт для QuickBMS, но никак не могу понять как найти размер файла
Cabela's Dangerous Hunts 2013 [.CRF]
#1
Отправлено 13 April 2013 - 14:08
Пишу скрипт для QuickBMS, но никак не могу понять как найти размер файла
#2
Отправлено 13 April 2013 - 15:04
Запускать:
Вместо "scripts.crf" подставляем любой архив из игры.quickbms.exe -d uncrf.bms scripts.crf .
Код скрипта "uncrf.bms":
# Cabela's Dangerous Hunts 2013 .CRF unpacker
# (c) CTPAX-X Team 2013
# http://www.ctpax-x.org/
ImpType Standard
IDString "!CPF"
# version?..
Get TMP Long
Get FileCount Long
For I = 1 To FileCount
SavePos TOC
# skip some data
Math TOC += 16
GoTo TOC
# read file data
Get FileSize Long
Get FileOffs Long
# blocks in packed file
Get BlockNum Long
Get TMP Long
# read filename
GetDString FileName 260
# get file packed size
SavePos TOC
# create memory file - output buffer
Log MEMORY_FILE 0 0
# append enabled
Append
For J = 1 To BlockNum
GoTo FileOffs
Get FilePack Long
Math FileOffs += 4
# packed flag?..
If FilePack & 0x80000000
Math FilePack ^= 0x80000000
# LZO packed file
ComType lzo1x
CLog MEMORY_FILE FileOffs FilePack FileSize
ComType copy
Else
# unpacked?..
Log MEMORY_FILE FileOffs FilePack
EndIf
Math FileOffs += FilePack
Next J
# flush memory file to disk
Get FileSize ASIZE MEMORY_FILE
# append disabled
Append
Log FileName 0 FileSize MEMORY_FILE
# back to TOC
GoTo TOC
Next I
#4
Отправлено 16 April 2013 - 14:14
Файлы записаны упакованными блоками.
#5
Отправлено 16 April 2013 - 21:42
#6
Отправлено 16 December 2013 - 22:52
В последней версии QuickBms стала возникать ошибка:
Invalid operator 'T'
#7
Отправлено 17 December 2013 - 12:15
Чтобы поправить нужны архивы .CRF для тестов - у меня их не осталось, а все ссылки сдохли.
#8
Отправлено 15 February 2019 - 08:21
Прошло 5 лет ![]()
Вывод данной ошибки в последней версии:
Error: Invalid Math operator 't' Last script line before the error or that produced the error: 37 If (FilePack & 0x80000000) != 0 Then
Подскажите куда, если потребуется, выложить пример файла.
#10
Отправлено 18 February 2019 - 16:01
Версия 0.9.2
- error in src\extra\xalloc.c line 703: xdbg_realloc() Error: memory allocation problem
Самая старая версия доступная на сайте разработчика 0.7.7
Error: the requested amount of bytes to allocate is negative (0x800000cf) Last script line before the error or that produced the erorr: 45 Log MEMORY_File FileOffs FilePack
#11
Отправлено 20 February 2019 - 17:41
Ещё пару вещей в скрипте поменял - просьба проверить.
Если нет, то нужен какой-нибудь маленький .CRF файл для тестов на обменнике не требующем регистрации для скачивания (MediaFire.com или Mega.nz).
#12
Отправлено 21 February 2019 - 15:13
Теперь работает.Всё должно работать. Последняя версия скрипта точно из сообщения выше скопирована?
Ещё пару вещей в скрипте поменял - просьба проверить.
Если нет, то нужен какой-нибудь маленький .CRF файл для тестов на обменнике не требующем регистрации для скачивания (MediaFire.com или Mega.nz).
scripts.crf
#13
Отправлено 21 February 2019 - 16:39
Добавил год выхода игры в название темы, ибо, как оказалось, есть аналогичная игра (с тем же именем), но 2003 года выпуска, с совершенно другим форматом ресурсов.











