We just reached 30,000 articles on this wiki! 🥳
If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!
This article has a talk page!

Theme Hospital

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Theme Hospital

Developer: Bullfrog Productions
Publisher: Electronic Arts
Platforms: Windows, DOS
Released internationally: March 1997


CodeIcon.png This game has unused code.
GraphicsIcon.png This game has unused graphics.
SoundIcon.png This game has unused sounds.
DebugIcon.png This game has debugging material.
LevelSelectIcon.png This game has a hidden level select.
RegionIcon.png This game has regional differences.


ProtoIcon.png This game has a prototype article
PrereleaseIcon.png This game has a prerelease article
BugsIcon.png This game has a bugs page

Theme Hospital is a simulation game in which players build and run a hospital curing patients of comical diseases.

Sub-Pages

Read about prototype versions of this game that have been released or dumped.
Prototype Info
Read about prerelease information and/or media for this game.
Prerelease Info
Read about notable bugs and errors in this game.
Bugs

Level Select

There are two level select methods.

  • One is using the hidden cursor on the game board screen to select a level represented by a place on the board (after pressing C). Doing so will take the player straight to that level.
  • The other method is running the game with the -l x parameter (where x is the level number). This loads the game with a nickname of HORZA and takes the player directly to that level.


(Source: GameSpot)

Cut Gameplay Elements

Pregnancy

Each difficulty level in the level definition directory (LEVELS) has a template file as its first file (e.g. EASY00.SAM, HARD00.SAM). These files list all possible permutations of rooms, items, and diseases available in the game, with the actual levels only using a subset of these, depending on difficulty and game progression. However, these templates also reveal there is a further unused "disease" called "PREGNANT". As such this can be restored to the game by adding the needed fields to any level definition file. There is a user made mod available that simplifies this.

#expertise[14].StartPrice.ContRate.Known.RschReqd.MaxDiagDiff   1000    0       0       70000   100     PREGNANT
#visuals[12]	0	I_PREGNANT
#visuals_available[12]		0	I_PREGNANT

Pregnancy seems to be fully working but a rough implementation. Pregnant patients have an entry as a "visual illness" which means they would appear with custom graphics, but clearly this did not happen as no such graphics exist, and pregnant patients simply appear as normal women in the final game if hacked in. The "treatment" for the condition is a stay on a Ward and then surgery. It's likely this was abandoned early on due to Bullfrog deliberately moving away from real world conditions, and having a game where pregnant women can die would likely be considered to be in poor taste.

There's an unused PA announcement for pregnant patients included in the game files (see Unused Audio section)

TV Room

As with the cut pregnancy condition, there are also entries for a cut room simply called "TV" in the level definitions. This doesn't seem to exist in the final game, and it's not clear what it would do (other than containing TVs). The room only costs $5, which is pretty unlikely to be a serious final figure for it.

#rooms[26].Cost		5		TV

Alien Invasion

The official Theme Hospital Diary column in the UK GamesMaster magazine briefly talks about this cut disaster event. Intended as a further disaster beyond the existing earthquake event, it was said that aliens would "destroy, maim and pass around nasty rashes to the population"[1]. It's not clear what this would mean in gameplay terms, but the final game has several elements of the event left in its files. Firstly, there are graphics for the UFO from Genewars present in the low resolution graphics files, along with the hovering sound effect it used in that game. There are also several PA announcements to do with the event that remain unused. Most obviously there are the actual aliens and DNA Fixer that are used in the final game. Aliens can only be seen during specific alien emergencies in the final game, so it seems this was how the leftover resources from the cut event were recycled and why aliens are not regular patients like other diseases.

There are also two lines in the .SAM template entries that seem to be alien related. It's not clear if these were part of the invasion event or something else, but it seems at one point the game would also have alien abductions:

#gbv.MinimumAbductTime		4	Number of years after which first abduction can occur
#gbv.AbductionsPerYear		2	Number of abductions allowed per-year after lead-in time.

Unused Graphics

UFO

Almost certainly part of the cut alien invasion disaster event. Note this is actually the exact same set of graphics/animation as used in the other Bullfrog game Genewars, so it's not clear if this reuse was to save time, or if it was meant to be an explicit call back to that game (it also seemed to used the same sound effect as in Genewars making this likely). This only exists in the low resolution mode files, in the high res equivalent these sprites are replaced by parts of hospital beds. However, the shadow sprite remains in the high res files, but appears to be corrupted.

ThemeHospital-ufoanimated.gif

ThemeHospital-ufoshadow.png

Patients Mutating into Aliens

Again, this must have been part of the alien invasion event. Animation frames for a patient to actually turn into an alien. What is interesting is the patient starts off green already, so possibly they would start off using the Serious Radiation appearance. Presumably they would receive "Alien DNA" either from being touched by an existing alien or being scanned by the UFO, and then drop to the floor and turn into an actual alien. There are male and female start frames, the female one has the beginnings of being modular so that it can be bolted onto the male version, with a separate head and a skirt graphic that could be set as a layer over the male version. That said there is also an actual dedicated female variant start frame, only missing a head. In the final game all patients with Alien DNA start as aliens already, and immediately play the going to heaven/hell animation when they die.

ThemeHospital-AlienMorph.gif ThemeHospital-FAlienStart.png ThemeHospital-FAlienSkirt.png ThemeHospital-FAlienHead.png

Hairyitis Patient Metamorphisis

Odd animation frames of what seems to be a Hairyitis patient turning back into a normal patient laying on the floor surrounded in a blue glow. Possibly this was an early cure animation or even a death animation.

ThemeHospital-HairDie1.png ThemeHospital-HairDie2.png ThemeHospital-HairDie3.png ThemeHospital-HairDie4.png ThemeHospital-HairDie5.png

Patient Reading a Newspaper

Cut animation for patients to actually read the cut newspapers left on tables in early versions of the game.

ThemeHospital-ReadPaper.gif

Cut Patient UI

An early/unused patient information window section. What's interesting here is a) the button to send a patient home at the top rather than bottom of the window, and b) a cut button to refer a patient back to the receptionist, for some reason.

ThemeHospital-PatientUI1.png ThemeHospital-PatientUI2.png

Wooden Floor Tile

An used floor tile type. These were used in the alpha version of the game to denote unfinished rooms. This concept was scrapped by the time of the final game.

ThemeHospital-woodenfloor.png

Wooden Cart

A strange wooden cart found in the low resolution graphics files only. It's not clear what this was for—possibly it was just an exterior prop for a farmyard or similar. However, its design suggests it may also have been some kind of wooden sedan chair, which suggests it could even be a leftover from the original concept of the game being set throughout various early periods of history.

ThemeHospital-woodencart.png

Soft Drinks Machine

These are the original graphics used for the drink vending machines before the KitKat sponsorship, as visible in pre-release coverage. Seen (alongside KitKat machines, curiously) only in certain demo cinematics that play if you leave the title screen running without any input.

ThemeHospital-SoftDrinks1.png ThemeHospital-SoftDrinks2.png

Pasting Table

A leftover from the alpha build to denote an unfinished room the player has just created (with the player completing setup essentially "decorating" the room). It's only present in the low resolution graphics files in the final game.

ThemeHospital-Janitortable.png

Spanner Animation

An unused animation of a spanner rotating. It's likely this would appear above equipment that needed maintaining in the alpha build of the game.

ThemeHospital-spanneranim.gif

Question Mark Animation

Used in the alpha build to draw attention to pasting tables/unfinished new rooms. However, it only exists in the low resolution graphics files, it's removed from the high res ones.

ThemeHospital-QuestionAnim.gif

Information Point Animation

An animated letter "i". Again Used in the alpha build to draw attention to pasting tables/unfinished new rooms. Also only exists in the low resolution files.

ThemeHospital-InfoAnim.gif

Black and Asian Bloaty Heads

In the final game only male white patients can have Bloaty Head disease. However, graphics exist for Black and Asian males for this condition. What still seems to be missing are the actual deflating head cure animations for them, which is likely why these were not used. Other needed diagnosis stage animations are also missing too. Presumably they were not finished in time for the final game.

ThemeHospital-BloatyB1.png ThemeHospital-BloatyB2.png ThemeHospital-BloatyA1.png ThemeHospital-BloatyA2.png

Coffee Table

A low height coffee table visible in wards in pre-release screenshots. Only the low resolution version of this remains in the final game's files.

ThemeHospital-LowTablelowres.png

Fold-Out Screen

Pre-release screenshots show what appears to be the same object this cut animation was for. It seems at one point Wards would have folded screens at the foot of each patient bed, and patients would fold out the screen, get changed, collapse the screen down again and then get into bed. This animation only found in the low resolution graphics files seems to be the animation frames for this activity, but the rest of the graphics needed for the animation seems to be missing from the files. Likely cut due to it presumably massively slowing down patients getting in/out of bed.

ThemeHospital-Screenanim.png

Unused Audio

Cut PA Announcements

There are a large number of unused announcement lines in the game's files:

Sample Filename Message Notes
REQD011.WAV "Another surgeon required in Operating Theatre" The more specific "two surgeons needed" message is used instead
REQD017.WAV "Doctor required in training"
MAINT011.WAV "Handyman, please repair diagnosis machine" Based on the complete recordings from the PS1 version, this was actually a generic alert for all diagnosis machines, cut to instead use specific warnings for each specific machine
EPID008.WAV "Epidemic emergency over"
EPID004.WAV "Warning!"
QUAKE004.WAV "Attention, earthquake on the way!"
SACK002.WAV "Doctor is leaving!" There are messages for all staff types being fired/quitting. None are used in the final game
SACK001.WAV "Doctor dismissed"
SACK003.WAV "Doctor on the way out"
SACK004.WAV "Nurse is leaving!"
SACK005.WAV "Nurse is leaving now"
SACK006.WAV "Sacked handyman on the way out"
SACK007.WAV "Receptionist has been asked to leave"
SACK008.WAV "Receptionist is leaving!"
ALIEN001.WAV "Red alert! Alien attack!" These are messages for the cut alien attack disaster, as discussed above
ALIEN002.WAV "Aliens have landed! Help!"
ALIEN003.WAV "Aliens do exist and are in the building!"
ALIEN004.WAV "Aliens are requested not to disrupt the hospital too much!"
ALIEN005.WAV "Aliens, please sign the visitors' book" Due to a bug this can actually randomly be heard out of context
SORRY002.WAV "We apologise for the extreme cold"
SORRY003.WAV "We're sorry for the excessive heat"
SORRY004.WAV "Apologies to patients, the radiators are malfunctioning"
SORRY005.WAV "Vomit warning! Mind your feet"
SORRY006.WAV "Maintenance, puke alert in the corridor!"
CHEAT003.WAV "Cheat alert! Cheat alert!" An unused cheat mode message
RAND003.WAV "No smoking in the hospital please!"
RAND006.WAV "Coughs and sneezes spread diseases!"
RAND010.WAV "Quiet please! People are sick"
RAND013.WAV "Warning! This is a warning"
RAND019.WAV "Patients are asked to wait quietly"
RAND022.WAV "Dropping litter is against the rules!"
RAND037.WAV "Patients are kindly requested to groan quietly, thank you!"
RAND041.WAV "I'm fed up with announcing, I want to go home"
RAND045.WAV "Doctor Lecter report to security please, Doctor Lecter to security"
EMERG021.WAV "Staff Announcement, patients arriving with pregnancy" An announcement for the cut pregnancy... "disease"
RAND040.WAV "Litter Bomb Warning" Due to a bug this can actually randomly be heard, but it is supposed to be played when a litter bomb is deployed in multiplayer, where it doesn't play

Examining the file SOUND-0.DAT reveals that many of the sets of PA announcements have numbered samples that have been deleted, including the REQD, RAND, MAIN and VIP announcement sets. These cut samples are actually included in the PlayStation version of the game but are unused. If restored to the PC versions of the game, the RAND sample sets will be heard during gameplay.


(Source: AdamP)

Cut Sound Effects

The following sound effects are unused in all versions of the game. Comments by the Bullfrog audio engineers preserved below hint at how they may have been used:

Sample Sample Name Sound Description Comments/Notes
ALIENSHP.WAV Hovering UFO sound from the game Genewars "Genewars alien spacecraft loop" - This would likely be part of the cut alien invasion event
APPEAR.WAV Harp sound "Invisible man appear" - Presumably intended for curing patients with invisibility
MORPH.WAV Sparkling sound "People morphing back to themselves" - Possibly intended for patients with Alien DNA
VGM003.WAV Arcade machine sound effect "Videogame 003" - Note all of the arcade machine sounds are actually samples of sound effects and music from the Commodore 64 version of the game Head Over Heels
VGM004.WAV Arcade machine sound effect "Videogame 004"
VGM005.WAV Arcade machine sound effect "Videogame 005"
VGMEND.WAV Arcade machine sound effect "Videogame end"

Foreign Language Cut Audio

The foreign language files (SOUND-1.DAT to SOUND-5.DAT) all seem to be based on the same 388 .wav sample set. The English sound file (SOUND-0.DAT), however, seems based on a different set of 376 samples that appears to have had some samples improved, and many seemingly deliberately cut. Based on the extensive comments in the wav files themselves, many of these sounds were for rough ideas that were supposed to be removed from the final game. These sounds all persist only in the foreign language version files, but unused:

Sample Sample Name Sound Description Comments/Notes
BIRDIES.WAV Twittering bird ambience "birdies (grassy ambience)" - the first of many cut outdoors ambience files
BOMBEXP.WAV Litter Bomb Explosion sound effect "Bomb Explosion" - in all versions of the game the litter bombs explode silently
GULP2.WAV Someone gulping "Jeff rough gulp sound for covering up an epidemic. To be re-done after beta."
INUSE001.WAV Medical machine sound "Machine in use (A-autopsy or Hair Restorer)" - Only INUSE006.WAV is actually used by all versions
INUSE002.WAV Medical machine sound "Machine in use (A-autopsy or Hair Restorer)"
INUSE003.WAV Medical machine sound "Machine in use (A-autopsy or Hair Restorer)"
INUSE004.WAV Medical machine sound "Machine in use 004 (A-Autopsy or Hair Restorer)"
INUSE005.WAV Medical machine sound "In use 005 (A-Autopsy or Hair Restorer)"
OPAMB.WAV Operating theatre ambient sound "Operating theatre ambience"
OSPOT001.WAV Outside Ambience "Outside spot effect 001" A series of cut external ambient sounds
OSPOT002.WAV Outside Ambience "Outside spot effect 002"
OSPOT003.WAV Outside Ambience "Outside spot effect 003"
OSPOT004.WAV Outside Ambience "Outside spot effect 004"
OSPOT005.WAV Outside Ambience "Outside spot effect 005"
OSPOT006.WAV Outside Ambience "Outside spot effect 006"
OSPOT007.WAV Outside Ambience "Outside spot effect 007"
OSPOT008.WAV Outside Ambience "Outside spot effect 008"
OSPOT009.WAV Outside Ambience "Outside spot effect 009"
OSPOT010.WAV Outside Ambience "Outside spot effect 010"
RAND038.WAV PA: "There is a litter bomb in the hospital" This is present but unused for all languages except English where it is completely missing. The PlayStation version however does include the English audio for this line in its files
RAND039.WAV PA: "Litter bomb Alert!" As above
RELIEF2.WAV Someone sighing in relief "Jeff rough relief sound for when an epidemic is not covered up. To be re-done after beta"
ROCKEXP.WAV A rocket hitting something and exploding "Rocket explosion" - This was almost certainly intended for the Rocket Bomb weapon in the rat killing bonus level, which, like the Litter Bombs, seems to be deliberately silent in all versions of the final game.
UHOH2.WAV Someone saying "uh oh!" "Uh oh for when time runs out and things go bad... rough to be re-done after beta." This was likely intended as a companion to RELIEF2.WAV and GULP2.WAV for when an epidemic coverup failed

Debug Menu

Elementary, my dear Cactus.
This needs some investigation.
Discuss ideas and findings on the talk page.
Specifically: Check if there are other dead code functions related to the debug menu.

Present in lang-0.dat (the English file) is a debug menu which does not appear in-game. The string for the menu heading is at offset 42EA, and its items begin at 4453. This menu and its items appear alongside the normal menus (File, Options, Display, and Charts) and their items. This menu is also present in the other language files, but at different offsets. For example, in lang-1.dat (the French file), the menu heading is at 4143.

The menu consists of the following items:

  • OBJECT CELLS
  • ENTRY CELLS
  • KEEP CLEAR CELLS
  • NAV BITS
  • REMOVE WALLS
  • REMOVE OBJECTS
  • DISPLAY PAGER
  • MAPWHO CHECKING
  • PLANT PAGERS
  • PORTER PAGERS
  • PIXBUF CELLS
  • ENTER NAV DEBUG
  • SHOW NAV CELLS
  • MACHINE PAGERS
  • DISPLAY ROOM STATUS
  • DISPLAY BIG CELLS
  • SHOW HELP HOTSPOTS
  • WIN GAME ANIM
  • WIN LEVEL ANIM
  • LOSE GAME 1 ANIM
  • LOSE GAME 2 ANIM
  • LOSE GAME 3 ANIM
  • LOSE GAME 4 ANIM
  • LOSE GAME 5 ANIM
  • LOSE GAME 6 ANIM
  • LOSE GAME 7 ANIM

The manual of some versions feature screenshots that show this menu.


(Source: Abandonware Forums thread)
Themehospital-debugmenu.png

The menu can be activated by patching the value 01 in one of the following offsets, which can be identified by the build date and version strings in the corresponding binary:

Offset Release Build Date Version
0x149F56 DOS Demo Mar 18 1997 Beta v2.0
0xC2DFE Windows Demo Mar 10 1997 Beta v2.0
0x16C40C DOS Retail Mar 07 1997 Beta 4
0xC295C Windows Retail Mar 07 1997 Beta 4
0x16F36E DOS Retail May 13 1997 Beta 5
0xC43FA Windows Retail May 13 1997 Beta 5

Although most menu entries can be toggled, none of the memory variables set by them have read references. There's a single function associated to the entry ENTER NAV DEBUG, that only contains logic to set an unreferenced cursor mode, which falls back to the default cursor mode, represented by the syringe cursor icon.


(Source: QUFB)

Cheat Leftovers

In the Demo Beta v2.0 builds, most cheat logic has been stripped out, although some references are still present.

The fax machine screen recognized different codes from the retail builds. In particular, code 656120 has a visual feedback that renders the text (!) at the top-left area of the screen.

The main game screen recognizes some keybinds that call a cheat function that contains no logic, accompanied by some loaded strings that appear to be descriptions of the activated cheats. There's no feedback when the cheats are activated, but they can be verified by running with a debugger and placing breakpoints on each instruction where the following strings are loaded:

Keybind String
D TILT!
Shift-C MONEY TILT!
Ctrl-C OBJECTS TILT!
Ctrl-Shift-C OBJECTS POWER TILT!


(Source: QUFB)

Regional Differences

When the game is run in any of the supported languages other than English and Japanese (this can be changed in Hospital.cfg), the following differences in sound effects and behaviour can be observed. Based on comments in the corresponding sound files, these seem to be unfinished features that were deliberately cut for the final English version, but mistakenly left in for the other language editions:

  • No cost is given in the replace medical machine dialogue box:
English French
ThemeHospital-EngReplace.png ThemeHospital-FreReplace.png
  • A baby crying sound is played when the player opens a staff resignation/pay rise demand message
  • When research for a particular stream is exhausted (e.g. Drug Research), a repeating bell sound constantly plays until the player visits the research page to re-allocate the now free research points

If the samples for the research bell (RSRCHBEL.WAV) and baby crying sound (ST_MOAN.WAV) above are restored to the SOUND-0.DAT file using the third party DKTools, they will also play in the English version of the game, indicating the functionality is included in all versions of the game, it is merely the lack of sound files that prevents these working in the English mode.

Sound effect differences for the foreign language versions include:

  • Slightly different Helicopter and Earthquake sounds are used
  • The vaccination ("squish") sound effect is missing in non-English sound files
  • The non-English sound files include only 10 random sound effects that patients can make compared to 27 in the English file

The English version uses later versions of some sound samples—chopper2.wav and quake2.wav vs chopper.wav and quake.wav for example—suggesting it is indeed a later set of sound effects than those used in the other languages.

There are further unused samples that are only present in the foreign language files; please see the unused audio section above for more information.

Japanese Version

The Japanese version was the last PC version of the game to be released, and unlike the others only runs on Windows with no DOS executable included. It uses a new file for the Japanese voiceovers, SOUND-6.DAT. This file is based on the later English SOUND-0.DAT with all the early cut sounds from the other languages removed. What is more interesting is this file includes two new sounds exclusive to the Japanese version. These use previously unused slots in the file, so presumably have new functionality to trigger them. The first is ENDEND.WAV which is just a sample of the fanfare played during the ending .SMK video. The second file is a file called OMAKE.WAV. Based on the filename and the sound itself this to have been some kind of joke easter egg. It contains a surprising revelation from the hospital announcer character:

Sample Japanese English
あたしオカマだって知ってた? Did you know I'm a transvestite?

It's currently unknown how to trigger these sounds in-game, possibly they require a new fax machine code.

The Japanese Windows version is also notable for it not being censored, missing the several changes made to the intro and gameplay of the subsequent Japanese PS1 port.

References

  1. Theme Hospital Diary Part 3. GamesMaster. No. 47. Bath: Future plc. October 1996. p. 14. ISSN 0967-9850.