We just released a Feb. 5 '89 prototype of DuckTales for the NES!
If you'd like to support our preservation efforts (and this wasn't cheap), please consider donating or supporting us on Patreon. Thank you!

Charlie and the Chocolate Factory (PlayStation 2)

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Charlie and the Chocolate Factory

Developers: High Voltage Software, Backbone Entertainment
Publishers: Global Star Software (US), 2K Games (EU)
Platform: PlayStation 2
Released in US: July 11, 2005
Released in EU: July 22, 2005


DevTextIcon.png This game has hidden development-related text.
GraphicsIcon.png This game has unused graphics.
DebugIcon.png This game has debugging material.
LevelSelectIcon.png This game has a hidden level select.


NotesIcon.png This game has a notes page

And you were just a scroll away from being fired too...
Oh dear, I do believe I have the vapors.
This page contains content that is not safe for work or other locations with the potential for personal embarrassment.
Such as: Cartoon Boobs.
Hmmm...
To do:
  • Page needs a rewrite.
  • A lot of unused/commented out text that need to be investigated. Tools like Dragon UnPACKer and Game Extractor by Watto can help you go through the JAM files.
  • More graphics?

Unused Text

A possible leftover from High Voltage's other game, Hunter: The Reckoning Chicago.

Namespace "DATA_AIS"
ASCIIChar   [  1765  ]
ASCIIString [  87  ]
{
              "DUMMYSTR"    "DUMMYSTR"
              "DYNSTR01"    "012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234"
              "NOTHING"     ""
              "CONTINUE"    "Press START to Continue"
              "ABUTTON"     "±"
              "BBUTTON"     "°"
              "XBUTTON"     "²"
              "YBUTTON"     "³"
              "BLCKBTN"     "$"
              "WHTBTN"      "%"
              "RTRIGGER"    "&"
              "LTRIGGER"    "^"
              "LEFTRGHT"    ">"
              "DPAD"        "<"
              "UPDOWN"      "|"
              "UPBUTTON"    "´"
              "DNBUTTON"    "µ"
              "LTBUTTON"    "¶"
              "RTBUTTON"    "·"
              "DEFAULT0"    "DEFAULT"
              "PLYSLCT0"    "CONTROLLER 1"
              "DUMMYDIA"    "DUMMYSTR"
              "NOTIFY"      "Press ± To Continue"
              "YESNO"       "± Yes ° No"
              "OKCAN"       "± Ok ° Cancel"
              "PLES"        "Please Stand By"
              "DIA0"        "GAME PAUSED"
              "DIA1"        "ARE YOU SURE YOU WANT TO DO THAT?"
              "DIA2"        "PLACEHOLDER"
              "DIA3"        "PLACEHOLDER"
              "DIA4"        "CAN I SEE YOU BOOBS?"
              "DIA5"        "PLACEHOLDER"
              "DIA6"        "PLACEHOLDER"
              "DIA7"        "MEMORY CARD IS NOT ATTACHED"
              "DIA8"        "MEMORY CARD IS NOT PRESENT"
              "DIA9"        "MEMORY CARD IS CORRUPTED"
              "DIA10"       "FORMAT MEMORY CARD?"
              "DIA11"       "MEMORY CARD FOUND"
              "DIA12"       "MEMORY CARD FORMATTED"
              "DIA13"       "CREATE SAVE GAME AND ENABLE AUTOSAVE?"
              "DIA14"       "SAVE GAME CREATED AND AUTOSAVE ENABLED"
              "DIA15"       "SAVE GAME FOUND!  DO YOU WANT TO LOAD IT?"
              "DIA16"       "THIS IS SOME HELP FOR THIS CRAZY UI SCREEN"
              "DIA17"       "ARE YOU SURE YOU WANT TO DELETE THIS PICTURE?"
              "DIA18"       "LOADING PHOTOS FROM MEDIA"
              "DIA19"       "YOU MUST MARK AT LEAST ONE PHOTO TO CONTINUE!"
              "DIA20"       "PERMANENT STORAGE FULL.  PICTURE CAN NOT BE MARKED FOR STORAGE."
              "DIA21"       "SAVING MARKED PHOTOS TO MEDIA."
              "DIA22"       "NOT ENOUGH MONEY TO DEVELOP ANY MORE PHOTOS."
              "DIA23"       "WRITING TO MEMORY CARD. DO NOT REMOVE."
              "DUMMYTIT"    "DUMMYSTR"
              "INFT0"       "Hunter: The Reckoning Chicago"
              "INFT1"       "PLACEHOLDER"
              "INF0"        "PLACEHOLDER"
              "INF1"        "PLACEHOLDER"
              "LOADING"     "Please Stand By"
              "LD0"         "PLACEHOLDER"
              "P_RESUME"    "RESUME"
              "P_OPTNS"     "OPTIONS"
              "P_GMSTS"     "GAME STATS"
              "P_CHRSTS"    "CHARACTER STATS"
              "P_RESTRT"    "RESTART"
              "P_QUIT"      "QUIT"
              "PLEDG"       "´µ Up/Down  START To Continue   ± Select"
              "RETGAME"     "RETURN TO GAME"
              "HELP"        "HELP"
              "BACKWAND"    "BACK"
              "WIMPOUT"     "LEAVE"
              "AUTOWIN"     "YOU WIN!"
              "TOODRUNK"    "YOU PASSED OUT, LIGHTWEIGHT…"
              "MUSVOL"      "MUSIC VOLUME"
              "VOVOL"       "VOICE VOLUME"
              "SNDVOL"      "SOUND VOLUME"
              "CINVOL"      "CINEMA VOLUME"
              "RUMBLE"      "RUMBLE"
              "DIFF"        "DIFFICULTY"
              "CONTR"       "CONTROLLER"
              "OLEDGE"      "´µ Up/Down  ° Back   ± Select"
              "VLEDGE"      "¶· Increase/Decrease  ° Cancel   ± Accept"
              "DFTITLE"     "ADAPTIVE DIFFICULTY"
              "DFLEGND"     "¶· Toggle  ° Cancel   ± Accept"
              "DFON"        "ON"
              "DFOFF"       "OFF"
              "VOLMETB"     "||||||||||||||||||||||||||||||||||"
              "VOLMETT"     "||||||||||||||||||||||||||||||||||"
              "CNFEXIT"     "Are you SURE you want to quit this game?       "
              "CNFNEWGM"    "All unsaved data will be lost.  Continue?"
}

Inside of appinit.jam/GENERAL1.SCM, there are a lot of deprecated buttons likely used for debugging the game.

// deprecated
/////////////////////////////////
//Mappings[16]
//{
//	{
//		AppID GeneralButtonToggleDisplay
//		ElementID JoystickButton0
//		Name "CoCBDisp"
//	}
//	{
//		AppID GeneralButtonSwitchCamera
//		ElementID JoystickButton1
//		Name "CoCBCam"
//	}
//	{
//		AppID GeneralButtonResetGame
//		ElementID JoystickButton2
//		Name "CoCBRset"
//	}
//	{
//		AppID GeneralButtonQuitApp
//		ElementID JoystickButton3
//		Name "CoCBQuit"
//	}
//	{
//		AppID GeneralButtonScenePaused
//		ElementID JoystickButton4
//		Name "CoCBStop"
//	}
//	{
//		AppID GeneralButtonWireFrame
//		ElementID JoystickButton5
//		Name "CoCBWire"
//	}
//	{
//		AppID GeneralButtonZoomCamera
//		ElementID JoystickButton6
//		Name "CoCBZoom"
//	}
//	{
//		AppID GeneralButtonToggleRegions
//		ElementID JoystickButton7
//		Name "CoCBReg"
//	}
//	{
//		AppID GeneralButtonDropPlayer
//		ElementID JoystickButton8
//		Name "CoCBDrop"
//	}
//	{
//		AppID GeneralButtonCheatMode
//		ElementID JoystickButton9
//		Name "CoCBChtM"
//	}
//	{
//		AppID GeneralButtonCheat1
//		ElementID JoystickButton10
//		Name "CoCBCht1"
//	}
//	{
//		AppID GeneralButtonCheat2
//		ElementID JoystickButton11
//		Name "CoCBCht2"
//	}
//	{
//		AppID GeneralButtonCheat3
//		ElementID JoystickButton12
//		Name "CoCBCht3"
//	}
//	{
//		AppID GeneralButtonCheat4
//		ElementID JoystickButton13
//		Name "CoCBCht4"
//	}
//	{
//		AppID GeneralButtonGameCamera
//		ElementID JoystickButton14
//		Name "CoCBGCam"
//	}
//	{
//		AppID GeneralButtonResetPlayer
//		ElementID JoystickButton15
//		Name "CoCBRSet"
//	}
}

This can be found at the beginning of AppInit.jam/RUMBLE.RMB:

// NOTE: On the PSX2, the right rumble motor is a tweeter and can only be turned
//     on and off. Any intensity greater than 0 will be interpreted as "on"
//     for the PSX2 tweeter.
//
// For more information about creating rumble effects see the HowToAddRumbleEffects
// page on the Lovage Wiki.
//       http://twiki/twiki/bin/view/Lovage/HowToAddRumbleEffects
//

app.ini:

// The following are the options currently active for the ini file
// It should be placed in the game's root directory (C:\Develop\Fallen\Dev)
//
// DataFolder "<data_dir>"          // main directory where all data is stored.  Default = "Data"
// DontUsePlatformBinary            // flag to prevent the load and use of platform specific binary formats
//                                  // i.e. "UseAscii"
// NetworkAutoconnectMode			// "Disabled"	= No networking
//									// "Server"		= Start as server
//									// "Client"		= Start as client
// NetworkAutoconnectServerName		// The name of the server to start or autoconnect to
// NetworkAutoconnectNodes			// The number of boxes that to network together
// SkipIntro						// Skips the intro framework. Good for shortening debug cycles. Defaults to off.
// Level "level_short_name"         // level to load.  levels begin with 'L'
// FullScreen                       // Win32 only, start in fullscreen
// Maximized                        // start with maximized window (meaningless in fullscreen)
// Resolution <nWidth> <nHeight>    // resolution for window or fullscreen
// NTSCScreen                       // 
// PALScreen                        // 
// PS2Screen                        // 
// XB420pScreen                     // 
// XB720pScreen                     // 
// NoAudio							// Disable all sound
// NoMusic							// Disable background music playback (streamed)
// NoAmbientAudio					// Disable ambient audio (streamed)
// DisplayBanks						// Display Sound RAM utilization
// DisplaySounds					// Display sound names as they're played
// AudioMode <mode>					// Set audio output mode.  0 - mono.  1 - stereo.  2 - surround.
// ControllerDeadZone <nPercent>    // physical controller dead zone (in %)
// TestAllLevels                    // level test which cycles through load of all levels
// OpenList                         // generate list of every file opened for automatic .jam file generation
//                                  //  (to create the complete .jams, enable both TestAllLevels and OpenList)
// TraceHistory <nNumMessages>      // Number of previous trace messages to store in the history.  Use with caution due to memory use.
// ErrorHistory <nNumMessages>      // Number of previous error messages to store in the history.  Use with caution due to memory use.
//
// add_dio "<category>"             // add debug output category
// no_dio "<category>"              // remove debug output category
//                                  // categories:
//                                  //  "framework"
//                                  //  "ai"
//                                  //  "audio"
//                                  //  "io"
//                                  //  "render"
//                                  //  "sim"
//                                  //  "ui"
//                                  //  "controller"
//                                  //  "debugoutput"
//                                  //  "innerloop"
//
// ** to do nothing comment everything out
//

{
	// Data Folder:  The main directory where all data is stored.  Default = "DataSrc"
	DataFolder "DataPS2"
	
	// Don't Use Platform Binary: (i.e. "UseAscii") flag to prevent the load and use of platform specific binary formats
	//DontUsePlatformBinary

	// show the legal screens when the game launches
	//ShowLegalScreens

	// show the videos (during the boot-up sequence)
	ShowVideos

	// show the level select screen (debug) as an option off of the main menu
	ShowLevelSelectScreen

	// enable autosaving when starting from the debug/level select screen
	//EnableDebugSaving

	// Set which controllers are active and which character they're using
	//ActivateController 0
//	SetCharacter 0 "CharliA"

	// Autoconnects a network game without having to set one up through the UI
	//NetworkAutoconnectMode			"Disabled"
	//NetworkAutoconnectServerName	"my_srv"
	//NetworkAutoconnectNodes			2

	// Skips the intro framework
	//SkipIntro

	//// Level: level to load (shortname)
	Level "Lchocl"
	
	// Disables all dialogs
	//NoDialogs

	// Disable Console output of memory statistics
	DisableConsoleMemStats

	//// Fullscreen: Win32 only.  
	//Fullscreen

	//// Maximized: Win32 only.  maximize window, but still show titlebar, etc.
	//Maximized

	//// Resolution: width x height (unsigned int)
	//Resolution 1600 1200
	//Resolution 1280 1024
	//Resolution 1024 768
	//Resolution 800 600
	//Resolution 640 480
	//Resolution 640 448
	
	// Which page of debug text to display by default. 0=global, 1=heap info, 2=Anthony G, 3=Ben S, 4=Brant F, 5=Dave P, 6=Hal B, 7=Jason P, 8=Justin C, 9 Pradyut P
	//Page 8

	// should the candy powers be restricted to only those allowed on the level?
	RestrictCandyPowers

	//NoAudio			// Disable all audio

	//NoMusic			// Disable music

	//NoAmbientAudio	// Disable ambient audio

	//DisplayBanks		// Display Sound RAM utilization
	
	//DisplaySounds		// Display sound names as they're played

	//AudioMode 2		// Set audio output mode.  0 - mono.  1 - stereo.  2 - surround.

	//// ControllerDeadZone: physical controller's dead zone in integer percent
	//ControllerDeadZone 15

	//// Level Test:  this does a test load of every level in the levels.txt file
	////               use with caution as this takes a while to run.
	//TestAllLevels

	//// open list: generate list of every file opened for automatic .jam file generation
	//OpenList

	//// TraceHistory: 
	//TraceHistory 32

	//// ErrorHistory:
	//ErrorHistory 16

	//// Debug Output bitmask setting
	//add_dio "framework"
	//add_dio "ai"
	//add_dio "audio"
	//add_dio "io"
	//add_dio "render"
	//add_dio "sim"
	//add_dio "ui"
	//add_dio "controller"
	//add_dio "event"
	//add_dio "tool"
	//add_dio "debugoutput"
	//add_dio "innerloop"
	//
	//no_dio "framework"
	//no_dio "ai"
	//no_dio "audio"
	//no_dio "io"
	//no_dio "render"
	//no_dio "sim"
	//no_dio "ui"
	//no_dio "controller"
	//no_dio "event"
	//no_dio "tool"
	//no_dio "debugoutput"
	//no_dio "innerloop"
}

appinit.jam/IMAGES.AGI:

// NOTE: widgets reference Styles (AUS), and Styles reference ImageAssets (AUA).

appinit.jam/GCWIDGET.AUW:

////////////////////////
// NOTE TO ANYONE ADDING CONTENT.   
// PLEASE ADD any new items in alphabetical 
// order to make it easy to locate in the list.
////////////////////////

appinit.jam/LEVELS.TXT:

	Level "vistest" CompleteArt
	{
		NumLoadItems 1500
	}

	Level "vistest2" CompleteArt
	{
		NumLoadItems 1500
	}

	Level "dJen" CompleteArt
	{
		NumLoadItems 1500
	}

	Level "dJosh" CompleteArt
	{
		NumLoadItems 1500
	}

	Level "dKyle" CompleteArt
	{
		NumLoadItems 1500
	}

	Level "dSean" CompleteArt
	{
		NumLoadItems 1500
	}

appinit.jam/PSX2MAP.ANM:

			// map the face buttons to an abstract controller in a counter-clockwise direction so:
			// 				Tri(4)
			//		Square(5)			O(3)
			//				X(2)

appinit/INGMED0.SCM

Mappings[5]
{
	// axis
	{
		AppID InGameEditorRight
		ElementID AxisX		
		Name "CoIGRt"
	}
	{
		AppID InGameEditorForward		
		ElementID AxisY		
		Name "CoINFwd"
	}
	

	// buttons
	{
		AppID InGameEditorSelectNode
		ElementID JoystickButton0
		Name "CoISNode"
	}
	{
		AppID InGameEditorRotateNode
		ElementID JoystickButton1
		Name "CoIRNode"
	}
	{
		AppID InGameEditorExitTool
		ElementID JoystickButton2
		Name "CoIGExTl"
	}
}

appinit/GAME1.SCM and GAME0.SCM:

	//{
	//	AppID GameAxisMouseScroll
	//	ElementID Axis???
	//	Name "MpAMScr"
	//}

//	{
//		AppID GameButtonAttackHorizontal
//		ElementID JoystickButton3
//		Name "MpBAtkH"
//	}
//	{
//		AppID GameButtonDodge
//		ElementID JoystickButton4
//		Name "MpBDodge"
//	}
//	{
//		AppID GameButtonAttackVertical
//		ElementID JoystickButton5
//		Name "MpBAtkV"
//	}
//	{
//		AppID GameButtonPlay
//		ElementID JoystickButton6
//		Name "MpBPlay"
//	}

//	{
//		AppID GameButtonFire
//		ElementID JoystickButton9
//		Name "MpBFire"
//	}

	// D-Pad mappings for quick assigning the oompa to do stuff.

SLUS.212.46

MW MIPS C Compiler (2.4.1.01)

At 0x3DAA20, there is a string from a compiler.

Unused Graphics

AppInit.jam

Charlie and the Chocolate Factory (PlayStation 2)-BBTXTHL0.TGA.png


BBTXTHL0.TGA contains a white rounded rectangle.

Charlie and the Chocolate Factory (PlayStation 2)-BLACK.TGA.png
BLACK.TGA contains a small black image.

Charlie and the Chocolate Factory (PlayStation 2)-BLACKA.TGA.png
BLACKA.TGA contains a small transparent black image.

Charlie and the Chocolate Factory (PlayStation 2)-BMOUSE.TGA.png
BMOUSE.TGA contains an hour glass.

Charlie and the Chocolate Factory (PlayStation 2)-CAMMOUSE.TGA.png
CAMMOUSE.TGA contains a circle inside 2 parentheses.

Charlie and the Chocolate Factory (PlayStation 2)-DMOUSE.TGA.png
DMOUSE.TGA contains a no entry icon.

Charlie and the Chocolate Factory (PlayStation 2)-LOADSCR.TGA.png
LOADSCR.TGA contains boobs.

Charlie and the Chocolate Factory (PlayStation 2)-MOUSE.TGA.png
MOUSE.TGA contains a cursor.

Charlie and the Chocolate Factory (PlayStation 2)-BLACK.TGA.png
TEXTAREA.TGA contains a black image, similar to BLACK.TGA.

Debug Menu

The debug menu can be accessed via Action Replay by using the code 9ZV4-1MPU-QVZ35 A64Y-E3PU-AR2EA or 20452700 00000001 (USA) and KPT2-JA0H-6VW8F V6F7-H47P-1VJZH or 2047E8C0 00000001 (Europe).

Charlie and the Chocolate Factory (PlayStation 2)-Debug-Main Menu.png

At the main menu, you will see an extra option called Debug. Selecting it will bring you to a debug level select screen. Choosing any level will function like a regular level.

Charlie and the Chocolate Factory (PlayStation 2)-Debug-Level Select.png

(Source: Original TCRF research)
(Source: us.codejunkies.com)
(Source: uk.codejunkies.com)