YoYoGames / GameMaker-Bugs

Public tracking for GameMaker bugs
13 stars 5 forks source link

Documentation: Lists of variables inside various sequence related structs are incomplete #5825

Open KormexGit opened 3 weeks ago

KormexGit commented 3 weeks ago

Description

I wrote this inside a moment for a sequence with a single instance track:

show_debug_message(self.activeTracks[0]);

Looking through it, I found a large number of properties that are NOT listed in the manual. Here's what I got. Each variable listed at https://manual.gamemaker.io/monthly/en/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Track_Struct.htm has a //Present comment, and everything not listed has the //Missing comment

{ 
    colouradd : [ 0,0,0,0 ], //Missing from the manual
    spriteIndex : -1, //Missing
    emitterIndex : -1, //Present in the manual
    soundIndex : -1, //Present
    instanceID : 100001, //Missing
    sequenceID : -1, //Missing
    frameSizeX : -1, //Present
    frameSizeY : -1, //Present
    characterSpacing : -1, //Present
    lineSpacing : -1, //Present
    paragraphSpacing : -1, //Present
    thickness : 0, //Missing
    coreColor : [ 0,0,0,0 ], //Missing 
    coreColour : [ 0,0,0,0 ], //Duplicate
    glowStart : 0, //Missing
    glowEnd : 0, //Missing
    glowColor : [ 0,0,0,0 ], //Missing
    glowColour : [ 0,0,0,0 ], //Duplicate
    outlineDist : 0, //Missing
    outlineColor : [ 0,0,0,0 ], //Missing 
    outlineColour : [ 0,0,0,0 ], //Duplicate
    shadowSoftness : 0, //Missing 
    shadowOffsetX : 0, //Missing 
    shadowOffsetY : 0, //Missing 
    shadowColor : [ 0,0,0,0 ], //Missing 
    shadowColour : [ 0,0,0,0 ], //Duplicate
    effectsEnabled : 0, //Missing 
    glowEnabled : 0, //Missing 
    outlineEnabled : 0, //Missing 
    dropShadowEnabled : 0, //Missing 
    track : { //Present, contents omitted, see below}, 
    parent : -1, //Present
    activeTracks : [  ], //Present
    posx : 0, //Present
    xorigin : 0, //Present
    yorigin : 0, //Present
    gain : 1, //Present
    sequence : -1, //Missing
    posy : 0, //Present
    rotation : 0, //Missing
    scalex : 1, //Present
    scaley : 1, //Present
    pitch : 1, //Present
    falloff : 0, //Missing
    imageindex : 0, //Present
    imagespeed : 1, //Present
    matrix : [ 1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1 ], //Present
    colormultiply : [ 1,1,1,1 ], //Present
    colourmultiply : [ 1,1,1,1 ], //Duplicate
    coloradd : [ 0,0,0,0 ] //Duplicate
}

Next, we have the tracks struct I left out above. The page for that struct is here: https://manual.gamemaker.io/monthly/en/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Track_Struct.htm There were several track structs nested, so I removed duplicates to not make it crazy long.

    track : { 
        traits : 0, //Missing
        enabled : 1, //Missing
        linked : 0, //Missing
        visible : 1, //Missing
        linkedTrack : -1, //Missing
        tracks : [ //Missing
            { 
                //Repeat values omitted for brevity
                keyframes : [//Present, contents omitted]
                subType : 15 //Missing
            },
            { 
                //Repeat values omitted for brevity
                interpolation : 1, //Missing
                type : 3, //Missing
            },
            //A couple more repeated track structs omitted since they were the same values
        ], 
        name : "Object10", //Present
        type : 14, //Present
        subType : 0 //Missing
    }, 

And finally, the keyframe struct, which is just missing one value. Manual page here: https://manual.gamemaker.io/monthly/en/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Keyframe_Struct.htm

                                keyframes :[ 
                    { 
                        channels : [ //Present, contents omitted], 
                        frame : 0, //Present
                        length : 1, //Present
                        stretch : 0, //Present
                        disabled : 0 //Missing
                    } 
                ]

YYZ of project I used to get the above:

Sequence Docs.zip

Manual Link

https://manual.gamemaker.io/monthly/en/GameMaker_Language/GML_Reference/Asset_Management/Sequences/Sequence_Structs/The_Sequence_Instance_Struct.htm