HoodChecker 1.0.3 - Neighborhood Corruption Detector (Updated February 11, 2013)

SCREENSHOTS
Downloaded 107,515 times 2,793 Thanks 658 Favourited 360,831 Views
 Say Thanks!
Mootilda unfortunately passed away in September of 2014. They were a respected member of the community and contributed to the Simming community for many years.
Uploaded: 29th Sep 2011 at 5:50 AM
Updated: 27th Nov 2013 at 3:51 PM by Nysha
What is the HoodChecker?

The HoodChecker will examine your neighborhood, looking for signs of corruption, and provide you with a detailed report of everything that it finds. If desired, it will attempt to fix some of those problems.

Please note that the HoodChecker requires a valid neighborhood. If your neighborhood crashes the game, and it crashes or produces errors in SimPE, then your neighborhood files are probably invalid. If this is the case, DO NOT post your problem here, regardless of whether the HoodChecker crashes. Instead, please report your problems in the Sims 2 Help forum.

Who should run the HoodChecker?

Everyone. Running the HoodChecker lets you know whether your neighborhood contains invalid references, which can cause problems in the future. Since checking your neighborhood will not change anything, it's completely safe to check your hood as often as you like.

The HoodChecker is particularly valuable for:
- Anyone who wants to keep their neighborhood running well.
- People who package, share, or install occupied lots.
- People who upload neighborhoods, or who play downloaded neighborhoods.
- Anyone who is concerned that their neighborhood is corrupt.

Why do I need the HoodChecker?

The Sims 2 has a number of ways to completely destroy your neighborhood during normal game play, including: moving occupied lots to the lot bin, deleting sims from the sim bin, installing occupied lots, deleting tombstones, and so on. These actions will immediately corrupt your hood, although the effects may take some time to show up. The HoodChecker will try to find this corruption, so that it can be fixed before it spreads.

Even if you have not done any of the things which are known to cause major corruption, less serious data corruption can still occur during normal game play. The HoodChecker provides a way to do maintenance on your neighborhoods, allowing you to weed out garbage that sneaks in. This is a way to ensure that your neighborhood remains healthy.

What happens without the HoodChecker?

Without the HoodChecker, there is no way to find corruption in your neighborhood, and the only ways to handle corruption are to restore from backup, recreate the neighborhood from scratch, or continue to play knowing that the neighborhood will eventually become completely unplayable. If you don't have a current backup, all other options are painful.

The HoodChecker found corruption. Now what?

You can use a number of tools to try to fix the corruption. Many Relationships, Family Ties, and Memories can be changed or removed using SimPE. The HoodChecker report includes the instance number or GUID of any invalid references, to aid you in fixing the problems. Post #4 contains a list of memories and tokens, along with an explanation of the expected data for each memory. As well, there are other tools, such as Pescado's Lot Debugger mod which can fix problems.

Unfortunately, some invalid references are not displayed in SimPE, and therefore cannot be fixed by the user.

Because of this, the HoodChecker has an option to remove invalid references as it runs. If this option is chosen, the HoodChecker will also attempt several simple fixes, such as sending lost tombstones to a designated graveyard. Note that HoodChecker will not remove memories which belong to valid sims, since these can easily be fixed or removed by the user with SimPE.

The Remove feature is still in testing. We have done a fair amount of testing, but there is still a small possibility that it will destroy your neighborhood. Please be sure that you have a backup of your neighborhood before asking the HoodChecker to remove invalid references. Test your neighborhood thoroughly before deleting that backup.

Disclaimer:
This program can't possibly guarantee that your neighborhood is OK, but it can show you possible problems (and attempt to resolve them). At this time, only Family Ties, Relationships and some Memories are examined. In the future, I plan to increase memory checking and to add other checks, such as Wants and Fears, and Sim Scores.

Requirements:
- The HoodChecker is released under the GNU General Public License.
- The program uses some DLLs from SimPE; they are included in the zip file.
- You need the Microsoft .NET Framework 2.0: http://www.microsoft.com/en-us/down...s.aspx?id=20137. Later versions of .NET, including those which ship with Vista and Windows 7, should be compatible with .NET 2.0.

This version of the HoodChecker works with all expansion and stuff packs, up to and including The Sims 2 Mansion & Garden Stuff.

Installation:
To install, just download HoodChecker.zip and extract everything within it to your hard drive. Run the EXE from the unzipped location. This is "alpha" software and is still in development; it is not guaranteed to work. Be sure to backup your game before using this tool to fix your neighborhood.

I have included the source code for version 1.0.3 in HoodCheckerSource.zip. There is no need to download this file unless you are a C# programmer who wishes to look at or modify the code.

Instructions:
The HoodChecker cannot be run while the neighborhood is in use by another program, for example while the Sims 2 or BodyShop is running, or when the neighborhood is open in SimPE.

If you intend to use the LotDebugger to remove gossip, trash or corrupted memories, you might want to use it before you run the HoodChecker, to reduce the number of problems found.

1) Run HoodChecker and click Start.
2) Select the neighborhood that you want to check. If the neighborhood is not displayed, use the Browse button to navigate to the neighborhood package.
3) Click on the Check button. I recommend that you view all errors before asking HoodChecker to resolve them.
4) Select any options and click on the Finish button.
5) You will receive a list of invalid references. You can expand the window if necessary, or Save the list to a text file for further examination.
6) Exit and make any required changes using SimPE. If you wish to have the HoodChecker attempt to resolve any problems, run it again and choose Remove rather than Check in step 3. Be sure that you have a recent backup. Note that the HoodChecker cannot resolve all problems, since many problems require human reasoning to determine the "correct" reference.

The following tutorial is useful for fixing and removing memories using SimPE:
http://www.modthesims.info/showthread.php?t=228915

Be sure to run the HoodChecker Check feature again when you're done making changes, to ensure that the problems have been fixed.

Running under OS/X:
Please read this thread for information about running the HoodChecker under OS/X:
http://www.modthesims.info/showthread.php?t=366580

Useful Mods:
Cyjon posted some memory error fixes at http://drupal.cyjon.net/node/395. This mod fixes the generation of "X Best Friends", "X Grandchildren", "X Married Children" and anniversary party memories, though it won't help existing bad memories.

Release History:
http://www.modthesims.info/d/showpo...840&postcount=5

To-Do List:
http://www.modthesims.info/d/showpo...842&postcount=6

How to Help:
If the HoodChecker marks something as invalid and you are sure that it is actually valid, please let me know. Be sure to keep your neighborhood backup in case I need to examine the neighborhood before any changes have been made.

Some memories and most tokens are not checked for validity. If you have any additional information about the parameters used for memories, tokens, inventory, etc., please let me know and I'll add logic to check those parameters.

If you know of other records in the neighborhood package which may contain invalid references, please let me know. At this time, I am not checking the User and Lot packages, but I will certainly consider checking those packages if it would be fruitful.


Additional Credits:
Quatchi, who suggested the idea for this program and provided valuable technical assistance.

Tarlia, who has been my major tester and a valuable source of suggestions. Tarlia used an earlier version of the HoodChecker in the creation of her clean neighborhood and subhood templates:
http://meetme2theriver.livejournal....030.html#cutid1

Everyone who created a shared populated neighborhood, documented in the wiki. These neighborhoods were the inspiration for this tool, and I used them extensively in my testing:
http://simswiki.info/wiki.php?title...d_Neighborhoods