top of page

Become a GitHub Sponsor

Get access to all assets for $15 when you become a GitHub Sponsor

Cloud Save

Steam Remote Storage

Introduction

Reading over Valve's official documentation on its features is always a wise first step.

Steam Cloud (Steamworks Documentation)

Quote from Valve's documentation ... 

The Steam Cloud provides an easy and transparent remote file storage system for your game. Files specified in the Auto-Cloud configuration or written to disk (created, modified, deleted, etc.) using the Cloud API will automatically be replicated to the Steam servers after the game exits.

If the user changes computers, the files are automatically downloaded to the new computer prior to the game launching. The game can then access the files by reading them through the Cloud API or reading them directly from disk as usual. Avoid machine specific configurations such as video settings.

The Steam Client does the work of ensuring that the files are kept synchronized across all computers the user may be accessing.

Users can globally disable Cloud synchronization in the Steam Settings under Cloud by unchecking "Enable Steam Cloud synchronization for applications which support it."

Remote Storage API

You can use the Remote Storage API to access Steam's remote storage features.

It is important that you check and insure that the user has enabled cloud storage and that the user has sufficient storage space remaining when writing new files to the system.

Is the system enabled?

If the IsEnabled field is false it could be for one of two reasons.

Storage Space

To check the user's storage space

List Files

GetFiles returns a list of all files found on Steam and returns an array of RemoteStorageFile objects. The RemoteStorageFile object can be thought of similar to the .NET FileInfo object and contains data about the file that can be used to perform other actions.

You can optionally return files that have a specific extension such as ".profile"

Read Files

The RemoteStorageFile object returned by the GetFiles methods can be used to read the data of files as a byte[], string or to cast the data to any serializable data type.

 

Assuming a serializable data type MyDataType

Assuming a file RemoteStorageFile named dataFile:

Write Files

You can write a file to the remote storage system using the following methods

Introduction
Remote Storag API
Check Enabled
Check Storae Space
Lit Fles
Read Files
Write Files
bottom of page