Global ES2Settings
Global ES2Settings
Hi again Joel,
I was wondering if there is a way to set global ES2Settings, so that Easy Save uses those settings by default, and one can call all methods without having to pass an ES2Settings object each time. If it doesn't exist, it would indeed be pretty handy if it could be implemented?
Thanks & cheers,
Daniele
I was wondering if there is a way to set global ES2Settings, so that Easy Save uses those settings by default, and one can call all methods without having to pass an ES2Settings object each time. If it doesn't exist, it would indeed be pretty handy if it could be implemented?
Thanks & cheers,
Daniele
Re: Global ES2Settings
Hi Daniele,
If you go to Assets->Easy Save 2 menu there's the option to "Add Default Settings Object to Scene". This allows you to set the default Data paths, Encryption and Web settings.
However, I'm guessing that you'll be wanting to set the default save location? If so, I can add support for this in the next update for you without much difficulty.
All the best,
Joel
If you go to Assets->Easy Save 2 menu there's the option to "Add Default Settings Object to Scene". This allows you to set the default Data paths, Encryption and Web settings.
However, I'm guessing that you'll be wanting to set the default save location? If so, I can add support for this in the next update for you without much difficulty.
All the best,
Joel
Re: Global ES2Settings
That would be great, and yes, I'm talking about default save location (and also encryption). Being able to do it via code instead than by adding an object to the scene would be the best thing, imho. Personally, I setup Easy Save in my "core brain", so that everything works as expected from whatever scene I start (in case I'm testing in the editor and don't want to startup from the first one), and I suppose a lot of people tend to keep things dynamic like that.
Re: Global ES2Settings
P.S. thought I'd add a possible API example.
What I mean is being able to do this via code:
And then Easy Save would use those settings every time one uses Load/Save/Exists/Delete
What I mean is being able to do this via code:
Code: Select all
ES2.defaultSettings = new ES2Settings {
saveLocation = ES2Settings.SaveLocation.PlayerPrefs,
encrypt = true,
encryptionPassword = "somePassword"
};
Re: Global ES2Settings
Actually you can already do this, though it's not documented, using the static variables in ES2GlobalSettings. For example, to change the default SaveLocation, you could do:
- Joel
ES2GlobalSettings.defaultSaveLocation = ES2Settings.SaveLocation.File;Here's a list of the static variables in ES2GlobalSettings which you can use to change the defaults:
public static ES2Settings.SaveLocation _defaultSaveLocation = ES2Settings.SaveLocation.File; public static string defaultPCDataPath = ""; public static string defaultMacDataPath = ""; public static bool defaultEncrypt = false; public static string defaultEncryptionPassword = "pass"; public static string defaultWebUsername = "ES2"; public static string defaultWebPassword = "pass"; public static string defaultWebFilename = "file.es2";We'll see about adding a documented version of this at some point.
- Joel
Re: Global ES2Settings
This is fantastic, and all I wanted to do. Thanks Joel
StackOverflowException
Hi Joel, and sorry for being such a bother in these days.
I am now encountering a bug, on Unity 4.5 and Easy Save 2's latest Asset Store version.
I whipped out a sample package with a scene and a script that replicate the issue (doesn't contain Easy Save). The error happens as soon as I try to save, even a simple bool, if I'm using encryption. I've just imported Easy Save, created the script, and the build is set for Windows (plain Windows, not Metro nor Phone), so encryption should work.
I am now encountering a bug, on Unity 4.5 and Easy Save 2's latest Asset Store version.
Code: Select all
StackOverflowException: The requested operation caused a stack overflow.
ES2Writer.WriteEncrypted[Boolean] (Boolean param, .ES2Type type)
Re: StackOverflowException
I guess that's why we didn't document ES2GlobalSettings
Easy Save currently works on the assumption that encryption will always be disabled by default. By changing this, the writer responsible for encrypting tries to recursively encrypt itself, leading to a stack overflow.
We can very easily fix this with two short lines of code at our end. I'll get this included in v2.48 which we'll hopefully be submitting for approval on Friday.
If you need it earlier, contact us with your invoice number and purchase date (found in the PDF that Unity sent you when you purchased Easy Save) and I'll get a package made up for you.
Thanks,
Joel
Easy Save currently works on the assumption that encryption will always be disabled by default. By changing this, the writer responsible for encrypting tries to recursively encrypt itself, leading to a stack overflow.
We can very easily fix this with two short lines of code at our end. I'll get this included in v2.48 which we'll hopefully be submitting for approval on Friday.
If you need it earlier, contact us with your invoice number and purchase date (found in the PDF that Unity sent you when you purchased Easy Save) and I'll get a package made up for you.
Thanks,
Joel
Re: Global ES2Settings
I've just merged this with the Global ES2Settings topic as it directly relates to that.
- Joel
- Joel
Re: Global ES2Settings
Oops didn't realize it was because of the global settings. I just contacted you as you said, and thanks again