The Sims 2 (Windows)
The Sims 2 |
---|
Developer: Maxis This game has unused code. This game has a prototype article This game has a prerelease article This game has a data page This game has a bugs page |
To do:
|
This game/console's online features are no longer supported. While this game/console's online features were once accessible, they are (as of January 14, 2013) no longer officially supported and online-exclusive features may be documented as now-unseen content. |
The Sims 2 is, as you may have guessed, the sequel to The Sims. And it still sold massively well.
Contents
Sub-Pages
Prototype Info |
Prerelease Info |
Data |
Bugs |
Systems
Story Recognition Mode It's not a game, it's an AI! And it reads your mind! |
Resources
Unused Textures All sorts of textures in large numbers! Even Custom Content, too! |
Unused Text "Hello, I am MR. MONSTER, your kiddo's Princi-Pal." |
Unused Models Memories, cut furniture, and other stuff. |
Unused Sounds Sul sul. |
Unused Actions Who knew Sims could do a lot more? |
Development Oversights Mistakes that were made beneath all that crunch. |
Oddities This memory is a lot more different than I imagined... |
Data
Hidden Sim Data Lost knowledge from beyond the lot...and grave. |
Hidden Create-A-Sim Content Hairstyles and fashion from another time. |
Unused Data |
Version Differences
Regional Differences A lot less graphical differences...but now with mimes. |
Revisional Differences Patches that either fixed the game or broke features. |
Debugging Features
To do: Get some more images of these features in action. |
By pressing Ctrl+⇧ Shift+C to bring up the command console and typing "boolProp testingcheatsenabled true" and pressing ↵ Return will enable several debugging features;
- By clicking a Sim while holding down ⇧ Shift, a menu pops up with debugging options. These include making Sims grow up instantly (or killing them if they're old), changing their aspiration, and making many Sims either selectable or unselectable. Most objects also have a debugging options, in which they can be reset to their original form or even deleted.
- Holding ⇧ Shift+N in Create A Family mode will allow the player to access clothing and hairstyles that are normally used, but not for normal sims.
Debug Mode Hotkeys
How to enter Debug mode in The Sims 2:
- Navigate to C:\Program Files\EA GAMES\(LATEST EP)\TSData\Res\Config, or the directory where you installed your game.
- Open the GlobalProps.xml file in NotePad, EditPad Lite, or your favorite raw text editor. Back up the file first by making a copy of it on your Desktop!
- Insert "<AnyBoolean key="testingCheatsEnabled" type="0xcba908e1">true</AnyBoolean>" between the lines with "allowCustomContent" and "animationLOD".
- Save the file.
- You're done! Please note that testing cheats will be enabled by default every time you start up the game. You can disable it in-game by typing "boolProp testingchestsenabled false" into the cheat console.
- The cheat is "off" by default. To turn it on, press Ctrl+⇧ Shift+C, and then type in "allMenus on". To turn it off, type "allMenus off".
List of debug mode hotkeys:
- Ctrl+O: Brings up "Performance" window used during development that contains toggles for certain performance/graphics options. To apply the settings in the "Performance" window, click "OK" on the left. Window:
- Ctrl+U: Brings up a window used during development that allows you to manipulate UI elements by moving them around and toggling their visibility. After being moved, UI elements do not remain in place after the game is closed. Window:
- Ctrl+⇧ Shift+C: Open cheat system input box.
- Ctrl+⇧ Shift+F: Force crash.
- Ctrl+⇧ Shift+L: Force reload current lot.
- Ctrl+⇧ Shift+U: Force reload UI (typically just induces a lag moment).
- Ctrl+⇧ Shift+S: Shows FPS and (resource) performance counter.
- Ctrl+⇧ Shift+W: Toggle wireframe objects (but not lot geometry).
Incomplete/Missing Language Localizations
The Sims, while having a large worldwide audience as a whole, is known to be localization-friendly as only text scripts need to be translated into other languages. However, there are various languages that are mentioned in SimPE according to text strings, but did not receive a localization. Among them are:
- Hindi
- Arabic
- Bulgarian
- Cyrillic
- Ukrainian
- Icelandic
- Romanian
- Latin
- Slovak
- Albanian
- Turkish
- Tagalog
- Vietnamese
This means that the developers planned or at least considered the possibility of translating the game into these languages, but did not complete this process. Many of the used text strings, when set to one of these languages, are earlier versions of them in English, suggesting that translation plans were cut midway through the game's development.
One example of such an incomplete localization is the Cyrillic language section. This section was created not to add Cyrillic, but to test Cyrillic letters during the game's development and localization, such as Russian, where it has an official localization for that language.
However, the cyrillic game font don`t have an Ukrainian alphabet characters, so special fonts and modifications are required for proper text rendering. Some of these characters include:
- Ґ ґ
- Є є
- І і
- Ї ї
The list of incomplete/missing language localizations was obtained by comparing the list of languages into which the game has been officially translated (the list is pulled from Wikimedia) and the list of language sections in SIMPE program, Package Editor in The Sims 2.[1]
Unused Objects
To do: More...
|
This section lists unused objects that are programmed in the game, and will not cover mod recreations associated with unused meshes.
Buy/Build Mode
Base Game Cars
To do: Further documentation here - https://www.tumblr.com/l-1-z-a/613501606461341696/the-first-results-of-unlocking-cars-from-the-base?_branch_match_id=link-1156705444303996665
|
From some early 2004 prerelease material, vehicles were originally considered for the base game as an Aspiration Reward according to SimPE before they were eventually cut. When restored via mods, the driveway (appearing as a smaller space) and yellow sports car will appear in the catalog.
However, the function is in an incomplete and buggy state; causing an error message, and among the available menu items there is a Go Downtown
[2] item. Performing it would show the loading screen image of the Taxi and takes the player into Buy/Build mode of the Community Lot they visit and can only exit without saving[3]
So, as soon as the player selects the “Go Downtown” option, the car is transferred to the portal, where either the school bus is parked, or where the sim “picked up” a taxi if the option “Go to a community lot” was selected in the menu. Sim correctly gets into the car. The return is now also correct: the sim will exit the car with the correct animations, and the game will put the car where its player originally set it. Parking is no longer needed[4].
It remains to figure out why the sim who arrived at the community lot is not displayed, but the Buy Mode is activated.
Cars would eventually be introduced in Nightlife and FreeTime expansion.
Prerelease materials
- From "Welcome to The Sims 2! Part 23" letter which were posted on April 10, 2004, by Lucy Bradshaw, Sims 2 Executive Producer.[5]
- Screenshot uploaded on April 28, 2004.
- E3 2004 Trailer 2, on 0:28.
E3 2004 Trailer 2 |
---|
- From chat-session with Maxoids from November 6, 2003[6]. MaxisLuc is Luc Barthelet. He was Maxis Chief LISH during development of game.
sugarbabealison (Nov 6, 2003 6:27:17 PM) Please Luc Answer This, Will Sims have cars? MaxisLuc (Nov 6, 2003 6:27:17 PM) I don't think so, but there is a chance
- This screenshot of Riverside from December 20-28, 2003. In front of the big white house on this screenshot you can see what looks like a white garage door and a road, the entrance to the garage through that white garage door.
How to unlock?
Use Object Workshop from SIMPE and make the car "visible" in Buy Mode. This was made possible because the car was originally an aspiration reward and was adapted to a Buy Mode like the one in The Sims Castaway Stories.
Demonstration of car behavior in the base game
To do: Further documentation here - https://www.tumblr.com/l-1-z-a/613501606461341696/the-first-results-of-unlocking-cars-from-the-base?_branch_match_id=link-1156705444303996665 |
Version of base game is 1.0.0.932.
Car Types
The list of car types that are available in the base game can be found in the objects.package file in this resource:
Name | Type | Group | Instance |
---|---|---|---|
Car Types | BCON | 0x7F8F4EB6 | 0x00002000 (8192) |
Group 0x7F8F4EB6 is JobDataGlobals group.
Here are the contents of this resource:
Line | Value | Label |
---|---|---|
0x0 (0) | 0x0000 | Hatchback |
0x1 (1) | 0x0001 | Minivan |
0x2 (2) | 0x0002 | Sedan |
0x3 (3) | 0x0003 | HMV |
0x4 (4) | 0x0004 | Sports Car Low |
0x5 (5) | 0x0005 | Sports Car Mid |
0x6 (6) | 0x0006 | Sports Car Super |
0x7 (7) | 0x0007 | Helicopter - Military |
0x8 (8) | 0x0008 | Helicopter - Business |
0x9 (9) | 0x0009 | Bus - School |
0xA (10) | 0x000A | Bus - Team |
0xB (11) | 0x000B | Town Car |
0xC (12) | 0x000C | Limo |
0xD (13) | 0x000D | ***Custom Car*** |
0xE (14) | 0x000E | Police Car |
0xF (15) | 0x000F | Van - Swat |
0x10 (16) | 0x0010 | Van - Delivery |
0x11 (17) | 0x0011 | Ambulance |
In this list is a mention of custom car (***Custom Car***). Also, there's a mention of SWAT vehicle (Van - Swat). Both names are unused in the base game. For the downloadable custom cars to work properly, you need the Nightlife expansion pack. SWAT vehicle (Van - Swat) is unavailable in game. Law enforcement career uses a police car for all levels of career before Captain Hero level. At this career level, the sim doesn't use a work car to get to work, but takes off like Superman. This is a last level of this career.
Windmill
Neighborhood View
Instance | File Name | Object Name | Image | Notes |
---|---|---|---|---|
0xF09B86D1 | Carousel | Carousel | A scrapped, fully-animated neighborhood decoration intended to appear in either Open For Business, Family Fun Stuff, or Pets. |
Debug Mode
Placeholder Object
This placeholder object exists in the form taken by several debugging objects when they are spawned in-game. Oddly enough, whilst this placeholder object is not obtainable by normal means, it can be seen on the KidzTube station on a Sim's TV.
Unused Television Cinematics
To do: I think this was disabled in an update...? |
Inside the Movies/Games folder contains five unused videos intended to show before Sims would play video games on a television or computer. They consist of the 2003 EA Games Logo albeit with "Challenge Everything" being blurred (to accommodate with other languages, despite it still being said), and the ESRB rating screens of Rating Pending, Everyone and Teen. There were no video games that carry the Rating Pending rating at the time of the Sims 2's release.
Additionally, blank.movie is a one-second video of a black screen so it won't be covered.
eagames.movie | esrb_rp.movie | esrb_e.movie | esrb_t.movie |
---|---|---|---|
Unused Neighborhood Cinematics
Each of the premade neighborhoods included with the basegame plus subsequent expansions open with a realtime cinematic upon loading. These show off various highlights and interesting features in the neighborhood. These cinematics are associated with the name of the neighborhood, so you could swap the names (I.e. "Pleasantview" to "Strangetown") around to view a cinematic in a neighborhood it was not intended for. However doing so can in most cases cause the camera to clip through the terrain. However there are three cinematics tied to otherwise unused neighborhood names hidden in the game's data that can be seen using the method described above. The three neighborhood names with cinematics are as follows:
- Sedona
- Lakeview
- Europa
The following videos show the Lakeview and Europa cinematics on the sample.sc4
terrain, as there are no terrains available in-game that fit them. While Sedona is shown on Sedona.sc4
.
Sedona | Lakeview | Europa |
---|---|---|
Unused Memory
In Freetime, there is an unused Memory that would have been for the dummied-out Give Me Youth
wish interaction from the Genie, even coming with an unused description and icon.
Icon | Memory Name | Description |
---|---|---|
Became Young Again Through Genie Lamp | I thought youth was fleeting before. That magical genie made me young again, though! I'll cherish this extra time I've gained! |
Scrapped/Early Scripted Sequences
Lothario Family
In the objects.package of the base game in the Behaviour function resource (BHAV), there is a BHAV Script - Pleasantville - Lothario.
The path to this BHAV:
Found In | Name | Type | Group | Instance |
---|---|---|---|---|
Objects/objects.package | Script - Pleasantville - Lothario | BHAV | 0x7F6B4AOE | 0x00001005 (4001) |
This BHAV contains these instructions:
0000 : 0118 : 01 : 0027 : FFFC : 14000000000000000000000000000000 [global 0x0118] Idle (1 arg: ticks=0x0014) 0001 : 0002 : 00 : 0009 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0002 : 0024 : 01 : 0028 : FFFC : 00000000000800020000140001050000 [prim 0x0024] Dialog (Text Notification, Strings: Private, Message: "This place is a mess! Use the phone to hire a maid.", 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)) 0003 : 0118 : 01 : 0004 : FFFC : 1E000000000000000000000000000000 [global 0x0118] Idle (1 arg: ticks=0x001E) 0004 : 0002 : 00 : 0005 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0005 : 001F : 00 : 0006 : 0036 : 00000000810A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, person) 0006 : 0002 : 00 : 0007 : 0005 : 3D00005D0002131A0000000000000000 [prim 0x0002] Expression (Stack Object's person data 0x003D (family number) == Const 0x013A:0x00 ("Service NPCs" Value: 0x7FFF)) 0007 : 0002 : 00 : 0008 : 0005 : 9B0017590002131A0000000000000000 [prim 0x0002] Expression (Stack Object's person data 0x009B (NPC Type) == Const 0x0132:0x17 ("Maid" Value: 0x0013)) 0008 : 0002 : 00 : 000B : FFFC : 000000000005190A0000000000000000 [prim 0x0002] Expression (Local 0x0000 (Maid ID) := Stack Object ID 0x0000) 0009 : 001F : 00 : 000A : FFFD : 287FAE0D840A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, object of type: GUID 0x0DAE7F28) 000A : 0002 : 00 : 0033 : FFFC : 010000000005190A0000000000000000 [prim 0x0002] Expression (Local 0x0001 (Don ID) := Stack Object ID 0x0000) 000B : 202E : 01 : 000F : 000C : 1900001901000A00000A000001000000 [semi 0x202E] Event Detect - Personality/Interest Talk (2 args: Person A=Local 0x0000 (Maid ID), Local 0x0001 (Don ID)) 000C : 0118 : 01 : 000B : FFFC : 1E000000000000000000000000000000 [global 0x0118] Idle (1 arg: ticks=0x001E) 000D : 0024 : 01 : 002D : FFFC : 00000000000800000000140000060000 [prim 0x0024] Dialog (Text Notification, Strings: Private, Message: "Having a hard time making small talk with that special someone? Pick up the phone and visit a Community Lot, where you can buy magazines that open your mind to all new topics of conversation!", TNS Style: Sim, Priority: 0x01, timeout: 0x14, 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)) 000E : 0002 : 00 : 000D : FFFC : 0000010000050A190000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Local 0x0001 (Don ID)) 000F : 0002 : 00 : 0010 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0010 : 001F : 00 : 0011 : 000E : 76A86CAC840A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, object of type: GUID 0xAC6CA876) 0011 : 0002 : 00 : 0012 : 0010 : 00000100000201190000000000000000 [prim 0x0002] Expression (Stack Object's attribute 0x0000 ("In Action") == Local 0x0001 (Don ID)) 0012 : 0118 : 01 : 000F : FFFC : 1E000000000000000000000000000000 [global 0x0118] Idle (1 arg: ticks=0x001E) 0013 : 0002 : 00 : 0014 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0014 : 001F : 00 : 0015 : FFFD : F12B104E840A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, object of type: GUID 0x4E102BF1) 0015 : 0002 : 00 : 0016 : FFFC : 020000000005190A0000000000000000 [prim 0x0002] Expression (Local 0x0002 (TelescopeID) := Stack Object ID 0x0000) 0016 : 0002 : 00 : 0017 : FFFC : 02001900000501070000000000000000 [prim 0x0002] Expression (Stack Object's attribute 0x0002 ("Force Job Chance Card") := Literal 0x0019) 0017 : 0024 : 01 : 001C : FFFC : 000000000008000200001400010B0000 [prim 0x0024] Dialog (Text Notification, Strings: Private, Message: "Don dresses to impress! Call a taxi to visit a community lot and shop for food, clothes, and entertainment.", 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)) 0018 : 0002 : 00 : 0019 : FFFC : 03000000000519100000000000000000 [prim 0x0002] Expression (Local 0x0003 (HandSlot) := Stack Object's slot 0x0000) 0019 : 0178 : 01 : 001D : 001A : 1903000A00000A00000A000001000000 [global 0x0178] Verify - Object ID (1 arg: Object ID=Local 0x0003 (HandSlot)) 001A : 0002 : 00 : 001B : FFFC : 03000100000519100000000000000000 [prim 0x0002] Expression (Local 0x0003 (HandSlot) := Stack Object's slot 0x0001) 001B : 0178 : 01 : 001F : 0036 : 1903000A00000A00000A000001000000 [global 0x0178] Verify - Object ID (1 arg: Object ID=Local 0x0003 (HandSlot)) 001C : 0002 : 00 : 0021 : FFFC : 0000010000050A190000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Local 0x0001 (Don ID)) 001D : 0020 : 00 : 0002 : 001E : 60685CD8030019000000000000000000 [prim 0x0020] Test Object Type (Local 0x0003 (HandSlot), is instance of: GUID 0xD85C6860, checking original (not current) GUID: False, incoming ID is a neighbor ID: False, return GUID selected in Temp 0,1: False) 001E : 0020 : 00 : 0002 : 001A : FF9F19AC030019000000000000000000 [prim 0x0020] Test Object Type (Local 0x0003 (HandSlot), is instance of: GUID 0xAC199FFF, checking original (not current) GUID: False, incoming ID is a neighbor ID: False, return GUID selected in Temp 0,1: False) 001F : 0020 : 00 : 0002 : 0020 : 60685CD8030019000000000000000000 [prim 0x0020] Test Object Type (Local 0x0003 (HandSlot), is instance of: GUID 0xD85C6860, checking original (not current) GUID: False, incoming ID is a neighbor ID: False, return GUID selected in Temp 0,1: False) 0020 : 0020 : 00 : 0002 : 0036 : FF9F19AC030019000000000000000000 [prim 0x0020] Test Object Type (Local 0x0003 (HandSlot), is instance of: GUID 0xAC199FFF, checking original (not current) GUID: False, incoming ID is a neighbor ID: False, return GUID selected in Temp 0,1: False) 0021 : 027D : 01 : 0028 : 0022 : 1A17590701000A00000A000001000000 [global 0x027D] NPC - Instance of on Lot? (2 args: NPC ID (use #G - NPC Identifiers)=Const 0x0132:0x17 ("Maid" Value: 0x0013), Including Visitors?=Literal 0x0001) 0022 : 02EC : 01 : 0028 : 0018 : 1A17590A00000A00000A000001000000 [global 0x02EC] Schedule - NPC - Check (1 arg: NPC Type=Const 0x0132:0x17 ("Maid" Value: 0x0013)) 0023 : 0002 : 00 : 0001 : FFFC : 04000000000519070000000000000000 [prim 0x0002] Expression (Local 0x0004 (NinaArrived?) := Literal 0x0000) 0024 : 2031 : 01 : 0013 : 0013 : 1901000A00000A00000A000001000000 [semi 0x2031] Simulation - Select/Activate Sim (1 arg: SimID=Local 0x0001 (Don ID)) 0025 : 0002 : 00 : 0026 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0026 : 001F : 00 : 002E : 0032 : 5B88AE2D840A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, object of type: GUID 0x2DAE885B) 0027 : 0002 : 00 : 0023 : FFFC : 00000000000519070000000000000000 [prim 0x0002] Expression (Local 0x0000 (Maid ID) := Literal 0x0000) 0028 : 0002 : 00 : 0036 : FFFC : 00000100000519070000000000000000 [prim 0x0002] Expression (Local 0x0000 (Maid ID) := Literal 0x0001) 0029 : 0002 : 00 : 002A : FFFC : 0600500000050F070000000000000000 [prim 0x0002] Expression (Stack Object's motive 0x0006 (Comfort) := Literal 0x0050) 002A : 0002 : 00 : 002B : FFFC : 0800500000050F070000000000000000 [prim 0x0002] Expression (Stack Object's motive 0x0008 (Water / Hygiene) := Literal 0x0050) 002B : 0002 : 00 : 002C : FFFC : 0F00500000050F070000000000000000 [prim 0x0002] Expression (Stack Object's motive 0x000F (Fun) := Literal 0x0050) 002C : 0002 : 00 : 0037 : FFFC : 0900500000050F070000000000000000 [prim 0x0002] Expression (Stack Object's motive 0x0009 (Bladder) := Literal 0x0050) 002D : 0002 : 00 : 0036 : FFFC : 0000E703000519070000000000000000 [prim 0x0002] Expression (Local 0x0000 (Maid ID) := Literal 0x03E7) 002E : 0002 : 00 : 0029 : 002F : 04000100000219070000000000000000 [prim 0x0002] Expression (Local 0x0004 (NinaArrived?) == Literal 0x0001) 002F : 0024 : 01 : 0030 : FFFC : 00000000000800000000140001060000 [prim 0x0024] Dialog (Text Notification, Strings: Private, Message: "Having a hard time making small talk with that special someone? Pick up the phone and visit a Community Lot, where you can buy magazines that open your mind to all new topics of conversation!", TNS Style: System, Priority: 0x01, timeout: 0x14, 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)) 0030 : 0002 : 00 : 0029 : FFFC : 04000100000519070000000000000000 [prim 0x0002] Expression (Local 0x0004 (NinaArrived?) := Literal 0x0001) 0031 : 0002 : 00 : 0036 : 001C : 00000000000019070000000000000000 [prim 0x0002] Expression (Local 0x0000 (Maid ID) > Literal 0x0000) 0032 : 0002 : 00 : 0035 : 0038 : 04000100000219070000000000000000 [prim 0x0002] Expression (Local 0x0004 (NinaArrived?) == Literal 0x0001) 0033 : 0301 : 01 : FFFD : 0024 : 19000000000000000000000000000000 [global 0x0301] Death - Is Sim Dead? (NID) (1 arg: Neighbor ID=0x0019) 0034 : 0002 : 00 : FFFD : 0025 : 00001600000006070000000000000000 [prim 0x0002] Expression (Global 0x0000 (Hour) > Literal 0x0016) 0035 : 0002 : 00 : FFFD : 0031 : 00000000000019070000000000000000 [prim 0x0002] Expression (Local 0x0000 (Maid ID) > Literal 0x0000) 0036 : 0118 : 01 : 0034 : FFFC : 1E000000000000000000000000000000 [global 0x0118] Idle (1 arg: ticks=0x001E) 0037 : 0002 : 00 : 0036 : 0031 : 00000000000019070000000000000000 [prim 0x0002] Expression (Local 0x0000 (Maid ID) > Literal 0x0000) 0038 : 0002 : 00 : 0036 : 0031 : 00000000000019070000000000000000 [prim 0x0002] Expression (Local 0x0000 (Maid ID) > Literal 0x0000)
The script begins by checking whether Nina Caliente has arrived. This check is contained in instruction number 0x23 (35):
0023 : 0002 : 00 : 0001 : FFFC : 04000000000519070000000000000000 [prim 0x0002] Expression (Local 0x0004 (NinaArrived?) := Literal 0x0000)
A message appears saying that Don Lothario needs to go to the community lot and buy food, clothes, and entertainment. This message is contained in instruction at number 0x17 (23):
[prim 0x0024] Dialog (Text Notification, Strings: Private, Message: "Don dresses to impress! Call a taxi to visit a community lot and shop for food, clothes, and entertainment.", 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: "Don dresses to impress! Call a taxi to visit a community lot and shop for food, clothes, and entertainment.".
After this message appears, the presence of the maid at the lot is checked:
0021 : 027D : 01 : 0028 : 0022 : 1A17590701000A00000A000001000000 [global 0x027D] NPC - Instance of on Lot? (2 args: NPC ID (use #G - NPC Identifiers)=Const 0x0132:0x17 ("Maid" Value: 0x0013), Including Visitors?=Literal 0x0001)
If the maid is not in the lot, the game, after a few more checks, calls the player to call the maid because the house is messy. This message is contained in instruction at number 0x2 (2):
0002 : 0024 : 01 : 0028 : FFFC : 00000000000800020000140001050000 [prim 0x0024] Dialog (Text Notification, Strings: Private, Message: "This place is a mess! Use the phone to hire a maid.", 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: "This place is a mess! Use the phone to hire a maid.".
Then the script, regardless of the results of the numerous checks and expressions in it loops.
If the Personality/Interest Talk with the maid fails, a message appears saying that Don can call a taxi and go to the community lot to buy magazines, which will open up new topics of conversation for him. This message is contained in instruction at number 0xD (13):
[prim 0x0024] Dialog (Text Notification, Strings: Private, Message: "Having a hard time making small talk with that special someone? Pick up the phone and visit a Community Lot, where you can buy magazines that open your mind to all new topics of conversation!", TNS Style: Sim, Priority: 0x01, timeout: 0x14, 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: "Having a hard time making small talk with that special someone? Pick up the phone and visit a Community Lot, where you can buy magazines that open your mind to all new topics of conversation!".
This message is also duplicated in instruction 0x2F (47). Only TNS Style differs: in instruction 0xD (13) its value is "Sim", in instruction 0x2F (47) its value is "System".
Pleasant Family
In the objects.package of the base game in the Behaviour function resource (BHAV), there is a BHAV Script - Pleasantville - Pleasant.
The path to this BHAV:
Found In | Name | Type | Group | Instance |
---|---|---|---|---|
Objects/objects.package | Script - Pleasantville - Pleasant | BHAV | 0x7F6B4AOE | 0x00001002 (4098) |
This BHAV contains these instructions:
0000 : 0118 : 01 : 0031 : FFFC : 14000000000000000000000000000000 [global 0x0118] Idle (1 arg: ticks=0x0014) 0001 : 0002 : 00 : 0014 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0002 : 0118 : 01 : 0012 : FFFC : 01000000000000000000000000000000 [global 0x0118] Idle (1 arg: ticks=0x0001) 0003 : 0024 : 01 : 0012 : FFFC : 00000000000000020000140000010000 [prim 0x0024] Dialog (message, Strings: Private, Title: [none], Message: "Script Broke for some reason.", Button 1: [none], icon: none, wait for user: True, block simulation: True. (Display a dialog with a message and yes button.)) 0004 : 001F : 00 : 0006 : FFFD : DE70AEAD840A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, object of type: GUID 0xADAE70DE) 0005 : 0002 : 00 : 0004 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0006 : 0002 : 00 : 0007 : FFFC : 38000900000513070000000000000000 [prim 0x0002] Expression (Stack Object's person data 0x0038 (School Grade) := Literal 0x0009) 0007 : 0002 : 00 : 0008 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0008 : 001F : 00 : 0009 : FFFD : 00000000810A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, person) 0009 : 0020 : 00 : 000A : 0008 : 6E71AEED00000A000000000000000000 [prim 0x0020] Test Object Type (Stack Object ID 0x0000, is instance of: GUID 0xEDAE716E, checking original (not current) GUID: False, incoming ID is a neighbor ID: False, return GUID selected in Temp 0,1: False) 000A : 0002 : 00 : 000D : FFFC : 38000200000513070000000000000000 [prim 0x0002] Expression (Stack Object's person data 0x0038 (School Grade) := Literal 0x0002) 000B : 0002 : 00 : 0026 : FFFC : 020000000005190A0000000000000000 [prim 0x0002] Expression (Local 0x0002 (MaryID) := Stack Object ID 0x0000) 000C : 0024 : 01 : 0018 : FFFC : 00000000000800000000140001020000 [prim 0x0024] Dialog (Text Notification, Strings: Private, Message: "$Object's Aspiration is Romance, and he doesn't seem to be getting it. $Object should try to find some intimacy in their life.", TNS Style: System, Priority: 0x01, timeout: 0x14, 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)) 000D : 0002 : 00 : 000E : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 000E : 001F : 00 : 000F : 0002 : 00000000810A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, person) 000F : 0020 : 00 : 0010 : 000E : 9D6FAEAD00000A000000000000000000 [prim 0x0020] Test Object Type (Stack Object ID 0x0000, is instance of: GUID 0xADAE6F9D, checking original (not current) GUID: False, incoming ID is a neighbor ID: False, return GUID selected in Temp 0,1: False) 0010 : 0002 : 00 : 0030 : FFFC : 030000000005190A0000000000000000 [prim 0x0002] Expression (Local 0x0003 (DanielID) := Stack Object ID 0x0000) 0011 : 0002 : 00 : 0005 : FFFC : 00000100000500070000000000000000 [prim 0x0002] Expression (My attribute 0x0000 ("In Action") := Literal 0x0001) 0012 : 0002 : 00 : FFFD : FFFC : 00000000000500070000000000000000 [prim 0x0002] Expression (My attribute 0x0000 ("In Action") := Literal 0x0000) 0013 : 0002 : 00 : FFFD : FFFC : 00000000000500070000000000000000 [prim 0x0002] Expression (My attribute 0x0000 ("In Action") := Literal 0x0000) 0014 : 0002 : 00 : 0015 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0015 : 001F : 00 : 000B : FFFD : 4F70AE2D840A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, object of type: GUID 0x2DAE704F) 0016 : 0070 : 00 : 000C : FFFC : 000A0000E00000DF0600210007080001 [prim 0x0070] Effect Stop/Start (Soft start effect, Target: Stack Object ID 0x0000, default 3/4 height, "uiHeadlineGroup_ScreamRuntime" [Effect:0xE0 (Global)], icon: Literal 0x0008 (Conversation), sheet: "uieffects-headlines-motives-scream-02" [IconTexture:0x01 (Global)], Priority: False, model: default) 0017 : 0178 : 01 : 001A : 002A : 1902000A00000A00000A000001000000 [global 0x0178] Verify - Object ID (1 arg: Object ID=Local 0x0002 (MaryID)) 0018 : 0002 : 00 : 0017 : FFFC : 0000020000050A190000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Local 0x0002 (MaryID)) 0019 : 0118 : 01 : 0018 : FFFC : 3C000000000000000000000000000000 [global 0x0118] Idle (1 arg: ticks=0x003C) 001A : 0002 : 00 : 0019 : 002A : 1D00FFFF000004070000000000000000 [prim 0x0002] Expression (Stack Object's 0x001D (room) > Literal 0xFFFF) 001B : 0033 : 00 : 001F : 0034 : 1B131F0003D182CA0C00080000000000 [prim 0x0033] Manage Inventory (Set To Next Token Of GUID, token: GUID 0x0CCA82D1, Category: visible memory, reversed: False, Inventory (singular): Neighbor: Stack Object's person data 0x001F (neighbor id), index: Temp 0x0000) 001C : 0118 : 01 : 0032 : FFFC : 3C000000000000000000000000000000 [global 0x0118] Idle (1 arg: ticks=0x003C) 001D : 0002 : 00 : 001E : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 001E : 001F : 00 : 002F : 0020 : 7269AE0D840A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, object of type: GUID 0x0DAE6972) 001F : 0118 : 01 : 001D : FFFC : FA000000000000000000000000000000 [global 0x0118] Idle (1 arg: ticks=0x00FA) 0020 : 002A : 00 : 0021 : 0013 : 7269AE0D060000000000000000000000 [prim 0x002A] Create New Object Instance (GUID 0x0DAE6972, place: out of world (put new object id in Stack Object), Create object normally, fail if tile is non-empty: False, pass Temp 0 to main: False, move in a new Sim: False, copying design mode materials from object in Temp 5: False) 0021 : 0002 : 00 : 0022 : FFFC : 040000000005190A0000000000000000 [prim 0x0002] Expression (Local 0x0004 (CassID) := Stack Object ID 0x0000) 0022 : 0002 : 00 : 0023 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0023 : 001F : 00 : 0024 : 0013 : F9BEE681840A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, object of type: GUID 0x81E6BEF9) 0024 : 0002 : 00 : 0025 : FFFC : 000000000005190A0000000000000000 [prim 0x0002] Expression (Local 0x0000 (PortalID) := Stack Object ID 0x0000) 0025 : 0010 : 00 : 002F : 0013 : 000008001904001900000000DE080000 [prim 0x0010] Find Location For (Local 0x0004 (CassID), relative to Local 0x0000 (PortalID), facing, normal, prefer empty: True, user editable: False, on level ground: False, with empty border: False, begin in front of refobj: False, with line of sight to center: False) 0026 : 0002 : 00 : 0027 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0027 : 001F : 00 : 0029 : 0011 : E9A23837840A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, object of type: GUID 0x3738A2E9) 0028 : 0002 : 00 : 001B : FFFC : 00000000000508070000000000000000 [prim 0x0002] Expression (Temp 0x0000 := Literal 0x0000) 0029 : 0002 : 00 : 0011 : FFFC : 07000400000505070000000000000000 [prim 0x0002] Expression (Stack Object's [semi] attribute 0x0007 := Literal 0x0004) 002A : 0002 : 00 : 002B : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 002B : 001F : 00 : 002C : 0013 : B58867D0840A00000000000000000000 [prim 0x001F] Set to Next (Stack Object ID 0x0000, object of type: GUID 0xD06788B5) 002C : 0002 : 00 : 002D : FFFC : 05001600000505070000000000000000 [prim 0x0002] Expression (Stack Object's [semi] attribute 0x0005 := Literal 0x0016) 002D : 0002 : 00 : 002E : FFFC : 04001300000505070000000000000000 [prim 0x0002] Expression (Stack Object's [semi] attribute 0x0004 := Literal 0x0013) 002E : 0002 : 00 : 0033 : FFFC : 0000020000050A190000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Local 0x0002 (MaryID)) 002F : 0002 : 00 : 0013 : FFFC : 0000000000050A070000000000000000 [prim 0x0002] Expression (Stack Object ID 0x0000 := Literal 0x0000) 0030 : 2031 : 01 : 0016 : 0016 : 0A00000A00000A00000A000001000000 [semi 0x2031] Simulation - Select/Activate Sim (1 arg: SimID=Stack Object ID 0x0000) 0031 : 0002 : 00 : 0001 : FFFC : 02000200000500070000000000000000 [prim 0x0002] Expression (My attribute 0x0002 ("Force Job Chance Card") := Literal 0x0002) 0032 : 014B : 01 : 0028 : 0013 : 1902000A00000A00000A000001000000 [global 0x014B] Verify - Person ID (1 arg: Person ID=Local 0x0002 (MaryID)) 0033 : 0002 : 00 : 0032 : FFFC : 06000000000519070000000000000000 [prim 0x0002] Expression (Local 0x0006 (LoopID) := Literal 0x0000) 0034 : 0002 : 00 : 001C : 0013 : 0600F401000B19070000000000000000 [prim 0x0002] Expression (Local 0x0006 (LoopID) ++ and < Literal 0x01F4)
The scripts start by displaying this message. This message is contained in instruction at number 0xC (12):
000C : 0024 : 01 : 0018 : FFFC : 00000000000800000000140001020000 [prim 0x0024] Dialog (Text Notification, Strings: Private, Message: "$Object's Aspiration is Romance, and he doesn't seem to be getting it. $Object should try to find some intimacy in their life.", TNS Style: System, Priority: 0x01, timeout: 0x14, 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: "$Object's Aspiration is Romance, and he doesn't seem to be getting it. $Object should try to find some intimacy in their life.".
$Object refers to Daniel Pleasant.
This BHAV also contains a message saying that the script is broken for some reason. This message is contained in instruction at number 0x3 (3):
0003 : 0024 : 01 : 0012 : FFFC : 00000000000000020000140000010000 [prim 0x0024] Dialog (message, Strings: Private, Title: [none], Message: "Script Broke for some reason.", Button 1: [none], icon: none, wait for user: True, block simulation: True. (Display a dialog with a message and yes button.))
Message field: "Script Broke for some reason.".
Evidently a script that Veronaville would have followed during gameplay. Unfortunately the BHAV that governs its functions is completely empty, leaving it a mystery as to what exactly it would have done.
The path to this BHAV:
Found In | Name | Type | Group | Instance |
---|---|---|---|---|
Objects/objects.package | Script - Veronaville - General Script | BHAV | 0x7F6B4A0E | 0x0000100E (4110) |
The contents of this BHAV are empty.
Only for Veronaville exist a BHAV with "General Script" in its name.
Unused Music
The sfx1.package from base game, which is located at the path "TSData\Res\Sound" contain five full unused music tracks. This tracks can be found by extracting the contents of the base game's sfx1.package using SimPE into a folder. The extracted package will consist of 4 folders and one file. The unused music tracks are located in "2026960B - mp3 or xa Sound File" folder. The files in the "2026960B - mp3 or xa Sound File" folder need to be sorted by file size from largest to smallest. The five larger files are these tracks. You can listen to these music tracks below:
"Eeyooma Mana Muki Vop" from The Sims Bustin' Out
This music track is from The Sims Bustin' Out. Its original name is "Eeyooma Mana Muki Vop". The name of the extracted file is "94E6DF8B-0B8AB3CD-FF5B9FA4.mp3". It would appear in Pet Stories, another game using the same engine.
"Nahtreel Jazz" from The Sims Bustin' Out
This music track is from The Sims Bustin' Out. Its original name is "Nahtreel Jazz". The name of the extracted file is "CE84B784-0B8AB3CD-FFA134CC.mp3".
"sbo_bb4" from The Sims Bustin' Out
This music track is from The Sims Bustin' Out. Its original name is "sbo_bb4". The name of the extracted file is "011AB223-0B8AB3CD-FFDC58F1.mp3".
"Sim the Blues" from The Sims: Unleashed
This music track is a shorter edit from The Sims: Unleashed. Its original name is "Sim the Blues". The name of the extracted file is "09731966-0B8AB3CD-FF4E0CB4.mp3".
"SUL_Band2_M" from The Sims: Unleashed
This music track is a shorter edit from The Sims: Unleashed. Its original name is "SUL_Band2_M". The name of the extracted file is "647ABE94-0B8AB3CD-FF1C5809.mp3".
Hidden Details
To do: Hidden Elder age thumbnails of NPCs. Sub-page this into Unused Sim Data. |
Hidden NPC Biographies
Grim Reaper
Unlike other NPC Sims, the Grim Reaper has a hidden biography if he is added to a household via debugging cheats.
Education: BA Human Development, University of Hawaii Favorite Band: Styx Short Piers: I like it when you take long walks.
Santa Klaus
Introduced in the Holiday Party Pack or Happy Holiday Stuff, he has a hidden biography.
The Big Man
References
- ↑ https://commons.wikimedia.org/wiki/Category:The_Sims_2
- ↑ https://www.tumblr.com/l-1-z-a/613859088326098944/option-go-downtown-in-hidden-buyable-cars-from
- ↑ https://www.tumblr.com/l-1-z-a/613501606461341696/the-first-results-of-unlocking-cars-from-the-base?_branch_match_id=link-1156705444303996665
- ↑ https://thesims.cc/threads/istorija-razrabotki-sims-2.31582/post-5663422
- ↑ https://www.simsnetwork.com/news/2004/04/10/welcome-to-the-sims-2-part-23
- ↑ https://www.simsnetwerk.com/nieuws/2003/11/06/chat-with-luc-barthelet-about-bella-goth-and-sims-2
- Pages missing developer references
- Games developed by Maxis
- Pages missing publisher references
- Games published by Electronic Arts
- Windows games
- Pages missing date references
- Games released in 2004
- Games released in September
- Games released on September 16
- Games released on September 14
- Games released on September 17
- Games with unused code
- Games with hidden development-related text
- Games with unused objects
- Games with unused graphics
- Games with unused cinematics
- Games with unused abilities
- Games with unused music
- Games with unused text
- Games with debugging functions
- Games with regional differences
- Games with revisional differences
- To do
- Defunct online content
- Sim series
- Games published by Bild Interactive
Cleanup > Pages missing date references
Cleanup > Pages missing developer references
Cleanup > Pages missing publisher references
Cleanup > To do
Games > Defunct online content
Games > Games by content > Games with debugging functions
Games > Games by content > Games with hidden development-related text
Games > Games by content > Games with regional differences
Games > Games by content > Games with revisional differences
Games > Games by content > Games with unused abilities
Games > Games by content > Games with unused cinematics
Games > Games by content > Games with unused code
Games > Games by content > Games with unused graphics
Games > Games by content > Games with unused music
Games > Games by content > Games with unused objects
Games > Games by content > Games with unused text
Games > Games by developer > Games developed by Electronic Arts > Games developed by Maxis
Games > Games by platform > Windows games
Games > Games by publisher > Games published by Bild Interactive
Games > Games by publisher > Games published by Electronic Arts
Games > Games by release date > Games released in 2004
Games > Games by release date > Games released in September
Games > Games by release date > Games released in September > Games released on September 14
Games > Games by release date > Games released in September > Games released on September 16
Games > Games by release date > Games released in September > Games released on September 17
Games > Games by series > Sim series