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_x

Edit:

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

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)

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

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.

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.

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)

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 !

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 !

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)

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.

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.