BinaryFileIO : Real-time Save/Load

Bytenado

(0)
$72
Publisher Bytenado
File size 634.59kB
Number of files 71
Latest version 1.1.0
Latest release date 2024-08-19 01:36:27
First release date 2024-07-16 06:19:12
Supported Unity versions 2018.4.2 or higher

Reads and writes the public fields and properties of class objects/scripts.


Features

  • Supports most objects and collection types of any size and mix, such as a List<Dictionary<string, Vector3>>[,,,,,].
  • Can use public properties to safely save and load references like sprites, materials, addressables, or other component data.
  • Read and write real-time asynchronously or with coroutines.
  • Convert objects to a byte array and use with JSON, encryption, or network transmission.
  • Optionally convert an object into a Base64 string.

Device Security

  • Uses Type safety to mitigate type confusion attacks.
  • Does not read or write fully qualified assembly names to prevent assembly loading attacks.
  • Only creates objects using their default constructor to avoid deserialization attacks.
  • Explicitly does not read or write known unsafe types to reduce information disclosure and remote code execution attacks.

File Integrity

  • Uses a CRC-32 hash to detect if data is corrupt or changed.
  • Writes as a temporary file first to avoid corruption while saving.
  • Locks resources in a thread-safe way with SemaphoreSlim and ConcurrentDictionary.

Debug Log

  • Messages show read and write data while playing inside Unity Editor.
  • Helpful warnings assist with a bug-free development.
  • Messages and warnings can be disabled and are not compiled with a final build.