1. Hey! Guest! The XXX GMC Jam will take place between August 24th, 12:00 UTC (Friday noon) and August 27th, 12:00 UTC (Monday noon). Why not join in! Click here to find out more!
    Dismiss Notice

Steam GMS 1.4 Steam workshop UGC upload failing

Discussion in 'Legacy GameMaker Community Tech Support' started by Nemeton, Jan 1, 2018.

  1. Nemeton

    Nemeton Member

    Joined:
    Mar 15, 2017
    Posts:
    10
    Hello everyone.


    I’m having trouble with the user generated content features (UGC) used for uploading content to the Steam Workshop for a game published on Steam. The UGC upload results in a blank workshop item without any picture, title, description or content.


    The async_load result indicates that Steam returned error code 8, which according to the Steam documentation means “A parameter is incorrect.”

    Here is the creation and upload code:
    Code:
    //Create UGC item
    new_item = steam_ugc_create_item(global.app_id, ugc_filetype_community);
    
    
    
    //From the Steam async event
    //process steam workshop creation events
            case "ugc_create_item":
            
                //return from workshop item creation
                if(new_item == async_load[? "id"])
                {
                    if(async_load[? "result"] == ugc_result_success)
                    {
                    global.Publish_ID = string(async_load[? "published_file_id"]);
                    //show_message(global.Publish_ID)
    
                    upload_workshop_content();
                    }
                }
            break; 
    Code:
    //upload_workshop_content
    var updateHandle = steam_ugc_start_item_update(global.app_id,global.Publish_ID);
    ret_title = steam_ugc_set_item_title(updateHandle,string(title));
    ret_description = steam_ugc_set_item_description(updateHandle,string(description));
    ret_vis = steam_ugc_set_item_visibility(updateHandle, ugc_visibility_public);
    ret_tagArray = steam_ugc_set_item_tags(updateHandle,tagArray);
    ret_picture = steam_ugc_set_item_preview(updateHandle,working_directory+"\mods\"+picture);
    ret_directory = steam_ugc_set_item_content(updateHandle,working_directory+"\mods\"+directory);
    upload_id = steam_ugc_submit_item_update(updateHandle,string(change_notes));
    
    
    
    //From the Steam async event
    //process steam workshop upload result
            case "ugc_update_item":
            
                //return from workshop item upload
                if(upload_id == async_load[? "id"])
                {
                    if(async_load[? "result"] == ugc_result_success)
                    {
                    show_message('upload complete')
                    }
                    else
                    {
                    show_message(async_load[? "result"])
                    }
                }
            break; 

    I have confirmed that each of the variables, title, description, change notes etc. contains the expected content, and I have tried testing with fixed strings.


    Each of the steam_ugc_set_item_title return true, indicating that the parameters successfully registered with the API. The picture and mod folder to be uploaded are located in the same location as game saves, which work, so I don’t think it’s a file read permission issue.


    Also, the debugger shows correct file paths for the picture and mod folder and returns SetItemPreview result=1 and SetItemContent result=1 when the code is run. Indicating that both parameters were correctly set.


    Does anyone have experience with this issue or any idea what the incorrect parameter could be, or an example of working workshop upload code that I could compare?
     
  2. BabyDukaCPH

    BabyDukaCPH Member

    Joined:
    Feb 8, 2017
    Posts:
    10
    Hi Nemeton

    I'm having the exact same issue. Did you find a solution to this problem?
     

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice