The reason why we should get uploadservice some day, is that it is required to make games that you can play for long time, like almost any good multiplayer game you can find. Currently you can mostly play small games that last less than a hour. There are games with a save system, but it only works with a bit of data to save, and its slow.
How would it work?
Make each player have their own space to ave their data in.
Why this would not work?
What if you visit a game that tries to save tons of spam data in your data file? There cant be a infinite amount of space there. Games would also need ability to delete or edit data, so they would propably delete your saved data.
This is why this wouldnt work.
Thats why, the data must be saved on the game creators acco*unt.
-There can be a full access to edit, delete and create data, if the game creator has allowed the game to use it in the configuration (so people in SB wont mess it up)
-No data will be lost without the game owner meant it, because he is the only one that can make his games to create, edit or delete this data.
-The data is saved on a fake workspace. This allows saving anything it. Models, models with values in it, and about everything.
-In order to edit the fake workspace, you need a object in your game. Lets say its name was "Saves*pace" and it is child of "game"
in order to put something in it, you can say:
__________
Instance.new("Model").Parent= game.Savespace
__________
its that simple. But it wont work well (viruses)
-Then, what if someone makes a virus, that tries to access the savespace and delete anything it jst because you do*wnlo*aded a free model?
This can be solved by making the savespace accessible with a pa*ss*wo*rd This p*as*sw*o*r*d can be set in your a*cco*unt data.
_________________
local Savespace=GetSavespace("sec*retw*ord")
Instance.new("Model").Parent=Savespace
Savespace=nil
---wont remove the sav*espace, just erases the reference of it. to ccess the savespace again, you just need to repeat the getsa*ves*pace function.---
_________________
That makes it impossible to enter the sa*vesp*ace with a wrong p*as*sw*or*d. AND if a wrong p*as*sw*o*rd is entered, the function wont return nil, but it will shut down the server instead. This will prevent pa*s*s*wo*rd guessing viruses from getting in.
Yes, shutting down a server just because of a wrong p*as*s*wo*rd is a big thing, but it will NEVER fail, unless its a virus trying to guess it. Also, if using the savespace has not been allowed in the place configuration, it will just return nil. (for SB's)
-You can access the sav*espac*e from studio just like a normal place, but you cant get it from your own files unless you want to replace it with a normal file (wich should be possible, but it would just copy the workspace)
It does not have a world. its just a explorer tree. It also doesnt have any of the services. its like a empty game object with just workspace in it.
-You can have a lot data in it. as there isnt any physics or rendering running, it wont form lag at all for a place that uses it. It should still have some kind of limit for objects. (lets say, 50 000, wich is about the max you can stick on a normal place without crashing it or sumting...)
-The sa*vesp*ace is same with all your places. But, with pe*ople with bc, there should be lets say, 3 sa*vesp*aces, that can be accessed using a id , like
local space=GetSavespace("1","se*cretwo*rd")
there should be unique p*as*s*wo*rd*s for each savespace to increase security against viruses
Thats a lot of text. That kind of thing couldnt be aboused by viruses, nor players at your SB. It would also provide very good way to save data (unlike the suggestions to save a string...) as it can save models too, like a building you built in a game. Also, its easier to find what stuff belongs to who with just a simple string value.
USES:
-Saving for tycoons, RPGs and many other slow games. Lets say a model with models named by their owners, containing values of the owners different stuff like ca*sh and what buildings he owns
-Saving buildings or cars youve made. In a advanced building game you could save the bricks youve placed in a model named by you in the savespace and it could be loaded when you enter.
-The advanced scripting AI stuff. Saving memory of talking AI's, and stuff like that.
-Saving your data if you happen to disconnect
-Some smaller uses like saving your cars wheel color in a driving game...
Thanks :3
*checks the 53 words breaking roblox rules* |