
Compare two saving approaches: the player prep system for quick saves and a customizable save file system for reuse across projects. Understand the trade-offs and real-world application.
Identify common issues saving and loading with Unity PlayerPrefs, emphasize exact key spelling and capitalization, and implement an error catcher to verify keys exist before loading.
Unlock levels in a Unity save system by storing level completion keys and updating the level select UI to unlock subsequent stages.
Explore the basics of using player prefs with int, string, and float values to store level names and completion times, and introduce data in strings for a custom save system.
Open and inspect Unity save data using application.persistentDataPath and the editor utility reveal in Finder, and understand the difference between the persistent data path and the application data path.
Learn to robustly handle load errors by checking file existence before loading, warning when data is missing or misnamed, and using serialization with deserialization to ensure reliable saves.
Learn to extend Unity save systems to handle lists, custom data, enums, and substructures by using XML serialization, serializable types, and backward-compatibility checks for evolving data.
Pull and save player stats across scenes using an active save; update it on level exit to carry current health and experience between levels in Unity with C#.
Build a complete save system in Unity by implementing save and load functions, using XML serialization, and preserving dungeon data across scenes and the main menu.
Implement a robust continue system in Unity by saving the current level name and loading that level on resume, ensuring progression to the next dungeon level instead of starting over.
Add a not save scene to the save system to prevent progress from resetting after the final level, ensuring continue loads the last playable scene instead of the main menu.
Create a show continue script for the continue button that hides it when dungeon.save is absent. It uses System.IO.File.Exists(Application.persistentDataPath + '/dungeon.save') to toggle visibility.
Move loading to occur only on continue, so new games use base stats. Destroy the save system instance on returning to the main menu to reset stats.
Create a save system loader and prefab to bring the save system into new scenes, using awake to load it immediately and support level-specific prefabs for testing stats.
Explains building a binary formatter save system in Unity, replacing XML with binary serialization. Also demonstrates creating a serializable vector save type to handle vectors and discusses the system's limitations.
Learn how to create and program your very own saving systems using Unity, an industry-standard game development program used by large gaming studios and indie developers across the world.
In this course you won’t just be learning programming concepts, but tying these concepts to real game development uses. We will cover different examples & methods of saving data in your game, while also providing practical examples of putting these systems into use. You will have access to a course forum where you can discuss the topics covered in the course as well as the next steps to take once the course is complete.
This course has been designed to be easily understandable to everyone, so whether you’re a complete beginner, an artist looking to expand their game development range or a programmer interested in understanding game design, this course will help you gain a greater understanding of development.
At the end of this course you will have developed the ability to understand such game elements as:
Benefits and drawbacks of the Player Prefs saving system
Saving Data with XML Serialization
Saving Data through BinaryFormatter
Building & Implementing Custom Save Data
Managing Save Files
Integrating save systems into different game types
Obscuring Save Data from Players
and more...
The course also includes a complete version of the project to use for your own reference to ensure everything in your game works as it should!
Start learning today and let me help you become a game developer!