Jul 16, 2018
30
117
From Dogeek on Reddit:

Save compatibility

You heard me. Save compatibility is coming! It took me a while to figure out a way to actually achieve this, but this seems foolproof. Due to the new system, 0.19.0 will obviously not be compatible with 0.18.6 saves (sorry, one last restart!) but later versions will be compatible.
How does it use to work?

Saving was really never such a big issue, but loading was. You see, the system that was in place before used a function to restore the machines to their loaded state, and its location arrays, pregancy, all that stuff. The machines were restored with direct attribute accessing. This is bad, because every state machine is very linear, in that it needs to track what state it is now, what trigger does it respond to, and what state it can be in next. All in all, if any of these objects had their reference broken (by a reload for instance), the machines would break. On top of that, if the machine was changed significantly, loading its state from a save would also break, because the "current state" in the save file would not be a possible "current state" in the new machine.
How does it work now?

Instead of reloading the machines and setting all of its attributes directly, like the old system used to do, the new system uses a brand new object that is instanciated only at the start of the game (in a new game). That object is a sentinel, in that it will never change, it will always be the same and never be reset. Now, whenever a trigger is successfully activated on a machine (meaning that the machine advances to the next state), that trigger is added to a list of triggers for that machine, that is stored in that fsm_data object. Whenever the game is loaded, progress is restored by first :

  • Preloading the fsm_data object, to add any new keys in its internal dictionnary (keeps errors out if new data, like the dating system, need to be saved there)
  • Resetting the machines to their initial state, i.e. with their state being in their original delays, with the machines in their start state, etc.
  • Executing every trigger stored in the internal dictionnary for every machine, effectively advancing the machine to the state you saved it in.
  • Deserializing the PregnancyManager() and OutfitManager() objects into the machine
  • Restoring the machine vars as saved in the fsm_data object.

The whole process is timed, and printed out to the console, to help us get some debug info.

On top of that machines, states and triggers are now instanciated at init time. That means that the machines, states, and triggers will be reinstanciated when you start the game, and won't be stored in the save files any longer, reducing the amount of bloat that stacks up in there, it also adds the small benefit that jenny's choices (dominant/submissive) will now apply when viewing her scenes in the cookie jar.

This new system has a bunch of benefits. As I said, it achieves save compatibility, at least to a degree that means that the vast majority of changes we make to the codebase won't break saves anymore. It also allows for smart restoration of the saves. Let's say you progress Roxxy up to her end state, well that is saved as a list of triggers, and if we add some states in the middle of her machines, the loading system will place roxxy right at the beginning of her new content automatically, which also means that you'd have to redo the rest of her story as well (sorry, I'm a coder not Gandalf the White).
 

srksrk 68

Forum Fanatic
Modder
Sep 17, 2018
4,378
5,587
I've been playing another game and have gotten behind. The version I am playing now is 0.18.2. I have the other updates 0.18.5 and 0.18.6. I do not know how to go from 0.18.2 to 0.18.5 without getting an error. Any help will be greatly appreciated. Thanks
I would suggest you make 0.18.2 100% complete, then install 0.18.6 and download the 100% savegame they provide for 0.18.5 (0r 0.18.6, should both work) to do the new content. Worked for me.
 
  • Like
Reactions: KURO_NEKO_SAM

srksrk 68

Forum Fanatic
Modder
Sep 17, 2018
4,378
5,587
From Dogeek on Reddit:

Save compatibility

You heard me. Save compatibility is coming! It took me a while to figure out a way to actually achieve this, but this seems foolproof. Due to the new system, 0.19.0 will obviously not be compatible with 0.18.6 saves (sorry, one last restart!) but later versions will be compatible.
How does it use to work?

Saving was really never such a big issue, but loading was. You see, the system that was in place before used a function to restore the machines to their loaded state, and its location arrays, pregancy, all that stuff. The machines were restored with direct attribute accessing. This is bad, because every state machine is very linear, in that it needs to track what state it is now, what trigger does it respond to, and what state it can be in next. All in all, if any of these objects had their reference broken (by a reload for instance), the machines would break. On top of that, if the machine was changed significantly, loading its state from a save would also break, because the "current state" in the save file would not be a possible "current state" in the new machine.
How does it work now?

Instead of reloading the machines and setting all of its attributes directly, like the old system used to do, the new system uses a brand new object that is instanciated only at the start of the game (in a new game). That object is a sentinel, in that it will never change, it will always be the same and never be reset. Now, whenever a trigger is successfully activated on a machine (meaning that the machine advances to the next state), that trigger is added to a list of triggers for that machine, that is stored in that fsm_data object. Whenever the game is loaded, progress is restored by first :

  • Preloading the fsm_data object, to add any new keys in its internal dictionnary (keeps errors out if new data, like the dating system, need to be saved there)
  • Resetting the machines to their initial state, i.e. with their state being in their original delays, with the machines in their start state, etc.
  • Executing every trigger stored in the internal dictionnary for every machine, effectively advancing the machine to the state you saved it in.
  • Deserializing the PregnancyManager() and OutfitManager() objects into the machine
  • Restoring the machine vars as saved in the fsm_data object.

The whole process is timed, and printed out to the console, to help us get some debug info.

On top of that machines, states and triggers are now instanciated at init time. That means that the machines, states, and triggers will be reinstanciated when you start the game, and won't be stored in the save files any longer, reducing the amount of bloat that stacks up in there, it also adds the small benefit that jenny's choices (dominant/submissive) will now apply when viewing her scenes in the cookie jar.

This new system has a bunch of benefits. As I said, it achieves save compatibility, at least to a degree that means that the vast majority of changes we make to the codebase won't break saves anymore. It also allows for smart restoration of the saves. Let's say you progress Roxxy up to her end state, well that is saved as a list of triggers, and if we add some states in the middle of her machines, the loading system will place roxxy right at the beginning of her new content automatically, which also means that you'd have to redo the rest of her story as well (sorry, I'm a coder not Gandalf the White).
Well, sounds promising on the on side. But I don't see how you can load saves from different play-throughs in your game now, e.g. saves from other users or alternate saves to play different branches (like Mrs. Johnson/Erik) at the same time, without breaking the whole "instanciated at init time" concept. Look at that statement with Jenny being dominant/submissive in the cookie jar. How does that work out when you made her dominant but then load a save where she is submissive?
 
Last edited:
  • Thinking Face
Reactions: KURO_NEKO_SAM

Squark ⚧❤️

Conversation Conqueror
Jun 16, 2017
6,957
7,768
how I make drink for aunt ??
Is it that you keep failing, or the game won't let you do anything?
If it's the former, you can solve that by paying careful attention to what the information you're given.
In the case of the latter, that shouldn't happen. Ever.

What is it Diane wants?
 

Inb4homophobia

New Member
Jun 2, 2018
10
14
Finally decided to check out this game that's garnered so much attention. I figured it must be pretty decent since it's drawn such a crowd. From the little I've played I am pretty impressed. A lot of art already for a game on .18, a lot of varying characters. Really like some milk kink, haven't seen many go there in games. The mini games are okay, really like the rap battles didn't get old doing them. Some of the others are a tad repetitive and boring. The pizza delivery game to earn money is clunky and not fun could use a lot of improvement.

Like most crazy funding for indie games I worry that it will be dragged out and milked. It's hard not to expect a lot from a game garnering so much money. You would hope that the funds go into higher extra hands or help make the product better but I've seen it go the other way quite a few times. Sadly I saw a couple recent complaints on their Patreon from slow updates.

Overall I have high hopes for the game since at the rate it's going at only .18 and the crazy funding hopefully creates one of the best porn games ever.
 
Last edited:
  • Like
Reactions: KURO_NEKO_SAM

ZTex

Engaged Member
Apr 3, 2019
2,894
4,181
Well, sounds promising on the on side. But I don't see how you can load saves from different play-throughs in your game now, e.g. saves from other users or alternate saves to play different branches (like Mrs. Johnson/Erik) at the same time, without breaking the whole "instanciated at init time" concept. Look at that statement with Jenny being dominant/submissive in the cookie jar. How does that work out when you made her dominant but then load a save where she is submissive?
It's not a global item so it should work exactly like the current option if you have multiple saves.

All its doing is storing the world state and flags in a array of sorts that is the first item loaded from that save. Then it sets the world state and relationship values accordingly.

Unless of course i'm misunderstanding that, but that's what i got out of the tech jargon.
 
  • Like
Reactions: unknown78

JKH18

Member
Jan 16, 2018
492
474
Looks like we're in for another great update with plenty of content to play through. And with more pregnancy possibilities than in any update so far to boot, can't wait. :)
 
  • Like
Reactions: KURO_NEKO_SAM

McSlut

Active Member
Aug 12, 2018
864
2,803
i think i liked the teachers update a tiny bit more than the roxxy update. but roxxy was great of course. a lot of it depends on the writing, let's hope dc and crew have a good story planned for eve. that reminds me, it would be so good if eve has a h-scene with one of the teachers. for example ross could try to seduce her like she tried with mia. that'd be awesome. dc should put more random encounters like this into his updates, i like mc fucking the girls as much as anyone but i would appreciate some unexpected shit like that (the teachers update had things like that in it, i think that's why it's my favourite).

idk or let us peak at eve in the school shower, she has to do sports at school like everyone else so why not.
 
  • Like
Reactions: dragonangel

Squark ⚧❤️

Conversation Conqueror
Jun 16, 2017
6,957
7,768
it would be so good if eve has a h-scene with one of the teachers. for example ross could try to seduce her like she tried with mia. that'd be awesome.
Sure would. I quite like Ross's relentless attempts to seduce Mia. That was actually kind of cutely done. I remember thinking "Ooh, this looks interesting..." and I'd still like to see that continue.
 

McSlut

Active Member
Aug 12, 2018
864
2,803
It's fun that you talk about that. in the last stream, we can see Ross and Eve talking with the MC (only the scene, no text).
341558


Sure would. I quite like Ross's relentless attempts to seduce Mia. That was actually kind of cutely done. I remember thinking "Ooh, this looks interesting..." and I'd still like to see that continue.
that was my favourite scene in the teacher update, the part where they eat the weed cookies and you get a lewd scene with ross, mia and judith. good stuff.
 
4.20 star(s) 341 Votes