WhatsNew /
uGameDB
1.1 (2012-05-18)
Breaking changes from uGameDB 1.0:
- Completely reworked JSON serialization - uGameDB now comes with a JSON parser library named Jboy that is used to read and write JSON data. This greatly improves the power and flexibility of JSON serialization, and reduces the number of dependencies of uGameDB. Read the Serialization Methods and the Jboy manual page for details.
Note: if you have persistent data that was created with uGameDB 1.0 or earlier, you need to verify that this data can be read by uGameDB 1.1. The JSON serialization has changed in two ways:- There is no automatic serialization on user-defined classes. Instead, you now need to register a codec for each of your types that describes how to convert it to and from JSON text.
- Dangling values are no longer accepted, which means that a JSON text like '3.14' is not accepted anymore. The correct way is to wrap it in an object or array, like '{"pi"=3.14}' or '[3.14]'. In uGameDB 1.1, if you write a plain value to the database, it will automatically be wrapped in a JSON object.
- Removed BitStream codecs for uLink types - uGameDB 1.1 does not have automatic support for serializing uLink types to BitStream, such as NetworkViewID, HostData, PrivateKey, PublicKey, etc. The reason for this is to remove the dependency on uLink.dll. If you need to serialize these types, you can easily write and register BitStream codecs for them in you own code. Read about serialization in the uGameDB manual.
Improvements:
- Greatly reduced package size - The uGameDB Unity package has gone from ~750 kB down to ~250 kB. This was done by replacing the previous JSON parsing library with a new light-weight library that is custom-tailored for this purpose. The dependency on uLink.dll has also been removed so it is no longer included in the uGameDB package.
- No optional parameters - All optional parameters in uGameDB have been replaced with method overloads, in order to be consistent between C# and UnityScript.
- API cleanup - In order to keep the uGameDB API clean and maintainable, a lot of method overloads have been marked obsolete. Check your compiler output for warnings and follow the suggestions there to update your code.
Fixes:
- Fixed a bug that caused uGameDB to fail cross-compilation when included in an iOS build.
- Fixed a number of bugs related to use of reflection.

