How to use command-line switches

Command-line switches are normally used on the command-line of a shortcut to start an application. They are prefixed with either “-“ or “/” and are case insensitive (at least for the articy:draft ones). If you are a developer of an MDK plugin you should take a look here.

Adding a command-line switch to a shortcut

Right-click on your articy:draft shortcut on your desktop. Navigate to the “Shortcut” tab.
Add your command-line switches at the end of the “Target” field.

Windows articy properties pop-up showing shortcut tab

If you press “OK” or “Apply” an access denied box appears if you do this on the shortcut created from the installer because this one is shared across all accounts on that machine. Click “Continue” to proceed.

Windows access denied pop-up

Important: Always use a separating space between different switches and between switch and values.

Adding a command-line switch for the Steam versions

Open the “Properties” of articy:draft either using the gear on the library page or using a right-click on the entry in the library list.

Access Steam properties from library page
Steam screenshot showing rightclick menu of object in avigator

In the now open dialog, you find a text field titled “Launch options” please add your switches there.

Steam pop-up showing General launch options for a game or tool

Important: Always use a separating space between different switches and between switch and values.

How to write a command-line switch config file

If a *.cfg file is used for command-line switches each switch (with additional required parameters) goes to a single line of the file like in the following example:

; main parameter
-loglevel 3
-singleuser
-nosplash
-flushlog

; optional parameters
;-nobg

Empty lines and lines starting with a semicolon “;” are skipped.

General

If a parameter of a command-line switch contains spaces (e.g. Parameters for logging paths), the value must be enclosed with double-quotes (Please mind to not use typographical ones like Word is changing them if you type text). This is not strictly required for *.cfg files but is still encouraged.

If you use an own config file please mind that you should always use -loglevel 3 and add -singleuser if you are using a single-user version.

articydraft.exe can additionally be started with a command-line like C:\Program Files\articy draft 3\bin\articydraft.exe “@config.cfg”. Using this notation the command-line switches are taken from the referenced file config.cfg.

If you are working with or changing command-line switches quite often we recommend using a *.cfg file, because it is easier to maintain and can have comments inside.

articy:draft 3 uses a special starter for single- and multi-user versions. This starter was originally written for the steam version to test the os for 32/64 bit and the existence of a articy:draft 2 version and starts the right version accordingly. But this starter executable can be renamed to any name you like and then searches for a *.cfg file with the same name as the *.exe and uses that to forward it as command-line parameters to articydraft.exe

Useful command-line switches:

General switches

-loglevel
When using this switch a numeric parameter in the range 0-3 is required. The higher the number the more verbose is the output. Where 0 means no logging and 3 means full logging.
0: no logging. A logger is present but all messages are discarded
1: normal logging: only Critical, Error, Warning & Info messages are logged
2: extended logging: Trace, Debug, and Note messages are additionally logged
3: full logging: all known entry types are logged

-flushlog
If this switch is present every log entry is written to disk immediately. Normally only messages of severity “Warning” or higher get written directly to the log file. Informational messages are cached in a buffer.

-forceprofile
This switch requires a path. Usually articy:draft writes all information that needs to be stored between different starts into a directory structure located at %Appdata%\Articy Software\Articy (The “%Appdata% is resolved to the base path of the currents users profile directory). This includes the recent projects list, search folder for Plugins, downloaded In-App notifications and such things.
If you want to override that you can use this command-line switch. For example:

-forceprofile "D:\My Articy Profile\"

-log.NoEnvDump
If this switch is present, the user’s environment variables are not dumped into the log-file.

-noautoclose
When this switch is present the progress dialogs are not closed automatically when no error or warning is present.

-cleartn
If objects are pasted by a copy & paste operation their technical name is also present in the copy and will get to duplicate technical names you need to fix later on. If that switch is present the technical name property is cleared instead and you might add a new one.

-export.newcolors
There is a known bug that exported color values are not exported correctly due to the internal floating-point high-fidelity color representation. All engine exports are affected (JSON/Unreal/Unity).
As customers already use those files (via engine plugins or directly) they might already added some code that might check for colors. To not break such existing usages and since the colors are “nearly” correct the fix was placed behind the mentioned switch. With that present, the export exactly uses the hex value as it is shown in the color picker.

UI presentation related switches

-nosplash
Does not require an additional parameter.
Disables the creation of a slash screen. Can be used when debugging bootstrapping issues and when using an application in automation mode, or just to remove it.

-nobg
Does not require an additional parameter.
Hides the background glow in the windows and removes the background pattern.

Comparison of flow view with and without background

-ui.nogradients
Does not require an additional parameter.
Removes the gradients of the flow objects and those in the title bars of the property sheets.

-ui.colormultiplier
A floating-point value between 0.0 and 1.0 is required
When using the “-ui.nogradients” switch, the color needs to be darkened to allow white text on that area to be readable. If that value is not present, it is assumed to be 0.7. A value of 0.0 will make all those colors black, a value of 1.0 will keep the original color.

-ui.reduced
Does not require an additional parameter.
This is a shorthand switch that if present will enable the “-nobg” and “-ui.nogradients”. If articy:draft detects that it is running in a remote-desktop session this behavior is enabled by default. (unless you specify “-noremotesession” to opt-out).

Comparison between articy's standard and reduced UI

-toolbar.pinned
Does not require an additional parameter.
When working in the flow or with locations there is a secondary toolbar that is normally only shown when an object is selected. If you add this switch, the space for the toolbar area is always occupied and visible.

-tv.useoldflowsorting
Does not require an additional parameter.
By default the current articy:draft version uses a topological sort of nodes in the flow for presenting them in the navigator. The older version sorted the content alphabetically independent of their flow position. If you add this switch, the old alphabetical sort is used.

-tile.cr and -tile.crs
Some customers don’t like the rounded corners on the content-browser tiles. For internal testing we added some switches to “play with them”. Below are some sets you might find useful. As it is an experimental feature this only affects the tile drawing and not all corner radii everywhere. If you increase the radius you might encounter clipping issues. But since it is only drawing-related, your data is never in danger.

articy corner options with -tile command-line switch in comparison

; normal (defaults if not present)
-tile.cr 10
-tile.crs 5
; reduced
-tile.cr 4
-tile.crs 2
; none (rectangular)
-tile.cr 0
-tile.crs 0

Multi-user only switches

The following swiches are only meaningful if you work with the multi-user version of articy:draft.

-p4log
If you use the Perforce source control provider you can enable command logging with this switch. You will find the log file “p4.log” in the logging directory “%Appdata%\Articy Software\Articy\3.x\Logs”

-scmlog
This switch enables high-level source-control logging. You will find the log file “SourceControlManager.log” in the logging directory “%Appdata%\Articy Software\Articy\3.x\Logs”

-svnlog
If you use the SVN source control provider (Either internal or external) you can enable command notification logging with this switch. The entries are forwarded to the main log file “articy.log” in the logging directory “%Appdata%\Articy Software\Articy\3.x\Logs”.

-forcesvn
Using this switch enables you to enforce a given SVN library set to be used by articy. Valid values are:

-forcesvn 1.6
-forcesvn 1.7
-forcesvn 1.8
-forcesvn 1.9

SVN versions greater than 1.9 still use this internal library set.
This switch is useful if you use an own SVN client that uses a different version/working copy format.
By default articy:draft tries to match the library to match an installed TortoiseSVN as the most commonly used SVN client. If no match can be found the latest version is used.

-admin
Starts articy:draft in “Admin” mode. Welcome has no “projects tab”, server can be selected, on the user page the user name is fixed to “serveradmin”

-host
This parameters is followed by a string specifying the host name to use for pre-populating the hostname of the welcome screen.

-port
This parameters is followed by a integer value specifying the port to use for pre-populating the port of the welcome screen. If missing the default 16707 will be used

-username
This parameters is followed by a string specifying the host name to use for pre-populating the user name of the welcome screen.

Follow us on Twitter, Facebook and LinkedIn to keep yourself up to date and informed.