Hello. I was wondering where I should start with making a login system. All I really want is to have people be able to put in a username and password and then the game would open a save file from the server, and the game could then write the save file to the server. Could something like this be done using Google drive or dropbox, by having the game load a file and write to there? (I have no idea I’m just throwing out ideas). I would try to do something like this using cookies (since I want it to be a web game) but I’m afraid people would just cheat so I’d rather have it saved on a server they can’t access.
Maybe my goal could be achieved if the player was able to login with Google, Facebook, or Steam?
What this file would be used for exactly? Keep in mind keeping files on user disk is very insecure, user simply can edit file to do something bad.
Also Steam has online storage
The file would contain save data and user information such as username and password, and could be accessed by signing in with the correct username and password or something else like Steam, if that’s simpler to set up.
The way Steam works does not require you to do any authentication, you simply communicate thru Steam library and if user is logged it will use that user account.
UE4 has got system called OnlineSubsystem, which is common interface for all online services, including consoles (which support you licance for) and Mobiles + Facebook and Amazon. But i think only Steam on PC supports cloud storage. Some OnlineSubsystem features are supported in Blueprints but i don’t think online storage is one of them you would need to use C++. Here docs:
Big problem with Steam is you can only use it (in distribution) if you get your own AppID for your game from Valve and you can only do that by getting greenlighted… or pay them… a lot
Alternativly you could use your own solution with HTTP
Where would one start with HTTP?
Sorry for late reponce,
I wrote how to use it here:
HTTP APIs are C++ only, but there 3rd party plugin called VaRest which let you use HTTP+ in blueprints