Corrected the formatting of the original post.
Overall this is not a good idea, not just for that reason.
Its perfect for clans, and analytics.
Not really. Itâs good for analytics possibly, but there isnât really a good substitute for an actual Database.
Yes it is for cross game data like saving points because itâs not like you are trying to run several game servers and constantly update. ROBLOX doesnât support saving across games, so what else would you do.
Run a proper database like is expected? Itâs not good practice to rely on spreadsheets and a macro hack for storing data.
Itâs great for an admin system. I can easily store bans / logs in the google spreadsheet across any of my games.
You do not understand - Spreadsheets ARE NOT DATABASES
Using them as such for anything except the most basic logging is just asking for trouble.
The real solution is to create your own database.
https://azure.microsoft.com/en-gb/
Azure, AWS, Google Cloud Platform, or any other PaaS / SaaS platform can host them.
Iâll just take a moment to interject. It would be naive to say that Google sheets are not databases when in-fact they are an abstraction of one. The sheets API most certainly queries some kind of database to retrieve or alter the requested information.
Furthermore the API has changed since I originally wrote this, almost 3 years ago, and offers much better ways to manipulate data efficiently.
A group I work with actively uses this to store information about their members and we are yet to run into any problems with this.
However, this is not to say you wouldnât be better using a system designed for this, but if you want a quick and easy solution for a small-scale project then is not that bad.
I agree - for small projects, i.e. basic stats logging (player counts and whatnot) itâs fairly ideal.
On the other hand, when I see large war clans relying on this system (Sleet Clan, for example) itâs getting to the sort of âTrelloâ level of database. Itâs just a practice Iâd rather support regarding people using proper databases when theyâre creating (what should be) fairly robust and advanced systems like warclan auto promotion rather than small scale projects.
An admin system isnât that large scale of a âprojectâ, it simply stores the names of players and their current moderation status.
Since seperate universes do not support cross datastores, the only way to sync ban / moderation data between games universally is with a 3rd party service. Google sheets would handle such data just fine.
I just use datastores. This method seems to work fine too but I just prefer to have it in a datastore. Also donât save stats on a Trello board⌠some people do it but it lags bad and seems not too reliable.
I personally wouldnât use spreadsheets for scalability and security reasons.
It would be good practice to start familiarizing yourself with servers & data management for future projects.
Thanks for taking the time to create the tutorial. This is great, it âhumanizesâ your data really easily. The ease of backups is great too. Moving further, you could setup a whole analytics hub with all of your games data setup on different sheets. This may be a nice alternative vs the analytics provided by Roblox right now if a person does not have GA setup yet.
Innovation Inc and Innovation Security use a modified version of this so we can edit records in Google Spreadsheets. As you said, there is a availability concern, but it only needs somewhere between 50 and 500 requests a day for Innovation Inc and maybe 200 to 1000 for Innovation Security.
How would I be able to use this as like a leaderboard. So basically if I have a button in game, the spreadsheets automatically updates to the amount of times youâve pressed the button, in total.
As mentioned before on this thread, Google sheets has a relatively low limit of requests to their API. Using sheets for real-time data sync sounds like a bad idea. Custom web severs are pretty much the only reliable way to go at the moment.
You would never be able to do this with using Google sheets its just not scalable but data stores / ordered data stores are.
I did find a way to save multiple pieces of data to one key, using JSON, which is very useful.