- Site Map >
- Modding and Creation >
- Sims 2 Creation >
- Modding Discussion >
- Research & Development >
- $<WHATEVER> In Dialogs/Dynamic Pie menu Options
- Site Map >
- Modding and Creation >
- Sims 2 Creation >
- Modding Discussion >
- Research & Development >
- $<WHATEVER> In Dialogs/Dynamic Pie menu Options
Replies: 23 (Who?), Viewed: 24425 times.
#1
16th Mar 2006 at 11:46 PM
Last edited by Giles1991 : 19th Mar 2006 at 6:05 PM.
Posts: 4
Thanks: 2 in 1 Posts
$<WHATEVER> In Dialogs/Dynamic Pie menu Options
Ok i know of $Object and recently found $Local:<BLA> so i have to ask, what others are there? i tryed searching, but the search failed to include the $ x_xEdit:
After reciveing a fairly large post from Inge_Jones i decided to try and make this a good reference for other people curious about this, Credit goes to Inge_Jones for the list in the first place
$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
$Family - Insert house-hold name of person in stack object into string
$Me - Insert catalog name of current person into string
$Object - Insert catalog name of current stack object into string
$Local:X - Insert value of local var X
$TimeLocal - Insert hour of day in text using in index of local var to point at var with hour value in it new ones
$NameLocal:X - Insert catalog name of object with ID pointed at inside of local var X
$NameAttrib:X - Insert catalog name of object with ID pointed at index X of stack objects attribute (?)
$NeighborLocal:X - Insert name of neighbor pointed at by neighbor ID with ID pointed at inside of local var X (?)
$Attrib:X - Insert attribute value X of stack objects attribute (?)
$CatalogLocal:X - Insert catalog description of object with ID of 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 (?)
$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 table X, string Y !WARNING! Guessed, yell at me if wrong
$LastName - Gets the current family's last name !WARNING! Guessed, yell at me if wrong
Key:
(?) - My interpertation of What Inge posted, Please correct me if i'm wrong
2 users say thanks for this.
(Who?)
Thanks
Advertisement
#2
17th Mar 2006 at 5:50 AM
$LocalX means the value of the local variable X is put into the message
#3
17th Mar 2006 at 7:19 AM
Posts: 11,682
Thanks: 9680 in 11 Posts
Here are some - and there are more. I must create or locate a full list some time
* static const string sNeighborSub("$Neighbor");
o Insert name of neighbor pointed at by neighbor ID in stackObject ID
* static const string sFamilyAssetsSub("$FamilyAssets");
o Insert family monetary Net worth into string from family index in local var
* static const string sFamilySub("$Family");
o Insert family name of person in stack object into string
* static const string sMeSub("$Me");
o Insert catalog name of current person into string
* static const string sObjectSub("$Object");
o Insert catalog name of current stack object into string
* static const string sLocalSub("$Local");
o Insert value of local var using passed index of local var to get value from
* static const string sTimeSub("$TimeLocal");
o Insert hour of day in text using in index of local var to point at var with hour value in it new ones
* static const string sNameLocalSub("$NameLocal");
o Insert catalog name of object with ID pointed at inside of passed in index of local var
* static const string sNameAttribSub("$NameAttrib");
o Insert catalog name of object with ID pointed at by passed in index of stack objects attribute
* static const string sNeighborLocalSub("$NeighborLocal");
o Insert name of neighbor pointed at by neighbor ID with ID pointed at inside of passed in index of local var
* static const string sAttribSub("$Attrib");
o Insert attribute value pointed at by passed in index of stack objects attribute
* static const string sCatalogDescriptionLocalSub("$CatalogLocal");
o Insert catalog description of object with ID pointed at inside of passed in index of local var
* static const string sTokenNameLocalSub("$TokenNameLocal");
o Insert catalog name of object type pointed at by token type, which is indexed by local var
* static const string sDayLocalSub("$DayLocal");
o Insert text name of day given an index to a local var with day value in it. Day values are 0-6, 0 being Sunday
* static const string sJobTitleSub("$JobTitle");
o insert text name of a job title of given object. Using index passed in via local var, this indexes into string table 800
I also know of $PrivateString:x:x and $LastName
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
* static const string sNeighborSub("$Neighbor");
o Insert name of neighbor pointed at by neighbor ID in stackObject ID
* static const string sFamilyAssetsSub("$FamilyAssets");
o Insert family monetary Net worth into string from family index in local var
* static const string sFamilySub("$Family");
o Insert family name of person in stack object into string
* static const string sMeSub("$Me");
o Insert catalog name of current person into string
* static const string sObjectSub("$Object");
o Insert catalog name of current stack object into string
* static const string sLocalSub("$Local");
o Insert value of local var using passed index of local var to get value from
* static const string sTimeSub("$TimeLocal");
o Insert hour of day in text using in index of local var to point at var with hour value in it new ones
* static const string sNameLocalSub("$NameLocal");
o Insert catalog name of object with ID pointed at inside of passed in index of local var
* static const string sNameAttribSub("$NameAttrib");
o Insert catalog name of object with ID pointed at by passed in index of stack objects attribute
* static const string sNeighborLocalSub("$NeighborLocal");
o Insert name of neighbor pointed at by neighbor ID with ID pointed at inside of passed in index of local var
* static const string sAttribSub("$Attrib");
o Insert attribute value pointed at by passed in index of stack objects attribute
* static const string sCatalogDescriptionLocalSub("$CatalogLocal");
o Insert catalog description of object with ID pointed at inside of passed in index of local var
* static const string sTokenNameLocalSub("$TokenNameLocal");
o Insert catalog name of object type pointed at by token type, which is indexed by local var
* static const string sDayLocalSub("$DayLocal");
o Insert text name of day given an index to a local var with day value in it. Day values are 0-6, 0 being Sunday
* static const string sJobTitleSub("$JobTitle");
o insert text name of a job title of given object. Using index passed in via local var, this indexes into string table 800
I also know of $PrivateString:x:x and $LastName
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
#4
17th Mar 2006 at 7:18 PM
Posts: 4
Thanks: 2 in 1 Posts
Wow, Thanks Inge, i've been trying random variables in a dialog half for debugging, half to see if they exist, i think i'll make the starting topic contain a list of them for other people to reference, as these are extreamly useful for fancyiny up messages, as i like to do far too much :P
#5
19th Mar 2006 at 6:03 PM
Posts: 71
{I think I'm the only person from the Simlogical fourms with a diffrent username [Unibrowed_Penguin]}
Theese also work in illogical places! You can have a career description, or tittle, use the TOD. *hehe*
Theese also work in illogical places! You can have a career description, or tittle, use the TOD. *hehe*
Lab Assistant
#6
17th Nov 2007 at 8:29 PM
Posts: 64
Thanks: 313 in 2 Posts
What about TEMPs? $Temp:X does not work
Does anyone knows what is the $<whathever> for temps?
Does anyone knows what is the $<whathever> for temps?
#7
17th Nov 2007 at 9:03 PM
Posts: 11,682
Thanks: 9680 in 11 Posts
I don't know, but you could try tempvar, temporary and so on.
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
#8
17th Nov 2007 at 11:07 PM
Alternatively, you could just copy the value in the temp into a local then print the local.
#9
19th Apr 2008 at 10:20 AM
Last edited by Kabuto : 25th Apr 2008 at 10:28 PM.
Posts: 628
Thanks: 1264 in 7 Posts
How can I load all the entries from a string table (STR#) in a dynamic pie menu ?
Because I thought to do a loop until the table limit (BCON value) which load an entry each time, but I don't know how to change dynamicly the Y of the $PrivateString:X:Y .
Because I thought to do a loop until the table limit (BCON value) which load an entry each time, but I don't know how to change dynamicly the Y of the $PrivateString:X:Y .
#10
20th Apr 2008 at 7:49 AM
Posts: 612
Thanks: 33786 in 19 Posts
Dynamic pie menus are built using [prim 0x0032] Add/Change the Action String. It already has wizard so using shouldn't be a problem. Anyway, there's even tutorial about it here
Index can be passed from Temp0 so looping is possible, too. I wrote an example of how to build a loop with it earlier, in response to different question, here.
Index can be passed from Temp0 so looping is possible, too. I wrote an example of how to build a loop with it earlier, in response to different question, here.
#11
20th Apr 2008 at 9:58 AM
Posts: 628
Thanks: 1264 in 7 Posts
Thank you very much !!!
I failed to find the infos, so thank you again !!!
I failed to find the infos, so thank you again !!!
#12
24th Apr 2008 at 1:27 PM
Posts: 404
Thanks: 25379 in 81 Posts
One thing CtfG hasn'nt mentioned in that manual (and I couldn't find this documentation on his PC):
Temp0 is not necessarily a continous number. Let's say you want to perform two actions on the active sim (= A ) and two different actions on the targeted sim ( = B ). Something like this:
SimA ID == SimB ID?
Yes:
Temp0 := 1 / Add String 1
Temp0 := 2 / Add String 2
No:
Temp0 := 1 / Add String 3
Temp0 := 2 / Add String 4
Or, in other words: As soon as the "chain" of commands changes to a different sim, the continuous number in Temp0 starts all over. I ran into this problem with my "SimSpy". Every interaction on the active sim was performed, while every interaction on the targeted sim simply vanished in the void.
Vironin
Let Teens Live Alone With TeenStar PC
Let Teens Adopt A Baby/Toddler/Child
>>> Check my profile page for further hacks <<<
Temp0 is not necessarily a continous number. Let's say you want to perform two actions on the active sim (= A ) and two different actions on the targeted sim ( = B ). Something like this:
SimA ID == SimB ID?
Yes:
Temp0 := 1 / Add String 1
Temp0 := 2 / Add String 2
No:
Temp0 := 1 / Add String 3
Temp0 := 2 / Add String 4
Or, in other words: As soon as the "chain" of commands changes to a different sim, the continuous number in Temp0 starts all over. I ran into this problem with my "SimSpy". Every interaction on the active sim was performed, while every interaction on the targeted sim simply vanished in the void.
Vironin
Let Teens Live Alone With TeenStar PC
Let Teens Adopt A Baby/Toddler/Child
>>> Check my profile page for further hacks <<<
#13
26th Apr 2008 at 10:42 PM
Last edited by Kabuto : 7th May 2008 at 12:26 AM.
Posts: 628
Thanks: 1264 in 7 Posts
1) about the X number, is it a hexadecimal or a decimal number ? Because I don't know what the good text between "$PrivateString:0:10" and "$PrivateString:0:A" for the string number 0xA. (RESOLVED)
2) I have another problem, the "$PrivateString:0:1" text isn't replaced, the game show "§PrivateString:0:1" .
My Private String table got a 0x000003E8 instance number but I don't know what is the good instance number for this table.
3) my "MakeActionString prim string set" entry ( (0xB) Settings.../Random mode (ON).../OFF) is loaded before I call it with the "Settings" guardian, so I've got the "OFF" entry twice. (RESOLVED)
----- TATTOO CHAIR mod project -----
Checklist :
--- Tattoo body overlay tests : OK
--- Chair with random tattoos : OK
--- Clothes changing behavior : OK
--- CAS look body animations : OK
--- Synchronized animations test : OK
--- Settings pie menu test : OK
--- Species compatibilities : OK
--- Age and gender test : OK
--- Tattoo overlays collection : CREATING
--- Tattoo chair recolors : TODO
2) I have another problem, the "$PrivateString:0:1" text isn't replaced, the game show "§PrivateString:0:1" .
My Private String table got a 0x000003E8 instance number but I don't know what is the good instance number for this table.
3) my "MakeActionString prim string set" entry ( (0xB) Settings.../Random mode (ON).../OFF) is loaded before I call it with the "Settings" guardian, so I've got the "OFF" entry twice. (RESOLVED)
----- TATTOO CHAIR mod project -----
Checklist :
--- Tattoo body overlay tests : OK
--- Chair with random tattoos : OK
--- Clothes changing behavior : OK
--- CAS look body animations : OK
--- Synchronized animations test : OK
--- Settings pie menu test : OK
--- Species compatibilities : OK
--- Age and gender test : OK
--- Tattoo overlays collection : CREATING
--- Tattoo chair recolors : TODO
#14
27th Apr 2008 at 11:35 AM
Last edited by Inge Jones : 27th Apr 2008 at 12:11 PM.
Posts: 11,682
Thanks: 9680 in 11 Posts
I used 0x101 for PrivateStrings on one of my objects, and that seems to work.
You need to use the decimal index number when it is embedded in the Action and Dialog strings. The game "talks" in decimal. SimPE uses hex for its display mainly as legacy from IffPencil, I think. There was a time we were thinking of changing over to totally decimal display.
I can spot a possible error in your BHAV 0x1033. Line 6 you are testing "my attribute 8" which will be the sim's attribute 8, not the object's. Is that what you wanted? And several times in 1032 the same thing. Remember the sim is running all menu tests and menu actions, not the object. The object is only running Main and BHAVs called from Main.
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
You need to use the decimal index number when it is embedded in the Action and Dialog strings. The game "talks" in decimal. SimPE uses hex for its display mainly as legacy from IffPencil, I think. There was a time we were thinking of changing over to totally decimal display.
I can spot a possible error in your BHAV 0x1033. Line 6 you are testing "my attribute 8" which will be the sim's attribute 8, not the object's. Is that what you wanted? And several times in 1032 the same thing. Remember the sim is running all menu tests and menu actions, not the object. The object is only running Main and BHAVs called from Main.
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
#15
27th Apr 2008 at 12:32 PM
Last edited by Kabuto : 27th Apr 2008 at 1:07 PM.
Posts: 628
Thanks: 1264 in 7 Posts
I made mistakes because I want to test the attribute 8 and 9 of the object, not the sim attributes !
How can I replace them by the chair attributes ?
How can I replace them by the chair attributes ?
#16
27th Apr 2008 at 1:48 PM
Posts: 11,682
Thanks: 9680 in 11 Posts
Like you said before you edited your post - change them to "stack objects attribute" lol.
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
#17
27th Apr 2008 at 2:41 PM
Last edited by Kabuto : 27th Apr 2008 at 7:24 PM.
Posts: 628
Thanks: 1264 in 7 Posts
So I replaced them by "Stack Object's attribute" but it cause the sim is always reset when I click on the chair and the "Settings.../Random mode (ON).../OFF" menu is displayed correctly but doesn't work anymore !
Why ?
EDIT:
I think it's a "Stack Object's attribute 0x0008 == Literal 0x0000" test failure !
About my loop dynamic menu loading, it begins from 0xC but "Add/Change the Action String (MakeAction:[Temp0])" loads the string 0xB at first that's why the "Settings.../Random mode (ON).../OFF" menu is displayed, because Temp0 give the index number !
I used 0x101 for PrivateStrings but it still doesn't work so I will not use Private String !
Why ?
EDIT:
I think it's a "Stack Object's attribute 0x0008 == Literal 0x0000" test failure !
About my loop dynamic menu loading, it begins from 0xC but "Add/Change the Action String (MakeAction:[Temp0])" loads the string 0xB at first that's why the "Settings.../Random mode (ON).../OFF" menu is displayed, because Temp0 give the index number !
I used 0x101 for PrivateStrings but it still doesn't work so I will not use Private String !
#18
27th Apr 2008 at 7:21 PM
Posts: 628
Thanks: 1264 in 7 Posts
I put "Stack Object ID := Stack Object's lead tile object ID" at first but it's still reset the sim !
#19
28th Apr 2008 at 8:03 AM
Posts: 11,682
Thanks: 9680 in 11 Posts
I am a bit worried that this is hijacking this thread a bit too far now as it's no longer to do with the strings - and probably wasn't anyway - probably some other reason they're not working. You seem like you're trying to learn a lot of new things at once, so why not start your own thread in the modding help forum rather than research? This forum's really for more advanced topics rather than help with modding techniques.
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
#20
28th Apr 2008 at 8:11 AM
If it's resetting the sim, then you need to turn testing cheats on and see what the error message is that you're getting.
Turn testing cheats on, then get a copy of the error log that it produces. Attach both the object and the log to a new thread in Modding Discussion, just like Inge suggested, and someone should be able to take a look and identify what's going wrong.
Turn testing cheats on, then get a copy of the error log that it produces. Attach both the object and the log to a new thread in Modding Discussion, just like Inge suggested, and someone should be able to take a look and identify what's going wrong.
#21
28th Apr 2008 at 7:15 PM
Posts: 628
Thanks: 1264 in 7 Posts
Ok !
But the PrivateString set stays a mysterious thing, because the instance ID always change between the packages !
But the PrivateString set stays a mysterious thing, because the instance ID always change between the packages !
#22
28th Apr 2008 at 7:58 PM
Posts: 11,682
Thanks: 9680 in 11 Posts
From what I saw there is a lot of work still to do on your package before we need to worry about that string. it may resolve itself as the other issues are resolved.
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
#23
31st Jul 2010 at 12:07 PM
FYI - the list of string inserts from this thread has been used to create Sims 2 String Substitutionswiki since I could never remember where to find this thread! If you have more to add, please edit that page.
Mostly I fix Gameplay annoyances. I take requests and have made a few Requested mods already. Visit me on MTS Yearbook
My other projects: British High Street, Postal System for the Sims and Better Parking for Sims
Mostly I fix Gameplay annoyances. I take requests and have made a few Requested mods already. Visit me on MTS Yearbook
My other projects: British High Street, Postal System for the Sims and Better Parking for Sims
#24
17th Jul 2017 at 4:46 PM
Last edited by Lamare : 29th Jan 2018 at 10:16 PM.
Posts: 1,530
Thanks: 15785 in 76 Posts
I don't think I can edit the wiki page and I was using this thread for reference anyway, so I'll add here.
Edited the wiki after all.
Edited the wiki after all.
Who Posted
|