You might have to click the "send data" and "pull data" button a few times over 5 seconds to wake up Scratch's Cloud Variable Server if it's been idle for more than 5-10 minutes. This an advanced tool for Scratchers to save and load player's progress. Please make sure you have read and clearly understand the rules and guidelines set in place by the Scratch team here - https://en.scratch-wiki.info/wiki/Cloud_Data What is CloudSync? It's a tool to help creators easily make games with persistent save data. How does it work? It takes JSON input, encodes it, and ships it off to the server. This data going to the server sits inside data packets; a piece of data that can be read by the server in a way that instructs the server how and where to store it. These packets are signed when sent, and automatically resend to the server after a short period if the client doesn't hear a confirmation back from the server. Data sent in this manner is "POST type" packet. When you want to retrieve data, simply send a "GET type" packet. This will send a request to the server for a key, and receive back the value. You can contain many key:value pairs inside a key, and get back all the key:value pairs when you request the parent key. How do I use it? Hit "See Inside" and copy the CloudSync sprite into your backpack. Go to your game that needs persistent saves, and paste it there. Set up a broadcast that will have all data you need saved compiled into JSON format, and add it to the "sendData" list. Make sure that the data you compile is less than 90 characters long! Anything in the list will automatically get addressed and sent as allowed by Scratch's limitations. To request data back, simply add a key to the "getData" list, and it will automatically pull the data and run through each value where you can set your variables. if you saved: money:10000 you would get that split into 'part1' and 'part2' variables. you'd check if the 'part1' equals "money", and if so, you can set your money variable to the 'part2' variable. For all this to work, you gotta set up the server. you need to have Python installed, and you need to install ScratchCloud (with pip install scratchcloud). Check inside the cloud sprite to find the server code, save it to server.py, and make sure to fill out the necessary info near the top. After that, you can run the server in a console, and try saving/loading data! If the server says cloud variables are missing on a new project it's just because Scratch put the project to sleep. When someone joins the server for the first time, they might need to hit the green flag again after a few seconds to wake up the Scratch Server. This happens because newer projects take longer to handshake if they have been idle.
See it in action! I used an older version of this for Retro Miner - https://scratch.mit.edu/projects/872026434/ and this version for WorldSync - https://scratch.mit.edu/projects/1087495943/