You get a crash on “IsAsset()” function?
Yes, indeed. however i cant actually say for sure what i was doing at the crash moment, sorry
I am sending to Epic an update with some patches around that.
If you still get a crash after Epic push the update, please let me know.
Hi Bruno, ive been trying to save actors in a streaming (sub) level, is this possible? or can actors only be saved within the persistent level?
There are “Save/Load Level” functions in the plugin.
Also there’s a “Save Actor Hierarchy” function.
The Load Level function will not stream the level in, though. You have to make sure the target Level is already loaded into the main persistent world.
Okay thanks!
Another thing, i’d like to save a actor that holds a static mesh component i add at runtime. how do i save the reference to the mesh? i tried to add a (StaticMesh) variable with savegame flag inside the actor and restore it ‘OnFinishRespawn’ , but that aint work?
Regards
I intentionally block static mesh saving (old users were causing crash with them). To avoid vertex data going into a save file.
To save it, you can save a SoftReference to the mesh, but that won’t be of much use honestly.
What u mean with ‘but that won’t be of much use honestly.’ ??
it seems i cant load back the softReference to the actor mesh? any idea?
Any other workarounds?
You add them at runtime, every time you add one the object identifier is going to be a different one.
So every time the plugin is looking for the Component, the object ID is different from the IDs saved in the file… Then the plugin skips loading it because it think the object doesn’t exist anymore.
You could use the auto respawn filter to make the plugin auto respawn the missing object referenced, but that doesn’t work with Components, it won’t register the auto respawned component that way, would work fine with UObjects tho.
Version compatible with Unreal 4.22 submitted for review.
[USER=“434”]BrUnO XaVIeR[/USER]
There is a plugin called Realtime Database (Firebase) and I am wondering if you know of anyone who used that with Savior 2 to create Cloud Saves system (I assume it would grab save files created by Savior 2 and upload/retrieve them into/from cloud db) ?
I have no idea if anyone is doing that, first time I hear about that plugin.
hey Bruno,have u ever seen this problem?
"D:\Documents\Unreal Projects\BS\Plugins\Savior\Source\Savior\Private\Savior.cpp(36): fatal error C1083: can not open include file: “Runtime/Engine/Classes/AI/Navigation/NavigationData.h”: No such file or directory
I’ve no idea why this happen, appreciate it if u can help.
Hello. I’m currently trying to setup my game to work in a way like some rpgs (for instance skyrim) work.
I have a persistent level that will be loaded from start to end. Some basic actors reside here and the player will also spawn here.
From this level the player is able to load/unload various sublevels via level-streaming by activating portals.
The system works, but I’m having trouble to make savior work with it as well.
The approach I am currently using is like this:
1.Player activates a portal
2.[SAVIOR]SaveLevel “CurrentLevel”
3.LoadStreamingLevel “NextLevel”
4.[SAVIOR]LoadLevel “NextLevel”
5.Move player pawn to teleport location
6.UnloadStreamingLevel “CurrentLevel”
Each sublevel uses it’s own save-slot (is this the right way or can this be combined in one slot?)
I’m getting problems between point 3 and 4.
The levels are always completely reset. The saving of the levels seems to work. Applying the changes from the loaded save-slot the the streamed-in level seems to fail.
I am only using the non-async-nodes.
Can this system that I have in mind work with savior?
I only supported Savior1 from Unreal 4.10 up to Unreal 4.18
What kind of changes, what variables are you trying to save and how/wjere are they setup in gameplay code?
I finally found the culprit for my issue. It was a rather stupid mistake on my part, as the portals in my world didn’t properly pass SaviorSlotToLoad to the levelchange function. I fixed that and now the system is working as hoped.
The only problem, although not that tragic, now is that I will get a separate save file for each level. Can these be merged somehow? Saving a level to a slot that already contains another level will overwrite that info, right?
Yes, saving a slot will always overwrite everything unless you keep the same slot instance in memory all the time and you manually call write/read slot functions instead of using save/load world, etc. But then you will have to put a lot of time into manually recording each actor and component data into that slot object you have always loaded, that would be a lot of work.
Good to know. I will resort to 1 slot per level then.
Thanks for your help!
Hey there!
So after some very hard work I have managed to get my project up to Unreal 4.19.
Your wonderful save system was a bit of a godsend to be honest. I was dreading having to backtrack and save masses of variables , structs etc.
I have a few q’s if you have a moment - some things that are probably obvious and im missing them!
First Question - When installing the plugin on 4.19 i only get the ‘slot’ blueprint to select from the symantec menu - is this intended? I dont seem to have the
‘saviour actor’ and ‘savior template’ - i only have the savior 2 slot
Its seems to be working but I was a little confused that maybe mine was not working correctly - is that expected on 4.19 version of the plugin?
Second Question - Im just using ‘save world’ and ‘load world’ ignoring the state and mode - what am i missing there? Is that smart? Should i be using more of those nodes to get a more complete load? It seemed to me that the load world got the most things back in place.
Last Question (and probably the one that is most important to the project!) - I have a spaceship - it has attached static meshes. These are stuck on to the ship by the player. It simply attaches the mesh to the parent actor. Now I cant figure out how to get Savior to save this ship and include the meshes. I managed to attach actors to the ship and load and save those perfectly but for the actual basic meshes - I think I must be missing something.
I set the scope on the save slot to be like the attached image.
I followed the procedural setup and applied that to the ship - and to the parent of the attached actors … but for meshes - I was wondering how I may get those spawned back in on reload. Feels like im missing something obvious here!
Top job on this plugin - man it runs fast now - i thought v1 was great but this one is really slick.
Many Many Thanks!
Stu