Expand description
A library for reading and writing Unreal Engine save files (commonly referred to as GVAS).
It has been tested on an extensive set of object structures and can fully read and write Deep Rock Galactic save files (and likely a lot more).
There is a small binary utility to quickly convert saves to and from a plain text JSON format which can be used for manual save editing.
§Example
use std::fs::File;
use uesave::{Property, Save};
let save = Save::read(&mut File::open("drg-save-test.sav")?)?;
match save.root.properties["NumberOfGamesPlayed"] {
Property::Int(value) => {
assert_eq!(2173, value);
}
_ => {}
}
Structs§
- Box
- Box2D
- Color
- Custom
Format Data - Delegate
- Double
- FFormat
Argument Data - FGuid
- FKey
Handle Map - FNumber
Formatting Options - FPer
Platform Float - FRich
Curve Key - FSkeletal
Mesh SamplingLOD Built Data - FWeighted
Random Sampler - Field
Path - Float
- Gameplay
Tag - Gameplay
TagContainer - Header
- IntPoint
- IntVector
- Linear
Color - MapEntry
- Multicast
Delegate - Multicast
Inline Delegate - Multicast
Sparse Delegate - Package
Version - Parse
Error - Properties
- Property
Key - Property
Schemas - Storage for property schemas (tags) separated from property data. Maps property paths to their type metadata.
- Property
TagPartial - Quat
- Root
- Root struct inside a save file which holds both the Unreal Engine class name and list of properties
- Rotator
- Save
- Save
Game Archive Type - Archive type for save games, which use string-based object references
- Save
Reader - Scope
- Represents the current position in the property hierarchy as a stack of names. Used for looking up type hints in the Types map.
- Soft
Class Path - Text
- Types
- Used to disambiguate types within a [
Property::Set] or [Property::Map] during parsing. - Unique
NetId Repl - Unique
NetId Repl Inner - Vector
- Vector4
- Vector2D
Enums§
- Byte
- Just a plain byte, or an enum in which case the variant will be a String
- Byte
Array - Vectorized
Byte - Error
- FFormat
Argument Data Value - FFormat
Argument Value - Property
- Properties consist of a value and are present in
RootandStructValue::StructProperty schemas (tags) are stored separately inPropertySchemas - Property
TagData Partial - Property
Type - Soft
Object Path - Struct
Type - Struct
Value - Text
Variant - Value
Vec - Vectorized properties to avoid storing the variant with each value
Traits§
- Archive
Reader - Archive
Type - Defines the type system for an archive format.
- Archive
Writer - Version
Info