Перейти к содержимому


Внимание!

Это форум по извлечению ресурсов из игр: музыки, звуков, текстур, 3D-моделей...
Перед поиском ответов на форуме, рекомендуется ознакомиться с основным сайтом EXTRACTOR.ru!
[ Прочтите внимательно - правила создания тем и ответа в них ]
Все вопросы по запуску игр задавайте в другом месте: Установка и запуск игр.


Фотография

No Man's Land [.RDA]

no mans land rda format rda

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 3

#1 Zooma

Zooma

    Рядовой

  • Пользователи
  • 2 сообщений

Отправлено 01 December 2014 - 15:33

Эта rts хранит почти все ресурсы в псевдоархивах\архивах. 
Попробовал универсальный распаковщик Dragon Unpacker и magic extractor, ничего не вышло. Пробовал распаковщик rda explorer для anno, результат тот же.
Нашёл на сайте статьи.
Нужна литература или алгоритм, как это для обработки формата.
Секция фат находится в самом начале, а вот как искать смещение я так и не понял.
Spoiler


#2 -=CHE@TER=-

-=CHE@TER=-

    Полковник

  • Администраторы
  • 971 сообщений
  • Пол:Мужчина

Отправлено 01 December 2014 - 20:39

Походит на это: Anno 1701 RDA.
Там только первое поле, похоже, не 26 + 230, а просто 256 символов.

#3 Zooma

Zooma

    Рядовой

  • Пользователи
  • 2 сообщений

Отправлено 02 December 2014 - 07:33

Нашёл сорцы rda explorer, попробую разобраться.

http://sourceforge.n...de/HEAD/tarball

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



#4 -=CHE@TER=-

-=CHE@TER=-

    Полковник

  • Администраторы
  • 971 сообщений
  • Пол:Мужчина

Отправлено 02 December 2014 - 20:42

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

quickbms.exe -d unnmlrda.bms "NML2.RDA" .

Вместо "NML2.RDA" подставляем любой архив из игры (не забываем про двойные кавычки, если имя файла содержит пробелы).
Код скрипта "unnmlrda.bms":
# No Man's Land .RDA unpacker
# (c) CTPAX-X Team 2014
# http://www.ctpax-x.org/

ImpType Standard

IDString "Resource File V1.0"
GoTo 256

Get FileCount Long

For I = 1 To FileCount
  GetDString FileName 256
  Get FileOffs Long
  Get PackSize Long
  Get FileSize Long
  Get FileFlag Long

  If FileFlag == 1
    ComType zlib
    CLog FileName FileOffs PackSize FileSize
    ComType copy
  Else
    Log FileName FileOffs PackSize
  EndIf

Next I