Files
DcsMissionScriptingTools/dutchies-dcs-scripting-tools
dutchie031 e8728caa9b
publish-vs-code-extensions.yml / Publish VS Code Extension (push) Failing after 34s
updated package versions
2026-09-09 16:29:13 +02:00
..
wip
2026-06-15 19:51:59 +02:00
2026-04-03 16:26:42 +02:00
wip
2026-06-15 19:51:59 +02:00
2026-04-03 16:26:42 +02:00
2026-09-09 16:29:13 +02:00
2026-04-07 09:30:35 +02:00

dutchies-dcs-scripting-tools

My view on a toolset you'll need to write DCS mission scripts. Direct DCS API checking and a Transpiler that can help keep huge complex scripts and frameworks simple and overseeable.

Features

  • DCS API checking in VSCode Automatic checking of your code for DCS API errors.
  • Transpiler A tool that can help you write more complex scripts in a more simple and overseeable way. Transpiles multiple files into a single file that can be used in DCS, using standard Lua syntax and features.

How To use

Intellisense and API checking in VSCode.

  1. Install the extension in VSCode.
  2. Open your workspace with your DCS mission scripts.
  3. Enable: > Dutchies Scripting Tools: Enable

Transpiler

  1. Make sure you have the code in ./src folder by default, or change the src folder in the settings. settings.json:

    {
      "dutchiesScriptingTools.src": "./src"
    }
    
  2. Write your code in the src folder, with possible subfolders. You can use standard Lua syntax and features, and the transpiler will handle the rest.

NOTE: There's no implicit entry point. The whole code will be put into a single Lua file.
The order of the files depends on dependencies via the require function. So if you have a file main.lua that requires utils.lua, the transpiler will first transpile utils.lua and then main.lua.
This means that if you have code that executes on load, it will be executed.
Best practice is to have 1 file that executes and the rest be modules.
Eg. main.lua:

local utils = require("utils")   

utils.printHelloWorld()

And utils.lua:

local utils = {}
utils.printHelloWorld = function()
    env.info("Hello World!")
end
return utils

Possible Future Features

  • DCS Snippets A collection of useful code snippets for DCS scripting in VSCode.

Requirements

sumenko.lua : The VSCode Lua Language Server

Release Notes

0.1.0

Complete overhaul of the transpiler for stability and support purpose.

0.0.3

  • Fixed: Settings filter not correct when opening settings with the extension command.

0.0.2

  • Improved error handling and reporting in the script compiler.
  • Added Output channel for compilation logs and errors.
  • Improved Settings for better user experience.

0.0.1

Initial. Still very much in Test/Development. Use at your own risk.