TS3PR/SimIFace/Sims3
Contains all the helper enums for figuring out which Resource type or group is considered by what groupId the pack is or what it is. These groups and types can be seen in S3PE as well, where on the top we see 'name', 'Type', 'Group', 'Instance'. See additional information below each Enum to figure out how to find these groups/types back in s3pe.
Example:
Enum: ProductFlag_CS
This enum seems to figure out which GroupID fits with what pack, and should only be used if you want to make your own resource types (not recommended).
Used primarily by:
Sims3.SimIFace.ResourceUtils Sims3.SimIFace.SocialFeatures.Accounts
[ComVisible(false)]
public enum ProductFlag_CS : uint
{
kProductFlag_Basegame = 1u, // S3PE displays this as 0x00000000 however. But most VPYX resources and xml resources do use 0x00000001 as 'basegame'
kProductFlag_EP01 = 2u,
kProductFlag_SP01 = 4u,
kProductFlag_EP02 = 8u,
kProductFlag_SP02 = 0x10,
kProductFlag_EP03 = 0x20,
kProductFlag_SP03 = 0x40,
kProductFlag_EP04 = 0x80,
kProductFlag_SP04 = 0x100,
kProductFlag_EP05 = 0x200,
kProductFlag_SP05 = 0x400,
kProductFlag_EP06 = 0x800,
kProductFlag_SP06 = 0x1000,
kProductFlag_SP07 = 0x2000,
kProductFlag_EP07 = 0x4000,
kProductFlag_EP08 = 0x8000,
kProductFlag_SP08 = 0x10000,
kProductFlag_EP09 = 0x20000,
kProductFlag_EP10 = 0x40000,
kProductFlag_SP09 = 0x80000,
kProductFlag_EP11 = 0x100000,
kProductFlag_All_SPs = 603476u
}
USAGE:
Most of these are converted properly. However, in order to read 'kProductFlag_EP01 = 2u,' we can easily convert it to a proper hex notation. The Group inside S3PE has the following format: 0x00000000. This means 2u will become: 0x00000002
Another example of this: kProductFlag_SP08 = 0x10000, as a groupId inside S3PE will be: 0x00010000
This is also the reason why we can easily make 'pack required' objects base game compatible, by just changing the groupId to 0x00000000 ;)
Enum: ProductID_CS
A helper Enum that flags the productId with the correct ProductFlag_CS, eventually. This can especially be seen happening inside the Sims3.SimIFace.ResourceUtils.ProductID_CS FlagToProductID(ProductFlag_CS flag) function.
Used primarily by:
Sims3.SimIFace.ResourceUtils
[ComVisible(false)]
public enum ProductID_CS : uint
{
kProductID_Invalid,
kProductID_BaseGame,
kProductID_EP01,
kProductID_SP01,
kProductID_EP02,
kProductID_SP02,
kProductID_EP03,
kProductID_SP03,
kProductID_EP04,
kProductID_SP04,
kProductID_EP05,
kProductID_SP05,
kProductID_EP06,
kProductID_SP06,
kProductID_SP07,
kProductID_EP07,
kProductID_EP08,
kProductID_SP08,
kProductID_EP09,
kProductID_EP10,
kProductID_SP09,
kProductID_EP11,
kNumProductID
}
Enum: ResourceTypes
Are all the Types of resources we can find within the game, but inside a helper enum. The resource types are decimals that need to be converted to hex for you to figure out what the proper type is in S3PE.
Used primarily by:
Sims3.SimIFace.ResourceUtils
[ComVisible(false)]
public enum ResourceTypes : uint
{
kAnimatedTextureResourceID = 1671642791u, //0x63A33EA7
kAssemblyManifestID = 140796009u, //0x08646069
kAviVideoResourceID = 187479104u, //0x0B2CB440
kBlendGeometryResourceID = 108833297u, //0x067CAA11
kBlendUnitResourceID = 3039776853u, //0xB52F5055
kBodyBlendResourceID = 103580164u, //0x062C8204
kBoneDeltaPoseResourceID = 55959718u, //0x0355E0A6
kCASColorInfoResourceID = 103965168u, //0x063261F0
kCASMaterialResourceID = 15415682u, //0x00EB3982
kCASPartDataResourceID = 55242443u, //0x034AEECB
kCASPartResourceID = 46981753u, //0x02CCE279
kCatalogObjectResourceID = 329217425u, //0x139F7591
kChecksumResourceID = 2192848260u, //0x82B43584
kClipResourceID = 1797309683u, //0x6B20C4F3
kCoatSetResourceID = 3735196956u, //0xDEA2951C
kColorInfoResourceID = 103817841u, //0x6302271
kComplatePresetResourceID = 72016144u, //0x044AE110
kCompositorCacheEntryID = 64504770u, //0x03D843C2
kCompositorCacheMRUID = 81276304u, //0x04D82D90
kCompoundBlendResourceID = 85848797u, //0x051DF2DD
kCTProductExportResourceID = 100201945u, //0x05F8F5D9
kCTProductObjectResourceId = 832458525u, //0x319E4F1D
kDataClassResourceID = 47638553u, //0x02D6E819
kDBCacheIndex = 1987244229u, //0x7672F0C5
kDreamsAndPromisesTreeResourceID = 100969434u, //0x0604ABDA
kDynamicChallengeResourceId = 206550257u, //0x0C4FB4F1
kEffectsObjectResourceID = 765562755u, //0x2DA18F83
kExpressionBlendResourceID = 168000986u, //0x0A037DDA
kFacialBlendResourceID = 56144010u, //0x0358B08A
kFootprintResourceID = 3548561239u, //0xD382BF57
kFurBlendResourceID = 2480425025u, //0x93D84841
kGeometryResourceID = 22681673u, //0x015A1849
kHairColorInfoResourceID = 103965146u, //0x063261DA
kHairToneResourceID = 55925672u, //0x03555BA8
kHouseholdExportResourceID = 188367198u, //0x0B3A415E
kIniResourceID = 529034925u, //0x1F886EAD
kInGameAdTextureResourceID = 2415624438u, //0x8FFB80F6
kInteractionTuningResourceID = 62078431u, //0x03B33DDF
kInventoryExportResourceID = 203281819u, //0x0C1DD59B
kInventoryResourceID = 3034411371u, //0xB4DD716B
kKeyNameMapResourceID = 23462796u, //0x0166038C
kLevelResourceBinID = 1486262296u, //0x58969018
kLevelResourceXmlID = 1482613520u, //0x585EE310
kLightingDataResourceID = 62178845u, //0x03B4C61D
kLightSetResourceBinID = 1342185768u, //0x50002128
kLightSetResourceXmlID = 1343759936u, //0x50182640
kLotExportResourceID = 1131408972u, //0x436FEE4C
kMakeupColorInfoResourceID = 979742505u, //0x3A65AF29
kMaterialDefResourceID = 30467933u, //0x01D0E75D
kMaterialSetResourceID = 27185975u, //0x019ED337
kModelResourceID = 23466547u, //0x01661233
kModularObjectResourceId = 3482995406u, //0xCF9A4ACE
kNameGuidMapResourceID = 4087579504u, //0xF3A38370
kObjectColorInfoResourceID = 103965203u, //0x06326213
kObjectResourceID = 47985727u, //0x02DC343F
kObjectSlotResourceID = 3540272417u, //0xD3044521
kPackageManifestResourceID = 1944665835u, //0x73E93EEB
kPassportChallengeResourceId = 206550265u, //0x0C4FB4F9
kPatternResourceID = 3571055589u, //0xD4D9FBE5
kPhysicsResourceID = 3583541280u, //0xD5988020
kPrototypeResourceID = 47637849u, //0x02D6E559
kProductIDResourceID = 359101189u, //0x15677305
kRecordType_WorldFileNotPackaged = 74956138u, //0x0477BD6A
kRecordType_DownloadedResourceList = 117730105u, //0x07046B39
kResourceLookupTableResourceID = 204973493u, //0x0C37A5B5
kRigResourceID = 2393838558u, //0x8EAF13DE
kRigResourceFallbackID = 203705141u, //0x0C244B35
kSignatureResourceID = 2495992138u, //0x94C5D14A
kSignedAssemblyID = 121612807u, //0x073FAA07
kSimBinOutfitResourceID = 83169331u, //0x04F51033
kSimExportResourceID = 83396964u, //0x04F88964
kSimOutfitResourceID = 39769844u, //0x025ED6F4
kSims3BundleResourceID = 137167721u, //0x082D0369
kSkinControllerResourceID = 11431015u, //0x00AE6C67
kSkinTonePresetResourceID = 1919433749u, //0x72683C15
kSkinToneResourceID = 55867754u, //0x0354796A
kSpeciesDefinitionResourceID = 156595936u, //0x095576E0
kSpeedTreeDataResourceID = 35487372u, //0x021D7E8C
kSpeedTreeResourceID = 11883242u, //0x00B552EA
kSSLCertificateResourceID = 147361542u, //0x08C88F06
kStateMachineResourceID = 47570707u, //0x02D5DF13
kStringTableID = 570775514u, //0x220557DA
kTextResourceID = 3694651748u, //0xDC37E964
kTextureCompositorResourceID = 54137909u,
kTextureFabricResourceID = 54635721u, //0x033A1435
kTextureResourceID = 11720834u, //0x00B2D882
kThumbnailValidationResourceID = 851980437u, //0x32C83095
kThumbnailExpirationResourceID = 380729964u, //0x16B17A6C
kTrackMaskResourceID = 53633251u, //0x033260E3
kTriggerMapResourceID = 2465693650u, //0x92F77FD2
kTrueTypeFontResourceID = 103718624u, //0x062E9EE0
kTuningOverrideResourceID = 439484877u, //0x1A3201CD
kUIImageJPEGResourceID = 796721154u, //0x2F7D0002
kUIImagePNGResourceID = 796721156u, //0x2F7D0004
kUIImageTGAResourceID = 796721158u, //0x2F7D0006
kUIImageCustomThumbnailResourceID = 779470692u, //0x2E75C764
kUILayoutResourceID = 39622070u, //0x025C95B6
kUITextureUVMap = 796721160u, //0x2F7D0008
kUrlImageResourceID = 3692018064u, //0xDC0FB990
kUserPresetListResourceID = 93434287u, //0x0591B1AF
kVideoResourceID = 2982943478u, //0xB1CC1AF6
kVisualProxyResourceID = 1936229617u, //0x736884F1
kWorldMetadataDetailsResourceID = 107542056u, //0x0668F628
kWorldMetadataHashResourceID = 899890729u, //0x35A33E29
kWorldMetadataImagePathResourceID = 107542073u, //0x0668F639
kWorldMetadataImageResourceID = 107542069u, //0x0668F635
kWorldMetadataNameResourceID = 3653044489u, //0xD9BD0909
kWorldMetadataNameHashResourceID = 36402540u, //0x022B756C
kWorldMetadataNumLotsResourceID = 107542064u, //0x0668F630
kWorldMetadataResourceID = 694837848u, //0x296A6258
kWorldExportResourceID = 112992146u, //0x06BC1F92
kWorldMetaDataResourceID = 114182148u, //0x06CE4804
kWorldPackageIdResourceID = 4127849824u, //0xF609FD60
kXMLResourceID = 53690476u, //0x0333406C
kWorldTexturesResourceID = 142361223u, //0x087C4287
kStoreBuffResourceID = 3711050663u, //0xDD3223A7
kStoreSkillsResourceID = 2832567269u, //0xA8D58BE5
kStoreTraitsResourceID = 3843051616u, /0xE5105060
KStoreDnPPrimtiveXMLResourceID = 3162301119u, //0xBC7CE2BF
kStoreSetObjectsResourceID = 3843051617u, //0xE5105061
kStoreInsectsButterfliesResourceID,
kStoreInsectsBeetlesResourceID,
kStoreInsectsGlowBugResourceID = 209652431u, //0x0C7F0ACF
kStoreInsectsSpawnersResourceID = 3843051620u, //0xE5105064
kStoreIngredientsResourceID = 3843051622u, //0xE5105066
kStoreRecipesResourceID,
kStorePlantsResourceID,
kStoreTextBlob = 1287087065u, //0x4CB763D9
kStoreSuperBundleInfo = 1719767350u //0x66819136
}
USAGE:
To convert the Uint (decimal) to a hex version of it for us to search in s3pe with eventually (or to check ;)), you'll need to do as follow:
- 1. Open your calculator and set it to 'programmer' mode.
- 2. Click the 'Decimal' option
- 3. Paste the resource Decimal you want to convert (In my case, I'll go with kXMLResourceID = 53690476u, so, I'll convert '53690476' from decimal to hex)
- 4. This comes back as 333406C, which needs to be seen as 0x333406C really.
Now, if we use the search option inside S3PE (which is, tick the Filter active checky box and the 'ResourceType' check box, then dump the hex version in the resource type box and click 'set'), then we see it returns as an XML resource! :)
NOTE: If your decimal > hexadecimal has 6 or 7 numbers, just put a 0 at the beginning. TS3 always has 8 digits as a type. So to fix this, do the following: 15415682(decimal) is EB3982 in hex. because it needs to be 8, we'll need to add 2 0's: 0x00EB3982 (In the case if it's 7 digits, we only want to add 1 0 at the beginning ;), whereas in this example we want 2 since it was only 6 digits)
This page can also be your friend when it comes to double checking: Files by type code