Hi there! You are currently browsing as a guest. Why not create an account? Then you get less ads, can thank creators, post feedback, keep a list of your favourites, and more!
Test Subject
Original Poster
#1 Old 16th Mar 2006 at 11:46 PM Last edited by Giles1991 : 19th Mar 2006 at 6:05 PM.
Default $<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_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

Key:
(?) - My interpertation of What Inge posted, Please correct me if i'm wrong
2 users say thanks for this. (Who?)
Advertisement
Forum Resident
#2 Old 17th Mar 2006 at 5:50 AM
$LocalX means the value of the local variable X is put into the message
One horse disagreer of the Apocalypse
#3 Old 17th Mar 2006 at 7:19 AM
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)
Test Subject
Original Poster
#4 Old 17th Mar 2006 at 7:18 PM
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
Lab Assistant
#5 Old 19th Mar 2006 at 6:03 PM
{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*
Lab Assistant
#6 Old 17th Nov 2007 at 8:29 PM
What about TEMPs? $Temp:X does not work
Does anyone knows what is the $<whathever> for temps?
One horse disagreer of the Apocalypse
#7 Old 17th Nov 2007 at 9:03 PM
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)
Retired Duck
retired moderator
#8 Old 17th Nov 2007 at 11:07 PM
Alternatively, you could just copy the value in the temp into a local then print the local.
Sockpuppet
#9 Old 19th Apr 2008 at 10:20 AM Last edited by Kabuto : 25th Apr 2008 at 10:28 PM.
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 .
Instructor
#10 Old 20th Apr 2008 at 7:49 AM
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.
Sockpuppet
#11 Old 20th Apr 2008 at 9:58 AM
Thank you very much !!!


I failed to find the infos, so thank you again !!!
Field Researcher
#12 Old 24th Apr 2008 at 1:27 PM
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 <<<
Sockpuppet
#13 Old 26th Apr 2008 at 10:42 PM Last edited by Kabuto : 7th May 2008 at 12:26 AM.
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
One horse disagreer of the Apocalypse
#14 Old 27th Apr 2008 at 11:35 AM Last edited by Inge Jones : 27th Apr 2008 at 12:11 PM.
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)
Sockpuppet
#15 Old 27th Apr 2008 at 12:32 PM Last edited by Kabuto : 27th Apr 2008 at 1:07 PM.
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 ?
One horse disagreer of the Apocalypse
#16 Old 27th Apr 2008 at 1:48 PM
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)
Sockpuppet
#17 Old 27th Apr 2008 at 2:41 PM Last edited by Kabuto : 27th Apr 2008 at 7:24 PM.
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 !
Sockpuppet
#18 Old 27th Apr 2008 at 7:21 PM
I put "Stack Object ID := Stack Object's lead tile object ID" at first but it's still reset the sim !
One horse disagreer of the Apocalypse
#19 Old 28th Apr 2008 at 8:03 AM
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)
Retired Duck
retired moderator
#20 Old 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.
Sockpuppet
#21 Old 28th Apr 2008 at 7:15 PM
Ok !



But the PrivateString set stays a mysterious thing, because the instance ID always change between the packages !
One horse disagreer of the Apocalypse
#22 Old 28th Apr 2008 at 7:58 PM
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)
Miss BHAVing
retired moderator
#23 Old 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
just a girl
#24 Old 17th Jul 2017 at 4:46 PM Last edited by Lamare : 29th Jan 2018 at 10:16 PM.
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.
Back to top