StarDuster
Chieftain
- Joined
- Nov 30, 2005
- Messages
- 7
The following may be used to "cheat", modify, and/or debug any currently running Civilization IV game "on-the-fly". I have not tested/used all of the console lines. Feel free to tinker with them but always remember to save your current game first!
Warning: This procedure involves editing a game file. Be sure to create a backup copy of the "CivilizationIV.ini" file before proceeding.
Use a text editor (such as Notepad, do NOT use Wordpad) to edit the "CivilizationIV.ini" file located in "C:\Documents and Settings\[Your Windows Log On Name]\My Documents\My Games\Civ4\"
Open the file and search for the line of text "CheatCode = 0". Change this line to "CheatCode = chipotle". Save the file. Now start a game and press "~" during game play to display the console window.
The following are a list of console lines along with their functions. The description of the console line will appear in bold black letters while the console line itself will appear in bold red letters.
Some commands require you to enter variables (such as an amount of gold or x-y coordinates). A brief description of the variable will be found within [ ] brackets in the console line.
Also, keep in mind that the following commands are case sensitive.
Example:
Set player's gold (0 is active player) - Player.setGold [player number=""] [value]
Therefore, to change your gold to 5000, you would enter the line:
Player.setGold 0 5000
Pretty simple huh.
Effect - Code
Display all console window command lines - help
Stop music - Sound.noMusic
Reload audio scripts - Sound.reload
Stop Soundscape from playing - Sound.stopSoundScape
Play sound - Sound.play string [filename]
Finds entities with black emissivity - Graphics.FindBlackPlotsAndCities
Hide attachables - Graphics.HideAttachables
Force light update on all entities - Graphics.ForceLightingUpdate
Rebuild terrain and lighting - Graphics.ReBuildTerrain
Set Hill scale - Graphics.SetHillScale [floating number=""]
Set Peak scale - Graphics.SetPeakScale [floating number=""]
Set water plane height - Graphics.setWaterHeight [floating number=""]
Set render depth for quad tree - Graphics.quadTreeDepth [integer]
Toggle water - Graphics.toggleWater
Display terrain - Graphics.displayTerrain
Toggle grids - Graphics.toggleGridMode
Dump texture palette - Graphics.showTexturePalette
Set texturing - Graphics.setTextureMode
Set wireframe - Graphics.setWireframe
Morph the globeview count times - Profile.morphGlobe [integer]
Rebuild city indicated number of times - Profile.rebuildCity [x coordinate=""] [y coordinate=""] [integer]
Rebuild plot indicated number of times - Profile.rebuildPlot [x coordinate=""] [y coordinate=""] [integer]
Dump animation information to debugging window - Profile.dumpAnimLog
Set minimum time to capture spikes. (set to 0 to disable spikelock) - Profile.setSpikeThreshold [milliseconds]
Dump console command history - Console.History
Write HTML documentation for the current console commands - Console.CreateDocumentation [filename]
Clear the console - Console.Clear
Display current logging status - Log.status
Toggle logging - Log.toggle
Clear the log file - Log.clear
Erase units and cities from map - Map.empty
Fill map with units and cities for performance testing - Map.fill
Replot Goodies - Map.generateGoodies
Replot Bonuses - Map.generateBonuses
Replot Features - Map.generateFeatures
Replot Rivers - Map.generateRivers
Erase Rivers, Features, Bonuses and Goodies - Map.eraseGameElements
Replace Rivers, Features, Bonuses and Goodies - Map.replaceGameElements
Change the active landscape info - Map.setActiveLandscapeID [landscape number=""]
Erase all plots - Map.erasePlots
Reload Game Text xml files - Xml.reloadGameText
Reload Civ4TerrainSettings.xml - Xml.reloadLandscapeInfo
Reload Civ4ArtDefines.xml - Xml.reloadArtDefines
Toggle output of texture loads/accesses to debug output - Game.toggleTextureAccessInfo
Force AI to play for indicated number of turns - Game.AIPlay [integer]
Create sequences associated with the selected unit - Game.createSelectedUnitKFs
Free sequences associated with the selected unit - Game.freeSelectedUnitKFs
Save WorldBuilder save description file - Game.saveWorldBuilderSave [filename]
Toggle Animation Test Tool - Game.toggleAnimationTest
Show GFC directory chooser - Game.gfcDirChooser
Show GFC file dlg window - Game.gfcfiledlg
Show GFC test popup - Game.testGFC [integer]
Show test popup - Game.testFont bool bEnable
Show the Python test popup - Game.testPythonPopup
Show test popup - Game.testPopup
Scroll to the bottom - Game.scrollBottom
Scroll to the top - Game.scrollTop
Clear the listbox below - Game.clear
Display the help popup - Game.helpScreen
Toggle debug mode - Game.toggleDebugMode
Debugging - Game.showWBPalette bool bCreate
Compute md5 checksum for the directory tree specified - App.calcFolderChechsum [directory]
Set debugging value - App.setMooseDbg1 [integer]
TGA full screen shot in Screenshot folder. (requires "AllowScreenShots=1" in "CivilizationIV.ini") - App.takeFullScreenShot
TGA screen shot in Screenshot directory. (requires "AllowScreenShots=1" in "CivilizationIV.ini") - App.takeScreenShot
Set maximum frame rate. (0 to disable) - App.setMaxFrameRate [floating number=""]
Update existing value in the ini file - App.setIniFile [group key=""], [key] [value]
Crash game - App.crash
Return the application link time - App.getBuildTime
Test player unit iteration - Player.testUnitIter [integer]
Change players gold. (0 is active player) - Player.changeGold [player number=""] [value]
Set players gold (0 is active player) - Player.setGold [player number=""] [value]
These are all of the commands that I am currently aware of. I will add more as they are discovered or come to my attention. If you are aware of any that are not listed here, please feel free to share them.
Warning: This procedure involves editing a game file. Be sure to create a backup copy of the "CivilizationIV.ini" file before proceeding.
Use a text editor (such as Notepad, do NOT use Wordpad) to edit the "CivilizationIV.ini" file located in "C:\Documents and Settings\[Your Windows Log On Name]\My Documents\My Games\Civ4\"
Open the file and search for the line of text "CheatCode = 0". Change this line to "CheatCode = chipotle". Save the file. Now start a game and press "~" during game play to display the console window.
The following are a list of console lines along with their functions. The description of the console line will appear in bold black letters while the console line itself will appear in bold red letters.
Some commands require you to enter variables (such as an amount of gold or x-y coordinates). A brief description of the variable will be found within [ ] brackets in the console line.
Also, keep in mind that the following commands are case sensitive.
Example:
Set player's gold (0 is active player) - Player.setGold [player number=""] [value]
Therefore, to change your gold to 5000, you would enter the line:
Player.setGold 0 5000
Pretty simple huh.

Effect - Code
Display all console window command lines - help
Stop music - Sound.noMusic
Reload audio scripts - Sound.reload
Stop Soundscape from playing - Sound.stopSoundScape
Play sound - Sound.play string [filename]
Finds entities with black emissivity - Graphics.FindBlackPlotsAndCities
Hide attachables - Graphics.HideAttachables
Force light update on all entities - Graphics.ForceLightingUpdate
Rebuild terrain and lighting - Graphics.ReBuildTerrain
Set Hill scale - Graphics.SetHillScale [floating number=""]
Set Peak scale - Graphics.SetPeakScale [floating number=""]
Set water plane height - Graphics.setWaterHeight [floating number=""]
Set render depth for quad tree - Graphics.quadTreeDepth [integer]
Toggle water - Graphics.toggleWater
Display terrain - Graphics.displayTerrain
Toggle grids - Graphics.toggleGridMode
Dump texture palette - Graphics.showTexturePalette
Set texturing - Graphics.setTextureMode
Set wireframe - Graphics.setWireframe
Morph the globeview count times - Profile.morphGlobe [integer]
Rebuild city indicated number of times - Profile.rebuildCity [x coordinate=""] [y coordinate=""] [integer]
Rebuild plot indicated number of times - Profile.rebuildPlot [x coordinate=""] [y coordinate=""] [integer]
Dump animation information to debugging window - Profile.dumpAnimLog
Set minimum time to capture spikes. (set to 0 to disable spikelock) - Profile.setSpikeThreshold [milliseconds]
Dump console command history - Console.History
Write HTML documentation for the current console commands - Console.CreateDocumentation [filename]
Clear the console - Console.Clear
Display current logging status - Log.status
Toggle logging - Log.toggle
Clear the log file - Log.clear
Erase units and cities from map - Map.empty
Fill map with units and cities for performance testing - Map.fill
Replot Goodies - Map.generateGoodies
Replot Bonuses - Map.generateBonuses
Replot Features - Map.generateFeatures
Replot Rivers - Map.generateRivers
Erase Rivers, Features, Bonuses and Goodies - Map.eraseGameElements
Replace Rivers, Features, Bonuses and Goodies - Map.replaceGameElements
Change the active landscape info - Map.setActiveLandscapeID [landscape number=""]
Erase all plots - Map.erasePlots
Reload Game Text xml files - Xml.reloadGameText
Reload Civ4TerrainSettings.xml - Xml.reloadLandscapeInfo
Reload Civ4ArtDefines.xml - Xml.reloadArtDefines
Toggle output of texture loads/accesses to debug output - Game.toggleTextureAccessInfo
Force AI to play for indicated number of turns - Game.AIPlay [integer]
Create sequences associated with the selected unit - Game.createSelectedUnitKFs
Free sequences associated with the selected unit - Game.freeSelectedUnitKFs
Save WorldBuilder save description file - Game.saveWorldBuilderSave [filename]
Toggle Animation Test Tool - Game.toggleAnimationTest
Show GFC directory chooser - Game.gfcDirChooser
Show GFC file dlg window - Game.gfcfiledlg
Show GFC test popup - Game.testGFC [integer]
Show test popup - Game.testFont bool bEnable
Show the Python test popup - Game.testPythonPopup
Show test popup - Game.testPopup
Scroll to the bottom - Game.scrollBottom
Scroll to the top - Game.scrollTop
Clear the listbox below - Game.clear
Display the help popup - Game.helpScreen
Toggle debug mode - Game.toggleDebugMode
Debugging - Game.showWBPalette bool bCreate
Compute md5 checksum for the directory tree specified - App.calcFolderChechsum [directory]
Set debugging value - App.setMooseDbg1 [integer]
TGA full screen shot in Screenshot folder. (requires "AllowScreenShots=1" in "CivilizationIV.ini") - App.takeFullScreenShot
TGA screen shot in Screenshot directory. (requires "AllowScreenShots=1" in "CivilizationIV.ini") - App.takeScreenShot
Set maximum frame rate. (0 to disable) - App.setMaxFrameRate [floating number=""]
Update existing value in the ini file - App.setIniFile [group key=""], [key] [value]
Crash game - App.crash
Return the application link time - App.getBuildTime
Test player unit iteration - Player.testUnitIter [integer]
Change players gold. (0 is active player) - Player.changeGold [player number=""] [value]
Set players gold (0 is active player) - Player.setGold [player number=""] [value]
These are all of the commands that I am currently aware of. I will add more as they are discovered or come to my attention. If you are aware of any that are not listed here, please feel free to share them.