If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

FIFA Soccer 06 (PlayStation 2, Xbox, GameCube, Windows)

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

FIFA Soccer 06

Also known as: FIFA 06 (EU)
Developer: EA Canada
Publisher: Electronic Arts
Platforms: PlayStation 2, Xbox, GameCube, Windows
Released in US: October 4, 2005
Released in EU: September 30, 2005


AreasIcon.png This game has unused areas.
SourceIcon.png This game has uncompiled source code.
DevTextIcon.png This game has hidden development-related text.
DebugIcon.png This game has debugging material.


FIFA 06 is exactly what you would expect from an EA Sports soccer game.

Unused Areas

Empty Stadium

FifaSoccer06 EmptyStadium.png

When SKIP_FE from common.ini is set to 1, the game will load an empty stadium that is filed with placeholder textures. It was presumably used for testing purposes when the other stadiums were not finished yet.

Release Action Replay code
GameCube (USA) 0070201f 00000001

Debug Functions

These functions require modifying and/or adding arguments to the configuration files that are compressed in the file config.dat.

Debug Mainloop

FIFASoccer06 Deubg Mainloop.png

Once DEBUG_MAINLOOP is added to common.ini and set to 1, lots of information about the rates of different functions is displayed.

Release Action Replay code
GameCube (USA) 004ba3bb 00000001

Debug Task

FIFASoccer06 DEBUG TASK.png

DEBUG_TASK will cause only one member of the team to appear that will stay in position and cannot be controlled by the player.

Release Action Replay code
GameCube (USA) 0048b873 00000001

Performance Stats

FifaSoccer06 PerformanceStats.png

This function seems to only work properly in the GameCube and Windows ports. If you change SGR_DISABLE_PERFORMANCE_STATS from common.ini from 1 to 0, a bunch of performance-related information is displayed on-screen when a match begins.

Release Action Replay code
GameCube (USA) 00478c27 00000000

Season Debug

FIFASoccer06 ALLOW SCREEN DEBUG.png

When ALLOW_SCREEN_DEBUG is added and enabled, season debug can be accessed during team management. The player can modify which half the match begins at and the duration of said half.

Script Text

FIFASoccer06 ScriptText.png

SHOW_SCRIPT_TEXT allows text to appear whenever a cutscene is activated. It consists of the script that is running and which sequence is activated.

Release Action Replay code
GameCube (USA) 004ba407 00000001

Memory Logging

Download.png Download FIFASoccer06 MEMORY LOG.zip
File: FIFASoccer06 MEMORY LOG.zip (info)

Memory logging seems to only work properly in the Xbox port. If you create a file named DO_MEM in the same folder as the game executable, a spreadsheet named MEMORY_LOG.csv is created. It logs a variety of memory information that helps with debugging potential memory issues.

Unused Text

Uncompiled Source Code

Download.png Download FifaSoccer06_SED.h.zip
File: FifaSoccer06_SED.h.zip (info)

A single header, SED.h can be found only in the Xbox port in data\audio\Evlog\eng.

Developer Comments

The game has various configuration files stored in the game's archives that have some very interesting and amusing comments left by the developers.

ai.ini

// For debugging attibutes, we can set all the members of a team to the same values by entering it here.
// To use set either HOME or AWAY_TEAM_ATTRIB to 1, and then set the attribute values that you would like to use
// for the team.  Any time you want to use a players default values, you can set the attibute to -1.
// example to test shooting we could do this.
// Bumpy ground!
// why does this sound like a Sailor Moon attack?? it's meant to be the minimum aggression rating to be considered flamboyant
// See gdata.h for description of parameters. To update these, use goalie
// tuning dialog in testbed, then "Save to clipboard" and paste here.

career.ini

Hmmm...
To do:
Check to see if the settings marked as not used are actually unused.
// percentage of money you keep when you switch teams
//Not used?
SWITCH_TEAM_KEEP_MONEY_PERCENTAGE = 0
// Gamestats multipliers for different backend lengths in minutes; not used?
BE_GAME_MULTIPLIER_FOR_2_MIN = 1
BE_GAME_MULTIPLIER_FOR_4_MIN = 1
BE_GAME_MULTIPLIER_FOR_6_MIN = 1
BE_GAME_MULTIPLIER_FOR_8_MIN = 1
BE_GAME_MULTIPLIER_FOR_10_MIN = 1
// new for fifa 2006
// fan appreciation

common.ini

A comment from this configuration file states that some settings have to be removed or modified at alpha, despite many of them still working in the retail build.

// Settings that have to change or be removed at Alpha.
// minutes, not enums.  Why should we enumerate a number?  that's lame
//                          these used to be in code
// Leave this here -- it puts ini parsing back to global scope,
// in case settings are appended (e.g. by Bob tools). 

sku.ini

// Set these correctly  these if you don't want a debug menu in the BE and the FE (debug Menu =0 and skip_fedebugger =1)

Some commented out settings for making demo builds are present.

//--------------------------------------------------------------------------------
// SPECIAL DEMO CONFIGURATIONS
// SL Uncomment these on to turn the game into a DEMO game build...

// Switch demo mode on
// DEMO_MODE = 0

// Configure pre and post-game screens. Format is:
//		<MODE>_SCREEN<n>=<name>,<seconds>,<skippable>,<firstonly>
// <MODE> is PREGAME or POSTGAME
// <name> corresponds to the name of the general .bmp file in the feart/misc art directory,
// for 
// <seconds> is how long to display the screen (-1 to display until user skips)
// <skippable> is 1 if the user can skip the screen with a keypress.
// <firstonly> is 1 if screen should only be shown the first time the game is run.

// PREGAME_SCREEN1  = title,5,0,0
// PREGAME_SCREEN2  = legal,5,0,0
// POSTGAME_SCREEN1 = sellsheet,10,0,0

Only in the Windows port's variation of sku.ini are a couple of comments containing two lines of uncompiled source code for reference purposes.

// Reveal::Tweaker::AddCheckBoxControl( "AI","No Ball Colide" );
//NO_PLAYER_BALL_COLLISION=1
// Reveal::Tweaker::AddCheckBoxControl( "AI","No Tackle" );
//NO_TACKLING=1

cfg_pc_h.ini

// STRATEGY FOR HIGH LEVEL COMPUTERS
// - Test Machine: 	Quadro4 750XGL 128MB on 2.4Ghz Machine
// - Target Settings:   1024x768x32
// Desc:
//	+Keep frame rate above 50fps.
//      +Best lighting
//	+Best textures
//      +All sideline and ref characters
//	+Sky
//      +Full Shadows
//	+Never see slowbody pop in game cameras (so numbers always stay visible)
//	+3D grass
//      +Particles
//      +Stadium shadow layer over pitch
//
//      -No Film Grain 
//      
// Current Perf:
//	poly/frame: 	100,000 
//	FPS:		60
//
// DSEWELL: 2:34 p.m. 13/09/2003

cfg_pc_m.ini

// STRATEGY FOR MEDIUM LEVEL COMPUTERS
// - Test Machine: 	GeForce2MX 64MB on 1Ghz Machine
// - Target Settings:   800x600x16
// Desc:
//	+Keep frame rate above 20fps.
//      +Good lighting
//	+Detail texture
//      +Full Res textures (card has 64 MB ram)
//	+Sky
//      +Some shadows.
//	+Never see slowbody pop in game cameras (so numbers always stay visible)
//
//      -No Film Grain 
//      -No 3D grass
//      -No Particles in game camera
//      -No stadium shadow layer over pitch
//
// Current Perf:
//	poly/frame: 	90,000 
//	FPS:		 31
//
// DSEWELL: 1:34 p.m. 13/09/2003

cfg_pc_l.ini

// STRATEGY FOR LOW LEVEL COMPUTERS
// - Test Machine: 	(Slow) TNT2-16MB on 600Mhz Machine
// - Target Settings:   640x480x16 (Forced to 16)
// Desc:
//	+Keep frame rate above 20fps.
//      +Minimal lighting (Baked)
//	+Detail texture on Grass
//      +All half res textures (due to video ram sizE)
//	+Fill colour sky
//      +Minmal shadows (enough so players look like they are on the ground)
//	+SLowbody only in game camera (So player numbers don't appear to pop on when players run down)
//
//      -No Film Grain 
//      -No 3D grass
//      -No Particles
//      -No stadium shadow layer over pitch
//		-No rendering of referee
//		-No rendering of corner flags
//
// Current Perf:
//	poly/frame: 	50,000 
//	FPS:		20
//
// DSEWELL: 1:50 p.m. 13/09/2003
// MNEWINGTON: 1:25 p.m. 18/09/2003