Custom objects placeable on OFB displays and shelves *UPD 22APR*

13,725 Downloads 2,914 Thanks  Thanks 259 Favourited 339,974 Views
  Featured Upload!   This is a featured upload! It showcases the best talent and creativity available on MTS and in the community.
Uploaded: 7th Mar 2006 at 10:29 PM
Updated: 22nd Apr 2006 at 8:41 PM - Included support for Windkeeper's "Placement on locked tiles" hack
Global Hack - OFB required

If you want to place custom objects on the Business shelves, consider to batch-fix
your downloads (following THIS TUTORIAL)
instead of these hacks


Both the "More" and "Less" hacks conflict with Windkeeper's "Locked Tile Fix". If you want the objects to be placed both on the OFB shelves and on the locked tiles, please download the "More+LockedTiles" or the "Less+LockedTiles" hacks, attached to this post. And read Windkeeper's original thread for info about the Locked Tiles!
As usual, you can have only ONE of the four versions in your game (that's why all these hacks have the same filename).

KNOWN MAXIS BUG: it has been reported by many users that sometimes - when a customer buys the item, or when your sims restock the shelves - the restock sign is misplaced (it will appear at a corner of the lot).
This happens more frequently if you use any of these hacks (the "More" version makes the bug occur more frequently than the "Less" version).
But the "restock sign misplacing" bug has been reported also by users that did NOT install these hacks. From the reports that I've collected, there is a Maxis bug that causes the restock signs to be "teleported" to a corner of your lot, especially if you:
  • place the objects using the move_objects cheat;
  • move or remove the restocks signs using the normal "hand" tool (you should use the "hand" only in Business Build Mode, i.e. selecting the "price tag" icon in the top-right panel);

If you have experienced this bug, read the method to get rid of misplaced restock signs in THIS POST.


(Original post)

You may have noticed that the shelves and shop displays that came with Open For Business can hold only Maxis objects, and that - on the contrary - no custom-created objects are allowed on them.

This problem can be solved by installing the provided global hack.

WARNING: THIS IS A GLOBAL HACK (i.e. it affects all the objects in all the lots), and therefore IT MUST BE USED WITH CAUTION, just like any other global hack. Also, it may be included in your exported lots.

What does this hack do?
It changes on the fly a particular value in the Object Data of all the objects picked from the catalog (no permanent changes are made to the objects or to the packages), setting them as "placeable on shop shelves".
Once installed, you'll be able to place custom objects on all business shelves, including the "Magicsplay" that is used on the counters.
This hack works with all the existing custom objects, and all the future cloned object, too.

  • The "MORE" version lets you place on the shelves more objects than Maxis decided; sometimes, the objects can just look too "crowded": in this case, you can fill completely the shelf and then remove the unwanted items.
    bla bla
  • The "LESS" version keeps the original Maxis settings for the objects (Maxis seems to like half empty shelves ): the shelves will look definitely less "overcrowded.
You can obviously have only one version in your Downloads folder! (both packages have the same name, so it would be hard to keep both, lol! )

Installation / Uninstallation
Extract the file "Numenor_GlobalHack_OFB_Custom-objects-placeable-on-shelves.package" from the chosen zip ("more" or "Less"), and place it in the Downloads folder. Remove it from the Downloads to restore the original situation.

Technical explanation
Maxis started to use a previously unused data field in the Object Data: the data field 0x004F [Unused - Shadow Brightness (Sims1)]. I've noticed that almost all the existing objects, before OFB, had this field set to zero or 0x96; while in OFB the objects have a value of 0x2 (small objects), 0x1 (medium objects) and 0x00 (large objects).
I've edited the global 0x010F "Init - Object" BHAV (that - in my experience - is called from *all* the objects init BHAV), appending the following line:
"0x0002 (Expression) - Stack Object's Master definition 0x004F Set to Literal 0x0002". This line overrides the value stored in the Object Data field 0x004F, "replacing" it with the value 0x2 (which, in my tests, is the only one that allows placement on business shelves).
The "Less" version performs the said change only if the existing value is >2 (so to keep the Maxis setting, if existing).

Please report any oddity you may notice while using this hack. Open For Business is required (obviously )..