Data Persistence - Save & load your game state while avoiding common mistakes | Unity Tutorial

Published: 28 June 2022
on channel: LlamAcademy
68,330
2.2k

Learn how to save and load data in Unity - avoiding common mistakes and dangerous serialization techniques many other tutorials will tell you to use!

In this video we'll look at using text-based serialization using JSON and optionally encrypt that data. I also discuss some of the pros/cons for using text-based serialization, and what you should use instead if you really want to/need to use a binary serialization technique.

Common suggestions that you should absolutely not use to persist game state data are:
1. Player Prefs - these are not designed for storing game state. Only...Player Preferences such as graphic & audio settings.
2. BinaryFormatter - this class is dangerous and insecure. Use of this class can allow an attacker to take over the system. https://docs.microsoft.com/en-us/dotn...

🔶 ALL THINGS LlamAcademy now available at: https://llamacademy.dev/support including latest tutorials, courses, ways to support, and more! Check it out 🙂
👨‍💻 Get the FULL FREE PROJECT on GitHub: https://github.com/llamacademy/persis...
🏷️Save 25% on the ultimate C# IDE: JetBrains Rider with code LLAMACADEMY: https://www.jetbrains.com/store/?sect...

📚 Resources 📚
🟠 JSON.Net: https://www.newtonsoft.com/json
🟠 Encrypt/Decrypt Data with AES: https://docs.microsoft.com/en-us/dotn...
🟠 Binary Formatter Security: https://docs.microsoft.com/en-us/dotn...
🟠 Unity JSON.Net Package: https://docs.unity3d.com/Packages/com...
🟠 Protobuf (BinaryFormatter alternative): https://github.com/protocolbuffers/pr...
🟠 Protobuf C# Docs: https://developers.google.com/protoco...

Some links may be affiliate links, which at no additional cost to you, gives me a small portion of the purchase.

Chapters:
00:00 What you shouldn't do
01:45 What you should do
03:20 JSON Serialization
04:43 Sample Scene Overview
06:00 Defining IDataService.cs
07:00 Saving Data with JsonDataService.cs
09:33 Saving Data with the DataService in Demo.cs
11:03 Demo Saving Data
11:50 Loading Data with JsonDataService.cs
13:19 Loading Data with the DataService in Demo.cs
14:23 Demo Loading Data
15:36 Encrypting Data in JsonDataService.cs
19:33 Decrypting Data in JsonDataService.cs
22:02 Encryption/Decryption Demo
23:05 Demo Encryption/Decryption Error Handling
23:47 Final Thoughts


On this page of the site you can watch the video online Data Persistence - Save & load your game state while avoiding common mistakes | Unity Tutorial with a duration of hours minute second in good quality, which was uploaded by the user LlamAcademy 28 June 2022, share the link with friends and acquaintances, this video has already been watched 68,330 times on youtube and it was liked by 2.2 thousand viewers. Enjoy your viewing!