How to use an external database instead of a datastore

Hello everyone! I’ve been browsing the forum and have ran across a few posts about this subject, however, the replies only explain what to use, but do not explain how to use these services.

The game I currently have in development is running on data stores, but to simplify the editing of player data, create backups, and host a player driven marketplace, I feel like external data storage is my best option.
Even if it is not the solution I should go with, I feel like this is an important resource for the developer community :slight_smile:

I was just wondering if anybody with experience using an external data solution could reply with some knowledge, such as how to send and receive the data from Roblox, and also info on the web-side of how to properly receive and process requests to get and save data.
Post1
Post2

Use the HttpService to send and recieve data through web requests.

Format your web requests sent through the HttpService to match the documentation of the service you’re using.

One of Roblox’s biggest benefits is their offering of free game services like server hosting and databases that scale to any size. Unless you need cross server data saving, you would essentially be paying for something you aren’t using then buying another solution. Real time market places could, at least in theory, be done with the DataStoreService and the MemoryStoreService.

The only general answer is web requests through HttpService. Each data storing service has their own API for getting and posting data beyond that. If you’re hosting your own data storing, it becomes more complicated.

If you’re looking for a general solution, play fab has basically everything (e.g. economy API). I’m not sure about the cost and other factors, though it’s run by Azure so it’s probably pretty good as far as being maintained and minimal downtime (again, not free though).

Here is a tutorial on using a pre-made playfab module:

2 Likes

What about using something like x10hosting, like @TwentyTwoPilots recommended, to store user data using json encode?
How would you read and write json data in a webhost for each player?

Example:

GameData.json
-Marketplace{}
—ItemForSale={info_json}
-PlrData{}
—User1={data_json}
—User2={data_json}

Would using a php link be good for reading/updating the player’s data table in the GameData.json>PlrData>[UserDataTable]

(Apologies if anything looks weird I’m posting from my phone at work)

whatever you do just dont save playerdata on an external server or hell will break loose

I don’t think that’s true, look at starscape and ultimate driving…

1 Like

Roblox will get mad at you for the amount of requests being made, also even really good digital ocean droplets wouldn’t be able to hold the requests, I have experience from the guild system in anime clash which used external servers we had 100k+ ccu and the server which had 48 vcpus was at 100% cpu, if we saved player data on the external server aswell, everyones data would have been lost

There are many alternatives,

  • Rongo, (which uses mongoDB), I think the tutorial is quite well explained. (I do use Rongo for my game and it works just fine!)
  • Firebase, never used it but it seems like a possible alternative
2 Likes

Been looking into Rongo more, very helpful thankyou!

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.