Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

[Harlowe]Saving Error Message

edited September 2016 in Help! with 2.0
So, I was just testing my game out, and this came up:
The game's variables contain a complex data structure; the game can no longer be saved.►

Is there a way to fix this? I could supply a copy of all the code in all of my passages. And I temporarily have some broken links - could that be it?

Comments

  • Deadshot wrote: »
    So, I was just testing my game out, and this came up:
    The game's variables contain a complex data structure; the game can no longer be saved.►
    

    Is there a way to fix this? I could supply a copy of all the code in all of my passages. And I temporarily have some broken links - could that be it?

    I've tried fixing the broken links, taking out my (prompt:) macros, please, I need help. :cold_sweat:
  • You should probably read the documentation for (savegame:):
    (savegame:) currently has a significant limitation: it will fail if the story's variables are ever (set:) to values which aren't strings, numbers, booleans, arrays, datamaps or datasets. If, for instance, you put a changer command in a variable, like (set: $fancytext to (font:"Arnold Bocklin")), (savegame:) would no longer work.
    You've set, at least, one of your story variables to something which Harlowe's save subsystem objects to, which is why it's complaining.
  • You should probably read the documentation for (savegame:):
    (savegame:) currently has a significant limitation: it will fail if the story's variables are ever (set:) to values which aren't strings, numbers, booleans, arrays, datamaps or datasets. If, for instance, you put a changer command in a variable, like (set: $fancytext to (font:"Arnold Bocklin")), (savegame:) would no longer work.
    You've set, at least, one of your story variables to something which Harlowe's save subsystem objects to, which is why it's complaining.

    Thank you so much!
  • edited September 2016
    You should probably read the documentation for (savegame:):
    (savegame:) currently has a significant limitation: it will fail if the story's variables are ever (set:) to values which aren't strings, numbers, booleans, arrays, datamaps or datasets. If, for instance, you put a changer command in a variable, like (set: $fancytext to (font:"Arnold Bocklin")), (savegame:) would no longer work.
    You've set, at least, one of your story variables to something which Harlowe's save subsystem objects to, which is why it's complaining.

    It's still no working. :confounded: I've use a
    <span>
    
    thing; could this be the problem? I read the entire section of the documentation there and I don't think I've done anything wrong. :disappointed:
  • Deadshot wrote: »
    It's still no working.
    Have you assign the return of any of the following macros to a variable?

    (align:); (background:); (css:), (font:); (hook:); (text-colour:), (colour:), (text-rotate:); (text-style:); (transition:)

    eg. (set: $var to (text-style: "shadow"))

    Have you assign a named hook reference to a variable?

    eg. (set: $var to ?hookName)

    Have assign a complex Javascript object like a Date to a variable?

    eg. (set: $var to new Date())

    If the answer to any of the above is Yes then you will not be able to use Harlowe's save macro.

    note: The above list does not everything that can stop you from being able to use the save macro, just the ones I could quickly think of.
  • greyelf wrote: »
    Deadshot wrote: »
    It's still no working.
    Have you assign the return of any of the following macros to a variable?

    (align:); (background:); (css:), (font:); (hook:); (text-colour:), (colour:), (text-rotate:); (text-style:); (transition:)

    eg. (set: $var to (text-style: "shadow"))

    Have you assign a named hook reference to a variable?

    eg. (set: $var to ?hookName)

    Have assign a complex Javascript object like a Date to a variable?

    eg. (set: $var to new Date())

    If the answer to any of the above is Yes then you will not be able to use Harlowe's save macro.

    note: The above list does not everything that can stop you from being able to use the save macro, just the ones I could quickly think of.

    Oh, thanks. I used a lotta hook names and stuff.
  • greyelf wrote: »
    Deadshot wrote: »
    It's still no working.
    Have you assign the return of any of the following macros to a variable?

    (align:); (background:); (css:), (font:); (hook:); (text-colour:), (colour:), (text-rotate:); (text-style:); (transition:)

    eg. (set: $var to (text-style: "shadow"))

    Have you assign a named hook reference to a variable?

    eg. (set: $var to ?hookName)

    Have assign a complex Javascript object like a Date to a variable?

    eg. (set: $var to new Date())

    If the answer to any of the above is Yes then you will not be able to use Harlowe's save macro.

    note: The above list does not everything that can stop you from being able to use the save macro, just the ones I could quickly think of.

    I used all the code you gave me to do a daily randomiser thing from my previous thread, could that be it? If so, is there a way to keep this AND the saving system, or can I not have it?
  • My save system works, but my daily randomiser isn't in it, so I think that was it.
Sign In or Register to comment.