Better Disease Notifications! [Translators Wanted!]

SCREENSHOTS
Downloaded 2,107 times 96 Thanks 28 Favourited 8,590 Views
 Say Thanks!
Uploaded: 18th Sep 2023 at 5:29 PM
Updated: 25th Aug 2024 at 4:05 PM
Updates!
  • 2024-08-25: Added a Traditional Chinese translation. 非常感謝, tokoshietowa!
  • 2024-07-01:
    (1) Because I had to fix an oversight in my Antibodies mod, the compatibility patch I put here needs the same fix too. Morning sicknesses will now no longer cause immunities after they pass. Please re-download if you use it.
    (2) Added a Finnish translation. Kiitos paljon, gloomykantele!


It's that quirky lime-coloured Yoshi again, with another new mod he shook from his sleeves!

This one is meant to slightly help people who have increased their game's difficulty by using a mod to increase the challenge when a Sim contracts a disease.

In an unmodded game, there's simply too few notifications on the progression of a disease. You get one when a Sim first gets sick; one when a Sim is currently sick as you load the lot they live on; and one if a cold becomes pneumonia (which can't even happen in an unmodded game due to a glitch, mind you!).
None of these notifications tell you how sick a Sim currently is, only that they are... some kind of sick. It doesn't matter whether they may get healthy again at the next cycle, or die tomorrow.
There is only one indicator for a Sim being severely sick, and that is when they start constantly thinking of tombstones. This only gives a very vague idea of what's going on, and it's easy to miss, too.

With this in mind, I went ahead and changed the disease handling code in order to support the player in the process of isolating and medicating the worst cases within a family of sick Sims.

What does this mod do?
  • Whenever a disease's severity is updated - this happens once every six in-game hours - there are now additional checks that look at the disease's updated severity level, as well as how well the Sim cared for themselves before the token was updated.
    - If the Sim's disease has at least 80 severity, there will be a warning.
    - If the Sim's disease exceeds at least 100 severity, there will be a more firm warning.
    - If the Sim's disease is going down and has only 10 or less severity left, there will be a message of encouragement.
    - If the Sim's disease was on the way to recovery but is getting worse again, there will be a message of caution.
  • This is displayed separately for every disease the Sim currently has. You will be able to tell them apart by looking at the disease types that are broadcast with each notification.
  • There is now an extra check that Sims have to pass before they think of death. Only if the disease's severity subtracted by the Sim's achieved care factor combined would result in a value that's higher than the disease's deadliness, the thoughts of death will appear, so then you have an immediate idea when it's time to really act.
    - Since this is very abstract, let me provide you with an example, too. If a Sim has the flu with a current severity of 104 and a care factor of -10, it will not cause death thoughts. However, if the severity subsequently increases to 114 with the next update, and the next care factor is again -10, it will cause death thoughts because this dose of severity would kill the Sim on the next update. The deadliness, or fatal severity, of every disease in the game (except for colds) is, by default, 120.
    - Usually, this will still give you enough time to act by making medicine or Grandma's Comfort Soup, or forcing the Sim to sit somewhere or sleep.

Version differences
There are currently three different versions of this mod for you to choose from - this is merely for compatibility reasons.

One version provides compatibility with simler90's Disease Mod by incorporating my changes into the BHAV that simler90 edited before me. Make my compatibility version load after simler90's mod and all will be good.

The second version was made to work together with kestrellyn's Pneumonia Fix which is one of the many features of the Disease Mod above. If you would rather just have the critical bug fix, get this compatibility version, and make it load after kestrellyn's mod. It's already renamed accordingly.

The standard version is the vanilla EAxis code with my changes appended at the end. Use this one if you do not use any mod to change how diseases work, or if you only use real-sickness from MATY, as it won't conflict. Note that having this version installed will mean that Sims die from a cold instead of developing pneumonia, so my personal recommendation would be to get one of the two other versions and the respective mod of the other creator.

Requirements
Expansion Packs: None! This is Base Game-compatible.
Mods: Smarter EP Check (all versions).
Smarter EP Check is required because
1. I included a check for OFB or higher as that EP introduced the BHAV "Kill - Can Sim Die?". If I didn't include the EP check, the game would throw a "Bad gosub tree" error every ~6 hours...
2. I included two more checks, one for NL or higher and one for Pets or higher, to check for Visitor types when determining which Sims to show notifications for. Sims of types "Furious" and "Returning Pet" didn't exist in the base game.

Tuning
All three versions of my mod feature the same tuning possibilities, letting you freely choose which Sims should have disease notifications displayed. All resources are found in the BCON table 0x1004.
Note that roommates, due to a bug, cannot get sick unless you use simler90's Disease Mod, or another mod that enables roommate or non-playable sicknesses:
EntryLabelDescriptionDefault value
0x00Visitor Notifs - Sim Gets Healthy"Sim is healthy again!" notifications for "Normal" and "Invited to Stay" visitors0x0001 (1)
0x01Visitor Notifs - Cold becomes Pneumonia"Sim now has pneumonia!" notifications for "Normal" and "Invited to Stay" visitors0x0000 (0)
0x02Visitor Notifs - Disease Almost Cured"Sim is on the brink of recovery" and "Sim's disease got worse again" notifications for "Normal" and "Invited to Stay" visitors0x0000 (0)
0x03Visitor Notifs - Disease is Really Bad"Sim's disease is (extremely) severe!" notifications for "Normal" and "Invited to Stay" visitors0x0001 (1)
0x04Special Visitor Notifs - Sim Gets Healthy"Sim is healthy again!" notifications for "Walkby", "Furious", "Give Gift" and "Returning Pet" visitors0x0000 (0)
0x05Special Visitor Notifs - Cold becomes Pneumonia"Sim now has pneumonia!" notifications for "Walkby", "Furious", "Give Gift" and "Returning Pet" visitors0x0000 (0)
0x06Special Visitor Notifs - Disease Almost Cured"Sim is on the brink of recovery" and "Sim's disease got worse again" notifications for "Walkby", "Furious", "Give Gift" and "Returning Pet" visitors0x0000 (0)
0x07Special Visitor Notifs - Disease is Really Bad"Sim's disease is (extremely) severe!" notifications for "Walkby", "Furious", "Give Gift" and "Returning Pet" visitors0x0000 (0)
0x08Playable Notifs - Sim Gets Healthy"Sim is healthy again!" notifications for any family member (includes roommates)0x0001 (1)
0x09Playable Notifs - Cold becomes Pneumonia"Sim now has pneumonia!" notifications for any family member (includes roommates)0x0001 (1)
0x0APlayable Notifs - Disease Almost Cured"Sim is on the brink of recovery" and "Sim's disease got worse again" notifications for any family member (includes roommates)0x0001 (1)
0x0BPlayable Notifs - Disease is Really Bad"Sim's disease is (extremely) severe!" notifications for any family member (includes roommates)0x0001 (1)

Translations
LanguageAvailable?Creator
English (US/UK)Me (LimeyYoshi)
GermanMe (LimeyYoshi)
Spanishbothersomecryptid
SwedishRudhira
Finnishgloomykantele
PolishMeduza
Chinese (traditional)tokoshietowa
Hungariankaligi

If you know your way around SimPE and would like to translate into your own language, feel free to contribute! You shall be given due credit.
The resources to be translated are the same in both versions of the mod: Lines 0xB through 0xE in the "Dialog Primitive Strings" (STR# 0x012D), and the entirety of "Disease Names" (STR# 0x0101).

Overrides
Resource nameTypeGroupAssociated object or semiglobalInstance
Interaction - Get PneumoniaBehaviour Function (BHAV)0x7F8A70B6Controller - Disease0x0000100D
Sub - Adjust SeverityBehaviour Function (BHAV)0x7F8A70B6Controller - Disease0x00001011
Sub - Get HealthyBehaviour Function (BHAV)0x7F8A70B6Controller - Disease0x0000101B
Sub - Manage Death ThoughtsBehaviour Function (BHAV)0x7F8A70B6Controller - Disease0x0000101D
Dialog Primitive StringsText Strings (STR#)0x7F8A70B6Controller - Disease0x0000012D

New resources
Resource nameTypeGroupAssociated object or semiglobalInstance
Sub - Display Disease Updates?Behaviour Function (BHAV)0x7F8A70B6Controller - Disease0x00001045
Sub - Show Severity UpdatesBehaviour Function (BHAV)0x7F8A70B6Controller - Disease0x00001046
Tuning - NotificationsBehaviour Constants (BCON)0x7F8A70B6Controller - Disease0x00001004
Notif TypeBehaviour Constants (BCON)0x7F8A70B6Controller - Disease0x00001005
Disease NamesText Strings (STR#)0x7F8A70B6Controller - Disease0x00000101

In any configuration of the vanilla game up to M&G, this resource does not exist, thus doesn't override anything.
If any mod, however, contains a resource of the same group and instance, it will automatically conflict with my mod, so be careful!

Trivia
The name Helen Heal is a direct reference to the ancient "Wellbeing Doctor" mods by PC Sims! I wonder if anyone besides me still uses them in their game?

Conflicts
Anything that also modifies the above resources will conflict with my mods.
  • As already mentioned, simler90's Disease Mod conflicts with my mod. If you use this mod, then please download the Disease Mod-compatible version I have created, and make it load after Disease Mod.
  • Epi's edit of the Disease Mod needs the same changed "Disease Mod" version as the mod it's based on.
  • Same goes for kestrellyn's Pneumonia Fix. If you use this mod, please get the Pneumonia Fix-compatible version and make it load after Pneumonia Fix.
  • My own mod Antibodies after a Sickness conflicts, so I was forced to make a patch, which you should only use if you also have that mod.
  • Technically, Cyjon's Frequent Disease Processing can be used alongside my mod, but keep in mind that the disease notifications spawn with every disease token update, which, with the mod, is every hour, instead of every six hours. Also, any notifications regarding a disease that was almost cured but is getting worse will never show up, because the "average care" never has a chance to be written into the token properly - which is what I use for my calculations on whether to show that dialogue or not.
  • On the other hand, Cyjon's Faster Disease Processing is compatible with all versions of my mod. If you use it, my extra notifications will appear just slightly more frequently, because it reduces the duration of a cycle length and not the amount of cycles like the other mod. This is especially noticeable in large households with many sick Sims at once.
  • If you play in Polish and use Lenna9's Polish Translation Fix, it affects a string table in my mod too. Make sure my mod loads after her fix - Meduza has included her fix in their translation of my mod. In particular, the affected change is from "katar" (running nose) to "grypa" (flu).

Please let me know if there are any other conflicts with mods you use, and I will see if something can be done about them by load order or through plug-ins.

Notes
  • I would love for this mod to support any custom diseases that were ever and will ever be created for this game. Following diseases can be monitored with my mod:
    - STDs, an adult mod created by Chris Hatch, and its spin-off, the Great Pox by Hodgekiss.
    - The Guinea Pig disease, which is available in one version by simler90 (infections are less likely but can happen even if womrat is in a good mood, and townies/NPCs are exempt) and one version by Midge The Tree (infections happen 100% of the time but happen only if womrat is in a bad mood, and townies/NPCs can get sick too).

Credits
Maxis and EA for creating Sims 2 in the first place
The Creators of SimPE and especially the BHAV, BCON and STR# plugins
Nysha for the amazing "Free, No Obligation!" window set that is pictured in the screenshots
TheDarkLady for pointing out a bug in my mod
bothersomecryptid for the Spanish translation
kaligi for the Hungarian translation
Rudhira for the Swedish translation
Meduza for the Polish translation
gloomykantele for the Finnish translation
tokoshietowa for the Traditional Chinese translation

Have fun and happy Simming!
~ LimeyYoshi