Time to take a deeper dive into the
AppData directory of Map Detectives.
This is where the bulk of the game lives.
.CXT files are compressed/exported Shockwave Director and Cast files.
There are some projects out there dedicated to reverse-engineering and documenting the Shockwave file formats.
They're far enough along that you can export some of the graphics and bytecode from the game, but after playing around with them briefly it looks like modifying and repacking them is not yet possible.
So no Map Detectives mods yet :-(
From the file names it appears as though the game is laid out in a fairly modular fashion, with one Director file per major segment: menu, teacher options, underground map, arrest scene, etc.
Graphics and audio
AppData/voiceover directory contains all the sound effects for the game, including ambient sounds, UI actions, and voice clips.
They're just a bunch of
.WAV files, although the bitrate/quality varies from a meagre 88kbps (
08-01.wav, 119KB, 11 seconds - Tube train departing) to a frankly obscene 1411kbps (
beep-door.wav, 436KB, 2 seconds - door closing).
Most files are either 352kbps or 768kbps; I suspect the bitrate was determined mostly by which stock sound clip library the file was taken from.
The longest audio file at 32 seconds is
music.wav, also one of the highest bitrates.
Grap directory contains all the map streetview photos and the Underground platform photos.
Streetview images are mostly named after the map square they are contained in while the Underground images are 'station-n' and 'plat-n' for platforms with 'inturn-n' and 'outturn-n' for the ticket office images.
There are indications the name isn't generated from the location but is assigned manually: some images have a 'pic' suffix and at least one ticket office image is misspelled as 'intrun'.
GrapN directory contains copies of all the
Grap images altered for the night-time mode that can be enabled in the teacher options screen.
I'm not sure whether they actually took a second set of photos at night or if they are digitally altered.
Appdata/Data directory contains a whole bunch of text files that contain not only the bulk of the in-game text, but also the layout and connectivity for the two map subgames.
Files with a
-T suffix are for the 'town' map and those ending in
-U are for the 'Underground' map.
For the Underground files, it appears as though there are three files for each Underground line. Using the Central line as an example, the three files are:
CenI-U.txt: Maps location names to descriptive text for the information panel displayed left of the minimap.
block:West Ruislip You are at West Ruislip.
CenN-U.txt: Maps location names to points on the map. There are two points; one for the large map and one for the minimap. The coordinates appear to be 'backwards', I think because they are used to offset the map image rather than locating the station itself.
set=West Ruislip [point(1278,880), point(418,340)]
CenP-U.txt: Contains the possible exits from each station. Exit keys appear to be compass directions, with the value being the name of the destination suffixed with the arrival direction. So in this example leaving through the "S" exit would have you arrive at "Ruislip Gardens" facing South. This 'facing' direction is used in the Underground map to constrain which stations you are offered in the train UI, i.e. prevent you from switching directions.
set=West Ruislip ["S":"Ruislip Gardens-S"]
There are also some files that aren't specific to any particular Underground line:
ClueBank.txtcontains all the clues you can get from the party guests, as well as 'dummy' clues.
ClueG-U.txthas flavour text for London locations such as the Houses of Parliament and Knightsbridge.
culprit.txt: not sure what this one's for... maybe it's not even used? The entire file contents are:
0 ["sus7", "sus1"]
G-U.txtseems to map three pieces of text to map locations. I don't remember anywhere in the game this could be used? An example entry is:
set=Westminster ["The Houses of Parliament", "Westminster", "", "Westminster"]
Ind-U.txtcontains the entries for the map index on the large map screen.
set=A ["Acton Central D2","Acton Town D2","Aldgate D6","Aldgate East D7","All Saints D7", "Alperton C2","Amersham A1","Angel C6","Archway B5","Arnos Grove A6","Arsenal B6"]
I-U.txtappears to contain duplicate info text for a few stations... unused?
Line-U.txt: for interchange stations this file sets which train lines are available in the station screen.
set=Ruislip Manor ["Metropolitan", "Piccadilly"]
LoginInd-U.txtlooks like another copy of the station index. Possibly used for a cut feature where you can choose your station when you start a new game?
L-U.txtcontains a list of locations where guests can appear and the sets of stations which correspond to those locations.
LUG.txtseems to just be a list of Underground Station names, possibly for reference by the developers.
The 'town' map has a corresponding set of text files, although they aren't split out by train line (since there are no trains in that map). Instead of using station names, the internal location names are map references with a numeric suffix.
our reference.txt is most interesting -- it's a set of text notes by the developers keeping track of which file contains what content.
It does appear to be leftover from their previous game (Map Detectives: Rural Mystery) as it references 'walking' and 'cycling' maps instead of 'underground' and 'town'.
Much of the file structure can be mapped to the current game files, showing that both games have a common lineage.
Most likely they were developed in quick succession: the file creation dates are largely in 2005 for the game files, with 'relics' such as this reference file and
oldMD.ico being created in 2004.
Full file contents