The console in Satisfactory can be used to access debug data (like player coordinates or a list of radiation sources) or for changing some options not available in the game's settings, such as disabling the fog, anti-aliasing or enabling an FPS counter. It cannot be used for cheating (e.g. spawning items).
The effects of commands are reset once the game is closed to desktop, but persist between sessions (the only exception is the Suicide command, which will remain if the game is saved).
The console can be accessed by §(paragraph)/` (backtick)/~ (tilde) key. This will open the console command line; press it again to open a larger window (at least one command requires a large window in order to be used properly).
It might be necessary to change the keyboard layout to English - UK on some keyboard layouts, as the console can only be opened if the keyboard layout has at least one of the 3 activation keys (§, ` or ~).
Changing the activation key
Another solution that does not require switching the keyboard layout is to navigate to "
%LOCALAPPDATA%\FactoryGame\Saved\Config\WindowsNoEditor", and adding the following line in the "input.ini" file under "[/script/engine.inputsettings]":
This will allow the console command line to be opened with F6. Any other key or character can be, as long as it doesn't require to use a modifying key such as Ctrl, ⇧ Shift or Alt, also avoid using any keys that the game already uses by default.
List of commands
The "window" column is to differentiate between commands that require the large console window to be properly used and commands that do not require it. Since Satisfactory is made in Unreal Engine, many commands from the Unreal Engine itself appear in this list.
|? (without pressing enter)||Small||Shows a complete list of all commands, some with brief explanations.
There are 2296 commands in total as of Patch 0.3.3.5, though not all of them are available as a public user.
|materialFlowAnalysis recipeName[FString]||Large||This command can be used to find the items required per second for all craftable items in the game. To use the command, type "materialFlowAnalysis" (not case sensitive) and then type in the item name you wish to find out about (this is case sensitive). The 'name' of the item, or 'FString', shall follow the exact string as indicated in the individual item's Blueprint Path, which can be found in the infobox of each item on its respective page.|
|Gamma [number]||Small||2.2||Changes the gamma (brightness) level.|
|Pause||Pauses the game, enter the command again to continue playing.|
|r.Atmosphere [0/1]||1||Activates/deactivates the atmosphere.|
|r.Fog [0/1]||1||Activates/deactivates the fog.|
|r.ViewDistanceScale||1||Sets the render distance of things like trees/foliage/rocks. Value is multiplicative*|
|foliage.LODDistanceScale||1||Controls how are higher quality LOD models being shown further out. It primarily affects foliage and buildings and can have a major impact on performance, but can make the game look better. Set this to higher values to increase the distance (recommended high is 5).|
|r.Shadow.DistanceScale||1||Sets the render distance of shadows cast by objects. Value is multiplicative*|
|r.ScreenPercentage [percent]||100||Sets internal resolution scale. It can be used together with r.TemporalAA.Upsampling set to 1 to get a "fake" full resolution image achieved with temporal anti-aliasing (TAA). This can improve performance a lot.|
|r.TemporalAACurrentFrameWeight [number]||0.2||Range 0-1. Sets the impact of the current internal frame on the final image. Set this to a low value e.g. 0.05 for better anti-aliasing or better upsampling at the cost of more artifacts (especially smearing) in motion. Also, increase r.TemporalAASamples to something larger like 16 when using low values.|
|r.TemporalAAFilterSize||1||Sets the spread of the TAA samples. Use values below 1 like 0.25 to sharpen the image (only works if r.TemporalAASamples > 6).|
|r.TemporalAASamples [number]||8||Sets the number of samples to use for TAA. Set this to 2 - 5 to reduce jitter.|
|r.Tonemapper.Sharpen [number]||0||Sets the amount of a simple sharpen filter.|
|r.StaticMeshLODDistanceScale [number]||1||Controls the level of detail (LOD) for static meshes. Set this to 0 to improve graphics but possibly decrease performance, or higher than 1 to make it significantly worse.|
|r.LandscapeLODBias [number]||0||Fixes terrain geometry in the far distance. Set this to -2 or -3 to improve graphics but possibly decrease performance.|
|Grass.densityscale [number]||1||Sets the grass density. 0 disables it entirely, values between 0 and 1 reduce it, and values over 1 increase it.|
|pool.light.count [number]||?||Sets the amount of lights to render.|
|pool.light.lightshaft.count [number]||?||Sets the amount of light shafts to render.|
|ShowDebug DebugType[FName]||Activating command with any of the below will show the following information in the top left corner of the screen regardless of the command executed (unless otherwise stated):
Replace italicized text with any of the following:
|Stat FPS||Activates Unreal Engine 4's built-in FPS counter, all command fields are non-case-sensitive. The FPS counter will work in all environments, even on loading screens or the main menu.|
|Stat Levels||From the description: "Displays level streaming info".|
|Stat Unit||Activating it shows a small readout of various statistics including Frame time (1000/Frame time = FPS), Game time (1000/Game time = UPS), Draw time (unknown), GPU time (unknown), RHIT time (unknown) and whether or not DynRes is supported (use unknown).|
|Suicide||Has the same effect as using the Respawn option from the Esc in-game menu.|
|t.MaxFPS [number]||0||Sets the maximum framerate to any value, other than the options in video settings. 0 makes the framerate unlimited.|
|FOV [number]||Sets field of view to the entered value, however, values over 150 can become unstable and glitches will occur. The FOV can be changed by a slider in the game's option, but this console command allows to set it to any value beyond the slider.|
|ToggleDebugOverlay [0/1]||0||Displays a window with various debug info.|
*Multiplicative values means setting it to 2 will render at double the default distance and setting it to 0.5 will render at half of the default. It appears to be limited to a maximum value of 3. Can be FPS heavy if set too high values and can give you more FPS if set to lower values.
The following commands appear in the autocomplete list in the console but have never worked since Early Access release, as they either don't do anything when executed or aren't even recognized by the console when executed.
- Patch 0.4.0.0?: The console no longer needs to be activated using Ctrl+⇧ Shift+L
- Patch 0.3.6.7: Added ToggleDebugOverlay command
- Patch 0.3.5.4?: r.Gamma is replaced with Gamma, Pause is functional again
- Patch 0.3?: r.Gamma and Pause commands no longer work