A command line argument/parameter/option is additional data provided to an application at launch that might affect how the application behaves. They usually follow at the end of a launch command, after the name of the executable being run. For example, while many Windows users might be familiar with ipconfig /all or ping google.com for network diagnostics, those "commands" are made up of the application to run as well as the appropriate command-line argument to affect how the application runs. The full launch command used behind-the-scene in those examples are in reality:
Many games and software exposes certain parameters and options for command-line use to allow developers or users to configure the application in a certain way directly at launch, without requiring what might otherwise be rather cumbersome ways to do the same thing. This is often used to enable or configure settings not exposed through the built-in configuration menu of the application, or to load specific configurations (such as benchmark runs, listening servers, etc). While many command line arguments might be the same across multiple games, these are often the result of using the same engine or similar internal naming schemes among separate developers.
An application only supports the command line arguments it have been developed to support, and ignores those it does not recognize how to handle. Supported command line arguments must either be revealed by the developer or found by users by data mining the application. One such way of finding supported command lines involves using Process Explorer to extract all found strings of the executable and then going through those to find and test what might be applicable as an argument, parameter, or option.
Command line arguments often supported by games includes: