MTS has all free content, all the time. Find out how YOU can help to keep it running. Tell me how...

simler90's Gameplay Systems Core Mod

by simler90 Posted 6th Sep 2021 at 12:36 PM - Updated 1st Dec 2021 at 6:31 PM by simler90
216 Thanks  Thanks     78 Favourited
UPDATE 27: There is an issue in the game whenever the game generates a pregnancy. EA uses their household creation code in order to get the parents into a committed relationship, but the code doesn't really suit the Story Progression action. In an unmodded game, the game can get the parents married even if they are in different households. This should never be allowed, because then if Story Progression moves the sims into the same household, the game will not be able to change the last names of any existing offspring to the new family name. In addition, if a regular pregnancy is created, the game is normally very likely to make the sims marry, but the code doesn't work properly. Now, if the parents are members of the same household, the game will be very likely to make them marry, and if they are in different households, it will be very likely to make them get engaged. Don't forget that Story Progression can then go ahead and move the sims together, and then the sims may get married on their own and so on.

UPDATE 26:
- Sims were still able to sometimes laugh at a particular sim for outfit inappropriateness over and over again on random lots. This update should fix this.
- In an unmodded game, Story Progression can make teens get engaged or married, which should not be possible. This is now fixed. In addition, Story Progression is unable to break sims up as a result of an EA oversight, this is now also fixed.
Method: StoryProgression.ChangeRelationship::Execute
- When Story Progression attempts to perform the Move In With Partner action, the game allows sims who have teen or younger offspring in their household to leave their children behind. In addition, it allows teens to move in with their partner and it also allows sims who are currently protected by being a part of an active opportunity chain to move in with their partner. Now, the game properly checks to see if the sim has any children in the same household and prevents the sim from moving in with their partner in such a case. Teens are now only allowed to move in with their partner if they don't have any blood-related sims in their current household. Opportunity-protected sims cannot move in with their partner any more.
Method: StoryProgression.MoveInWithPartner::MoveInWithPartner
StoryProgression.MoveInWithPartner::NotLivingWithPartner
- When Story Progression performs the Split Household action, the game allows the picked sim to leave their teen or younger offspring behind, and if the leaving sim happens to have a partner who stays in the original household, the game attempts to break sims up, but doesn't do it properly. This update makes it so that the game now checks to see if the leaving sim has any teen or younger offspring and if so, attempts to move the offspring into the newly created, splitting household. I made it so that the game checks to see if the offspring in question has their other parent in the original household, and if so, rolls a 50% chance to be moved into the new household with the picked parent. If the original household doesn't contain the other parent, the offspring is moved into the newly created household. If that happens, the game changes the offspring's last name to that of the picked parent, if it isn't the same already. Now, the game also properly breaks sims up if they end up in different households, as EA originally intended. Finally, EA added a feature with the Pets expansion where the leaving sim is able to take their favourite pets along with them. Normally, the new household would be guaranteed to have space for the pets, but now that sims are smart enough to take their children with them, the game should check to see if the new household can support the number of pets being moved in. So, now the game will also check to see if the new household has enough room for each pet being moved in.
Method: StoryProgression.SplitHousehold::Execute

UPDATE 25:
- In an unmodded game, the game can give an alien baby a voice type that is unavailable to babies, causing the sim to become mute until they age up to either child or teen depending on the voice type that is given. This update fixes this.
- I found out that the game doesn't randomize the voice pitch of newly generated pets, causing all pets to sound the same. This is also fixed.
Method: GeneticsPet::MakePet (public and private)
Genetics::MakeAlien

UPDATE 24: This update makes it so that if an inactive household adopts one of the remaining baby animals at the end of a Neighborhood Pet Adoption event, the game will set the pet's last name to that of a random member of the adopting household. Plumbots are skipped.

UPDATE 23: This update makes it so that if an inactive household adopts one of the remaining baby animals at the end of a Neighborhood Pet Adoption event, the game will remove the protection flags that it initially applies to the baby animal. This is necessary, otherwise EA's Story Progression will consider both the household and the pet as protected even if there are no other members of that household who are protected, and won't be able to perform certain actions on them. If the household in question already has members who are protected, then Story Progression will still properly consider the household and the relevant sims as protected anyway.

UPDATE 22: This update adds a new feature to Neighborhood Pet Adoption which makes it so that if there are any unadopted pets remaining at the end of the adoption event, each unadopted pet will roll a chance to be adopted by a random, inactive household.
Tuning: I have set the chance to 50 by default, but you can change this percentage value to whatever you want by modifying the kNeighborUnadoptedPetChanceToBeAdopted value. Set to 0 to disable this feature.

UPDATE 21: This is just a small text fix for the description of the SortInteractionListForSim within the mod.

UPDATE 20: This update adds a new tunable feature to the mod that prevents the game from sorting the pie-menu interaction list when the player clicks on a sim, completely getting rid of pie-menu lag. Thanks to LazyDuchess for notifying me.
Method: Sim::GetAllInteractionsForActor
Tuning: Setting SortInteractionListForSim to False, which is the default setting in the mod, prevents the game from sorting the pie-menu interaction list, getting rid of pie-menu lag. The order in which the game will show pie-menu interactions in this case will be different from the order you may be used to. Set to True to revert to EA original behaviour with pie-menu lag.

UPDATE 19: This update fixes further issues with Neighborhood Pet Adoption. In an unmodded game, Neighborhood Pet Adoption can make a horse give birth to multiple foals, which should never be allowed. Regular horse pregnancy already prevents this, so this is fixed. In addition, if the game succeeds in finding a father pet, this update now makes it so that cats and dogs can give birth to same-egg descendants depending on EA's chance rolls, and when a large and small dog produce a litter, some of the descendants may be of their father's species, and some may be of their mother's species. The code is the same as EA's regular pregnancy code, this update simply adds these necessary features to Neighborhood Pet Adoption.

UPDATE 18:
- This update fixes a large number of outstanding issues with Neighborhood Pet Adoption. In an unmodded game, whenever the game emigrates, merges or moves out a household, or whenever the last non-pet member of a household is removed from the household for any reason, the game is unable to end the neighborhood pet adoption if it exists in that household, which causes the event to get stuck forever. This is now fixed. In addition, this update now makes the game actually find an eligible father pet for the mom-to-be. The game will only create a neighborhood pet adoption without a father pet if it can't find an eligible father pet at all. I made it so that the game will always pick the mom-to-be's partner if it has one, and if not, it will find an eligible housed pet in your world. The game has a higher chance of picking a father pet from the same household as the mom pet, or a father pet that the mom pet already knows, otherwise the game will pick any eligible, housed pet in your world. If the game succeeds in finding a father pet, then the game will make the two pets partners. If the mom-to-be doesn't have a partner, but the father pet does, then the chance for that candidate father to be picked is heavily reduced.
Method: StoryProgression.EmigrateHousehold::Execute
StoryProgression.MergeHouseholds::Execute
StoryProgression.MoveOutHousehold::Execute
- I came across some serious issues with EA's Story Progression. In an unmodded game, EA's Story Progression is able to kill human sims of any age, including babies and toddlers. However, babies and toddlers can't die in the Sims 3. In addition, if you enable the Pets option under Story Progression, the game is able to create and add pets to households, but also kill pets. The issue is that the game is allowed to kill pets aged baby or adult, which should never be allowed, because pets can only die from old age in the Sims 3. Finally, there is a Story Progression action called Move in with Partner, which causes a sim to move into the household of their partner if they have one. The game properly checks to see if the leaving sim's household has any human sims aged children or below, and if so, requires that at least a teen or older sim gets left behind in order to allow the sim to leave the household. However, the game should also check to see if the household has any pets, in addition to checking human sims children or younger. It looks like EA forgot to add this important check with the Pets expansion. These are all fixed now.
Method: StoryProgression.KillSim::CanKillSim
StoryProgression.RemovePet::CanRemovePet
StoryProgression.MoveInWithPartner::NotLivingWithPartner
StoryProgression.MoveInWithPartner::CanRemoveSimFromHousehold

UPDATE 17:
- In an unmodded game, when the game adds a new pet to an existing household, or creates a new household with a pet, the game doesn't give a proper last name to the pet, and simply sets the pet's last name to the name of their species. This update fixes this, and makes the game set the pet's last name to that of a random member of the pet's household.
Method: StoryProgression::AddPet
StoryProgression::AddHorse
StoryProgression::CreateHousehold
- There is an issue in the game where if Sim A and B go to prom together, the game still is able to trigger the First Kiss and Make Commitment events between the sims even if Sim B has a different partner. EA added a partner check to Sim A to prevent these events, but forgot to add the same checks to Sim B. This is now fixed.
Method: PromSituation::HasNoDateOrDateIsNotPartner
- In an unmodded game, when the game generates a pregnancy, it sets the parents' relationship to steady/engaged/married based on a chance roll. If the game makes the sims marry, and if the game creates a proper pregnancy without skipping it, then the game always sets the father's last name to the mother's last name. This update fixes this and now the game has a 50% chance of choosing either the mother's or the father's last name.
- Previous updates fixed an issue with EA's Story Progression not being able to create a pregnancy in the game. However, it seems that it is very rare for the game to consider creating a pregnancy, which mostly depends on population density and so on. This update adds a new feature to EA's Story Progression which makes the game roll a chance to create a pregnancy once a day. I have made it so that this particular feature is not enabled in the University world. Don't forget that if the game creates a pregnancy in a vacation world, the game actually skips the pregnancy and creates a child offspring and adds the sim to their parents' household immediately. In addition, you should know that both this feature and EA's pregnancy feature work in such a way that if one or both of the parents aren't currently instantiated for whatever reason, or if the female sim doesn't have a house, the game then also skips the pregnancy, and creates a baby sim and immediately puts the sim in the household that was picked by the game initially. This feature only picks households which already have a house, but EA's Story Progression can pick a homeless household and put the baby there. There is nothing wrong with that, but you will not be able to easily tell that the game has generated an offspring in such a case.
Method: StoryProgressionService::DoOneDayOfActions
Tuning: I have set the chance to 10 by default, but you can tune this percentage chance by changing the kPossiblyGeneratePregnancy value to whatever you want. Set to 0 to disable this feature.

UPDATE 16: This update fixes further oversights with EA's Story Progression. I found out that when the game attempts to generate an offspring, it has the potential to sometimes pick a potential parent who may not be valid. This sometimes causes the game to pick teen or younger sims as a potential parent when generating offspring for any dying vacation locals while traveling to a destination world during the loading screen, or picking elder females as a potential parent while already in the world. These are fixed. In addition, I found out that when EA's Story Progression generates an offspring, the game unfortunately doesn't genealogically link the sim to their parents if the game is creating an offspring who is young adult or older. This especially affects vacation destinations, because it is possible for the player to visit a particular world after a long time of playing in the homeworld with aging enabled, which will cause many sims in that world to die from old age, which in turn will cause the game to generate offspring for these dying sims when the player travels to that destination. These issues are all fixed now.
Method: StoryProgression.AddSim::Execute
StoryProgression.GenerateOffspring::Execute

UPDATE 15: EA also forgot to add a SimBot check to their Story Progression Generate Offspring feature which is run when the player travels to a destination world. This update adds this necessary check. I also came across a serious issue which causes the game to age destination sims (China, Egypt, France, University) while the player is in the Future World. It looks like EA forgot to add a Future World check to this feature with Into the Future. While you are in the Future World, only sims in the Future World should age. In addition, I found out that if the player has University Life installed without World Adventures, the game can't age any destination sims (University in this case). This update fixes these issues.
Method: AgingManager::DayPassedCallback
StoryProgression.GenerateOffspring::GenerateOffspring
StoryProgression.GenerateOffspring::FindPartner

UPDATE 14: I found out that EA made a mistake in a certain patch which now prevents EA's story progression from generating offspring for inactive sims. This means that your world will sooner or later stagnate. In addition, I found out that when the game attempts to generate an offspring, the game can pick SimBots as a potential parent, which should never be allowed. EA added a check for Plumbots from Into the Future, but not SimBots from Ambitions. These are all fixed.
Method: StoryProgression.AddSim::CanParticipateInPregnancy
StoryProgression.AddSim::FindPartner

UPDATE 13: I came across another issue which causes the game to accidentally increase the skilling rate of teen vampires whenever the game removes the Sleepy buff from them. This is now fixed, and I believe this mod now fixes all vampire-related fast-skilling issues. Existing teen vampires who are affected by this glitch won't be fixed.
Method: BuffSleepy::OnRemoval

UPDATE 12: I found out that when the game generates a random sim, the game doesn't randomize the sim's muscle definition and breast size. This update fixes this.

UPDATE 11: I found out that in an unmodded game, when you are in a vacation destination, all inactive households will slowly go bankrupt as you keep playing, because they can't make any money. So, this mod does not modify the Mailbox::CreateRegularBillForHousehold method any more, but instead modifies the Autonomy::OnceADayCallback method and simulates the budgets of inactive households in every world, not just in the homeworld. In addition, I realized that EA forgot to add a null check to the preferred vehicle code, so this update fixes that, too.

UPDATE 10: This update fixes an EA mistake which sometimes causes sims to be unable to choose one of their preferred vehicles when they consider routing. In addition, it also fixes an EA oversight that causes sims to consider using a generated-for-free bicycle or scooter when they consider using a vehicle while they have sims following them. This is an issue you will come across in vacation and university worlds, where a sim routes to the road and gets on their bicycle and waits for others, but when the other followers arrive, they can't get on the bicycle/scooter, because those vehicles do not allow multiple passengers. These are all fixed.
Method: Sim::GetOwnedAndUsableVehicle
Vehicles.GoHereWithSituation::ShouldCarBeUsed

UPDATE 9: In an unmodded game, whenever an active sim receives a memory on an active lot, the game takes a screenshot and assigns it to the memory. This causes the save to slowly become bloated, as even irrelevant or regularly given memories are given screenshots. In addition, most of the screenshots do not really portray or describe the memory properly anyway. This update adds a new feature that allows the player to prevent the game from automatically taking and assigning screenshots to memories. This feature is disabled by default. You can enable it by changing the MemoryAutomaticScreenshotsAllowed value to False.
Method: LifeEventManager::GetScreenshot

UPDATE 8: This update fixes an important oversight by EA. Even though the issue is important, it was difficult for the individual player to see what was wrong in the game. There is a feature in the game where each CAS part can have a IsRevealing flag assigned to it. This flag is used by the game in two situations. Whenever a sim who is in their sleepwear considers going from one room to another during non-sleeping hours, and if the sim is wearing at least one CAS part which is revealing, then the game makes the sim switch out of their sleepwear into their everyday clothes as long as there is one sim in their household who is not their partner. This prevents sims from walking around in their revealing underwear during daytime. In addition, if the sim is currently wearing inappropriate clothing (such as wearing swimwear on a non-beach lot without a pool, or everyday in a formal party and so on), when other sims consider reacting to the sim's inappropriate clothing, if the sim is wearing revealing clothes and if the other sim has gender preference for the sim, then the other sim reacts by cheering or pining. There is a serious issue here. EA forgot to add proper romance-capability checks, and only added gender preference checks to this feature. This causes teens to cheer/pine for older sims if the older sim is wearing revealing clothing. Worse yet, it causes teen and older sims to cheer/pine for children who are wearing revealing clothing. This issue is now fixed, and the game will only allow sims to cheer/pine if they are truly romance-capable with the other sim. Finally, I have added an extra feature to the game which makes it so that when Sim A considers initiating an autonomous romantic interaction towards Sim B, the game increases Sim A's likelihood to initiate such an interaction if Sim B is wearing revealing clothing. This feature is disabled by default, you should read the Tuning section below to see how to change it. There is one more thing you need to know about the IsRevealing flag. EA added this feature to the game, but did a very poor job properly assigning this flag to relevant CAS parts. The only EA outfits I have come across which have this flag are in base game, and I believe one outfit is in Island Paradise. The problem is that there are many other outfits in base game, EPs and store content that are supposed to be revealing, but EA didn't add the necessary flag to those outfits. It looks like it is a half-finished feature that they left in the game. It has to be fixed, though. So, how do you fix it? Well, every player will need to go through their entire CAS content (base game + EPs + store + CC), and set the IsRevealing flag on tops, bottoms and full-body outfits which are for children and older. There is no need to set this flag for toddlers or babies, but it should be set for children's clothes, so that they know to switch out of revealing sleepwear during non-sleeping hours. It's up to you what you consider as revealing.
Method: Sim::ConsiderReactingtoClothing
Tuning: Set the kRevealingOutfitRomanticSocialMultiplier value to any float number above 1 to enable this feature and make Sim A more likely to initiate autonomous romantic socials towards Sim B if Sim B is wearing a revealing outfit. For example, setting it to 1.05 makes Sim A 5% more likely to initiate such an interaction, or setting it to 1.15 makes Sim A 15% more likely. It's up to you which value you choose, but I would recommend a value between 1.05 and 1.3. You should probably only enable this feature if you have gone through your entire CAS content and set the relevant CAS parts as revealing.

UPDATE 7: This update fixes a few lingering issues with parties. When a player-started party ends as a great party in an unmodded game, the game has a chance to guarantee that an NPC party will be held the next day, and will show the player that it was their party that made the NPC throw the party. However, the new party results from UL are not checked, meaning that amazing, killer or raging parties can't trigger this event. This is fixed. There is another issue with Campaign Fundraisers in that if such a party ends as an amazing, killer or raging party, the game shows the normal party-end notification, and not the great party-end notification it should show. This is also fixed.
Method: HouseParty::OnStartedPartyFinishes
CampaignFundraiser::ShowPartyEndTNS

UPDATE 6: This update fixes issues with parties and wishes. There are wishes such as Throw a Great Party in the game, but if you have University Life installed, the game does not satisfy those wishes if the party score happens to be above great. Before UL, there were three party levels: bad, neutral and great. UL added three more: amazing, killer and raging. These new party score levels are not considered as "great" by the game, so related wishes are not fulfilled by the game. In addition, EA made a mistake which makes it so that your regular parties can't result in a bad party score unless you host the party in the university world. Finally, if the host has the Legendary Host reward, the game always sets the party result to great, even if the party ends as amazing, killer or raging, which prevents the host from being given better rewards from those better party results. All of these issues are now fixed.
Method: HouseParty::GetPartyOutcome
HouseParty::GetPartyOutcomeForSim
HouseParty::get_IsGreatParty
NpcParty::get_IsGreatParty

UPDATE 5:
- When the game generates an NPC party in an unmodded game, the game can set the dress code to swimwear even if the host's house doesn't have a pool. This causes sims to negatively react to each other throughout the party by booing and so on. This update adds a check to see if the host has a pool, and if not sets the dress code to everyday.
- The game has a feature where sims react to other sims' outfit appropriateness depending on a large number of checks. One of these checks is to see if the sim's current lot has a pool, and if not and if the sim is in their swimwear, other sims can negatively react to them. However, the game considers fountains as pools, which is a problem. So, this mod makes it so that the game now properly checks swimming pool tiles and not fountain tiles.
- There is another issue in the game which sometimes causes sims to constantly negatively react to a certain sim by booing or laughing at them. This update should fix this issue.
Method: NpcParty::StartNpcParty
Sim::ConsiderStartingClothingReactionBroadcaster

UPDATE 4: This update fixes the butler NPC. They used to be fine until EA modified the babysitting code in a patch, which in turn broke the butler. In an unmodded game, the butler's cooking is very erratic. You will see that they will keep leaving cooking bowls all over the kitchen, interrupting themselves while cooking. If you hire a butler for a household, then switch to another household, and then visit the butler's household a few days later, their kitchen will be full of cooking bowls. In addition, the butler cannot cook for sims who are older than child in an unmodded game. All of these issues are fixed now. You may need to dismiss and rehire all the butlers who are already hired in your game.
Method: ButlerCook::BeginCooking
Babysitting::Init

UPDATE 3: This update fixes further issues with Neighborhood Pet Adoption, and also corrects some of the tuning numbers in the Tuning file.
- In an unmodded game, whenever the game creates a Neighborhood Pet Adoption event, the game doesn't link the baby animals to their mother genealogically, which I dislike. Moreover, the game deletes the remaining baby animals at the end of the event, but unfortunately doesn't delete their relationships which causes them to appear greyed-out in the relationship panels of sims who had met them. This causes the relationship panel to become bloated and lag. This update fixes these issues. Now, the game links the baby animals to their mother, their litter mates, and even to their previously-adopted brothers and sisters. Those baby animals which are unadopted at the end of the event will be properly deleted now and won't occupy any space on sims' relationship panels.
- There were a few issues with the tuning numbers in the Tuning file. For example, if you want to change the kNeighborPetAdoptionPercentChance value, just change the number from 25 to whatever you want, don't set it to say 25f or 10f.

UPDATE 2: This update fixes certain issues with social interactions:
- When Sim A successfully performs the "Kiss and Make Up" Friendly social towards Sim B, if the sims are in a committed relationship, the game removes their committed relationship types and reverts them to Romance (red heart) relationship, which is a mistake by EA. This update fixes that, and now the game will only set the Romance relationship type if the sims are not in a committed relationship already.
- I found out that if Sim A has neither the Inappropriate nor the Insane trait, the game only allows Sim A to autonomously kiss Sim B if they are in a committed relationship with each other. It doesn't matter if they are single or have the Romance relationship type, they can't kiss each other whatsoever. This prevents sims from becoming romantic through regular gameplay. This mod now allows Sim A to autonomously initiate all Kiss interactions towards Sim B, as long as Sim A is not in a committed relationship with Sim C. I have also added this exact same check to the Woohoo and Try for Baby interactions, as they also need the same checks. However, don't forget that EA prevents sims from autonomously initiating the Woohoo and Try for Baby interactions. You need an XML tuning mod which modifies the relevant interactions found in the SocialData XMLs to change this. I made such a mod for myself long ago, and also added many more checks that allow sims to better consider their committed relationships as well. I may release that mod here soon. Finally, Juiced Kiss/MakeOut/Woohoo are not affected by these changes, as EA made them Friendly interactions and sims can already autonomously initiate them.
Method: SocialCallback::OnKissMakeup
SocialTest::TestKissBase
SocialTest::TestWooHoo
SocialTest::TestTryforBaby

UPDATE 1:
- I have added a few more checks to my Simulate Budget For Inactives feature.
- In an unmodded game, when the game attempts to create a descendant whose homeworld happens to be a vacation location with preset facial features (these are China and Egypt), the game still rolls a chance to assign those facial features to the new offspring, which should never happen, as the new sim is supposed to inherit these features from their parents. This update fixes this issue.
- I have added an important new feature to Neighborhood Pet Adoption. In an unmodded game, the game tries to create such a situation every day if there is no Pet Adoption going on in the world. This is a problem, because this mod only allows the game to create a Pet Adoption from households which already own an adult female pet. If your world has very few households with such a pet, then the game will create a Pet Adoption in the exact same households. This update adds a new feature which adds a chance roll requirement to this event which solves this issue. The game now has to pass a 25% chance roll to be allowed to create a Neighborhood Pet Adoption event, meaning that your world may sometimes have such events very often, but at times they may be rare. You can tune this value by modifying kNeighborPetAdoptionPercentChance. I recommend not setting this higher than 50, but if for some reason you want to revert to EA original, then set this to 100.

ORIGINAL DESCRIPTION

This is my core mod for Sims 3 which I made initially about a year ago, and have been building on it as I play the game now and then. The mod is mostly about fixing EA mistakes and oversights, but it also comes with certain small features that I really wanted the game to have. Below, I will describe what this mod does in detail. You can also see the methods modified by this mod and also see how you can tune a feature if it is tunable, so you can easily compare this mod's code with EA's original to see the differences, and also customize the mod. Here is what this mod does:

1) There is an extremely annoying glitch/mistake with the Firefighter active career from Ambitions. This career more or less worked fine before EA modified the code and broke the career in a patch (not sure which one). Basically, EA made a mistake which makes it very likely for the Respond to Emergency interaction to fail and cancel the current job, especially if the emergency is a small fire. This mod fixes this glitch, so you can play the Firefighter career properly now. Ever since I fixed this glitch, the only time I came across a small fire that got cancelled was on a rainy day. It is possible, but very rare that rain may extinguish fires placed outside by the game.
Method: FireFightingJob::FindIsolatedFirePosition

2) There is a glitch that causes Vampires to attain extremely fast skill-gain modifiers if the player saves and quits the game at night-time and then loads that save-game again. If you've ever seen a vampire max out a skill in a matter of seconds, it was caused by this glitch. This is fixed now. If you have vampires already affected by this glitch in existing worlds, they won't be fixed.
Method: OccultVampire::SunsetCallback

3) There is an oversight in the game if you have both World Adventures and University Life installed. You might have realized that the game adds the medium-quality camera to all sims when you first enter a world in such a setup. This free camera usually ends up stuck in inventories, too. However, the game is not supposed to give this camera to sims like that, as it is a glitch. This mod prevents this behaviour. If you want that camera, you can go and buy it from a vacation location, or maybe you can find one at the consignment store.
Method: Photography::OnSkillAddition

4) There is a very annoying glitch with the Punishment system added with Generations. If a child/teen is grounded, but is trying to go to school or work, the game considers this as sneaking out and causes the child/teen to sneak. At the same time, it causes adult and older sims to scold the child/teen, which causes the sim to end up sneaking permanently. EA actually added code to prevent this if the child/teen was trying to go to school or work, but their check doesn't include the Go To School/Work in Carpool interaction and also the Go Home Ownable Vehicle interaction which is what children and teens are engaged in while going to school/work or coming back from school/work. This mod fixes this oversight. Sims who are currently permanently sneaking because of this glitch won't be fixed.
Method: Punishment::IsSimGoingToSchoolOrWorkOrTraveling
Punishment::ShouldApplySnuckOutMoodlet

5) There is an oversight in the game which prevents sims from properly relaxing on pool loungers. You will see that they will spend like 2 or 3 seconds on a lounger and then will find something else to do right away. This mod fixes this oversight and now sims can properly use pool loungers.
Method: PoolLounger LoungerRelax Definition::Test

6) Nectar skill "combinations made" data does not get lost while travelling any more.
Method: NectarSkill::ImportContent

7) Neighborhood Pet Adoption can now only occur in households which already own an adult female pet. The adult female pet needs to be really part of the household for the event to occur. The game cannot create a temporary adult female pet in random households for adoption purposes any more.
Method: PetAdoption::CreatePetInNeighbor
PetAdoption::CreatePetByMom
PetAdoption:: ClearlLitterInNeighborhood
Tuning: Set kNeighborPetAdotionPercentChance to whatever percentage value you want. Set it to 10 to make it so that the game has a 10% chance to start such an event. Set it to 100 to revert to EA original. Set it to 0 to completely disable Neighborhood Pet Adoption.

8) When the game generates a new sim who is not supposed to inherit any facial features in an unmodded game, such as when creating new townies and NPCs, the game creates the sim with the exact same face with almost all sliders at zero, and also gives the sim the exact same voice type and pitch. This mod fixes this and now the new sim's face and voice will be properly randomized. I have made it so that the sim's face will only be randomized if the sim is not assigned any predetermined facial features by the game. The game applies such predetermined facial features when the game generates the offspring of existing sims, or when it generates an alien NPC, and so on. In other words, the game will randomize the sim's face and voice only if they need to be randomized.
Method: Genetics::MakeSim

9) When Sim A initiates a social interaction towards Sim B, the game checks the relationship between Sim A and B and also Sim B's mood. These are the values the game uses to determine whether Sim B accepts the social. EA made it so that the game increases the effective relationship between Sim A and B +20 if they are attracted, but they unfortunately didn't add any code that increases Sim B's effective mood as well. This mod adds this missing feature which increases Sim B's effective mood by +20, so that attraction is a bit more relevant.
Method: Conversation::GetAdjustedRelationshipValues
Tuning: Change the kTargetSimMoodBonusforAttracted value to whatever you want. Set to 0 to revert to EA original.

10) When Sim A considers initiating an autonomous romantic interaction towards Sim B, if Sim A is in a committed relationship with Sim C, and if the social context between Sim A and B is not amorous, then Sim A now becomes less likely to initiate such an interaction. In such a situation, if Sim A also happens to have the Family-Oriented trait and/or the My Love buff, then Sim A becomes even less likely to initiate such an interaction. In the unmodded game, sims are not aware of their committed relationships when they consider initiating a romantic interaction, which really doesn't make any sense. This mod fixes this issue.
Method: Autonomy::CalculateScoreForSocial
Tuning: Modify the kActorCommittedBaseSocialMultiplier value to change the base likelihood which is applied to Sim A all the time. Modify the kActorCommittedExtraFamilyOrientedSocialMultiplier value to further change the likelihood if Sim A is Family-Oriented. Modify the kActorCommittedExtraMyLoveBuffSocialMultiplier value to further change the likelihood if Sim A currently has the My Love buff. Speaking of the My Love buff, Sim A receives this buff if Sim C is somewhere close to them, and if it has been fewer than 3 days since their marriage and if their relationship is above 0. Set all of these to 1 to revert to EA original.

11) The game will now simulate the budgets of inactive households. In an unmodded game, inactive sims end up earning a lot of money from their careers and professions, because they don't pay bills, and they are almost never charged for anything. I considered allowing them to pay their bills, but came to the conclusion that this is a bad idea, because inactive lots do not depreciate, which makes it difficult to balance their budgets. I also dislike the idea of depreciating inactive lots. Instead, this mod modifies inactive households' budgets twice a week effectively simulating their earnings and losses. It is fairly detailed, and inactive households may lose or potentially even gain money depending on the traits, skills and careers of household members. Don't forget that EA has a feature which checks every day to see if an inactive household has less than 500 simoleons, and if so, sets their funds to 500. So, this is the lowest funds you will probably see if you are looking at inactive households. You can easily change this value if you don't like it by making an XML tuning mod. I believe the XML resource was called "Household".
Method: Mailbox::CreateRegularBillForHousehold Autonomy::OnceADayCallback
Tuning: Change the SimulateBudgetForInactives value to False to completely disable this feature. Set to True to enable it again.

Installation: Extract the archive and put the package file called "simler90GameplaySystemsCoreMod" to your Mods/Packages folder in Documents.

Compatibility: This mod is not compatible with any other mod that also modifies the GameplaySystems.dll.

Requirements: This mod was made on Patch 1.67, and I can only guarantee that it will work on that patch.

Archive: simler90GameplaySystemsCoreMod-UPDATE27.rar
No metadata could be extracted from this file


Download files

Filename Size Downloads Date
simler90GameplaySystemsCoreMod-UPDATE27.rar

Size: 5.96 MB · Downloads: 4,338 · 1st Dec 2021
5.96 MB 4,338 1st Dec 2021

Key: - File was updated after upload was posted
Tip: You can click the magnifying glass to see the archive contents

Need help with downloading or installing content? Click here!
Archive: simler90GameplaySystemsCoreMod-UPDATE27.rar
No metadata could be extracted from this file
 
70 Comments / Replies (Who?)

Expansion/Stuff packs required:
Sims 3

70 Comments / replies (Who?)

4,348 Downloads

23,628 Views

Type: Fixed

Tags: #Core Mod, #Gameplay Systems, #Fix, #Glitch, #Oversight, #Social, #Firefighter, #Alarm, #Small Fire, #Active Career, #Genetics, #Randomize, #Face, #Voice, #Budget, #Funds, #Economy, #Pool Lounger, #Relax, #Punishment, #Grounded, #Sneaking, #Teen, #Child, #Inventory, #Vampire, #Skill, #Pet Adoption, #Butler, #NPC