Data Persistence - Save & load your game state while avoiding common mistakes | Unity Tutorial @LlamAcademy
Data Persistence - Save & load your game state while avoiding common mistakes | Unity Tutorial  @LlamAcademy
Uploaded June 2022 | Updated September 2026, 8 hours ago
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. docs.microsoft.com/en-us/dotnet/standard/serialization/binaryformatter-security-guide

πŸ”Ά 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: github.com/llamacademy/persistent-data
🏷️Save 25% on the ultimate C# IDE: JetBrains Rider with code LLAMACADEMY: jetbrains.com/store/?section=personal&billing=yearly

πŸ“š Resources πŸ“š
🟠 JSON.Net: newtonsoft.com/json
🟠 Encrypt/Decrypt Data with AES: docs.microsoft.com/en-us/dotnet/api/system.security.cryptography.aes?view=net-6.0
🟠 Binary Formatter Security: docs.microsoft.com/en-us/dotnet/standard/serialization/binaryformatter-security-guide
🟠 Unity JSON.Net Package: docs.unity3d.com/Packages/com.unity.nuget.newtonsoft-json@3.0/manual/index.html
🟠 Protobuf (BinaryFormatter alternative): github.com/protocolbuffers/protobuf
🟠 Protobuf C# Docs: developers.google.com/protocol-buffers/docs/csharptutorial

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
Data Persistence - Save & load your game state while avoiding common mistakes | Unity TutorialReusable Components with UI Toolkit | Editor Scripting Unity TutorialTop 5 Optimization Tips from Building a Mobile Game #ShortsGhost Placement / Hologram Shader | Unity ShaderGraph TutorialWaves in ShaderGraph by Vertex Displacement | Unity TutorialStop Using Resources.Load()... Do THIS InsteadProcedural Recoil and Bullet Spread | Gun Series 2 | Unity TutorialHow You Can Find the OffMeshLinks a NavMeshAgent Will Take | AI Series 43 | Unity Tutorial #ShortsAssembly Definitions, Explained | Unity TutorialCreate Cross-Platform IAP Store Page with Unity IAP in 2023 | Unity Tutorial #shortsAnimate Your NavMeshAgents with Root Motion | AI Series Part 42 | Unity Tutorial #ShortsNamespaces in C# by Unity Example | Beginner Unity Tutorial
LlamAcademy |

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

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER