YYP_Format - hpgDesigns/hpgdesigns-dev.io GitHub Wiki

YYP is the JSON based project format used in Game Maker Studio 2.

Resources

Resources are now addressed by the IDE using UUIDs, here in the example you can see two UUIDs, one named "Key" and one name "id". "Key" is used by other resources to reference it, unlike in the GMX format where resources were addressed by path.

modelName is the format for that particular parse level, which indicates to the parser how it should be parsed.

resourcePath indicates where the main file describing the resource is located, each of these resources are in directories containing raw resources (in this case the actual sound file, for an object they would be .gml files etc).

        {
            "Key": "84e46786-5e94-4dd0-8c33-36799300f650",
            "Value": {
                "id": "d388a9ac-2655-4464-a3a6-12633943800e",
                "modelName": "GMResourceInfo",
                "mvc": "1.0",
                "configDeltaFiles": [

                ],
                "configDeltas": [

                ],
                "resourceCreationConfigs": [
                    "default"
                ],
                "resourcePath": "sounds\\sound_0\\sound_0.yy",
                "resourceType": "GMSound"
            }
        }

Tree Structure

The basic tree structure is as such:

{
    "id": "2c2bd55d-a134-4eed-a222-fa7428f18a98",
    "modelName": "GMProject",
    "mvc": "1.0",
    "IsDnDProject": false,
    "configs": [

    ],
    "option_ecma": false,
    "parentProject": {
    },
    "resources": [
    ],
    "room_order": [
    ],
    "script_order": [
    ],
    "tutorial": ""
}