Saving Flowcharts, Variables, and Blocks, Oh My!


Ever had an NPC pop in mid-convo because you forgot to save a variable? Yeah, me too. That’s why we gave Flowcharts and Blocks way more save/load control. Let's start with...


New Flowchart Settings

FlagWhat Happens When OffWhat Happens When On
Include in SavesSkips the entire Flowchart in your savesHonors the other flags (Blocks & Variables)
Save BlocksDoesn’t save any BlocksSaves only Blocks with “Include in Saves” checked
Save VariablesIgnores all Flowchart variablesSaves every Flowchart variable
We've also added in an integer field called Load Priority so you can decide the order that Flowcharts get loaded in. Lower number, earlier loading.

Amanita's Comment 01

Amanita's Comment 02

Yeah, what she said.

How Blocks Come Back to Life

When you load, each Block picks up and reruns whatever Command it was on at save time.

 if (!flowchart.IncludeInSaves) return;
 foreach (var block in flowchart.Blocks)
 {
     if (block.IncludeInSaves && savedCommandIndex >= 0 && flowchart.SaveBlocks)
     {
         block.ExecuteCommandAtIndex(savedCommandIndex);
     }
 }
 

Amanita's Comment 03

Amanita's Comment 04

Amanita's Comment 05

Don't worry, we accounted for that! We'll be adding options to Call Commands to avoid such issues:

  • Reexecute
    • Just reruns the call like normal.
  • Stop
    • Skip the rerun, stop the calling Block, and let the target do its own thing.
  • Wait for Completion
    • Hold up the caller until the target finishes. No double-ups

Pick Stop if you don’t want a dialogue block to fire twice, or Wait for Completion if you want perfect sequencing.


What's Next?

In the next update, we’ll explore version-tolerant serialization and a save-preview UI. Which one are you itching to try? Shout out in the comments or file an Issue on GitHub! If there's a feature you want to request, feel free to comment down below or (again) file an Issue on the repo.

Comments

Log in with itch.io to leave a comment.

(+1)

this is really exciting and will be a huge time save! thank you so much for developing it :)

do you know if this system can use save profiles?

(+1)

Glad you're looking forward to it! What do you mean by profiles, though?

(+1)

oh like using the “set save profile” block

(+1)

Ah, I see. We have no plans to support Save Profiles at the moment, since the new sys already has stuff that does SPs' job way better. But, if folks are still using SPs and want a migration option, we're open to exploring it!

(+1)

i don’t think there’s a need! i’m open to just figuring out the new system in my next project – thank you !!