Disease Mod

SCREENSHOTS
20,666 Downloads 369 Thanks  Thanks 92 Favourited 68,594 Views
Uploaded: 23rd Aug 2018 at 2:28 PM
Updated: 27th Sep 2022 at 5:39 AM
Disease Mod: I am not entirely happy about the way the game calculates how fast a sim recovers from a disease. This mod adds additional rules and checks to the disease code. Before I tell you what this mod does, first I have to tell you how disease recovery works in an unmodded game:
- If a sim is sleeping, they get +8 recovery points every hour.
- If a sim is sitting, they get +6 recovery points every hour.
- If a sim is not asleep or sitting, then they get +4 recovery points for 50 or higher Energy and Comfort motive, or -4 recovery points for lower than 0 Energy and Comfort.

That's it. There is nothing else to it. This is why your sims very quickly recover for sleeping or sitting. Even if your sim's Energy or Comfort is low, the game does not consider them if the sim is sleeping or sitting. This mod makes it so that the game calculates recovery like this:
- The game now considers every element even if the sim is asleep or sitting.
- +4 for sleeping.
- +2 for sitting.
- +2 for 50 or higher Energy/Comfort/Water-Hygiene/Hunger, or -2 for lower than 0 Energy/Comfort/Water-Hygiene/Hunger.
- +4 for Platinum Aspiration, +2 for Gold Aspiration, -2 for upper red aspiration, -4 for lower red aspiration.
- +2 for being fit, -2 for being fat.
- -2 for being elder.
- +2 for being a werewolf carrier.
- +2 for being in a vacation neighbourhood.

I made a BCON tuning resource for this, so that you can easily modify how much a particular element adds to the recovery of a sim. For example, if you don't want aspiration to have an effect, then set lines 0x14 to 0x17 to 0. It is very easy to tune this mod.

Advanced Version: There is now a new version of the mod called Advanced Version. The Advanced Version makes it so that sims can gain and lose recovery points, and contract diseases from disease markers everywhere at all times. In an unmodded game, sims can only gain and lose recovery points if they are on a residential lot and if they are part of the currently controlled family.

Tuning Tips:
1) If you think sims are showing symptoms too often, then you may want to make it so that the game evaluates diseases once every two hours, rather than every hour. This way sims would attempt to show symptoms once every two hours, effectively decreasing their disruptive influence. In order to do this, you have to tune the resource called "Tuning - General". There is a line called "min ticks between symptoms". This refers to how often the game evaluates diseases. In my game, I have increased this number to 3600 (1 sim-minute = 30 ticks) which makes the game evaluate diseases once every two hours. If you do this, you may also want to increase the effect of care bonus and penalty which are in the "Tuning - Recovery" resource, because the game will add and subtract these effects once every two hours, instead of every hour. Additionally, you may also want to decrease the value of the line "care evaluations between severity updates" which refers to how often the game actually checks to see if the sim should get healthy, die or if the cold should develop into pneumonia. This is normally set to 5, which means once every 6 hours (the hour after the fifth care evaluation), but if you change "min ticks between symptoms" to 3600, then it would happen once every 11 hours (the hour after the tenth evaluation, because the game would check for evaluation once every two hours rather than every hour. I have changed "care evaluations between severity updates" to 3 in my game, but I think 2 would also be good.
2) If you can't be bothered with the above method, and if you have UPDATE 9 and later, then a simpler way of reducing the frequency of sims showing symptoms is to modify the symptom chance. Open the resource "Sub - Choose Symptom". Make sure you are in Plugin View, and left-click on the line that says "Random - Chance of X out of Y (Literal 0x0032, Literal 0x0064)" (Line 24), and left-click on the pop-up wizard on the right. The above number is the percentage chance the sim has to show a symptom if the severity of the disease is pretty low. Then, left-click on the line that says "Random - Chance of X out of Y (Literal 0x004B, Literal 0x0064)" (Line 25), and left-click on the pop-up wizard on the right. The above number is the percentage chance the sim has to show a symptom if the severity value of the disease is high. You should obviously make sure that the above number in Line 25 is always higher than the one in Line 24.

UPDATE 1:
- I found out that Maxis completely messed up the disease code if the sim has a cold. What is supposed to happen is that if a sim has a cold, when the severity of the cold reaches its deadliness value, the game should remove the sim's cold, and give the sim pneumonia, a much more serious, but less contagious disease. However, the game can never give the sim pneumonia, because the code is a mess. What the game instead ends up doing is killing the sim, because of a cold, which should never happen. This update fixes this and makes it so that the sim will be given pneumonia when the severity of their cold gets really serious.
- In the Advanced Version, you will only be given the notification "Sim is healthy again", if the sim is part of the currently controlled family.
UPDATE 2: This is only for the Advanced Version. This update fixes an issue with wants in the Advanced Version.
UPDATE 3:
- Bigfoot recovers much faster now.
- In an unmodded game, the game pushes sick sims to show a symptom about every hour. However, it pushes this symptom with a user-driven priority, which means that if the sim is engaged in another user-driven interaction, the game will wait before it pushes the symptom, which doesn't make any sense. This is why it is possible for sims to spend a long time performing user-directed interactions before the game pushes however many symptoms may have accumulated during that time. This update makes it so that all symptoms are pushed at maximum priority, which means sims will show the symptom right away, stopping their current interactions. In addition, I have made it so that there is a chance, depending on the current severity of the disease, that the sim may not show a symptom.
UPDATE 4: Recovery is decreased by -2 if the sim is neither sleeping nor sitting. You can tune the value in the BCON.
UPDATE 5: Sims who are sitting have a lower chance of showing a symptom. Don't forget that sleeping sims cannot show any symptom at all. Also don't forget that lounging on sofas and similar interactions are considered as sitting.
UPDATE 6: I found out that sims who have pneumonia actually drop disease markers which spread pneumonia directly, rather than spreading a cold. This doesn't make any sense in this game, because pneumonia is the second level of cold. When a sim receives pneumonia as a result of contagion, the game still displays the "Sim's cold got much worse and now they have pneumonia" notification which doesn't make sense. This update makes it so that sims who have pneumonia actually spread the cold. However, this fix makes the main mod incompatible with my "Disease Chance Based Spread" mod which used to be on this page. I have deleted that mod, and if you have it, you should delete it, too. It didn't do much, because the disease tiles very rapidly check to spread the disease anyway. This update also fixes an issue that prevented the game from spreading diseases to apartment roommates. Maxis intended for apartment roommates to be susceptible to diseases unlike other townies.
UPDATE 7: There is another issue with pneumonia. Sims whose cold develops into pneumonia become susceptible to cold. This update makes it so that sims cannot receive a cold while having pneumonia.
UPDATE 8: This update fixes a Maxis oversight which has the potential to cause the game to throw a rare error. Thanks to Nostural for notifying me.
UPDATE 9: The game won't show a notification when a sim who is not part of the currently played family gets a mysterious disease from a disease marker.
UPDATE 10: I came across a serious Maxis oversight that affects sims if there is a mysterious disease marker on the lot. Whenever the game tries to give a sim a mysterious disease through a disease marker, the game actually stops whatever the sim's current interaction is, and then gives the sim a mysterious disease, unlike other forms of disease markers in the game. If the sim in question already has that particular mysterious disease, then the game is not supposed to spread that disease to that sim. However, the game still pushes the interaction on the sim, which abruptly stops the sim's current interaction, but then the pushed interaction doesn't do anything, because the game realizes that the sim already has that disease. This update fixes this rare, but annoying issue by adding a check that prevents the game from pushing the disease interaction if the sim already has that mysterious disease.
UPDATE 11: The mysterious disease marker now immediately gives the sim the disease, meaning that it won't abruptly stop sims any more.
Resources:
Sub - Choose Symptom/0x7F8A70B6/0x00001002
Sub - Update Average Care/0x7F8A70B6/0x00001003
Tuning - General/0x7F8A70B6/0x00001000
Tuning - Recovery/0x7F8A70B6/0x00001003

Grandma's Comfort Soup Mod: Grandma's Comfort Soup is one of the most ridiculous rewards in the game. In an unmodded game, if the sim takes a single sip from the soup, ALL of their diseases get cured instantly, even if the sim has hundreds of Mysterious Diseases, they are all gone in a second. When I say a single sip, I really mean it. Just order a sim to eat the soup and after they take a single sip, cancel the interaction and all diseases will be cured right away, so you don't even have to eat the soup properly. Such an item does not belong in the game, at least not in its unmodded state. This optional mod makes it so that eating the soup gradually decreases the severity of one of the sim's diseases. Sims actually have to eat the soup now, the more they eat the lower the severity of the disease will get. You can have one soup after another and it will cure your sim's disease eventually, BUT this means that if you want to get cured quickly, you will have to eat multiple soups, which further means that your sim will get fat, which will affect attraction/chemistry, and so on. If you have my Slower Fitness Gain mod, then it is going to take you a while to get them back in shape, and if you have my Romantic Standards mod, then it can truly make or break a relationship (sims with a turn-on for fatness will be more loyal and more likely to fall in love/get a crush on you, and the opposite will happen for sims with a turn-off for fatness and so on). I like this type of reactive gameplay. If you have my Biotech Station mod, then you may actually want to consider buying medicine from a pharmacy even if you have access to the soup, because medicine is more effective, and does not increase a sim's fatness. Even though these mods don't look like they have much to do with each other directly, they all work together really well. The soup is still very relevant, if you have sick sims in your household and if you have access to the soup, you SHOULD prepare the soup. It will greatly help, but it won't instantly cure any more.
Resources:
CT - Dec/0x7F61E069/0x00001010
CT - Exit Action/0x7F61E069/0x0000100C

Disease Throw Up Toilet Apartment Fix: There are no apartment checks when a sim attempts to throw up on an apartment lot, which causes sims to enter random apartments to use their toilet. This mod adds these necessary checks so that sims who are in an apartment suite will only try to throw up within that suite. Apartment residents who are in the communal area will find a toilet that is either in their own apartment or in the communal area. Visitors who are not within an apartment suite will only be allowed to use a toilet in the selectable family's apartment as long as they are greeted, otherwise they will use a toilet in the communal area. If they can't find a toilet, they will throw up on the ground.
Resources: Interaction - Symptom Vomit/0x7F8A70B6/0x00001010

You need the latest version of 7zip or WinRAR to get these mods.

Requirements: Apartment Life/M&G.