Difference between revisions of "Sims 2 String Substitutions"

From SimsWiki
Jump to: navigation, search
(extra knowledge on DayLocal)
 
(5 intermediate revisions by 2 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||''Insert family monetary Net worth into string from family index in local var''
+
|$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||''Insert [[CTSS|catalog name]] of current stack object into string''
+
|$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
Line 38: Line 38:
 
|$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||''Insert text name of day given in local var X. Day values are 0-6, 0 being Sunday (?)''
+
|$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 (?)''
Line 44: Line 44:
 
|$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
 
|-
 
|-
|$SmiGlobalString: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''
+
|$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
 
|$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.
 
|}
 
|}

Latest revision as of 14:30, 24 January 2024

[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.
Personal tools
Namespaces

Variants
Actions
Navigation
game select
Toolbox