I had alway wondered why the 1.0.0.971 patch changed the misc.package file which is reverted in the later patches, so I tried extracting all the files and used WinDiff to discover this text file incorrectly defined as MP3/XA. Is there anything useful in it?
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Resources.ini (Sims 2)
;
; This file defines various settings that comprise the glue that connects
; various subsystems to each other. It may look a little complicated at
; first but actually what it is doing is straightforward. It is merely
; all the hexadecimal stuff that is getting in the say of clarity.
; In theory, all of the settings here can be hard-coded into the app
; startup code. We put it here because it is easier to have this data
; driven when people are adding new things frequently.
;
; When you add a new section type to this file, please document it so that
; future users don't have to scratch their heads about it. Chances are
; that you yourself might be scratching your head too.
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; This section is used by the DBSegmentConverter to compile the .dat file used
; by the shipping release build of this app. The format of this section is:
; DB = <path>;<keymask>
; [DB = <path>;<keymask>
; ...
; Another option is to specify by group name:
; DB = <path>;<grouptag>
;
; An example set of entries might be:
; DB = C:\SomeDirectory\SomeFile1.dat;0x12345678 0x12345678 0x12345678
; DB = C:\SomeDirectory\SomeFile2.dat;0x12345678 * *;English
; DB = %DataDirectory%SomeFile3.dat;* * *;
; DB = %DataDirectory%Sound.dat;SOUND_DATA
;
[Converted Segments]
DB=%DataDirectory%Res\UI\UKUI.data;UK_UI_DATA
DB=%DataDirectory%Res\Locale\%Language%\UI\UKUI.data;UK_UI_DATA
[DBSegments]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; DBSegments are objects that subclass from cIGZDBSegment. A DBSegment is
; a database segment, simply just a database. It contains records. These
; records are uniquely defined by a record ID which is a triplet of
; 'type', 'group', and 'instance'. You ask a segment for a record and
; it hands you back the data for that record.
;
; The most common types are GZDBSegmentIXF and GZDBSegmentDirectoryFiles.
; With the former, records are packed into a data file that usually has
; a name with an extension like .ixf or .dat. Actually the SimCity3000
; save game format itself (.sc3) is an IXF file. With DBSegmentDirectoryFiles,
; records are files in a directory. Each instance of one of these segments
; points to a directory.
;
; The format of this section is:
; SegmentGroupdID=SegmentClassID;<location info, format depends on segment>
; Here are the two most common segment class IDs (from the app source code):
; GZCLSID_cGZPersistDBSegmentDirectoryFiles = 0xa079ce1b;
; GZCLSID_cGZPersistDBSegmentIndexedFile = 0x80c381d7;
;
; BEGIN_GROUP and END_GROUP is ignored by the game. DBSegmentBuilder information.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Directory Files Segments.
; Example data (currently disabled):
; GroupID = kGZGRPID_cRZWinKeyAcceleratorRes = 0xa2e3d56d;
; ClassID = GZCLSID_cGZPersistDBSegmentDirectoryFiles = 0xa079ce1b;
; Path = <game data dir>\UI\Hotkeys\%Language%\*.*
; 0xa2e3d56d=0xa079ce1b;%DataDirectory%UI\Hotkeys\%Language%\
; Bitmap/Graphics resources
; GroupID = (Arbitrary unique value) = 0x82b9b75b;
; ClassID = GZCLSID_cGZPersistDBSegmentDirectoryFiles = 0xa079ce1b;
; Path = <game data dir>\UI\Graphics\*.bmp
BEGIN_GROUP=ECAS_UI_DATA
0x499db772=0xa079ce1b;%DataDirectory%Res\UI\Images\Uberkat\
;0x499db772=0xa079ce1b;%DataDirectory%Res\UI\Images\CASiE\
0x499db772=0xa079ce1b;%DataDirectory%Res\Locale\%Language%\UI\Images\Uberkat\
; UI Script resources
; GroupID = (Arbitrary unique value) = 0xa99d8a11;
; ClassID = GZCLSID_cGZPersistDBSegmentDirectoryFiles = 0xa079ce1b;
; Path = <game data dir>\UI\scripts\*.uiScript
0xa99d8a11=0xa079ce1b;%DataDirectory%Res\UI\Scripts\Uberkat\
; Keyboard accelerator resources
; GroupID = (Arbitrary unique value) = 0x8ca033a2;
; ClassID = GZCLSID_cGZPersistDBSegmentDirectoryFiles = 0xa079ce1b;
; Path = <game data dir>\UI\KeyboardAccelerators\*.accelerator
0x8ca033a2=0xa079ce1b;%DataDirectory%Res\UI\KeyboardAccelerators\
0x8ca033a2=0xa079ce1b;%DataDirectory%Res\Locale\%Language%\UI\KeyboardAccelerators\
END_GROUP=ECAS_UI_DATA
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Localized bitmap resources. We leave these in directory files segments
;
; Bitmap/Graphics resources
; GroupID = (Arbitrary unique value) = 0x82b9b75b;
; ClassID = GZCLSID_cGZPersistDBSegmentDirectoryFiles = 0xa079ce1b;
; Path = <game data dir>\UI\Graphics\*.bmp
0x499db772=0xa079ce1b;%DataDirectory%Res\Locale\%Language%\UI\Images\Uberkat\
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[DBSegmentDirectoryFiles]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; This section lists DBSegmentDirectoryFiles associations used by the game.
; It doesn't list DBSegmentDirectoryFiles classes itself. That's done above
; in the [DBSegments] section. However, one of the entries in the above
; [DBSegments] section lists DBSegmentDirectoryFiles. After the app creates
; instances of DBSegmentDirectoryFiles on startup, this section is consulted
; in order to tell the DBSegmentDirectoryFiles objects how to interpret the
; data in their directories.
;
; DBSegmentDirectoryFiles is a subclass of cIGZDBSegment that uses a directory
; of files to be a container of records. It uses the first 8 characters of
; each file name as the instance ID for each record. The type and group are
; described below. Note that the group will be called out above in the
; DBSegment section.
;
; The format of the entries below is:
; GroupID=TypeID:FileExtension,TypeID:FileExtension,TypeID:FileExtension...
; A result of this is that there is a connection between a type and the
; file's extension. That's fine for most cases.
;
; Here is an example directory listing in a DBSegmentDirectoryFiles directory:
; 0143ABFC0_SomeBitmap1.bmp
; 0143ABFC1_SomeBitmap2.bmp
; 0143ABFC2_SomeBitmap3.bmp
; Bitmap DBSegmentDirectoryFiles
; Group ID for these bitmaps = (Arbitrary unique value) = 0x82b9b75b;
; Type ID for files of the bmp extension = GZRESID_cGZPersistBufferResource = 0x856ddbac;
; File Extensions = .bmp .tga
0x499db772=0x856ddbac:bmp,0x856ddbac:tga,0x856ddbac:png,0x856ddbac:gif,0x856ddbac:jpg,0x856ddbac:fsh
; Script DBSegmentDirectoryFiles. This associates ".uiScript" files with the
; given group ID.
; Group ID for these scripts = (Arbitrary unique value) = 0x96a006b0; //This is the group ID for the scripts in the SC4000 UI scripts directory.
; Type ID for files of this extension = <none> = 0x00000000; //'0x00000000' simply means to not associate any object type with the data. We will read it as raw bytes.
; File Extension = .uiScript (.scr in the case of the UIEditor itself)
0xa99d8a11=0x00000000:uiScript
0x1a3fb405=0x00000000:uiScript
; Accelerator DBSegmentDirectoryFiles
; Group ID for these bitmaps = kStringGroupSC4App = 0x8ca033a2;
; Type ID for files of this extension = kGZRESID_cRZWinKeyAcceleratorRes = 0xa2e3d533;
; File Extension = .accelerator
0x8ca033a2=0xa2e3d533:accelerator
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[ResourceFactories]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; This section lists resource factories used by the game.
;
; On startup, somebody basically enumerates all keys within this section.
; Each entry is a key=value pair. The key is the resource type. The value
; is the class ID of the factory used to create objects of the given
; resource type. You might have one factory that knows how to create
; one type of resource object, or you you might have a factory that
; knows how to create multiple types of resource objects. The most common
; factories will be bitmap factories and string factories.
; Bitmap resources
; Resource Type: GZRESID_cGZPersistBufferResource = 0x856ddbac;
; Factory CLSID: GZCLSID_cGZPersistBufferResourceFactory = 0x656ddc30;
; Factory CLSID: kGZCLSID_cGZGimexFactory = 0xa2ffb5d3;
;
; Resource Type: kGZRESID_cGZPropertySetStringKeyXmlResource = 0xebfee33f;
; Factory CLSID: kGZCLSID_cGZPropertySetFactory = 0xebfeec33;
;
0x856ddbac=0xa2ffb5d3
0xebfee33f=0xebfeec33
; Accelerator resources
; Resource Type: kGZRESID_cRZWinKeyAcceleratorRes = 0xa2e3d533;
; Factory CLSID: kGZCLSID_cGZWinKeyAcceleratorResFactory = 0x42e411c2;
;
0xa2e3d533=0x42e411c2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;