Jump to content
Oliver Hope

Storing player data across play sessions

Recommended Posts

Hey

I would be interested in doing games that save your progress over different sessions without having to join the same server, like an FPS that saves what level your on or a base building game that saves your whole base and you can load it on to a plot in a different server.

my questions:

-will this type of player storage be possible?

-any idea when?

-how would it be implemented?(how would you work with it in editor )

It would be awesome if it could just be a feature of the entity storage, or maybe a separate logic, and it just has an on off switch to save the data to the players ID locally or the cloud.

Thanks 

Edited by Oliver Hope
  • Like 1
  • Upvote 1

Share this post


Link to post
Share on other sites

This would be very useful to have. It would also be nice if the sessions were stored in a seperate file and be able to be hot loaded into another server. Maybe store them in a file in the DS called Sessions and then people can make a script to sync them together from multiple different servers.

Share this post


Link to post
Share on other sites

I believe if you start a game session, end it and then continue playing it in a new game session all old information will still be stored.

Things like player items, variables, entity storages etc should be saved too. Thr only issue with this is you have to continuously use the same game file.

Edited by Igor Q.

Share this post


Link to post
Share on other sites
1 hour ago, Igor Q. said:

I believe if you start a game session, end it and then continue playing it in a new game session all old information will still be stored.

Things like player items, variables, entity storages etc should be saved too. Thr only issue with this is you have to continuously use the same game file.

thats interesting! however i am more talking about between different servers

Share this post


Link to post
Share on other sites

Hi, something to achieve this is planned (will not mention when but surely NOT in 0.12)

We want to allow you to store some information at least per player/user for each game(aka scenario) which would be shareable between sessions of the same game. Idea behind it is that you should be able to connect to different server with same game running and to have some progress there.

+ we want to allow you (not just you, us too :) ) to store some information per player but not per scenario but per creator. (for example to be able to have your own internal currency(like Oliver Q coins) shared between several of your different games)

Even design of that feature is in the beginning so do NOT expect it soon. :)

  • Like 1

Share this post


Link to post
Share on other sites
6 hours ago, Houp said:

Hi, something to achieve this is planned (will not mention when but surely NOT in 0.12)

We want to allow you to store some information at least per player/user for each game(aka scenario) which would be shareable between sessions of the same game. Idea behind it is that you should be able to connect to different server with same game running and to have some progress there.

+ we want to allow you (not just you, us too :) ) to store some information per player but not per scenario but per creator. (for example to be able to have your own internal currency(like Oliver Q coins) shared between several of your different games)

Even design of that feature is in the beginning so do NOT expect it soon. :)

Awseome! I LOVE the sound of the per player data!

Share this post


Link to post
Share on other sites
7 hours ago, Houp said:

Hi, something to achieve this is planned (will not mention when but surely NOT in 0.12)

We want to allow you to store some information at least per player/user for each game(aka scenario) which would be shareable between sessions of the same game. Idea behind it is that you should be able to connect to different server with same game running and to have some progress there.

 + we want to allow you (not just you, us too :) ) to store some information per player but not per scenario but per creator. (for example to be able to have your own internal currency(like Oliver Q coins) shared between several of your different games)

Even design of that feature is in the beginning so do NOT expect it soon. :)

That system sounds pretty cool. It would be nice if the data is stored in plain text so we can parse it. That would allow us to make things like a website that can show a players in game balance.

Share this post


Link to post
Share on other sites

Seems like a feature that could be exploitable, especially if it's stored in plain text.

Share this post


Link to post
Share on other sites
2 minutes ago, Indomitus said:

Seems like a feature that could be exploitable, especially if it's stored in plain text.

yeah it would need to be encrypted well

 

Share this post


Link to post
Share on other sites

We will take your comments at mind when designing the feature. Probably it will not be in a plain text. At least not all possible storable data (we will probably want to be able to store current inventory/equipment of a player with complete state of the items..)

Share this post


Link to post
Share on other sites

It wouldn't need to be encrypted because you wouldn't be storing any sensitive information. You would be storing the users progress along with their bohemia id(which you can already easily get from the DS server for all players currently). So there is nothing to fear of this information being unencrypted. Of course storing it in plain text would be very slow and taxing on reads and writes but maybe have a way for us to read your proprietary file types so we can access the data as server administrators.

Share this post


Link to post
Share on other sites
On 3/13/2019 at 11:29 PM, Shadow72 said:

It wouldn't need to be encrypted because you wouldn't be storing any sensitive information.

If they decide to allow storing inventory data, then it would have to be encrypted in some way or those servers would have trolls with Creator Cubes all over the place.

Share this post


Link to post
Share on other sites
1 minute ago, Indomitus said:

If they decide to allow storing inventory data, then it would have to be encrypted in some way or those servers would have trolls with Creator Cubes all over the place.

It would be impossible for them to do that since it would be stored on the server side. Just like how a player cant open the servers map in the editor and change a few things and rejoin the server with those changes.

Share this post


Link to post
Share on other sites
15 minutes ago, Shadow72 said:

It would be impossible for them to do that since it would be stored on the server side. Just like how a player cant open the servers map in the editor and change a few things and rejoin the server with those changes. 

For it to be portable between servers, something would have to be stored locally on the player's machine.

Share this post


Link to post
Share on other sites
Just now, Indomitus said:

For it to be portable between servers, something would have to be stored locally on the player's machine.

No it wouldn't. The data the server stores would be handled somewhere in the cloud and there will most likely be some sort of key base authentication in order to access the data. I highly doubt they would store anything client side since it is trivial to edit encrypted data.

Share this post


Link to post
Share on other sites
On 3/20/2019 at 10:55 AM, Shadow72 said:

No it wouldn't. The data the server stores would be handled somewhere in the cloud and there will most likely be some sort of key base authentication in order to access the data. I highly doubt they would store anything client side since it is trivial to edit encrypted data.

"somewhere in the cloud" =  on a server.

Doing that would require coordinating multiple servers, possibly across multiple hosts, which could be possible but is what my old boss would call a "$20 solution for a $2 problem."  If we're talking about making the client's data portable across servers, then the data is most likely going to be carried by the client, even if it's only temporarily.

Share this post


Link to post
Share on other sites
5 hours ago, Indomitus said:

"somewhere in the cloud" =  on a server.

Doing that would require coordinating multiple servers, possibly across multiple hosts, which could be possible but is what my old boss would call a "$20 solution for a $2 problem."  If we're talking about making the client's data portable across servers, then the data is most likely going to be carried by the client, even if it's only temporarily.

It wouldn't be nearly as hard as you say for BI to setup external servers to transfer player data between servers. It would be a simple Rest API that requires a key to access the information. It wouldn't be multiple servers talking to each other sharing the data. It would be a single server connected to a database that acts as a front end for all of the stored player data. The big problem with storing it client side would be how easy it would be to edit it, even if it was encrypted. When you join a server you download the world, with that world you can run it on your own server where you have admin commands and give yourself a bunch of items and currency. All you need to do then is copy the encrypted data that was saved for that world and paste it into the file containing your player data for that server. They wouldn't be able to combat that with something like a GUID for each world to use as a encryption randomizer because you are using the same world as the server so they would encrypt the same. Yes it will cost them a bit more money but if you have done any networking you will know that the #1 rule is to never, ever, trust the client.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×