Project Format

This page contains details on the project format used by GameMaker.

Format Basics

The YYP Project File

At the root is the main project file, with a *.yyp extension. It describes the resources in the project and other meta data specific to it.

The .resource_order File

Next to it is another file with the same name, but a *.resource_order extension instead. This file stores the order of groups and assets in The Asset Browser used when the filter is set to Custom Order.

TIP When using version control, you can e.g. add this file to .gitignore so each user of the project can have their own custom ordering in The Asset Browser.

YY Files

These are resource files; they store information on individual assets in a GameMaker project. They describe the data for the resource and any other files belonging to the resource (e.g. scripts, shaders, images and audio files). These data are stored in a JSON-like format.

YYZ Files

This type of file stores a compressed project export, created via the Export Project > YYZ option in The File Menu. Depending on the version of GameMaker, the compression method used may vary.

Local Asset Packages

These are created and imported from (part of) a project's contents using Create Local Package and Import Local Package respectively in The Tools Menu.

The following is an overview of the file formats used by different GameMaker versions: