Skip to main content

The Forest Console Commands & Cheats

All 156 DebugConsole commands of The Forest, read from the game's code: the game's own usage line where it has one (80 of 156), the values each command takes, and one plain sentence of what it does. 51 are marked as pure developer debugging. Data from the game files (pre-1.10 build).

Data from the game files (pre-1.10 build). Icons: rendered by PinDrop from the game's 3D models. © Endnight Games.

How do you enable cheats in The Forest?

Three steps, in this order:

  1. 1. Allow Cheats

    Open Options, then Gameplay, and set Allow Cheats to On.

  2. 2. Type developermodeon

    On the main menu type developermodeon. There is no input box: just type it.

  3. 3. Start a game, press F1

    Start a new game or load a save. The console opens on F1; the log is on F2. Type help to list the commands of your version.

How to activate god mode in The Forest?

With the console open, type godmode on to switch it on and godmode off to switch it off. The game answers “God Mode enabled” or “God Mode disabled”; its usage line reads godmode <on|off>. The code also checks the words “toggle” and “full”; the files do not say more about them. See godmode below.

How to spawn all items in The Forest?

addallitems adds all non-story items (“Added all non-story items”). addallstoryitems adds the story items. removeallitems and removeallstoryitems undo each. To add one item instead, use additem with its name or ID: the builder below has the ID of all 225 items, and the item ID list shows them with their recipes.

additem: pick an item, copy the command

additem takes an item name or an ID. The ID is shorter, and several items share a name in the game's text (the four “Broken Toy” pieces, the two “Rabbit” rows).

Your command

Pick an item to fill in its ID. The game's usage line is additem <itemName|itemId>.

All 156 commands

Click a command name to copy it, or a value under it to copy the command with that value. 80 commands carry a usage line in the game; for the other 76 the card says so and shows only what the code gives away. 30 cards are described from the command's name because the files hold no message for them, and say so.

156 of 156 commands

  • Advances to the next day (the code runs a day check; the game prints no message).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Prints the current day.

    No usage line in the game files

  • Clears one single-player or multiplayer save slot, or all of them (sp, mp or all).

    usage: clearsaveslot <sp|mp|all> <slotNum>

  • Counts the cut-down trees, or cuts down the share or number of trees you give; multiplayer clients can only count.

    usage: cutdowntrees <count|[percent]|[amount]>

  • Cuts the grass around the player within the radius you give.

    No usage line in the game files

  • Turns “Fast start” on or off.

    usage: faststart <on|off>

  • Finds the passenger with the ID you give; the game answers “Successfully found passenger” or says the search failed.

    usage: findPassenger <ID>

  • Forces the weather: light, medium or heavy rain, cloud or sunny, or a rain dice value.

    usage: forcerain <[rainDice]|light|medium|heavy|cloud|sunny>

  • Sets the Game Time Scale to the number you give; the game rejects a value that is not a valid float.

    usage: gametimescale <scale>

  • Prints the current game mode.

    No usage line in the game files

  • Grows grass around the player: radius, grass layer and grass amount.

    usage: growgrass <radius> <grassLayer> <grassAmount>

  • Overrides the lighting time of day: morning, noon, sunset, night or an exact HH:MM; “off” switches the override off.

    usage: lightingTimeOfDayOverride <off|morning|noon|sunset|night|HH:MM> (currently=

  • Loads the level with the number you give.

    usage: loadlevel <levelNum>

  • Saves the game; the game answers “Saved game”.

    No usage line in the game files

  • Sets the current day to the number you give.

    No usage line in the game files

  • Sets the difficulty mode to Peaceful, Normal, Hard or HardSurvival.

    usage: setdifficultymode <peaceful|normal|hard|hardsurvival>

  • Sets the “exited endgame” flag on or off; the game prints no message.

    usage: setExitedEndGame <on|off>

  • Sets the start game mode to Standard, Creative or Mod.

    usage: setgamemode <standard|creative|mod>

  • Sets the RainEffigy bonus to the number you give; the usage line also prints the current value.

    usage: setrainbonus <value> (current=

  • Sets the Time Scale to the number you give; the game rejects a value that is not a valid float.

    usage: timescale <scale>

  • Switches a “CaveLight” on or off.

    usage: cavelight <on|off>

  • Turns “Energy Hack” on or off; the game's messages do not say what it changes.

    usage: energyhack <on|off>

  • Fakes a hit on the player from an enemy (the code sends “hitFromEnemy”; no message).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Turns God Mode on or off (“God Mode enabled / disabled”); the code also checks “toggle” and “full”.

    usage: godmode <on|off>

  • Moves you to the GameObject with the name you give, landing on the ground below it.

    usage: goto <GameObjectName>

  • Moves you to an enemy; the only message is “No enemy to target with goto, gotoEnemy failed”.

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Moves you to an object with the tag you give.

    usage: gototag <GameObjectTag>

  • Hits the local player with the damage you give, armor not ignored.

    usage: hitlocalplayer <amount>

  • Adds or removes blood infection (“Added / Removed blood infection”).

    usage: bloodInfection <on|off>

    The game's usage line calls it “bloodInfection”; the command is registered as infection.

  • Makes the player invisible to enemies (on) or visible again (off).

    No usage line in the game files

  • Turns “Item Hack” on or off; the game's messages do not say what it changes.

    usage: itemhack <on|off>

  • Hits the local player with 1000 damage, ignoring armor.

    No usage line in the game files

  • Kills the local player; the only message in the files is “Local player not found”.

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Turns “Log Hack” on or off; the game's messages do not say what it changes.

    usage: loghack <on|off>

  • Poisons the player (“Poisonned player”).

    No usage line in the game files

  • Revives the local player; the game refuses with “Local player is alive, cannot be revived” if you are alive.

    No usage line in the game files

  • Sets the player's T-shirt material to the number you give.

    usage: setPlayerTShirtMat <BodyNum>

  • Sets the player's look to the variation number you give.

    usage: setPlayerVariation <VariationNum>

  • Sets one of three skills (run time, lung time, athleticism) to the amount you give.

    usage: setSkill <runTime/lungTime/ath> <amount>

  • Sets a player stat to the amount you give; “full” resets Health, Energy, Stamina, Fullness and Thirst to their maximum. Stat names are case sensitive.

    usage: setstat <Health/Stamina/Energy/Fullness/BatteryCharge/Sanity> <amount>

  • Sets the player's extra variation to None or Jacket.

    usage: setVariationExtra <None|Jacket>

  • Turns fast running on or off (the code calls setFastRun; the game prints no message).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Turns the survival features on or off.

    usage: survival <on|off>

  • Turns unlimited hairspray on or off.

    usage: unlimitedHairspray <on|off>

  • Turns Vegan Mode on or off; the game says reloading is required for it to take effect.

    usage: veganmode <on|off>

  • Adds all non-story items (“Added all non-story items”).

    No usage line in the game files

  • Adds all story items (“Added all story items”).

    No usage line in the game files

  • Adds the outfit with the ID you give (“Added outfit successfully”).

    usage: addClothingById <ID>

  • Adds a random clothing outfit.

    No usage line in the game files

  • Adds the item you name, or give by ID, to the game (“Found item …, adding now”). Use listitems for the names.

    usage: additem <itemName|itemId>

  • Decays the next piece of meat; says “No more meat to decay” when there is none.

    No usage line in the game files

  • Prints all clothing with its number and types (“All Clothing”).

    No usage line in the game files

  • Prints every item name with its ID (“Item names [id]”).

    No usage line in the game files

  • Removes all non-story items (“Removed all non-story items”).

    No usage line in the game files

  • Removes all story items (“Removed all story items”).

    No usage line in the game files

  • Removes the item you name, or give by ID (“Found item …, removing now”).

    usage: removeitem <itemName|itemId>

  • Turns the sheen on for all items (“Toggled sheen on for all items”).

    No usage line in the game files

  • Spawns every item with a fake drop (“Begin spawning all items with fake drop now”).

    No usage line in the game files

  • Spawns the item you name, or give by ID (“Found item …, spawning”).

    usage: spawnitem <itemName|itemId>

  • Spawns the item's world prefab by name or ID (“spawning prefab now”).

    usage: spawnpickup <itemName|itemId>

  • Turns the animal controller on or off; off despawns all animals.

    usage: animals <on|off>

  • Turns the bird controller on or off; off despawns all birds.

    usage: birds <on|off>

  • Disables (off) or enables (on) all enemies (“Disabled all enemies / Enabled enemies”).

    usage: enemies <on|off>

  • Kills all animals (“Killed N animals”).

    No usage line in the game files

  • Kills all enemies (the code calls _killallenemies; no message).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Kills the closest animal (“… was killed”).

    No usage line in the game files

  • Kills the closest enemy (“… was killed”).

    No usage line in the game files

  • Kills the end boss (“Killed the Boss”); says “no boss to kill?” if there is none.

    No usage line in the game files

  • Knocks down the closest enemy (“… was knocked down”).

    No usage line in the game files

  • Respawns all enemies based on the current day's amounts.

    No usage line in the game files

  • Spawns an animal of the type you name; the files hold no usage line or message, so the valid types are not known.

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • A “quiet” form of spawnanimal; the files hold no usage line or message for it.

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Spawns the enemy type you name (“spawned 1 …”).

    usage: spawnenemy <male_skinny | female_skinny | skinny_pale | male | female | fireman | pale | armsy | vags | baby | fat>

  • Spawns a mutant of the type you name; the game ships no usage line, so the types are the names the method compares against.

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Spawns a painted mutant family (the code calls _spawnPaintedFamily); no usage line.

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Spawns a regular mutant family (the code calls _spawnRegularFamily); no usage line.

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Spawns a skinned mutant family (the code calls _spawnSkinnedFamily); no usage line.

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Spawns a skinny mutant family (the code calls _spawnSkinnyFamily); no usage line.

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Builds all building ghosts (no message).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Turns Builder mode on or off.

    usage: buildermode <on|off>

  • Turns Build hack on or off.

    usage: buildhack <on|off>

  • Cancels all building ghosts (the code's own name; no message).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Grows every garden dirt pile it finds (“Found N garden dirt pile to grow”).

    No usage line in the game files

  • Places all building ghosts (no message).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Places built objects: an optional name and number.

    usage: placebuiltobjects [name] [number]

  • Plants every garden it finds (“Found N gardens to grow”).

    No usage line in the game files

  • Developer debugging

    Sets the achievements log level: none, log, error or all.

    usage: achievementLogLevel <none|log|error|all>

  • Developer debugging

    Takes an amount (or “clear”); the files hold no usage line or message.

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Turns ambient occlusion on or off, or toggles it.

    usage: ambientocclusion <on|off|toggle>

  • Turns anti-aliasing on or off, or toggles it.

    usage: antialiasing <on|off|toggle>

  • Developer debugging

    Enables or disables the astar component.

    usage: astar <on|off>

  • Developer debugging

    Turns capsule mode on or off for the player_net models (multiplayer).

    usage: capsulemode <on|off>

  • Clears the DebugConsole log.

    No usage line in the game files

  • Clears all settings; the game says restarting is required.

    No usage line in the game files

  • Developer debugging

    Counts the objects that carry the component you name.

    usage: count <ComponentName>

  • Developer debugging

    Counts the GameObjects that carry the tag you name.

    usage: counttag <tag>

  • Developer debugging

    Prints the vignette controller's post-processing state.

    No usage line in the game files

  • Developer debugging

    Destroys the GameObject with the name you give.

    usage: destroy <GameObjectName>

  • Developer debugging

    Shows or hides Device Debug Information (needs the main scene).

    usage: deviceDebugInformation <on|off>

  • Developer debugging

    Writes a renderer diagnosis to a text file.

    No usage line in the game files

  • Developer debugging

    Disables the GameObject with the name you give.

    usage: disablego <GameObjectName>

  • Developer debugging

    Prints the Steam lobby info.

    No usage line in the game files

  • Developer debugging

    Enables the GameObject with the name you give.

    usage: enablego <GameObjectName>

  • Developer debugging

    Compiles and runs C# code you type (“Eval succes / eval error”).

    No usage line in the game files

  • Developer debugging

    Sets or clears a filter on audio paths.

    No usage line in the game files

  • Developer debugging

    Runs a garbage collection.

    No usage line in the game files

  • Developer debugging

    Prints the cull distance of a layer.

    usage: getlayerculldistance <layerName>

  • Developer debugging

    Turns static greeble rock collision on or off.

    No usage line in the game files

  • Prints the list of DebugConsole commands (“DebugConsole Commands Help”).

    No usage line in the game files

  • Developer debugging

    Hides the world position display on the type you name.

    usage: hideworldposfor <ObjectType>

  • Developer debugging

    Writes details of the named GameObject to a text file.

    usage: inspectgo <gameObjectName>

  • Developer debugging

    Runs an instancing test spawn: amount and X, Y, Z scale.

    usage: instancingTestSpawn <amount> <scaleX> <scaleY> <scaleZ>

  • Developer debugging

    Loads a debug-console command file (“loadDebugMod”).

    No usage line in the game files

  • Developer debugging

    Turns LODManager fps scaling on or off.

    usage: LODManagerScaling <on|off>

  • Developer debugging

    Logs textures at the interval in seconds you give.

    No usage line in the game files

  • Turns motion blur on or off, or toggles it.

    usage: motionblur <on|off|toggle>

  • Sets the motion blur sample count (“motion blur sample count = …”).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Developer debugging

    Sets the physics update to 30 fps (on) or 60 fps (off).

    usage: terrainRender <on|off>

    The game's usage line calls it “terrainRender”; the command is registered as physics30fps.

  • Developer debugging

    Turns the player_net animators on or off (multiplayer player models).

    usage: playernetanimator <on|off>

  • Developer debugging

    Draws Active State Labels on or off.

    usage: pmActiveStateLabels <on|off>

  • Developer debugging

    Turns profile mode on (A) or off.

    usage: profile <A|off>

  • Developer debugging

    Turns profiler sampling on or off (writes a log file).

    usage: profilersample <on|off>

  • Developer debugging

    Prints a profiler snapshot: memory used by textures, audio clips, meshes, materials, objects and components.

    No usage line in the game files

  • Developer debugging

    Refreshes the vignette controller (no message in the files).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Developer debugging

    Reports the current DebugConsole error and exception logs.

    No usage line in the game files

  • Developer debugging

    Reports the current DebugConsole logs (the game's message is the same as for errors).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Developer debugging

    Reports the current DebugConsole warnings (the game's message is the same as for errors).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Developer debugging

    Resets the input axes (no message in the files).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Resets all account stats and achievements, or one achievement by name.

    usage: resetStatsAndAchievements <all|ACHIEVEMENT_NAME>

  • Developer debugging

    Runs the macro with the name you give.

    usage: runMacro <macro name>

  • Turns eye adaption on or off (the usage line names it scioneyeadaption).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Developer debugging

    Sends a message to the named target (a GameObject, or “player”).

    usage: sendMessageTo <targetName> <message>

  • Sets the draw distance (“draw distance = …”).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Developer debugging

    Sets the cull distance of a layer: layer name and distance.

    usage: setlayerculldistance <layerName> <distance>

  • Sets the shadow level (“shadow level = …”).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Developer debugging

    Prints the GameStats.

    No usage line in the game files

  • Developer debugging

    Shows the world position on every object of the type you name.

    usage: showworldposfor <ObjectType>

  • Developer debugging

    Turns StewCombo verbose output on or off.

    usage: StewComboVerbose <on|off>

  • Sets the target frame rate (no message).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Sets the terrain pixel error (“terrain pixel error = …”).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Turns terrain rendering on or off.

    usage: terrainRender <on|off>

  • Developer debugging

    Clears the event mask of the cameras.

    No usage line in the game files

  • Developer debugging

    Turns the Culling Grid on or off.

    usage: toggleCullingGrid <on|off|toggle|>

  • Toggles the FPS counter (the code calls ToggleFPSCounter).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Developer debugging

    Enables or disables the GameObject with the name you give.

    usage: togglego <GameObjectName>

  • Toggles “LowerShadowsAtExtremeLightAngles”.

    usage: toggleLowerShadowsAtExtremeLightAngles <on|off|>

  • Toggles occlusion culling (“Disabled / enabled occlusion culling”).

    No usage line in the game files

  • Developer debugging

    Toggles an overlay (no message in the files).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Developer debugging

    Toggles a player-stats display (no message in the files).

    No usage line in the game files

    Described from its name and arguments only: the files hold no message for it.

  • Turns all sheen billboards on or off.

    usage: togglesheenbillboards <on|off>

  • Toggles vsync (“vsync enabled / disabled”).

    No usage line in the game files

  • Developer debugging

    Turns the Work Scheduler on or off.

    usage: toggleWorkScheduler <on|off|toggle|>

  • Developer debugging

    Unloads unused assets.

    No usage line in the game files

  • Developer debugging

    Turns camera rotation using Rigid Body rotations on or off.

    usage: useRigidBodyRotation <on|off>

  • Developer debugging

    Makes the WorkSchedulerBatch use try/catch (try) or not (notry).

    usage: workscheduler <try|notry>

  • Developer debugging

    Turns WS fps scaling on or off.

    usage: wsscaling <on|off>

Read from the DebugConsole class of the game's Assembly-CSharp.dll (data from the game files (pre-1.10 build)); the crossbow and other 1.10 additions are not covered either way. Some of the game's usage lines are copy-paste slips (for example infection prints “bloodInfection”); they are shown as the game has them and the card says so. See also the crafting recipes and the map.