This is a sub-page of The Sims 2 (Windows).
|
|
To do:
|
There are several removed interactions that exist within the game files. Some of these ideas would later be re-introduced in later expansions or games.
Object Actions#
Bed Interactions#
Sleep Naked#
There's a string with a scrapped option to sleep naked in a bed. Despite it being located with strings for the Russian localization, the string itself is in English.
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
objects.package |
[Text Lists] |
STR# |
0x7FFBE4B4 |
0x0000012E (302) |
|
|
To do: |
String number |
String (Russian) |
Description (As found in the files) |
|---|---|---|
0x0006 (6) |
Sleep.../Naked |
In the English localization, this resource only contains string numbers. The strings themselves are empty.
Pregnancy (Demo)#
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
objects.package |
MakeActionString prim set |
STR# |
0x7F44347F2 |
0x0000012E (302) |
String number |
String (English) |
Description (As found in the files) |
|---|---|---|
0x000F (16) |
Pregnancy (Demo) |
! |
Hibernate#
Among the list of interactions for beds, there are several unused, hidden actions related to the ability to send a Sim into hibernation.
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
objects.package |
MakeActionString prim set |
STR# |
0x7F44347F2 |
0x0000012E (302) |
String number |
String (English) |
Description (As found in the files) |
|---|---|---|
0x000B (11) |
Hibernate for.../1 Day |
! These are not used |
0x000C (12) |
Hibernate for.../$Local:0 Days |
! |
0x000D (13) |
Hibernate for.../A Week |
! |
0x000E (14) |
Hibernate for.../A Month |
! |
In the base game’s objects.package, there are some unused BHAVs that describe the mechanics of how hibernation would work.
Interaction - Lazy - Hibernate - TEST
The path to this BHAV:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
Interaction - Lazy - Hibernate - TEST |
BHAV |
0x7F44347F2 |
0x000020AD (8365) |
This BHAV responsible for determining whether the hidden “Hibernate” interaction can appear on a bed. It checks several conditions: the Sim must have extremely lazy personality, be in a good mood, not currently sleeping, and the bed must be free - not in use by another Sim and not being jumped on. If all requirements are met, the BHAV prepares the interaction by calling semiglobal bed functions, detecting which side of the bed is available, and generating action strings that offer different hibernation durations. When necessary, it loops through multiple possible durations and adds corresponding hidden menu options.
In simple terms, this is the menu availability logic: “Can this lazy Sim currently lie on this bed and go into hibernation, and which exact options should be offered?” If any condition fails, the BHAV immediately returns FALSE, keeping the interaction completely hidden.
This BHAV contains these instructions:
0000 : 0002 : 00 : 000A : FFFE : 03000000000212070000000000000000
[prim 0x0002] Expression (My person data 0x0003 (Personality Active) == Literal 0x0000)
0001 : 0002 : 00 : 0015 : FFFE : 0B00000000020E07191001FFFFFFFFFF
[prim 0x0002] Expression (My motive 0x000B (Sleep state) == Literal 0x0000)
0002 : 201B : 00 : 0010 : FFFC : FFFFFFFFFFFFFFFFA2C65801F87A8020
[semi 0x201B] Bed Rel. - Adjust Ads - Sleep (no args)
0003 : 2029 : 00 : 0004 : 0005 : FFFFFFFFFFFFFFFFBCC6580170B1621B
[semi 0x2029] Test - This Side Available? (no args)
0004 : 0102 : 00 : 0005 : 0002 : FFFFFFFFFFFFFFFFBCC65801B814681B
[global 0x0102] In Use? (no args)
0005 : 2027 : 00 : 0006 : FFFC : FFFFFFFFFFFFFFFF0000000000000000
[semi 0x2027] Get in Temp 0 - Other Section - Head (no args)
0006 : 0002 : 00 : 0008 : FFFC : 0000000000050A080000000000000000
[prim 0x0002] Expression (Stack Object ID 0x0000 := Temp 0x0000)
0007 : 201B : 00 : 0010 : FFFC : FFFFFFFFFFFFFFFFA2C65801F87A8020
[semi 0x201B] Bed Rel. - Adjust Ads - Sleep (no args)
0008 : 2029 : 00 : 0009 : FFFE : FFFFFFFFFFFFFFFFBCC6580170B1621B
[semi 0x2029] Test - This Side Available? (no args)
0009 : 0102 : 00 : FFFE : 0007 : FFFFFFFFFFFFFFFFBCC65801B814681B
[global 0x0102] In Use? (no args)
000A : 0002 : 00 : 0001 : FFFE : 03008027000E0E1A0000000000000000
[prim 0x0002] Expression (My motive 0x0003 (Mood) >= Const 0x200F:0x00 ("Min Mood to Hybernate" Value: 0x0014))
000B : 0032 : 00 : 000D : FFFC : 000001000C0000000000000000000000
[prim 0x0032] Add/Change the Action String (Add / Change Interaction string Mode, [Runtime object cannot be predicted] MakeAction:0x0B (Private))
000C : 0032 : 00 : 000E : FFFC : 000001000D0000000000000000000000
[prim 0x0032] Add/Change the Action String (Add / Change Interaction string Mode, [Runtime object cannot be predicted] MakeAction:0x0C (Private))
000D : 0002 : 00 : 000F : FFFC : 00000200000519070000000000000000
[prim 0x0002] Expression (Local 0x0000 (Number of Days) := Literal 0x0002)
000E : 0002 : 00 : 000F : 0012 : 00000700000B19070000000000000000
[prim 0x0002] Expression (Local 0x0000 (Number of Days) ++ and < Literal 0x0007)
000F : 0002 : 00 : 000C : FFFC : 0000000000050A190000000000000000
[prim 0x0002] Expression (Stack Object ID 0x0000 := Local 0x0000 (Number of Days))
0010 : 0002 : 00 : 000B : FFFC : 0000010000050A070000000000000000
[prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0001)
0011 : 0032 : 00 : 0014 : FFFC : 000001000E0000000000000000000000
[prim 0x0032] Add/Change the Action String (Add / Change Interaction string Mode, [Runtime object cannot be predicted] MakeAction:0x0D (Private))
0012 : 0002 : 00 : 0011 : FFFC : 0000070000050A070000000000000000
[prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0007)
0013 : 0032 : 00 : FFFD : FFFC : 000001000F0000000000000000000000
[prim 0x0032] Add/Change the Action String (Add / Change Interaction string Mode, [Runtime object cannot be predicted] MakeAction:0x0E (Private))
0014 : 0002 : 00 : 0013 : FFFC : 00001E0000050A070000000000000000
[prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x001E)
0015 : 20AB : 00 : FFFE : 0003 : FFFFFFFFFFFFFFFF0000000000000000
[semi 0x20AB] Test - Bed is Being Jumped On? (no args)
Hibernate - Hibernation Loop
The path to this BHAV:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
Hibernate - Hibernation Loop |
BHAV |
0x7F44347F2 |
0x000020B0 (8368) |
This BHAV calculates the date when a Sim should wake up from hibernation and then waits for that date to arrive. First, it reads the current in-game day, month, year, and hour, storing them in local variables - this becomes the starting point for the countdown. Then it takes the input parameter (the number of days to hibernate) and converts it into years, months, and remaining days, using The Sims 2’s simplified calendar system: 30 days per month and 12 months per year. These values are then added to the current date, with overflow corrections applied - if the total days exceed 30, a month is added; if the months exceed 11, a year is added.
Once the target date is calculated, the BHAV enters a loop that repeatedly waits a few minutes and checks whether the current in-game day, month, year, and hour match the stored wake-up values. If the target date has not yet been reached, the loop continues. When the calendar finally reaches the correct moment, the check succeeds and the BHAV returns TRUE - meaning it’s time for the Sim to wake up.
This BHAV contains these instructions:
0000 : 0002 : 00 : 0007 : FFFC : 02000700000519060000000000000000
[prim 0x0002] Expression (Local 0x0002 (month to end) := Global 0x0007 (Month))
0001 : 0002 : 00 : 000D : FFFC : 01000100000519060000000000000000
[prim 0x0002] Expression (Local 0x0001 (day to end) := Global 0x0001 (Day of Month))
0002 : 0119 : 00 : FFFD : 0004 : 00000000000000000000000000000000
[global 0x0119] Wait For Notify (2 args: Ticks=0x0000, Allow Push?=0x0000)
0003 : 0002 : 00 : 0006 : FFFC : 00000000000519060000000000000000
[prim 0x0002] Expression (Local 0x0000 (hour to end) := Global 0x0000 (Hour))
0004 : 0002 : 00 : 0005 : 0006 : 01000100000219060000000000000000
[prim 0x0002] Expression (Local 0x0001 (day to end) == Global 0x0001 (Day of Month))
0005 : 0002 : 00 : 000E : 0006 : 00000000000219060000000000000000
[prim 0x0002] Expression (Local 0x0000 (hour to end) == Global 0x0000 (Hour))
0006 : 016F : 00 : 0002 : FFFC : 05000000000000000000000000000000
[global 0x016F] Idle - Minutes (1 arg: Minutes=0x0005)
0007 : 0002 : 00 : 0001 : FFFC : 03000800000519060000000000000000
[prim 0x0002] Expression (Local 0x0003 (year to end) := Global 0x0008 (Year))
0008 : 0002 : 00 : 0009 : FFFC : 05001E00000719070000000000000000
[prim 0x0002] Expression (Local 0x0005 (months) /= Literal 0x001E)
0009 : 0002 : 00 : 000C : FFFC : 00001E00000C09070000000000000000
[prim 0x0002] Expression (Param 0x0000 (days left) mod= Literal 0x001E)
000A : 0002 : 00 : 000B : FFFC : 06000C00000719070000000000000000
[prim 0x0002] Expression (Local 0x0006 (years) /= Literal 0x000C)
000B : 0002 : 00 : 0010 : FFFC : 05000C00000C19070000000000000000
[prim 0x0002] Expression (Local 0x0005 (months) mod= Literal 0x000C)
000C : 0002 : 00 : 000A : FFFC : 06000500000519190000000000000000
[prim 0x0002] Expression (Local 0x0006 (years) := Local 0x0005 (months))
000D : 0002 : 00 : 0008 : FFFC : 05000000000519090000000000000000
[prim 0x0002] Expression (Local 0x0005 (months) := Param 0x0000 (days left))
000E : 0002 : 00 : 000F : 0006 : 02000700000219060000000000000000
[prim 0x0002] Expression (Local 0x0002 (month to end) == Global 0x0007 (Month))
000F : 0002 : 00 : FFFD : 0006 : 03000800000219060000000000000000
[prim 0x0002] Expression (Local 0x0003 (year to end) == Global 0x0008 (Year))
0010 : 0002 : 00 : 0011 : FFFC : 01000000000319090000000000000000
[prim 0x0002] Expression (Local 0x0001 (day to end) += Param 0x0000 (days left))
0011 : 0002 : 00 : 0012 : 0014 : 01001E00000E19070000000000000000
[prim 0x0002] Expression (Local 0x0001 (day to end) >= Literal 0x001E)
0012 : 0002 : 00 : 0013 : FFFC : 02000100000319070000000000000000
[prim 0x0002] Expression (Local 0x0002 (month to end) += Literal 0x0001)
0013 : 0002 : 00 : 0014 : FFFC : 01001E00000419070000000000000000
[prim 0x0002] Expression (Local 0x0001 (day to end) -= Literal 0x001E)
0014 : 0002 : 00 : 0015 : FFFC : 02000500000319190000000000000000
[prim 0x0002] Expression (Local 0x0002 (month to end) += Local 0x0005 (months))
0015 : 0002 : 00 : 0016 : 0018 : 02000C00000E19070000000000000000
[prim 0x0002] Expression (Local 0x0002 (month to end) >= Literal 0x000C)
0016 : 0002 : 00 : 0017 : FFFC : 03000100000319070000000000000000
[prim 0x0002] Expression (Local 0x0003 (year to end) += Literal 0x0001)
0017 : 0002 : 00 : 0018 : FFFC : 02000C00000419070000000000000000
[prim 0x0002] Expression (Local 0x0002 (month to end) -= Literal 0x000C)
0018 : 0002 : 00 : 0003 : FFFC : 03000600000319190000000000000000
[prim 0x0002] Expression (Local 0x0003 (year to end) += Local 0x0006 (years))
Hibernate - Set Motives
The path to this BHAV:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
Hibernate - Hibernation Loop |
BHAV |
0x7F44347F2 |
0x000020AF (8367) |
This BHAV implements the “hibernation” mechanic for a Sim. When triggered, it completely disables the natural decay of all major motives by setting their per-day decay rates to zero directly in Person Data. It then applies two controlled motive adjustments using the Set Motive Change primitive: Energy is continuously increased until it reaches the designated “Energy for Wake-up” threshold, while Comfort is maintained at a minimal acceptable level. Automatic motive decay and recovery handled by the system is disabled (Auto Clearing = False), so all changes occur solely through this script. As a result, when this function is active, the Sim enters a state where all motives are frozen and Energy is passively restored, keeping them in hibernation until the required wake-up energy level is reached.
This BHAV contains these instructions:
0000 : 001D : 00 : 0003 : FFFC : 07070501140064000000000000000000
[prim 0x001D] Set Motive Change (Clear all, Auto Clearing the Person Data Motive Decay value: False)
0001 : 001D : 00 : 0002 : FFFC : 1A1A0500820000201D00FEFD1A1A0600
[prim 0x001D] Set Motive Change (My motive 0x0005 (Energy) += Const 0x1001:0x02 per hour, stop at: Const 0x2000:0x00 ("Energy for Wake-up" Value: 0x0064), Auto Clearing the Person Data Motive Decay value: False)
0002 : 001D : 00 : FFFD : FFFC : 1A1A0600800081001D000AFD1A1A0500
[prim 0x001D] Set Motive Change (My motive 0x0006 (Comfort) += Const 0x1001:0x00 per hour, stop at: Const 0x1001:0x01, Auto Clearing the Person Data Motive Decay value: False)
0003 : 0002 : 00 : 0004 : FFFC : 5F000000000512070000000000000000
[prim 0x0002] Expression (My person data 0x005F (Decay Bladder per Day) := Literal 0x0000)
0004 : 0002 : 00 : 0005 : FFFC : 5D000000000512070000000000000000
[prim 0x0002] Expression (My person data 0x005D (Decay Hunger per Day) := Literal 0x0000)
0005 : 0002 : 00 : 0006 : FFFC : 60000000000512070000000000000000
[prim 0x0002] Expression (My person data 0x0060 (Decay Energy per Day) := Literal 0x0000)
0006 : 0002 : 00 : 0007 : FFFC : 61000000000512070000000000000000
[prim 0x0002] Expression (My person data 0x0061 (Decay Hygiene per Day) := Literal 0x0000)
0007 : 0002 : 00 : 0008 : FFFC : 65000000000512070000000000000000
[prim 0x0002] Expression (My person data 0x0065 (Decay Fun per Day) := Literal 0x0000)
0008 : 0002 : 00 : 0009 : FFFC : 63000000000512070000000000000000
[prim 0x0002] Expression (My person data 0x0063 (Decay Social per Day) := Literal 0x0000)
0009 : 0002 : 00 : 0001 : FFFC : 5E000000000512070000000000000000
[prim 0x0002] Expression (My person data 0x005E (Decay Comfort per Day) := Literal 0x0000)
Interaction - Lazy - Hibernate
The path to this BHAV:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
Interaction - Lazy - Hibernate |
BHAV |
0x7F44347F2 |
0x000020AE (8366) |
This BHAV implements a special version of the “get into bed” sequence for a hibernation mode. First, it stores the bed tile ID and stops any overlay animations to ensure the Sim can smoothly transition into the lying position. Then, it performs a routing check for the chosen side of the bed. If the route is blocked, it calls Routing - Sleep - Try Other Side. If routing succeeds, the Sim enters the bed through the standard procedure Sleep - Get In.
Once the Sim is in bed, the code temporarily disables visual and social reactions so that no external events can interrupt the process. It adjusts the room impact on mood and increases the Sim’s interaction score with the bed via Bed Rel. - Inc.
Next, two separate hibernation BHAVs are called: Hibernate - Set Motives, which applies special motive values that effectively block normal motive decay, and Hibernate - Hibernation Loop, which keeps the Sim in this state for a specified number of in-game days.
After the loop finishes, normal motive decay is restored, and Sleep - Get Out is executed to make the Sim leave the bed and complete the interaction.
This BHAV contains these instructions:
0000 : 0002 : 00 : 000C : FFFC : 000000000005190A0000000000000000
[prim 0x0002] Expression (Local 0x0000 (bed tile ID) := Stack Object ID 0x0000)
0001 : 200C : 00 : FFFD : FFFC : 000000000000000066C76101C8C0311F
[semi 0x200C] Sleep - Get Out (1 arg: awake=0x0000)
0002 : 001D : 00 : 0001 : FFFC : 07070501140064000000000000000000
[prim 0x001D] Set Motive Change (Clear all, Auto Clearing the Person Data Motive Decay value: False)
0003 : 2017 : 00 : 000D : FFFC : FFFFFFFFFFFFFFFFBCC65801B0605F1B
[semi 0x2017] Bed Rel. - Inc (no args)
0004 : 201F : 00 : 000F : FFFC : FFFFFFFFFFFFFFFFBCC65801B0605F1B
[semi 0x201F] Adjust Room Impact (no args)
0005 : 2025 : 00 : 0009 : 000A : FFFFFFFFFFFFFFFFBCC65801E095621B
[semi 0x2025] Test - Show Route Failure for Current Side? (no args)
0006 : 2028 : 00 : 0008 : FFFE : FFFFFFFFFFFFFFFFBCC6580170B1621B
[semi 0x2028] Routing - Sleep - Try Other Side (no args)
0007 : 0002 : 00 : 0004 : FFFC : 000000000005190A0000000000000000
[prim 0x0002] Expression (Local 0x0000 (bed tile ID) := Stack Object ID 0x0000)
0008 : 0002 : 00 : 0007 : FFFC : 0000000000050A080000000000000000
[prim 0x0002] Expression (Stack Object ID 0x0000 := Temp 0x0000)
0009 : 200A : 00 : 0004 : 0006 : 0701001A00260A00000A000071B1621B
[semi 0x200A] Sleep - Get In (2 args: Route Fail?=Literal 0x0001, Sleep Outfit=Const 0x200C:0x00 ("Autonomously Choose" Value: 0x0000))
000A : 200A : 00 : 0004 : 0006 : 0700001A00260A00000A000071B1621B
[semi 0x200A] Sleep - Get In (2 args: Route Fail?=Literal 0x0000, Sleep Outfit=Const 0x200C:0x00 ("Autonomously Choose" Value: 0x0000))
000B : 006C : 00 : 0005 : FFFC : 000000030B0086010000000000000000
[prim 0x006C] Animate Stop (Object: My 0x000B (object id), animation: all Overlay animations, Blend out: False, Flip Flag: False, short blend out: False, both normal AND flipped anims: False, Priority: 0x00 (low))
000C : 0002 : 00 : 000B : FFFC : 190080230005121A0000000000000000
[prim 0x0002] Expression (My person data 0x0019 (Interaction Data Field #1) := Const 0x2007:0x00 (Value: 0x0000))
000D : 20AF : 00 : 000E : FFFC : FFFFFFFFFFFFFFFF0000000000000000
[semi 0x20AF] Hibernate - Set Motives (no args)
000E : 20B0 : 00 : 0002 : FFFC : 0900000A00000A00000A000001000000
[semi 0x20B0] Hibernate - Hibernation Loop (1 arg: days left=Param 0x0000 (Days to Hibernate))
000F : 0002 : 00 : 0010 : FFFC : 0100844C0009001A0000000000000000
[prim 0x0002] Expression (My attribute 0x0001 Set Flag flag# Const 0x0119:0x04 ("Disable Look Ats" Value: 0x0005))
0010 : 0002 : 00 : 0003 : FFFC : 0100854C0009001A0000000000000000
[prim 0x0002] Expression (My attribute 0x0001 Set Flag flag# Const 0x0119:0x05 ("Disable All reactions" Value: 0x0006))
Phone Interactions#
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
objects.package |
[Text Lists] |
STR# |
0x7FD56A2A |
0x0000012E (302) |
Call.../Other#
An extra category for phone calls, scrapped simply for being redundant.
String number |
String |
Description (As found in the files) |
|---|---|---|
0x0004 (4) |
Call.../Other |
! Moved to PhoneGlobalsNew. The Sims 2 - Needs Translation - Batch15 |
Slumber Parties#
Sims were originally able to throw slumber parties, an idea that was considered for an expansion pack but later introduced in The Sims 3 Generations.
String number |
String |
Description (As found in the files) |
|---|---|---|
0x000A (10) |
Throw Party.../Slumber Party |
! Moved to PhoneGlobalsNew. The Sims 2 - Needs Translation - Batch15 |
"Must Attend" Party#
Another unused party type, although this one is more vague. It might have forced any invited guests to attend, regardless of their relationship scores with the host.
String number |
String |
Description (As found in the files) |
|---|---|---|
0x0005 (5) |
Throw Party.../Must Attend Party |
! Moved to PhoneGlobalsNew. The Sims 2 - Needs Translation - Batch15 |
Social Interactions#
Farting and Belching#
Sims originally had an interaction to fart and belch on command, instead of it happening autonomously.
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
objects.package |
[Text Lists] |
STR# |
0x7FDCE589 |
0x0000012E (302) |
String number |
String |
Description (As found in the files) |
|---|---|---|
0x0000 (0) |
Fart |
The Sims 2 - Needs Translation - Batch15 |
0x0001 (1) |
Belch |
The Sims 2 - Needs Translation - Batch15 |
Sim-Related#
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
objects.package |
[Text Lists] |
STR# |
0x7F01EC29 |
0x0000012E (302) |
Teaching Skills#
Sims were originally able to teach skills to other Sims, as evidenced by a similar unused Memory string. The idea would somewhat resurface in the expansions Open For Business for teaching Perks and FreeTime for teaching Hobbies.
String number |
String |
Description (As found in the files) |
|---|---|---|
0x0012 (18) |
Teach.../Cleaning |
! |
0x0013 (19) |
Teach.../Cooking |
! |
0x0014 (20) |
Teach.../Charisma |
! |
0x0015 (21) |
Teach.../Mechanical |
! |
0x0016 (22) |
Teach.../Creativity |
! |
0x0017 (23) |
Teach.../Body |
! |
0x0018 (24) |
Teach.../Logic |
! |
Reminisce about Aspiration#
At one point, Sims could reminiscence about their aspirations to other Sims. All of the earlier names for aspirations are there, along with the scrapped Power aspiration. It's unknown how this was supposed to work.
String number |
String |
Description (As found in the files) |
|---|---|---|
0x001F (31) |
Reminiscence About.../Love |
The Sims 2 - Needs Translation - Batch 13 |
0x0020 (32) |
Reminiscence About.../Family |
The Sims 2 - Needs Translation - Batch 13 |
0x0021 (33) |
Reminiscence About.../Friends |
The Sims 2 - Needs Translation - Batch 13 |
0x0022 (34) |
Reminiscence About.../Knowledge |
The Sims 2 - Needs Translation - Batch 13 |
0x0023 (35) |
Reminiscence About.../Power |
The Sims 2 - Needs Translation - Batch 13 |
0x0024 (36) |
Reminiscence About.../Wealth |
The Sims 2 - Needs Translation - Batch 13 |
Brag/Vent about Aspiration#
There's also strings letting Sims brag and vent about aspirations, which may or may not have increased points. Oddly, Brag About.../Knowledge is missing. These lines are even translated into other languages, indicating that the idea was scrapped later in development.
String number |
String |
Description (As found in the files) |
|---|---|---|
0x0025 (37) |
Vent About.../Love |
The Sims 2 - Needs Translation - Batch 13 |
0x0026 (38) |
Vent About.../Family |
The Sims 2 - Needs Translation - Batch 13 |
0x0027 (39) |
Vent About.../Friends |
The Sims 2 - Needs Translation - Batch 13 |
0x0028 (40) |
Vent About.../Knowledge |
The Sims 2 - Needs Translation - Batch 13 |
0x0029 (41) |
Vent About.../Power |
The Sims 2 - Needs Translation - Batch 13 |
0x002A (42) |
Vent About.../Wealth |
The Sims 2 - Needs Translation - Batch 13 |
0x002B (43) |
Brag About.../Love |
The Sims 2 - Needs Translation - Batch 13 |
0x002C (44) |
Brag About.../Family |
The Sims 2 - Needs Translation - Batch 13 |
0x002D (45) |
Brag About.../Wealth |
The Sims 2 - Needs Translation - Batch 13 |
0x002E (46) |
Brag About.../Power |
The Sims 2 - Needs Translation - Batch 13 |
0x002F (47) |
Brag About.../Friends |
The Sims 2 - Needs Translation - Batch 13 |
Give Gift#
The base game's objects.package mentions giving gifts in the Text Lists resource's UK English strings.
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
objects.package |
[Text Lists] |
STR# |
0x7FDFCFA7 |
0x0000012E (302) |
List of strings:
String number |
String (English UK) |
Description (As found in the files) |
|---|---|---|
0x0000 (0) |
Give Gift.../Cash |
! gift giving - cut |
0x0001 (1) |
Give Gift.../Cheap |
! gift giving - cut |
0x0002 (2) |
Give Gift.../Moderate |
! gift giving - cut |
0x0003 (3) |
Give Gift.../Expensive |
! gift giving - cut |
This feature, in a very different form, emerged in the Seasons expansion pack. Rather than categorizing gifts by monetary value, the giving Sim can choose something from their inventory to present as a gift. Cash also cannot be given as a gift.
Serve Breakfast in Bed#
In the same location as the early gift-giving strings is a singular string, mentioning the ability to have a Sim serve breakfast in bed.
The path to the resource:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
objects.package |
[Text Lists] |
STR# |
0x7FDFCFA7 |
0x0000012E (302) |
The string:
String number |
String (English UK) |
Description (As found in the files) |
|---|---|---|
0x0005 (5) |
*Serve Breakfast in Bed |
! not used |
This feature is also mentioned in the Text Lists resource called Call Named Tree prim string set. It also has a singular string attached to it.
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
objects.package |
Call Named Tree prim string set |
STR# |
0x7FDFCFA7 |
0x0000012E (303) |
String number |
String (English) |
Description (As found in the files) |
|---|---|---|
0x0000 (0) |
CT - Breakfast in Bed |
|
|
To do:
|
Feature-Related#
Ambulance#
Text related to calling an ambulance can be found in the BHAV Emergency - Medical.
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
objects.package |
Emergency - Medical |
BHAV |
0x7F0884BA |
0x00001003 (4099) |
An ambulance could be called using the phone during a childbirth. After the call, a message would appear:
[prim 0x0024] Dialog (Text Notification,
Strings: Private,
Message: "Hang on! We're on our way! Delivering a baby should be left to professionals,
so please ...don't do anything stupid!",
TNS Style: Sim,
Priority: 0x01,
timeout: 0x14,
TNS ID: Temp 0x0000,
icon: neighbor,
wait for user: True,
block simulation: True. (Text notification on side of screen - returns unique ID in specified temp. For birthdays,
days-Till-Birthday is expected in temp1))
Message field: "Hang on! We're on our way! Delivering a baby should be left to professionals, so please ...don't do anything stupid!".
This BHAV, for some unknown reason, also contains the message that appears when the fire department is called:
[prim 0x0024] Dialog (Text Notification,
Strings: Private,
Message: [Fallback: LID=1] "Hang on! We're on our way! Please be careful and stay away from the fire!",
TNS Style: System,
Priority: 0x01,
timeout: 0x14,
TNS ID: Temp 0x0000,
icon: none,
wait for user: True,
block simulation: True. (Text notification on side of screen - returns unique ID in specified temp. For birthdays,
days-Till-Birthday is expected in temp1))
Message field: "Hang on! We're on our way! Please be careful and stay away from the fire!".
This BHAV calls BHAV CT - Call Ambulance in instruction at number 0x3 (3):
[prim 0x001C] Run Tree by Name (Tree name: "CT - Call Ambulance" [NamedTree:0x01 (Private)],
Search for BHAV: Private,
run in My stack)
The path to the CT - Call Ambulance BHAV:
Found In |
Name |
Type |
Group |
|---|---|---|---|
objects.package |
CT - Call Ambulance |
BHAV |
0x7F1D0F49 |
It contains the call CT - Can Call For Ambulance? BHAV. This is the only instruction (0x0 (0)) in this BHAV:
[private 0x100F] CT - Can Call For Ambulance? (no args)
The path to the CT - Can Call For Ambulance? BHAV:
Found In |
Name |
Type |
Group |
|---|---|---|---|
objects.package |
CT - Can Call For Ambulance? |
BHAV |
0x7F1D0F49 |
This BHAV contains one single instruction - 0x0 (0):
[prim 0x0002] Expression (Stack Object's attribute 0x0002 ("Total Hours Pregnant") > Const 0x1001:0x05 ("Ambulance Callable After X Game Hours" Value 0x0030))
Mention of receiving a baby from the ambulance is the b2a-ambulance-baby-receive string. The string contained in the file objects.package of the base game, in the Text Lists resources, if you choose to view the strings for English localization. The path to it is:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
objects.package |
Baby Anims |
STR# |
0x7FCFE070 |
0x00000091 (145) |
The string:
String number |
String (English) |
Description (As found in the files) |
|---|---|---|
0x0000 (0) |
b2a-ambulance-baby-receive |
For IK/Blending Test |
The ambulance is also mentioned in the BHAV CT - Bill, in the form of text for the dialog box.
Found In |
Name |
Type |
Group |
|---|---|---|---|
objects.package |
CT - Bill |
BHAV |
0x7FB23EBF |
The text is found in the instruction at number 0x7 (7):
[prim 0x0024] Dialog (Text Notification,
Strings: Private,
Message: "An ambulance has arrived on your lot. The nanny can stay overnight,
but you will be charged for the extra hours. Would you like the nanny to stay overnight?",
TNS Style: Sim,
Priority: 0x01,
timeout: 0x07,
TNS ID: Temp 0x0000,
icon: automatic,
wait for user: True,
block simulation: True. (Text notification on side of screen - returns unique ID in specified temp. For birthdays,
days-Till-Birthday is expected in temp1))
Message field: "An ambulance has arrived on your lot. The nanny can stay overnight, but you will be charged for the extra hours. Would you like the nanny to stay overnight?".
Additional Diary Interactions#
There were originally more interactions related to Sims writing in diaries. Final uses a completely separate action. The path to the resource:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
Action Strings |
STR# |
0x7FEDFE1C |
0x0000012E (302) |
List of strings:
String number |
String (English) |
Description (As found in the files) |
|---|---|---|
0x0000 (0) |
Wallflower |
The Sims 2 - Needs Translation - Batch15 |
0x0001 (1) |
Watch |
The Sims 2 - Needs Translation - Batch15 |
0x0002 (2) |
Diary.../Read |
The Sims 2 - Needs Translation - Batch15 |
0x0003 (3) |
Diary.../Write |
The Sims 2 - Needs Translation - Batch15 |
0x0004 (4) |
Stalk |
The Sims 2 - Needs Translation - Batch15 |
Buying Additional Everyday Outfits#
Leftover strings for buying additional everyday outfits for Sims. The path to the resource:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
Action Strings |
STR# |
0x7FE10572 |
0x0000012E (302) |
List of strings:
String number |
String (English) |
Description (As found in the files) |
|---|---|---|
0x0019 (0) |
Buy.../Everyday Outfit 2 |
|
0x001A (1) |
Buy.../Everyday Outfit 3 |
Decorate#
There is an unused action to decorate an object in different color schemes. Sims were originally supposed to customize objects as opposed to being done via Buy/Build Mode.
Oddly, the fourth interaction is missing in its earlier string equivalent.
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
Action Strings |
STR# |
0x7FB36DAE |
0x0000012E (302) |
List of strings:
String number |
String (English) |
Description (As found in the files) |
|---|---|---|
0x0000 (0) |
Decorate.../Deep Red Trim |
|
0x0001 (1) |
Decorate.../Grey Trim |
|
0x0002 (2) |
Decorate.../Orange Trim |
|
0x0003 (3) |
Decorate.../Wooden Trim |
Order Birthday Cake#
The game left a mention of the ability to order birthday cake. This is mentioned in the file objects.package of the base game, in the Text Lists resources, if you choose to view the strings for English localization.
The path to the resource:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
[Text Lists] |
STR# |
0x7F07FBBC |
0x0000012E (302) |
List of strings:
String number |
String (English) |
Description (As found in the files) |
|---|---|---|
0x0000 (0) |
Order Birthday Cake |
The Sims 2 - Needs Translation - Batch15 |
0x0001 (1) |
Order Birthday Cake for $Object |
The Sims 2 - Needs Translation - Batch15 |
0x0002 (2) |
Order Birthday Cake for.../$Object |
The Sims 2 - Needs Translation - Batch15 |
For Russian localization, this resource contain a mention of ability to order several cakes. This is string at number (0x0001 (1)).
List of strings:
String number |
String (Russian) |
Description (As found in the files) |
|---|---|---|
0x0000 (0) |
Order Birthday Cake |
The Sims 2 - Needs Translation - Batch15 |
0x0001 (1) |
Order Birthday Cakes |
The Sims 2 - Needs Translation - Batch15 |
0x0002 (2) |
Order for $Object |
The Sims 2 - Needs Translation - Batch15 |
In release version of game this option is missing. Instead, a birthday cake can be bought in Buy Mode, in the Miscellaneous/For Party section.
Shop Lift#
Discarded ability for sims to steal food from the food racks in the community lot.
If clone the freezer ""Food Shrine" Commercial Display Freezer" from the base game with Object Workshop from SIMPE, will be found a BHAV called "Interaction - Shop Lift" among the BHAVs designed for this object. Also will be found a Pie Menu String resource with menu options for freezer. Among them there is an pie menu option called "*Shop Lift". This pie menu option is hidden and not used in the game. In total, the freezer has 3 menu option: "Buy", "Browse" and "*Shop Lift".
The "Shop Lift" menu option in the freezer cloned with Object Workshop in Polish:
String number |
String (Polish) |
Description (As found in the files) |
|---|---|---|
0x0002 (2) |
*Kradzież sklepowa |
The "Shop Lift" menu option in the freezer cloned with Object Workshop in Czech:
String number |
String (Czech) |
Description (As found in the files) |
|---|---|---|
0x0002 (2) |
*Ukradni v obchodě |
Objects.package contain BHAVs with name "Interaction - Shop Lift". BHAVs with this name occur 5 times in the file, which coincides with the number of food racks in Buy Mode.
The paths to the BHAVs:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
Interaction - Shop Lift |
BHAV |
0x7F95EEB0 |
0x00001002 (4098) |
Objects/objects.package |
Interaction - Shop Lift |
BHAV |
0x7F1CBCF8 |
0x00001002 (4098) |
Objects/objects.package |
Interaction - Shop Lift |
BHAV |
0x7FA1593E |
0x00001002 (4098) |
Objects/objects.package |
Interaction - Shop Lift |
BHAV |
0x7FC873CA |
0x00001002 (4098) |
Objects/objects.package |
Interaction - Shop Lift |
BHAV |
0x7FC57232 |
0x00001002 (4098) |
Analysis of BHAVs:
- At caught thief surrounding sims reacted negatively and their relationship with the thief deteriorated.
- Any sim with a Neat character point of less than 100 percent (less than 10 points) could shoplift.
- Not only adults and teenagers, but also children could shoplift groceries.
Also in BHAVs there are the names of the animations that the sim does when he shoplifts (see instructions with Animate Sim and Animate Overlay). This is the only difference between these BHAVs.
The same file also contain menu options for the food counters. In the Pie Menu Strings (TTAs) resource list, in the French, Polish, and Czech language sections contains a "Shop Lift" string, pie menu option. There are 5 resources that contain this pie menu option. This number coincides with the number of BHAVs, and this number also coincides with the number of food counters that are available in Buy Mode.
The path to the first resource:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
[Pie Menu Strings] |
Pie Menu Strings |
0x7F1CBCF8 |
0x00000001 (1) |
The "Shop Lift" string:
String number |
String (French) |
Description (As found in the files) |
|---|---|---|
0x0002 (2) |
*Shop Lift |
The path to the second resource:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
[Pie Menu Strings] |
Pie Menu Strings |
0x7F95EEB0 |
0x00000001 (1) |
The "Shop Lift" string:
String number |
String (French) |
Description (As found in the files) |
|---|---|---|
0x0002 (2) |
*Shop Lift |
The path to the third resource:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
[Pie Menu Strings] |
Pie Menu Strings |
0x7FA1593E |
0x00000001 (1) |
The "Shop Lift" string:
String number |
String (French) |
Description (As found in the files) |
|---|---|---|
0x0002 (2) |
*Shop Lift |
The path to the fourth resource:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
[Pie Menu Strings] |
Pie Menu Strings |
0x7FC57232 |
0x00000001 (1) |
The "Shop Lift" string:
String number |
String (French) |
Description (As found in the files) |
Notes |
|---|---|---|---|
0x0002 (2) |
*Chaparder |
This pie menu option is translated into French. |
The path to the fifth resource:
Found In |
Name |
Type |
Group |
Instance |
|---|---|---|---|---|
Objects/objects.package |
[Pie Menu Strings] |
Pie Menu Strings |
0x7FC873CA |
0x00000001 (1) |
The "Shop Lift" string:
String number |
String (French) |
Description (As found in the files) |
Notes |
|---|---|---|---|
0x0002 (2) |
*Shop Lift |
!!!! |
There are several exclamation marks in the line description. This is how the developers of The Sims 2 usually mark feature, pie menu string, message or anythink that is no longer used in the game. |
Two types of bills: electricity and water#
Objects.package file in base contains two equal BCON resource list which name is Bill Type. Both relates to grout Other. Here is more information:
Name |
Type |
Group |
Instance |
|---|---|---|---|
Bill Type |
BCON |
0x7FE4B434 |
0x00001002 (4098) |
Bill Type |
BCON |
0x7FBD8997 |
0x00002002 (4098) |
Both resources contains equal list. Here is content of resources:
Line |
Value |
Label |
|---|---|---|
0x0 (0) |
0x0000 |
Electric |
0x1 (1) |
0x0001 |
Water |
It was planned that Sim was supposed to pay 2 separate bills: electricity and water.
(Source: Utility Mod (Electricity and Water Bill) - simler90, Mod The Sims, Two Bill Types in The Sims 2? - The Sims 2 Beta Library Tumblr Blog)
Miscellaneous#
|
|
To do: |
- Watch play-in is a scrapped computer action. Judging from its name, which "play-in" refers to WooHoo internally, it would have most likely allowed a Sim to look at pornography on the computer. The code for the game removes 20 Simoleons from a Sim's savings if this action is done.
- Wash clothes is a self-explanatory action, and is only referenced a few times in the code. When asked about a potential laundry feature in late 2003 prerelease, the developmental team said they had no plans for that, implying it was either early1 or was considered later, before eventually being scrapped. A feature like this would be introduced in The Sims 3 Ambitions.
- In Freetime, there was another wish the Sim could make with the Genie from the Dusty Old Lamp, called Give Me Youth. If successful, the Sim will revert to being a Teen again regardless if they are an Adult or Elder, while all romantic relationships, jobs, extra Want slots will be gone They will also no longer be either a Vampire, Plantsim, Werewolf or Witch. If it fails, the Sim will either instantly age up into an Elder, or they will die if they are already an Elder. Though, this comes with several glitches, such as the game occasionally freezing upon transition. The action was likely removed due to its glitchy nature, despite it being near-complete. There is even an unused Memory relating to it.