Click or drag to resize

Debugging your plugin

Setting up the host application

To debug your plugin you need to set articydraft.exe as external program to start. The required command line arguments can be either given in the text field for that

Debug Setup

or can be written in an external formatted file that needs to be referenced as @<FileNameOfParameters>

External Switches

Caution note Caution

Ensure you use articydraft.exe as host application for your plugin or your breakpoints will not be hit.

Debugging with a Steam version

If you use a Steam version of articy:draft 3 you need some extra steps for debugging. These steps differ slightly depending if you use the purchased articy:draft 3 version or the subscription based articy:draft 3 - Flex license.

As a one time setup, please navigate to your installation directory of your articy:draft version. This can be done by right-clicking your version in your library selecting "Properties".
In the now open window select the "Local files" tab and click on "Browse local files...". This will open an explorer window at the right location.
Now navigate to "bin" (AD3) or "bin2" (AD3-Flex). Than enter the x86 folder (or the x64 if you want to use the 64 bit version for debugging).
In that folder create a file called steam_appid.txt which needs to contain the steam application id of your articy:draft version.

articy:draft 3

steam_appid.txt
570090
The command line requires the additional parameter -steam to run.

articy:draft 3 - Flex license

steam_appid.txt
388600
The command line requires the additional parameters -steam -rent to run.

Note Note

To be able to use the Edit and Continue feature of Visual Studio it is recommended to use the 32 bit version of articy:draft.

Caution note Caution

Please ensure that your Steam client is running and you are logged in.

Using a command line parameter file

If you like to use a parameter file for debugging plugins (or starting articy draft) put each command line option (and their parameter values) on a single line. Empty lines or lines starting with a semicolon ';' are skipped when articy:draft reads this file.

Caution note Caution

Ensure you use double quotes for parameter values that contain spaces. Parameters that specify files or directories should use quoting.

Using this sample block is a good start for plugin debugging.

Command line parameters
; don't show splash screen
-nosplash

; start up in single-user mode, comment out for multi-user environment
-singleuser

; full logging (logs are stored at "%appdata%\nevigo\articy\3.x\Logs" [versions below 3.1.22]) 
; full logging (logs are stored at "%appdata%\Articy Software\articy\3.x\Logs" [version 3.1.22 and up]) 
-loglevel 3

; force any log message to be written directly to disk, not only errors and warnings
-flushlog

; log plugin manager events
-api.pluginlog

; set log event mask to (E)rrors, (W)arnings, (I)Info, (T)Trace, (D)Debug messages
; defaults to "EWIT"
-api.pluginlogmask "EWITD"

; force to load the referenced plugin from the given local path
; you need to specify the PluginManifest.xml file in your projects output folder!
-api.DebugManifest "O:\Articy.DemoPlugin\bin\Debug\AnyCPU\PluginManifest.xml"

; =====================================================================
; Steam related options
; =====================================================================

; uncomment next line if you are using a Steam version
;-steam

; uncomment next line if you are using the "Flex license"
;-rent

; =====================================================================
; other helpful options
; =====================================================================

; don't load any plugins (beside the one given with -api.DebugManifest)
;-api.noplugins

; Uncommment switch to force articy:draft to use a different folder to search for "local" plugins
; Default path is "%appdata%\Articy Software\articy\3.x\Plugins\Local"
;-api.plugindir "D:\_Stage_\Plugins\"

; Uncomment to prevent copying plugin files from the server announced plugin path
; (if configured in the ClientSettings.xml in the server dir of the articy:server installation)
;-api.nodist