Before You Begin


One must be acquainted with the use of a Sims 3 Package Editor.
I recommend S3PE available here.

You will also need Packer from here to generate STBL.

You must also know how to read XML and understand the format enough to at least copy/paste existing XML and change it.

It would also be wise to be familiar with an image editing program such as Photoshop or Gimp as you will need to create or modify an image.

The Icon


You will need a square 40 x 40 canvas to start with. The background must be transparent.

Next you will need your icon which should be roughly 35 x 28, give or take a few pixels. It must be centered on the transparent 40 x 40 canvas. You must save it as a PNG.

Tip: You will want a simple icon as it will lose a lot of detail when sized down. Ideally you should be able to silhouette it (the act of filling every pixel with one color) without it appearing to be a blob of nothing.
Most of the icons in the game are pure white silhouette's with some minor shading to subtly fix the "blob of nothingness". While it's no crime to shy away from this, it will make yours scream "I don't belong" more if you do.

Steps


  1. external image artworks-000044450507-b5cz7o-original.gif?30a2558
  2. Open S3PE and go to File -> New to create a new package. Go ahead and File -> Save As it. You can name it whatever rocks your boat.
  3. Download this zip file and open it then drag both files inside it to your desktop or a folder:
  4. Double click the "BootStrapCreator.exe" file. It will create a new DLL with a random generated name.
    • Mine generously gave me 83532696410988.dll which we will use for creating a ice cream parlor tag.
  5. Go back to your package then go to Resource -> Add. Select S3SA 0x073FAA07 as the type. Enter 0 for group. In the name box, enter the name of the randomly generated DLL exactly as generated complete with .dll at the end. Now hit the FNV64 button (to generate the instance) then finally OK.
  6. Next right click on the newly added resource and select Import DLL. Navigate to where the DLL is located and select it then mash Open.
  7. Now go back to Resource -> Add. This time we are selecting _XML 0x0333406C (pay attention to the number!). Enter 0 for the group and now enter the same DLL name into the name box. Press FNV64 and then OK.
  8. Right click on the XML resource that was added and select Notepad to open a blank file. Enter this replacing the valid parts with your data (for instance, replace NRaas with your creator name and IceCreamParlor with your new type.)
    <?xml version="1.0"?>
    <LotTypes>
     <LotTypeFile>
     <File></File>
     </LotTypeFile>
     <LotTypeFile>
     <File>NRaas.CommericalLotSubType.IceCreamParlor.LotType</File>
     </LotTypeFile> 
    </LotTypes>


  9. File -> Save on the notepad to save the notepad then close it. When asked if you want to commit the resource, pick yes.
  10. Next go to Resource -> Import From File. You will want to select your desired icon. Make sure you have All files selected in the drop down above Open if you are not seeing your icon.
  11. With the icon selected, S3PE will automatically open a Resource Details dialog. You'll want to select IMAG 0x2F7D0004 (pay attention again). Enter 0 for group and once again replace the name. Your icon name must have this naming convention: hud_icon_<tagname><creatorname>_r2. In this example my icon name would be hud_icon_icecreamparlornraas_r2. Hit FNV64 and then OK.
  12. Next go Resource -> Add. We are once again selecting _XML 0x0333406C. Group should be 0 and the name should be the exact name you used above. "NRaas.CommericalLotSubType.IceCreamParlor.LotType" (without quotes!). Hit FNV64 and then OK.
  13. Right click on the XML resource that was added and select Notepad to open a blank file. Enter this replacing the valid parts with your data.
    <?xml version="1.0"?>
    <LotTypes>
     <Types>
     <TypeName></TypeName>
     <Icon></Icon>
     <ColorHEX></ColorHEX>
     <isBusinessType></isBusinessType>
     </Types>
     <Types>
     <TypeName>kOwnableIceCreamParlorNRaas</TypeName>
     <Icon>hud_icon_icecreamparlornraas_r2</Icon>
     <ColorHEX>14B8DB</ColorHEX>
     <isBusinessType>True</isBusinessType>
     </Types>
    </LotTypes>
  14. TypeName should be a unique name for the tag. In my example I would pick kOwnableIceCreamParlorNRaas. Ownable is not important, just something I added to lot that can be ran as a business. You will want to enter the exact name for the icon you picked above as well. ColorHEX should be the default color hex. isBusinessType is not used right now but if your tag is business related, set this to true.
  15. Finally save the notepad and commit the changes in S3PE. Now save the package. You don't need to do anything else in S3PE. close it.
  16. Now open the package in Packer and right click anywhere in the resource window. Select STBL -> Rename All then OK on the box that pop up. All STBL languages should be added to the package. Save it.
  17. Create a new text file somewhere named StringTableEnglish. Enter this replacing the valid parts with your data (notice the name after the colon is exact as TypeName above)
    <KEY>Gameplay/Excel/Venues/CommunityTypes:kOwnableIceCreamParlorNRaas</KEY>
    <STR>Ice Cream Parlor</STR>
  18. Right click on Strings UnhashedKeys inside Packer and click Import. Navigate to the text file you made above and select it.
  19. Right click on Strings English and go to Import selecting the text file you created above. Finally right click on Strings English and go to STBL -> Import English. Select yes when prompted and save.
  20. You can now install your package and your custom tag should be in game.

If you have any questions please ask. You may host your custom tags here if you'd like, just zip the package up, upload and post a thread with details. :)