If you don't already have a reference to the Quest Journal component, use QuestMachine.GetQuestJournal().
Example:
Code: Select all
string s = QuestMachine.GetQuestJournal().RecordData(); // Your own save system can now save string 's'.
Code: Select all
QuestMachine.GetQuestJournal().ApplyData(s);
If you want to save all Quest Machine data, including not only the Quest Journal but also Quest Givers, Spawners, etc., you can use the full save system to record and apply the data. However, instead of calling SaveSystem.SaveToSlot(#) to save to permanent storage, use these methods to record the save data to a string and restore it from a string:
Code: Select all
string s = SaveSystem.Serialize(SaveSystem.RecordSavedGameData());
Code: Select all
SaveSystem.ApplySavedGameData(SaveSystem.Deserialize<SavedGameData>(s));