Хорошо, я начал играть в Zork, старую видеоигру, и обнаружил, что она сохраняет свои игры в формате файла Quetzal. Я посмотрел на od
выход для него, но не может иметь никакого смысла из этого. Когда я Google «сохраняю файл quetzal», я сталкиваюсь с Википедией, которая дает мне следующее:
Чтение магических чисел файлов часто отображается как:
«Данные игры IFF, Z-machine или Glulx, сохраненные в игре (Quetzal)»
Я уверен, что это в формате Кецаль, потому что file
возвращает: IFF data, Z-machine or Glulx saved game file (Quetzal)
, который совпадает с магическим числом (совпадение?).
Итак, что означает магическое число, и как я могу написать программу на C для его декодирования, предположительно в формате, подобном IFZF?
«Магическое число» относится к уникальным характеристикам формата файла, которые позволяют такие команды, как file
идентифицировать их. Например, файлы сохранения Quetzal начинаются с четырехбайтовой последовательности IFZS
который определяет их тип документа формата файла обмена (IFF). Вы можете проверить это с помощью текстового редактора или шестнадцатеричного дампа.
Вы можете найти Стандартный формат сохраненных файлов Z-machine онлайн. Вы можете найти различные компиляторы, инструменты и спецификации на Интерактивный Архив Фантастики для игр Z-machine, который может помочь вам с исходным кодом для формата. Особо обратите внимание на переводчиков, которые включают средства для сохранения и восстановления игр.
Других решений пока нет …