HCDU Plus

The Hack Conflict Detection Utility (HCDU) is an essential tool when using mods, but it does have some shortcomings

  • it doesn't consider STR#, OBJD, OBJf or other resources
  • it can't be told which folder to start in
  • it can't be told to ignore known conflicts (eg all the InTeenimater flavour paks)
  • it reports conflicts at the resource (BHAV, BCON and STR#) level and not at the package level (it's usually enough to know that "InTeenimater_FlavorPak_BackToSchool.package" conflicts with "InTeenimater_B.package" without giving the eleven resources that conflict)

The HCDU Plus application is my attempt to remedy these.


Version 1.1 and Later Changes

Version 1.1 and onwards of HCDU Plus permits mods in a specific folder to be checked for conflicts against themselves and those already in the Downloads folder. This makes checking for conflicts in newly added mods a lot easier.

Intended Usage

  • Start HCDU Plus
  • Click the "Downloads Folder..." button (or type Alt+D or Ctrl+D) and browse to The Sims 2 Downloads folder
  • Leave "Scan Folder" blank
  • Click the "SCAN" button - this will perform a full conflict scan on the Downloads folder
  • Resolve any reported conflicts as necessary. DON'T add acceptable conflicts to the Known Conflicts list
  • Create a test folder as a subfolder of the Downloads folder
  • Put mods for testing into the test folder
  • Click the "Scan Folder" button (or type Alt+S or Ctrl+o) and browse to your test folder
  • Click the "SCAN" button - this will perform a full conflict scan between mods in the test folder and a scan for conflicts between mods in the test folder and those in the downloads folder, but it will NOT report conflicts between mods already in the Downloads folder (which is why we don't need to add those as known conflicts)
  • Resolve any conflicts for the mods in the test folder
  • Move mods from the test folder into the main Downloads folder/sub-folders


Version 1.0 Details

Applies to later versions as well

Before using HCDU Plus it is necessary to tell it where to find the objects.pacakge file for the latest expansion you have installed. From the "File" menu, select "Configuration..." and either enter or browse to the install location (where the CSBin, TSBin and TSData sub-directories are located) - for UC this will end "Fun with Pets\SP9"


To scan a folder (and its sub-folders) for conflicting mods, from the File menu, select "Select Folder..." (or click the "Select Folder" button or type "Alt+S" or type "Ctrl+O") and browse to find the required starting folder. If this folder has been scanned recently, it can quickly be re-selected from the "File", "Recent Folders..." sub-menu.

Once the starting folder has been selected, click the "SCAN" button (or type "Alt+C").

The application will start scanning the mods in the selected folder and sub-folders, looking for conflicts. As conflicts are found they are displayed, to stop the scan, click the "Cancel" button.

The display shows pairs of mods that conflict, to see which resources within that pair of mods conflict, hover the mouse over them.


The HCDU Plus application can be taught to ignore known conflicts (by default it knows about InTeenimater conflicts). To tell the app to ignore a specific pair of mods, right click on either of the mods in the pair and select "Add As Known Conflict".


To change the known conflicts, from the File menu, select "Known Conflicts" (or type "Ctrl+K").

To delete a known conflict pair, select the pair and press the Delete key. To manually add a new pair, type the required filenames/patterns into the blank bottom line. To edit an existing pair, select the required filename/pattern and change it


The "By Resource" tab can be used to see which resources are conflicting in which mods (packages).


The conflict report can be saved to the clipboard (File menu, Save To Clipboard - Ctrl+S) or to file (File menu, Save As... - Ctrl+Alt+S)


Shortcut Keys

  • Alt+C - Scan
  • Alt+F - File menu
  • Alt+H - Help menu
  • Alt+S - Select folder
  • Alt+F4 - Exit

  • Ctrl+K - Known conflicts (opens editing dialog)
  • Ctrl+O - Open folder (select package)

  • F1 - Help (about)

Example Reports

HCDU Plus report

Mods conflict report for 'D:\Users\William\Documents\EA Games\The Sims™ 2 Ultimate Collection\Downloads' at 11/12/2020 14:52 CJ\CJ-NoHobbyAnimations.package --> Hacks\Hobby Idle Anim Fix.package BHAV: 0x060A - Hobby - Enthusiasm Weighted Random Hobby Idle (0x7FD46CD0) Hacks\No_Finals_at_Night.package --> InTeen\InTeenimater_B.package STR: 0x012D - Dialog prim string set (0x7F17E3A4) InTeen\InTeenimater_B.package --> WH_PayBook\WH_PayBook_C.package STR: 0x012F - Call Named Tree prim string set (0x7F8F4EB6) InTeen\InTeenimater_B.package --> WH_Stuff\GamePlay\WH_BetterScopeRoom.package STR: 0x012D - Dialog prim string set (0x7F01EC29) InTeen\InTeenimater_B.package --> WH_Stuff\WH_CustomAging.package BCON: 0x201C - Social - Proposition - Req. Rels. (0x7F01EC29) BHAV: 0x1054 - Sub - Decrement Age Days Left (0x7F07FBBC) TRCN: 0x201C - (0x7F01EC29) WH_PayBook\WH_OptionalPayBonus_A.package --> WH_UniOfLife\UniversityOfLife.package STR: 0x012D - Dialog prim string set (0x7F8F4EB6) zzzTestStuff\WH_BuySecretMapsAsSouvenirsAnywhere.package --> zzzTestStuff\WH_BuySecretMapsAsSouvenirsAnywhereAlways.package BHAV: 0x1005 - CT - Set Selection (0x7F29D4F1) BHAV: 0x1005 - CT - Set Selection (0x7F53D8AD) BHAV: 0x1005 - CT - Set Selection (0x7F53EFE7) zzzTestStuff\WH_BuySecretMapsAsSouvenirsAnywhereAlways.package --> zzzTestStuff\WH_BuySecretMapsAsSouvenirsOnHoliday.package BHAV: 0x1005 - CT - Set Selection (0x7F29D4F1) BHAV: 0x1005 - CT - Set Selection (0x7F53D8AD) BHAV: 0x1005 - CT - Set Selection (0x7F53EFE7)

Equivalent HCDU report

Report Start 11/12/2020 14:53:03 *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Hobby - Enthusiasm Weighted Random Hobby Idle Group ID: 0x7FD46CD0 Instance ID: 0x0000060A Packages Containing This Procedure: \downloads\CJ\CJ-NoHobbyAnimations.package \downloads\Hacks\Hobby Idle Anim Fix.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: CT - InTeenimater - Can Propose? Group ID: 0x7F01EC29 Instance ID: 0x0000270B Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_NoAgeOfConsent.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Pregnancy State - Update Flags & Walk Group ID: 0x7F1D0F49 Instance ID: 0x0000102F Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\WH_Stuff\WH_Memory_ImPregnant_InTeen.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: College - Move In TEST Group ID: 0x7F3FDB15 Instance ID: 0x00001013 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_CollegeAdmissions.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Function - Get My Job Category Group ID: 0x7F441294 Instance ID: 0x00002022 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_NoTeenJobsForElders.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Move In - College TEST Group ID: 0x7F441294 Instance ID: 0x0000205D Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_CollegeAdmissions.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: CT - Object Menu Subqueue Group ID: 0x7F4437F2 Instance ID: 0x00002054 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_SilentPregnancy.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Ownable - School Carpool TEST Group ID: 0x7F4EA230 Instance ID: 0x0000208F Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_BackToSchool.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Ownable - Take To School TEST Group ID: 0x7F4EA230 Instance ID: 0x0000208A Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_BackToSchool.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Ownable - WooHoo TEST Group ID: 0x7F4EA230 Instance ID: 0x0000209A Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_SilentPregnancy.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Dresser - Plan Outfit - TEST Group ID: 0x7FE10572 Instance ID: 0x00002008 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\PostInTeen\PregnancyWearAnyOutfitEP5_InTeen.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Push Play In TEST Group ID: 0x7FE10572 Instance ID: 0x0000201B Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_SilentPregnancy.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Sub - Decrement Age Days Left Group ID: 0x7F07FBBC Instance ID: 0x00001054 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\WH_Stuff\WH_CustomAging.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Function - Main Group ID: 0x7FF4DCC2 Instance ID: 0x00001001 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_BackToSchool.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: School - Hail All Students Group ID: 0x7F4EA230 Instance ID: 0x000020CD Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_BackToSchool.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Try for Baby TEST Group ID: 0x7FCBB499 Instance ID: 0x0000102A Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_SilentPregnancy.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Dresser - Change Into - TEST Group ID: 0x7FE10572 Instance ID: 0x00002004 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\PostInTeen\PregnancyWearAnyOutfitEP5_InTeen.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Move Out TEST Group ID: 0x7F441294 Instance ID: 0x00002035 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_NoAgeOfConsent.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Closet - Try For Baby - TEST Group ID: 0x7FE10572 Instance ID: 0x000020B8 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_SilentPregnancy.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Try for Baby - Test Group ID: 0x7F628A40 Instance ID: 0x00001032 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_SilentPregnancy.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Attempt To Get Pregnant TEST Group ID: 0x7F5A0600 Instance ID: 0x0000200C Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_SilentPregnancy.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Try For Baby - TEST Group ID: 0x7FE6B74C Instance ID: 0x0000203F Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_SilentPregnancy.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Hammock - Try for Baby - TEST Group ID: 0x7F4437F2 Instance ID: 0x0000212E Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_SilentPregnancy.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Social - Hammock - Try for Baby - TEST Group ID: 0x7F01EC29 Instance ID: 0x000024C1 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_SilentPregnancy.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Social - Hammock - SubQueue Try for Baby - TEST Group ID: 0x7F01EC29 Instance ID: 0x000024C2 Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_SilentPregnancy.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: Interaction - Walk to School - TEST Group ID: 0x7F01EC29 Instance ID: 0x0000253D Packages Containing This Procedure: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_BackToSchool.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: CT - Set Selection Group ID: 0x7F29D4F1 Instance ID: 0x00001005 Packages Containing This Procedure: \downloads\zzzTestStuff\WH_BuySecretMapsAsSouvenirsAnywhere.package \downloads\zzzTestStuff\WH_BuySecretMapsAsSouvenirsAnywhereAlways.package \downloads\zzzTestStuff\WH_BuySecretMapsAsSouvenirsOnHoliday.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: CT - Set Selection Group ID: 0x7F53D8AD Instance ID: 0x00001005 Packages Containing This Procedure: \downloads\zzzTestStuff\WH_BuySecretMapsAsSouvenirsAnywhere.package \downloads\zzzTestStuff\WH_BuySecretMapsAsSouvenirsAnywhereAlways.package \downloads\zzzTestStuff\WH_BuySecretMapsAsSouvenirsOnHoliday.package *** POSSIBLE CONFLICT DETECTED *** File Type: BHAV Procedure Name: CT - Set Selection Group ID: 0x7F53EFE7 Instance ID: 0x00001005 Packages Containing This Procedure: \downloads\zzzTestStuff\WH_BuySecretMapsAsSouvenirsAnywhere.package \downloads\zzzTestStuff\WH_BuySecretMapsAsSouvenirsAnywhereAlways.package \downloads\zzzTestStuff\WH_BuySecretMapsAsSouvenirsOnHoliday.package *** POSSIBLE CONFLICT DETECTED *** File Type: BCON Group ID: 0x7F01EC29 Instance ID: 0x0000201C Packages Containing This Constant File: \downloads\InTeen\InTeenimater_B.package \downloads\WH_Stuff\WH_CustomAging.package *** POSSIBLE CONFLICT DETECTED *** File Type: BCON Group ID: 0x7FBE051B Instance ID: 0x00002007 Packages Containing This Constant File: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_BackToSchool.package *** POSSIBLE CONFLICT DETECTED *** File Type: TTAB Group ID: 0x7F4EA230 Instance ID: 0x00000002 Packages Containing This Menu File: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_BackToSchool.package *** POSSIBLE CONFLICT DETECTED *** File Type: TTAB Group ID: 0x7F859641 Instance ID: 0x00000081 Packages Containing This Menu File: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_ResidentialGraduates.package *** POSSIBLE CONFLICT DETECTED *** File Type: TTAB Group ID: 0x7FF4DCC2 Instance ID: 0x00000001 Packages Containing This Menu File: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_BackToSchool.package *** POSSIBLE CONFLICT DETECTED *** File Type: TTAB Group ID: 0x7F01EC29 Instance ID: 0x00000081 Packages Containing This Menu File: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_BackToSchool.package *** POSSIBLE CONFLICT DETECTED *** File Type: TTAs Group ID: 0x7F4EA230 Instance ID: 0x00000002 Packages Containing This Menu Strings File: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_BackToSchool.package *** POSSIBLE CONFLICT DETECTED *** File Type: TTAs Group ID: 0x7F859641 Instance ID: 0x00000081 Packages Containing This Menu Strings File: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_ResidentialGraduates.package *** POSSIBLE CONFLICT DETECTED *** File Type: TTAs Group ID: 0x7FF4DCC2 Instance ID: 0x00000001 Packages Containing This Menu Strings File: \downloads\InTeen\InTeenimater_B.package \downloads\InTeen\InTeenimater_FlavorPak_BackToSchool.package End Of Report 38 possible conflicts detected.

Source Code

Source code can be downloaded from GitHub


Simblr Links


Change Log

Version 4.1

  • Added an option to extract .package files from .zip files within the Scan sub-directory.

Version 4.0

  • Recompiled to fix compression and SimPe issues - see here

Version 3.3

  • Added support for detecting conflicts for TXMT and TXTR resources.

Version 3.2

  • Added support for detecting conflicts for IMG and UI resources.

Version 3.1

  • Added All and None to the Resources menu.

Version 3.0

  • Option to include known conflicts into the scan report, that is, ignore the Known Conflicts list. Enabling this option prevents adding new known conflicts.
  • Check boxes to include the SavedSims sub-folder into either the Downloads or Scan file lists.
  • Option to include .noload files into the Downloads or Scan file lists. This permits mods to be included as part of the scan but not loaded by the game - useful for modders.
  • Ability to paste into the conflicts table (eg from direct from tables like these)

Version 2.4

  • Fixed the fix for the fix for the bug with loads earlier/later reporting!

Version 2.3

  • Fixed the fix for the bug with loads earlier/later reporting.

Version 2.2

  • Fixed a bug with loads earlier/later reporting.

Version 2.1

  • GUID conflicts with game objects in the main objects.package file are now reported. These will usually be "default replacements", but may be errors.

Version 2.0

  • Fixed (hopefully) the "index out of range" errors
  • Added checks for GZPS conflicts
  • Fixed issue when a known conflict is entered as blank
  • Added a Reset button to the Known Conflicts dialog to reload the defaults
  • Added a right-click context menu to the Known Conflicts dialog to remove an entry

Version 1.5

  • Added "Ignore Store Version Conflicts" to Conflicts menu - if checked, mods that conflict over the STR# 0xFF648785 resource will not be reported (this STR# is used only by Store downloads to record version info)
  • Added "Ignore Castaways Conflicts" to Conflicts menu - if checked, mods that conflict over the STR# 0x0001 resource in group 0x7FC078F3 will not be reported (this STR# is used only by Castaways conversions)

Version 1.4

  • Improved error handling
  • Improved resource usage

Version 1.3

  • Error report now includes filename if an invalid package file is encountered
  • Invalid package files can be ignored (not recommended, better to move them out of the Downloads area and rescan)
  • Added "Check For GUID Conflicts" to Conflicts menu - if checked, mods that use the same GUID as another mod will be reported. Note, this can report a lot of CC mods by the same author as conflicting.

Version 1.2

  • Application window is now resizable
  • Added Conflicts menu
  • Known Conflicts moved from File menu to Conflicts menu
  • Added "Ignore Internal Conflicts" to Conflicts menu - if checked, mods that conflict with themselves will not be reported
  • Added "Ignore HomeCrafter Conflicts" to Conflicts menu - if checked, mods that conflict over the STR# 0x007B resource will not be reported (this STR# is used only by HomeCrafter)
  • Added "*-STORE.package" to the default list of known conflicts - these are store packages and recolours tend to contain duplicate identical resources

Version 1.1

  • Added Scan Folder feature

Version 1.0

  • Initial release


Files