HTTPS SSH

Декомпилятор для GameMaker:Studio

Данный проект предназначен только для извлечения и анализа кода. Распаковщики остальных ресурсов давно существуют, google it. Это прототип и пока не полностью в рабочем состоянии.

Вот краткий список вещей, которые не работают:

  • Старые версии байт-кода
  • with
  • switch
  • repeat X {}.
  • Аксессоры: [| ], [? ], [@ ], [# ]
  • Пред- и постинкремент в тех случаях, когда используются в качестве выражения. ( i++; - OK, a = i++; - не ОК ).
  • Любые другие конструкции, байт-код которых содержит инструкцию DUP

Порядок запуска

  • Открыть и собрать проект в Code::Blocks.
  • Взять исполняемый файл приложения, созданного в GM:S. Извлечь из него data.win (например с помощью 7-zip)
  • Запустить декомпилятор, указав путь к data.win и существующей выходной директории через параметры командной строки
  • Читать сообщение о runtime_error в консоли (или готовый код в папке, если по какой-то причине программа выполнилась без ошибок)

Параметры командной строки

  • -f <file> - путь к data.win.
  • -o <dir> - папка с результатом.