Back Previous Next

Why hack at all?

There are fans who hack objects, possibly for their own gameplaying fun, possibly to put them up as downloads on the web. These objects may be altered in appearance (reshaped or recoloured), hacked (the code is changed for some special effect), or both. With a bit of luck, the appearance is changed, the code is changed and the product gets an all-new description in the catalogue, so that I don't see two totally different computers with the same sales blurb, or two identical crystal balls of which only the catalogue description tells me whether this is the standard Madame Blahbatfry object or the newly downloaded Lovecraft. Changing the catalogue description isn't really necessary for objects that only had their colours changed (such objects are disdainfully called "recolours", but they can come in handy when trying to find just the right hue of something) although it's always nice if the maker includes name and URL. In summary, there are fans who hack objects, and can produce the most creative and bizarre of downloads. And there are fans who are contented to download, or to stick to standard content.

Yet even the second type of fan may occasionally want to hack. The downloaded object may contain some imperfection, like a witty catalogue description that only shows up if the Sims installation language is "US". The object may be from an earlier version; this applies especially to hacked versions of "PersonGlobals.iff", which grows with every expansion pack. Replacing standard objects with older (or newer!) hacked ones may cause all sorts of errors. Some hacks are so simple, you shouldn't have to download them; and with sites becoming paysites and authors of hacked objects adamantly claiming their copyright in what one artist aptly called the "object war", some hacks you might not want to download.

Before the hacking starts, one warning: don't use Script Station. This utility is fine for looking inside code to figure out how it works, but I've used it and found that code I'd just saved was gone. It's unreliable; that's part of why it's not up for download any more. (The other part is that the maker got a warning from Maxis that SimAntics was Maxis' property, therefore a utility to edit SimAntics constituted an infringement. But if I can't hack objects, why bother with the game?) The same applies to Codex (version 0.6), a relatively new and incredibly useful tool that shows BHAV trees as diagrams, so it's immediately obvious which line leads where. However, it too didn't save reliably, and sometimes quit with an error. Most hacks described have been done using the excellent replacement IFF Pencil 2 (generally called IFF Pencil, but not to be confused with the older version which did little more than show blocks of hex) which is compatible with all versions up to Unleashed. This is a PC tool that requires Windows 9xx and the Sims installed (though it can be fooled, see Utility quirks). And as this utility's name will be repeated so often in the following howtos, I've decided to drop the italics from here on. (Mac users can use IFFSnooper, which is now compatible with all expansion packs.)

Some knowledge of this tool, and of the internal structure of the average IFF object file, is needed and assumed; basically, an IFF consists of named blocks, where each block contains numbered sub-blocks (mostly code, sometimes images). In this IFF editor, the blocks are shown on the left, and their contents on the right; double-click on a block to see the contents of only that block listed, and double-click on the contents to edit them. Right-clicking in various fields may bring up a menu to add or import blocks or lines. The physical file will not be altered until it is saved.

Hacking an object from one's own installation is perfectly safe, as the Sims object files are packed into FAR files. An object file can be extracted from these FAR files, hacked and put in the same directory as the FAR it belongs to; the game will then load the hacked version instead, and the archived version in the FAR remains as backup. To get rid of the hack, all that's needed is to delete the hacked object, and the standard version will be loaded again.

This also applies to skins, meshes and probably any file inside a FAR. In the pics above, I've re-coloured Newsie's cap out of "Textures.far" from red to green and put the altered bitmap in GameData/Textures.

Obviously, NO FILES MUST BE MOVED OR ALTERED WHILE THE GAME IS RUNNING. (House IFFs are an exception, they can be overwritten while in the Neighbourhood screen.)





Back Previous Next