Difference between revisions of "Sims 2 String Substitutions"
From SimsWiki
				
								
				
				
																
				
				
				| MogHughson  (Talk | contribs) |  (→Special Substitution inserts) | ||
| (11 intermediate revisions by 3 users not shown) | |||
| Line 12: | Line 12: | ||
| |$Neighbor||''Insert name of neighbor pointed at by neighbor ID in stackObject ID'' | |$Neighbor||''Insert name of neighbor pointed at by neighbor ID in stackObject ID'' | ||
| |- | |- | ||
| − | |$FamilyAssets|| | + | |$FamilyAssets:X||Insert family monetary Net worth into string from family index in local var (note: includes budget, lot and objects value) | 
| |- | |- | ||
| |$Family||''Insert house-hold name of person in stack object into string'' | |$Family||''Insert house-hold name of person in stack object into string'' | ||
| Line 18: | Line 18: | ||
| |$Me||Insert [[CTSS|catalog name]] of current object/Sim contained in the special [[Sims_2_Variables#My|My]] variable | |$Me||Insert [[CTSS|catalog name]] of current object/Sim contained in the special [[Sims_2_Variables#My|My]] variable | ||
| |- | |- | ||
| − | |$Object|| | + | |$Object||Insert [[CTSS|catalog name]] of current stack object into string | 
| |- | |- | ||
| |$Local:X||Insert value of [[Sims 2 Local|Local variable]] X | |$Local:X||Insert value of [[Sims 2 Local|Local variable]] X | ||
| |- | |- | ||
| − | |$TimeLocal|| | + | |$TimeLocal:X||Insert hour of day in text contained in [[Sims 2 Local|Local variable]] X | 
| |- | |- | ||
| |$NameLocal:X||Insert [[CTSS|catalog name]] of object/Sim with ID contained in [[Sims 2 Local|Local variable]] X | |$NameLocal:X||Insert [[CTSS|catalog name]] of object/Sim with ID contained in [[Sims 2 Local|Local variable]] X | ||
| Line 28: | Line 28: | ||
| |$NameAttrib:X||''Insert [[CTSS|catalog name]] of object with ID pointed at index X of stack objects attribute (?)'' | |$NameAttrib:X||''Insert [[CTSS|catalog name]] of object with ID pointed at index X of stack objects attribute (?)'' | ||
| |- | |- | ||
| − | |$NeighborLocal:X||Insert name of  | + | |$NeighborLocal:X||Insert name of Sim pointed at by [[Sims 2 Neighbor ID|Neighbor ID]] contained in [[Sims 2 Local|Local variable]] X | 
| |- | |- | ||
| |$Attrib:X||''Insert attribute value X of stack objects attribute (?)'' | |$Attrib:X||''Insert attribute value X of stack objects attribute (?)'' | ||
| |- | |- | ||
| |$CatalogLocal:X||Insert [[CTSS|catalog description]] of object with ID contained in [[Sims 2 Local|Local variable]] X | |$CatalogLocal:X||Insert [[CTSS|catalog description]] of object with ID contained in [[Sims 2 Local|Local variable]] X | ||
| + | |- | ||
| + | |$GUIDCatalogNameLocal:X:Y||Insert [[CTSS|catalog description]] of object with [[GUID]] contained in [[Sims 2 Local|Local variables]] X and Y. Availabled with Pets or higher | ||
| |- | |- | ||
| |$TokenNameLocal:X||''Insert catalog name of object type pointed at by token type, which is indexed by local var X'' | |$TokenNameLocal:X||''Insert catalog name of object type pointed at by token type, which is indexed by local var X'' | ||
| |- | |- | ||
| − | |$DayLocal:X|| | + | |$DayLocal:X||Insert text name of day given in local var X. Day values are 0-6, 0 being Sunday. This is unlike the Global variable "Day of Week" which starts with Monday as 0 instead | 
| |- | |- | ||
| |$JobTitle:X||''Insert text name of a job title of given object. Using index passed in via local var X, this indexes into string table 800 (?)'' | |$JobTitle:X||''Insert text name of a job title of given object. Using index passed in via local var X, this indexes into string table 800 (?)'' | ||
| |- | |- | ||
| |$PrivateString:X:Y||Gets the Private string from the [[STR#STR.23|String Resource]] number in Local:X (have made it work for 0x0101), and the string within that table which is in Local:Y | |$PrivateString:X:Y||Gets the Private string from the [[STR#STR.23|String Resource]] number in Local:X (have made it work for 0x0101), and the string within that table which is in Local:Y | ||
| + | |- | ||
| + | |$SemiGlobalString:X:Y||''Gets the Semi global string from the [[STR#STR.23|String Resource]] number in Local:X, and the string within that table which is in Local:Y'' | ||
| |- | |- | ||
| |$LastName||''Gets the current family's last name'' | |$LastName||''Gets the current family's last name'' | ||
| + | |- | ||
| + | |$FullNameLocal:X||Insert full name of Sim pointed at by [[Sims 2 Neighbor ID|Neighbor ID]] contained in [[Sims 2 Local|Local variable]] X | ||
| + | |- | ||
| + | |$||Displays simoleon sign - § | ||
| + | |- | ||
| + | |$LotNameLocalByLotId:X||Displays the name of the lot with Lot ID given in Local X | ||
| + | |- | ||
| + | |$Cash:5:6||Displays amount; useful for money. Local 6=Div (10,000s), Local 5=Mod (remainder). Note: it might not take any locals other than 5 and 6. | ||
| + | |- | ||
| + | |$Money:X:Y||''Not sure. Example of usage I saw: local X=base value (1000), local Y=multiplier (~1-19)''  | ||
| + | |- | ||
| + | |$PropertyGlobalString:X:Y||''Displays result of lua script by the name found in Local X=string set, Local Y=string index. There is Global Properties STR 0x00000133 for this.'' | ||
| + | |- | ||
| + | |$PrimaryNeighborhood||Displays main neighborhood's name, e.g. Strangetown. | ||
| + | |- | ||
| + | |$WantDescriptionLocal:X:Y||Displays want name of SimID in Local X. Want slot index in Local Y. | ||
| + | |- | ||
| + | |$FearDescriptionLocal:X:Y||Displays fear name of SimID in Local X. Fear slot index in Local Y. | ||
| |} | |} | ||
Latest revision as of 09:23, 28 September 2025
[edit] Overview
When creating a String Resource for one of the many uses in Sims 2 (including dialogs) you can use special substitution strings to have your string filled in at runtime with something that isn't static, for example a Sims name, or a value calculated at runtime.
[edit] Special Substitution inserts
Italics in the table below indicates an unconfirmed description.
| Substitution | Description | 
|---|---|
| $Neighbor | Insert name of neighbor pointed at by neighbor ID in stackObject ID | 
| $FamilyAssets:X | Insert family monetary Net worth into string from family index in local var (note: includes budget, lot and objects value) | 
| $Family | Insert house-hold name of person in stack object into string | 
| $Me | Insert catalog name of current object/Sim contained in the special My variable | 
| $Object | Insert catalog name of current stack object into string | 
| $Local:X | Insert value of Local variable X | 
| $TimeLocal:X | Insert hour of day in text contained in Local variable X | 
| $NameLocal:X | Insert catalog name of object/Sim with ID contained in Local variable X | 
| $NameAttrib:X | Insert catalog name of object with ID pointed at index X of stack objects attribute (?) | 
| $NeighborLocal:X | Insert name of Sim pointed at by Neighbor ID contained in Local variable X | 
| $Attrib:X | Insert attribute value X of stack objects attribute (?) | 
| $CatalogLocal:X | Insert catalog description of object with ID contained in Local variable X | 
| $GUIDCatalogNameLocal:X:Y | Insert catalog description of object with GUID contained in Local variables X and Y. Availabled with Pets or higher | 
| $TokenNameLocal:X | Insert catalog name of object type pointed at by token type, which is indexed by local var X | 
| $DayLocal:X | Insert text name of day given in local var X. Day values are 0-6, 0 being Sunday. This is unlike the Global variable "Day of Week" which starts with Monday as 0 instead | 
| $JobTitle:X | Insert text name of a job title of given object. Using index passed in via local var X, this indexes into string table 800 (?) | 
| $PrivateString:X:Y | Gets the Private string from the String Resource number in Local:X (have made it work for 0x0101), and the string within that table which is in Local:Y | 
| $SemiGlobalString:X:Y | Gets the Semi global string from the String Resource number in Local:X, and the string within that table which is in Local:Y | 
| $LastName | Gets the current family's last name | 
| $FullNameLocal:X | Insert full name of Sim pointed at by Neighbor ID contained in Local variable X | 
| $ | Displays simoleon sign - § | 
| $LotNameLocalByLotId:X | Displays the name of the lot with Lot ID given in Local X | 
| $Cash:5:6 | Displays amount; useful for money. Local 6=Div (10,000s), Local 5=Mod (remainder). Note: it might not take any locals other than 5 and 6. | 
| $Money:X:Y | Not sure. Example of usage I saw: local X=base value (1000), local Y=multiplier (~1-19) | 
| $PropertyGlobalString:X:Y | Displays result of lua script by the name found in Local X=string set, Local Y=string index. There is Global Properties STR 0x00000133 for this. | 
| $PrimaryNeighborhood | Displays main neighborhood's name, e.g. Strangetown. | 
| $WantDescriptionLocal:X:Y | Displays want name of SimID in Local X. Want slot index in Local Y. | 
| $FearDescriptionLocal:X:Y | Displays fear name of SimID in Local X. Fear slot index in Local Y. | 
