Skip to content

Feature Overview

Joël Deffner edited this page Aug 11, 2026 · 2 revisions

Feature Overview

A tour of what the Paradox Modding Toolkit does. Every screenshot is the extension running on a real mod (Cultivation: The Path to Immortality). Each section links to the wiki page with the full details.

Three games are supported: Crusader Kings III, Victoria 3 and Europa Universalis V. The feature matrix and what each one gets is on Supported Games.

The Project dashboard

The Paradox icon in the activity bar opens the Project view: the detected game, every workspace mod with its own focus and indexing switches, live toggles for the things you turn on and off all day, and the tool launchers grouped by what they do.

The Project view: active game, workspace mods with focus and index switches, toggles, and the grouped tools

Underneath it sit the mod views: content inventory, Problems by Type, Localization Coverage, Overrides & Conflicts and Dependencies. With several mods open, they show one mod at a time, either following the file you are editing or pinned to the mod you picked. See Sidebar Views.

Smart editing

Scope-aware completion. Key positions offer verbs (triggers, effects, scope targets, your own scripted effects), value positions offer nouns (traits, events, on_actions, loc keys), and prefixes like scope:, culture: and title: complete their referents. Items valid in the current scope rank first by real vanilla frequency; the rest are annotated, never hidden.

Hover docs, merged. Documentation from your own script_docs dumps and, on CK3, the bundled wiki lists, plus the supported scopes, the live scope chain at the cursor, resolved localization text, your own # comments above a definition, a clickable definition link and reference count, and inline .dds texture previews.

Navigation. Go to definition, find all references, rename across script and localization at once, workspace symbols, signature help for $PARAM$s. It all spans your mod, its parent mods and vanilla.

Outlines that go all the way down

Every multi-line block is an outline entry at any depth, so breadcrumbs and sticky scroll show the real path instead of stopping two levels in.

Breadcrumbs and sticky scroll following the full block chain inside a character interaction

The same holds in .gui files (the nested widget tree, with declarations labeled) and localization files. Folding works in all of them, and descriptor.mod and the bundled _*.info docs fold and outline too. See Editor Features.

Validation

Structural diagnostics, instantly. The toolkit catches the silent-failure class as you type: unbalanced braces, missing UTF-8 BOM, localization header and filename mismatches, folder-name traps, unknown event references, missing required loc. These are certain errors with no false positives, so they run live. Every code and its in-game consequence is in Configuration.

tiger, integrated. Semantic validation is delegated to tiger, as ck3-tiger or vic3-tiger depending on the game. Run it from the status bar, Ctrl+Alt+V, or on every save. Reports land in the native Problems panel with the tiger error key, so # px:ignore suppression works on them too. The toolkit downloads and updates the binary, generates a conf, snapshots a baseline so a legacy mod only surfaces new problems, and runs tiger's unused-definition scan. Your dependency mods are passed to tiger as load_mod entries, so a submod's references into its parents resolve instead of coming back unknown.

The running game, in your editor. Launch in debug mode and the error.log watcher turns the game's own script errors into squiggles on your files as they happen, multi-line Script system error! blocks included.

Walk an event before you play it

Simulate Event lays an event out in firing order (trigger, immediate, every option, after), with the title, description and option names resolved through your localization and each block printed back as readable script.

Simulate Event walking an event beside its source

Every onward trigger_event is a step-into link, so you can walk a whole chain with a breadcrumb and a Back button without opening ten files. Nothing is invented: an unresolvable reference is labeled as one.

See the chains

Show Event Graph draws your events, on_actions and decisions as an interactive graph. Select a node and everything outside its neighborhood dims: blue is what it fires, orange is what fires it.

Selecting a node in the event graph: blue is what it fires, orange is what fires it

The inspector edits an event's localized title, description and options in place (written back BOM-correct), scaffolds new options, and jumps to every scope, variable and scripted effect the event references. The query box completes on your mod's real event ids, and the graph exports as SVG.

Vanilla knowledge built in

Format docs (.info) side by side

When a matching .info format doc exists in the game directory for the file you are editing, a title-bar button opens it side by side: Paradox's own schema documentation, syntax highlighted, right next to your file. (CK3 only, the other two games ship no .info docs.)

Editing opinion modifiers with the vanilla _opinions.info format doc open beside it

Vanilla examples one click away

Inside an .info doc, another title-bar button lists the vanilla files in the same folder, so you can jump from the schema straight into real working examples.

The Vanilla examples picker listing every vanilla file in the same folder

GUI tooling

Widget tree

Show GUI Widget Tree renders any .gui file as a collapsible hierarchy: windows, containers, widgets, templates and animation states, with type badges, filtering, click-to-jump (which also flashes the line in the source) and auto-refresh on save. Focus subtree pins one branch so you can work inside it without re-narrowing.

Focus subtree pins one branch of the widget tree

A visual GUI editor

Open GUI Editor (Ctrl+Alt+P) draws your window with the measured layout engine and lets you work in it: click to select the widget you meant, read every property with the template or type it came from, drag and resize on the canvas, multi-select, use layers, guides and a component palette.

Three things it does that a preview cannot: it writes your file with one surgical edit per gesture (comments, tabs and single-line bodies survive, and it is one Ctrl+Z), it writes the value rather than the cursor so anchored widgets land where you dropped them, and it turns a gesture down before it moves when the engine would ignore what you asked for. CK3 only. See GUI Editor.

DDS textures and images

Hover any .dds path and the texture is decoded and shown inline, mod-first, so you see the file the game will actually load. Click a .dds file and it opens in a zoomable viewer with format, dimensions and an alpha checkerboard. DXT1/3/5, BC7 and uncompressed are supported, by a pure-TypeScript decoder with no external codecs.

Right-click a PNG, JPEG or WebP to convert it to DDS, and run Show Image Guidelines for the sizes and formats vanilla actually uses, measured from the game files. See DDS and Images.

Localization

Loc text shows inline as inlay hints, a quick fix edits a key's text in place (BOM-correct, routing vanilla overrides to localization/replace/), and the coverage view tracks missing, orphaned and untranslated keys per language with a one-click add.

Translation tooling goes as far as generating a complete standalone translation mod for someone else's mod: descriptor with the dependency, every loc file mirrored and blanked with the original text kept as comments, a playset so it resolves when opened alone, and a TRANSLATE.md with a ready-made AI translation prompt. See Multi Mod and Translation.

And more

  • Content scaffolding: New Content generates events, decisions, interactions and on_action hooks that are correct by construction (right folder, BOM, namespace declared, on_actions written as appends).
  • Multi-mod workspaces: every mod in the workspace is indexed together, with read-only parent mods for submods and compatibility patches, and no primary mod to configure.
  • Setup and health check: detects the game, the install, the mod folder and the dump folder, and tells you what is missing.
  • Not tied to VS Code: the language server is standard LSP over --stdio and runs from neovim, Zed, Helix or your own application. See Outside VS Code.
  • AI agent skill: a bundled SKILL.md that teaches Claude (or any agent that reads skills) CK3 modding end to end. See Claude Skill.

For the full guided tour of the editor features, continue with Editor Features.

Clone this wiki locally