Hi there! You are currently browsing as a guest. Why not create an account? Then you get less ads, can thank creators, post feedback, keep a list of your favourites, and more!
Quick Reply
Search this Thread
Test Subject
Original Poster
#1 Old 6th Sep 2020 at 5:41 PM
Default Generations free vacation
I was searching around if that generations bug with sims disappearing etc. after free vacation was ever fixed. I wasn't able to find any information about possible fix, but I found thread warning about the glitchyness dated as late as 2018.

I am quite surprised if such a big problem was never fixed and I was wondering, if someone who has been around longer than me knows the history with it. A (seemingly?) simple solution that came quickly in my mind was to send parents to some rabbit hole for the time of the vacation and freeze their motives. It would need also some checking that opportunity wasn't played out if parent was going to age up during the vacation and giving some days off from work. To me all that sounds doable. But if it had a simple solution like that, why wouldn't someone had fixed it already?
Advertisement
Mad Poster
#2 Old 7th Sep 2020 at 1:17 PM
I had the idea of using a community lot that was set up for them to be able to stay over for a few days and just sending them over and even having them take a toddler along or their baby if they had no older kids able to babysit.I did get one in Deery Meadows when the Jankowskys went to vist the festival and spent two nights staying over at the city hall lot which is also the town's main library and was set up for overnight stays.
Virtual gardener
staff: administrator
#3 Old 7th Sep 2020 at 6:23 PM
I've had this actually a week ago with my own gameplay save. Parents had 10 kids (They just kept going, I blame the 10% risky woohoo :p). 9 of those were babies/toddlers, and the only one was a teen. So when the game said that one of the parents had 'deceased' (which I think was the point where the game was like "yup don't need those 2 anymore, lets yeet them out of the save") sad teenager was left with 10 kids to raise.

Although I fixed this by reloading the save, I know not everyone has that kind of luxury or luck even. 

Now, looking at the code, there should always be a fall-back debug interaction called "DEBUG_BringParentsBackFromFreeVacation". This is also how it should be displayed for nraas, which should be found if you press on a sim > "nraas" > "DebugEnabler" 

Now *personally* I think, looking at it (and i'm going to initiate nerd talk here :p), the Sims are getting saved in a List item. Now if that List item in some way or another has 'bad data', or even null references, then the code doesn't seem to know what to do with the function anymore, or what to return. So this really seemed like a missed opportunity for a 'try/catch' statement. Although I guess there are a few theories, but just not enough information as to what the sim had in their inventory when it happened or whether it was 1 or 2 parents going off. 
Test Subject
Original Poster
#4 Old 7th Sep 2020 at 7:56 PM
So at least one could send sims into a rabbit hole for longer time period.

Haha, I kind of enjoy the glitches of these games. The end results are often hilarious. Yesterday our sim got stuck in a buffet table eating loop and she ate herself fat in moments.
Unfortunately, I need to find some sort of solution for the vacation problem as I play the same save with my daughter *GASP* and I am not always around to stop dangerous actions. I'll probably find a way to disable it, for starters... but I would really love to play that scenario and I know that she would enjoy it too. I am just not willing to take the potential hidden (or not so hidden) borkedness of our game save.

I am not familiar with the code base, so I understand maybe half of what you are saying. And a need to go somehow through sim's inventories at that point... hmmm... why? It would probably help if I could see the method myself. If you have an easy access to it, would you mind copy pasting the method here, if it's not very long?

I have been fighting against an itch to take a peek what's really happening under the hood... it's just that trying to get working environment with unfamiliar language and IDE using years old tutorials does sound kind of awful. It sounds like searching for really old library (.net?) versions and getting some weird compatibility errors.
Mad Poster
#5 Old 8th Sep 2020 at 2:26 AM
Quote: Originally posted by Lyralei
I've had this actually a week ago with my own gameplay save. Parents had 10 kids (They just kept going, I blame the 10% risky woohoo :p). 9 of those were babies/toddlers, and the only one was a teen. So when the game said that one of the parents had 'deceased' (which I think was the point where the game was like "yup don't need those 2 anymore, lets yeet them out of the save") sad teenager was left with 10 kids to raise.

Although I fixed this by reloading the save, I know not everyone has that kind of luxury or luck even. 

Now, looking at the code, there should always be a fall-back debug interaction called "DEBUG_BringParentsBackFromFreeVacation". This is also how it should be displayed for nraas, which should be found if you press on a sim > "nraas" > "DebugEnabler" 

Now *personally* I think, looking at it (and i'm going to initiate nerd talk here :p), the Sims are getting saved in a List item. Now if that List item in some way or another has 'bad data', or even null references, then the code doesn't seem to know what to do with the function anymore, or what to return. So this really seemed like a missed opportunity for a 'try/catch' statement. Although I guess there are a few theories, but just not enough information as to what the sim had in their inventory when it happened or whether it was 1 or 2 parents going off. 


I would love a catch-all debug interaction called 'Recall Sim', which could save sims from not returning from WA or GEN vacations. Not always useful, but useful to have in cases where the problem does show up.

If there isn't a debugging option to bring the original sim back, I could see it as a mini-Porter, where a copy of a sim is made with as much information as possible (career, relationships, etc.) beforehand, and then stored in the Family Bin for the duration of the trip. This could either be automatic, or a precautionary step initiated by players.

Sort of like a back-up clone of your sim- no one can tell the difference between the two goldfish, we promise!
Mad Poster
#6 Old 8th Sep 2020 at 4:26 AM
I just use a Mod to disable the free vacation opportunity and would replace it with taking them to a local community lot capable of accomodating sims for at least a few days as a replacement free vacation which acts like a replacement for the Generations free vacation except that you still control the sims at both ends.I had that in Deery Meadows with the Jankowskys once to vist the festival because they lived too far to just make it a day's outing and they've also had to stay overnight anytime they visit city hall which is on a library zoned community lot and it's a rabbot hole rug located in the basement.
@Lyralei -I just placed a Mod to disable the Generations Free Vacations popup in my game and just used the option of sending them out to a local community lot to spend a few days away from home while still controlling them as a form of free vacation and it's actually safe to do since they'll always return home unless one died by accident while away and you'd stll at least have their remains if that ever did happen.Mine happened in Deery Meadows and they stayed over at the lot with the city hall rabbit hole which is also the town's main library for a few days while visithing the festival.
Virtual gardener
staff: administrator
#7 Old 8th Sep 2020 at 11:15 AM
Quote: Originally posted by aino
So at least one could send sims into a rabbit hole for longer time period.

Haha, I kind of enjoy the glitches of these games. The end results are often hilarious. Yesterday our sim got stuck in a buffet table eating loop and she ate herself fat in moments.
Unfortunately, I need to find some sort of solution for the vacation problem as I play the same save with my daughter *GASP* and I am not always around to stop dangerous actions. I'll probably find a way to disable it, for starters... but I would really love to play that scenario and I know that she would enjoy it too. I am just not willing to take the potential hidden (or not so hidden) borkedness of our game save.

I am not familiar with the code base, so I understand maybe half of what you are saying. And a need to go somehow through sim's inventories at that point... hmmm... why? It would probably help if I could see the method myself. If you have an easy access to it, would you mind copy pasting the method here, if it's not very long?

I have been fighting against an itch to take a peek what's really happening under the hood... it's just that trying to get working environment with unfamiliar language and IDE using years old tutorials does sound kind of awful. It sounds like searching for really old library (.net?) versions and getting some weird compatibility errors.
Quote:
If there isn't a debugging option to bring the original sim back, I could see it as a mini-Porter, where a copy of a sim is made with as much information as possible (career, relationships, etc.) beforehand, and then stored in the Family Bin for the duration of the trip. This could either be automatic, or a precautionary step initiated by players.
So, a Sim (think of it as a box here) contains a lot of stuff. Not just family trees, friends they have, careers, traits, skills, buffs etc. But also a ginormous amount of other variables. Heck, the 'base' of the sim script is 15025 lines... which is A LOT. So just to give an example, whenever EA 'packs up a sim' for going on holiday, it gets the following:
  • The name of the sim
  • Relationships. (including family and friends)
  • Thumbnails of the sim
  • Thumbnails of ALL the stuff in their inventory
  • Which CASParts the sim has
  • Occult data
  • Sim's reputation
  • Whether it's a Player created sim or NPC (This really only counted for the basegame)
  • Traits, favourites, zodiac, voice styles
  • Skills
  • Walking styles
  • Visual effects they have (think, ghosts with sparks. That is a visual effect)
  • Some date and time things that needs to be saved for cooldowns in interactions
  • Memories linked for that sim
  • Sim description (Which is a whole different class that shares even more data about the sim. Whether they had their first kiss, or woohoo, what their hair colour is, AlienDNA, etc.)
  • Boats they own
  • Vehicles they own (Yes both are saved differently somehow)
  • Last interaction they had
  • Their vision cone (which is basically what sims can see and therefore interact with)
  • Career locations, Same for all occupation lots they've gone to
  • ... etc. A lot of stuff as you can see.
Now, the reason for the inventory, basically this is the code:



Now, a second theory I have as to why the game fails to get back the vacation people (Whether that's WA or GEN) is because Sims can actually get corrupted, data-wise. I mean with the amount of stuff the game needs to save and get back, you can probably see how that may happen. So, what happens when a sim with corrupted data goes on holiday and comes back again, the game is then finally picking up on all the 'null' values (meaning that there is no valid data, or literally nothing). And sometimes that can be as easy as having a glitched/bugged item in a sim's inventory.

Because here is the thing, the sim is actually being rebuilt once they go on holidays. You might at that point see them right underneath the world, T-posing. So, when they go to the holiday place, the mesh gets destroyed, we just save the package of data. When they come back, we put that package back into a sim that looks like the original one. So, really what EA should probably have done, was checking if all the data the sim has *before* storing the data, is actually valid. And maybe even fix that or put those back to default values. or delete that one Inventory item that is causing sims to disappear into the void.
Test Subject
Original Poster
#8 Old 8th Sep 2020 at 9:07 PM
@Lyralei, thank you for your long, long answer.

Well, that is not the prettiest thing I have seen. Based on that code, it seems to me that they set only one parents status to away (base.Parent.SetState(new ParentsAreAway(base.Parent)), when it's the time to call parents back, all of them are fetched using the info about household inhabitants, which is kind of interesting. Teen parties (etc?) use probably that away status as condition. No idea, where they clean the status up, though. I see what you mean about broken data breaking the whole thing and there's probably more possible problem points in the function calls.

Unfortunately, this doesn't sound like very easy to fix. If there are no working repair-functions, how on earth are you going to check the validity of all that stuff you mentioned. And even if you think you got it, how are you going to test that it works. I think that the way to look at it (which suits better my time usage and skill level) would be to find some sort of workaround using safer code. I should probably take a look at what Nraas traveler does.
Back to top