Back Previous Next

Basics

This kind of editing is restricted to the files in the UserData directory: character IFFs ("user000xx"), house IFFs ("housexx.iff"), possibly FAM files (Familyname_nn.FAM) and the central, incredibly important "neighborhood.iff", which should always be backed up, and never simply deleted.

Why not? Well, here's why. The neighbourhood IFF stores the identity and all the stats of every character in the neighbourhood, and the relationships with every other character. When the neighbourhood IFF is deleted, the Sims don't just lose their points: they cease to exist.

A Sim is built up like this: when a family is imported or a new one created, each individual Sim gets a hexadecimal code. This code is stored in the neighbourhood IFF. It stores this Sim ID, the family this Sim is in and the character IFF of the Sim. The character IFF stores the first name and bodystrings - which mesh and skin to use for which dress style. It fleshes out the Sim, as it were. The Sim's identity is not stored in the character IFF.

As a Sim is put in a house, the Sim's ID, character IFF name, and even first name is stored in the house IFF along with any other things the house contains; that includes guests and interaction objects. Now when a family is re-imported from a FAM file, a different Sim ID is assigned. Suppose SimKatrina is visiting SimJoe at his house, and I save the game and take both their FAM files and import them elsewhere. The FAM file is the neighbourhood IFF and character IFFs of a family combined, and it can store relationships between family members. But it can't store IDs, because in a new neighbourhood, that ID might already be taken; so new IDs are assigned. And the new, imported Katrina doesn't have the ID code that the old visiting Katrina does. And so Joe is alone in his new imported house, without visitors. If I open the house IFF in a hex editor, I might find the old Katrina's ID there; but it will probably be flushed out with any other missing objects after the next save.

Since the Sim's ID is centrally stored, it is possible to change the house IFF while the game is running. (But not the user IFF, as far as I know.) Only one house is loaded at a time; no house is loaded at all while in the neighbourhood screen. To provide homeless Sims with a free mansion, Alt-Tab from the neighbourhood screen to Windows (or use View Webpages, works on any system, though my Mac tends to hang on the actual pages) and overwrite the house IFF with a new one. Then load that family. The house will seem empty, and time will run very fast. Return the time to normal, and click on each icon to reconstitute the Sim. I read this tip on Slink's page, and assume the Sim ID is written into the house IFF from the neighbourhood IFF.

(This is especially convenient in versions of The Sims where a house can be built and furnished before a family moves in. Building and furnishing still costs, but as long as the house is empty, there is no family budget to deduct from and you can keep spending and spending. Then make a backup of the house, bulldoze the lot, have the family buy the empty lot and put back the house using the trick above. No money cheat needed!)

(However! SimPets may be turned into Strays using this method. Beware.)

Families also have an ID. A Sim moving in with another family is assigned a different family ID.

As the Sim is not identified uniquely by name, nor the family by surname, a neighbourhood could consist of ten families called "Smith", each with eight members called "John"; the game can still tell them apart. Although this makes it harder to locate files when manually editing, and the photo albums of the different families may also start to overlap. Errant photos are best sorted out with a utility called Photo Tailor.

House IFF files are numbered according to lot. Lot 1 will always be "House01.iff", etc. Characters will be numbered in order of creation, as will FAM files and Photo Album files.

And those are the basics to keep in mind when editing the Sims...





Back Previous Next