[TOOL] CWTools - a mod validating extension for VS Code

  • Crusader Kings II Expansion Subscription

    Subscribe to the CK II Expansion and enjoy unlimited access to 13 major expansions and more!


  • Paradox Space Exploration Sale has arrived! Up to 75% off

    How's the space on your hard drive? Paradox wants to challenge your galaxy brain with a great selection of space exploration games - and they're all on sale for some very down-to-earth prices! The sale runs from May 4th until May 10th at 17:00 CEST / 08:00 PDT.


    May 4th - May 10th
  • Crusader Kings III Available Now!

    The realm rejoices as Paradox Interactive announces the launch of Crusader Kings III, the latest entry in the publisher’s grand strategy role-playing game franchise. Advisors may now jockey for positions of influence and adversaries should save their schemes for another day, because on this day Crusader Kings III can be purchased on Steam, the Paradox Store, and other major online retailers.


    Real Strategy Requires Cunning

Dayshine

Second Lieutenant
42 Badges
Aug 25, 2016
110
29
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Third Rome
  • BATTLETECH
  • Stellaris: Humanoids Species Pack
  • Cities: Skylines - Parklife Pre-Order
  • Cities: Skylines - Parklife
  • Imperator: Rome Deluxe Edition
  • Imperator: Rome Sign Up
  • Crusader Kings III
  • Europa Universalis IV: El Dorado
  • Cities: Skylines
  • Crusader Kings II: Way of Life
  • Crusader Kings II
  • Crusader Kings II: Charlemagne
  • Imperator: Rome
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Stellaris: Synthetic Dawn
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Sword of Islam
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • Magicka
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Res Publica
  • Sword of the Stars II
CWTools is a library that provides common language services for paradox scripting files. This can be used to provide live validation of mod files as you are writing them. This is currently done through an extension for the text editor VS Code.

Current features are for Stellaris and EU4:
  • Immediate highlighting of syntax errors
  • Autocomplete everywhere, providing appropriate dynamically generated options and descriptions when available
  • Community supported rule based validation.
  • A wide range of validators for common, interface, and events, checking
    • That required localisation keys are defined
    • Existence of effects/triggers/modifiers
    • Scope context for used effects/triggers/modifiers
    • Usage of scripted effects/triggers
    • Correct entries for weights/AI_chance/etc
    • That event\_targets are saved before they're used
    • Check all "@" variables are defined before they're used
    • That referenced sprites and graphics files exist
    • and a number of other specific validators
  • "Code actions" to generate .yml for missing localisation
  • Tooltips providing localisation info, effect documentation as well as scope information
  • A range of settings that allow you to customize what errors you see to fit your use

These all happen near-instantly as you're writing, just take a look at the examples below.

8UZDaFL.gif

8UZDaFL.gifv


Validate syntax

VWRXtT7.gif


Check for correct scopes

EPb4XSL.gif


Find missing localisation

pzZ8Z22.gif


Tooltips for effects

qeyMSyo.gif


See all your errors in a nice convenient summary

IaqoFgF.png
Tips:
  • You can type "error", "warning" or "info" into the search box in the problems panel to filter.
  • If you don't like a specific diagnostic, you can use the setting "cwtools.errors.ignore" to hide it
  • By default only English localisation is checked. Use "cwtools.localisation.languages" to check others.
Validation errors/Feedback
The validation rules that make CW Tools work aren't perfect, but are open to contribution from the community. If you think you've found an incorrect error (something that works in vanilla but errors in CW Tools) or have other feedback/suggestions, you can:
1. Post them here, but please provide a complete example
2. PM @Dayshine
3. Have a try at fixing it yourself (Get in touch with me for details, it's really easy)

Contributors:
The initial set of rules that made this all possible were a collaboration of modders from the Stellaris modding den, and we'll try to acknowledge everyone who contributes here.
- ExNihil
- Dayshine
- Caligula Caeser
- had
- Iyur
- ViolentBeetle

Installation:
  1. Install VS Code from https://code.visualstudio.com/docs/setup/setup-overview
  2. Go to the extensions tab and search for "cwtools" (or go to https://marketplace.visualstudio.com/items?itemName=tboby.cwtools-vscode and press "install".
  3. Wait for it to install and "Reload".
  4. Open your mod folder directly, or open your Stellaris folder in "Documents/Paradox Interactive".
  5. Start editing to get syntax validation immediately
  6. Wait up to a minute for the full analysis to kick in.
  7. Take a look at configuration below for available settings.
  8. Optionally, install the syntax highlighting extension https://marketplace.visualstudio.com/items?itemName=tboby.paradox-syntax

Configuration:
The tool currently has the follow settings you can change:
Code:
// Error codes to ignore, list of IDs (e.g. "CW100" for syntax errors)
"cwtools.errors.ignore": [ "CW100" ],

// Whether or not to show errors for vanilla files
  "cwtools.errors.vanilla": "false",

// Whether or not to enable experimental features
"cwtools.experimental": "false",

  // The list of languages to validate localisation for.
  "cwtools.localisation.languages": [
      "English", "German"
  ],

  // Traces the communication between VSCode and the language server.
  "cwtools.trace.server": "off",
 
  //Files to ignore error from, list of file names
  "cwtools.errors.ignorefiles": "README.txt,credits.txt,credits_l_simp_chinese.txt,reference.txt,startup_info.txt"

To change these:
1. File, Preferences, Settings (or Ctrl-comma)
2. Search for "cwtools"
3. Press the pencil icon on the left to modify a setting, and edit them on the right
4. The changes should immediately take effect

Updates:
To update the extension go to the extensions tab, hit the three dots, and press "Check for updates". Then press the update button that appears next to the extension. Alternatively just turn on auto-updating extensions.

If you have suggestions for extra validation errors, warnings, or hints, please post them here.
Planned (Current)
*
Variables: Check variables are used in consistent scopes (if you set on a planet, you can only check on a planet)
* IDE: Contextual autocompletion, only show relevant keywords not all of them!
* Dead code detection (e.g. find events that are never called)
* Localisation: Scripted locs
* Localisation: Check correct scope for localisation keys

Future
* Events: (title, desc, picture, location, show_sound, diplomatic, picture_event_data) + hide_window doesn't make sense
* Events: is_triggered_only = yes and never called
* Performance: never use any_planet or every_system_planet if you are not in system scope
* Localisation: Support custom localisations (e.g. mandarin)
* Localisation: Check validation file names
* Localisation: Reduced false-positives for static modifiers
* Events: This trigger should be a pretrigger
* Variables: Unused by defined variables
* Syntax: Find multiple syntax errors in the same file
* Common: Building tags/component tags need whitespace above/below
* Localisation: Building tags/component tags
* Defines: Check defines overriden by mods exist in vanilla

Blue skies
*

Completed
*
Common: Check all effects/triggers/scopes in all files, not just events.
* Effects/Triggers: Intelligently calculate scope for *recursive* effects/triggers
* Events: event_target is not defined but is used in effect/trigger
* IDE: Autocompletion
* Localisation: traditions, buildings, aura components, component templates
* Localisation: Static modifiers
* Localisation: Check names inside event effects (create_ship `name`)
* Localisation: Check "default" language, i.e. localisation_synced
* Localisation: $keys$
* Localisation: Special command validator (the keywords in localisation strings)
* Modifiers: Check existence of modifiers in common files (buildings, etc).
* Modifiers: Check correct scope usage of modifiers in common files (buildings, etc).
* Modifiers: Derive modifiers from ship sizes
* Variables: Check that variables have been defined somewhere
* Deal with file overwriting with multiple mods

Roadmap
This doesn't include the addition of extra individual validators, but the overall key features.
0.8 (In progress)
* Full support for CK2/HOI4
0.7 (DONE)
* Full support for EU4
0.6 (DONE)
* Basic syntax validation for EU4, HOI4.
0.5 (DONE)
* Tailored trigger/effect checking (e.g. check "who" in effects)
* Performance improvements, reduce startup time
0.4 (DONE)
* Basic effect/trigger/modifier support for all files
* Selective disabling of warnings
* Dependent revalidation (e.g. if you change the localisation file, recheck all files)
0.3 (DONE)
* Full localisation validation (of all required implicit and explicit keys)

Acknowledgements
Thanks to Jamie550 for getting me started.
Also thanks to Caligula, blackninja9939, the ExO team, the Paradoxial Development Group and many others for their patience with my neverending questions.
 
Last edited:
  • 1Like
Reactions:

Caligula Caesar

Stellaris Technical Scripter
64 Badges
Nov 1, 2014
703
873
  • Europa Universalis III Complete
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Third Rome
  • Heir to the Throne
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Art of War
  • Divine Wind
  • Europa Universalis III
  • Europa Universalis IV: Pre-order
  • Hearts of Iron IV: Cadet
  • Stellaris: Lithoids
  • Crusader Kings II: Monks and Mystics
  • Hearts of Iron IV: Together for Victory
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Europa Universalis IV: Rights of Man
  • Europa Universalis IV: Mandate of Heaven
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Common Sense
  • Hearts of Iron IV: Death or Dishonor
  • Europa Universalis IV: Dharma
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Distant Stars
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Cities: Skylines - Parklife Pre-Order
  • Cities: Skylines - Parklife
  • Crusader Kings III
  • Stellaris: Federations
  • Age of Wonders: Planetfall
  • Imperator: Rome Deluxe Edition
  • Crusader Kings II: Holy Fury
  • Crusader Kings III: Royal Edition
  • Europa Universalis IV
  • Europa Universalis III Complete
  • Europa Universalis III Complete
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Golden Century
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Stellaris
  • Crusader Kings II: The Republic
  • Crusader Kings II: Rajas of India
Thank you for the great tool, I've caught a lot of bugs that would have been missed without it!
 

dskod1

Field Marshal
Demi Moderator
135 Badges
Apr 14, 2009
3.279
1.083
  • Crusader Kings II: Way of Life
  • VtM - Bloodlines 2 Blood Moon Edition
  • Warlock: Master of the Arcane
  • 500k Club
  • Prison Architect
  • Europa Universalis IV: Mandate of Heaven
  • Stellaris: Humanoids Species Pack
  • Europa Universalis IV: El Dorado
  • Europa Universalis IV: Pre-order
  • Hearts of Iron: The Card Game
  • Pride of Nations
  • Mount & Blade: Warband
  • Mount & Blade: With Fire and Sword
  • Imperator: Rome Sign Up
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Hearts of Iron IV: Expansion Pass
  • Tyranny - Bastards Wound
  • Crusader Kings II: Conclave
  • Cities: Skylines - Mass Transit
  • Stellaris: Digital Anniversary Edition
  • BATTLETECH - Digital Deluxe Edition
  • Stellaris: Galaxy Edition
  • Europa Universalis IV: Rule Britannia
  • Stellaris: Apocalypse
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Dharma
  • Cities: Skylines - Parklife
  • BATTLETECH
  • Steel Division: Normandy 44
  • Crusader Kings II: Holy Fury
  • Shadowrun Returns
  • Crusader Kings II: Monks and Mystics
  • Steel Division: Normand 44 Sign-up
  • Hearts of Iron IV: Together for Victory
  • Cities: Skylines - Parklife Pre-Order
  • Europa Universalis IV
  • Imperator: Rome Deluxe Edition
  • Europa Universalis IV: Golden Century
  • Crusader Kings II
  • Cities: Skylines - Natural Disasters
  • Hearts of Iron IV: Death or Dishonor
  • Cities: Skylines - Green Cities
  • Europa Universalis III Complete
  • Stellaris: Necroids
  • Surviving Mars
  • Stellaris: Leviathans Story Pack
  • Europa Universalis III Complete
  • Surviving Mars: First Colony Edition
  • Stellaris: Distant Stars
This is indeed really helpful and cool, pinned ;)
 

Tarne

ST:New Horizons Team
94 Badges
Mar 26, 2012
205
33
  • Sword of the Stars
  • Lead and Gold
  • Leviathan: Warships
  • The Kings Crusade
  • Arsenal of Democracy
  • Naval War: Arctic Circle
  • Europa Universalis IV: Res Publica
  • Victoria: Revolutions
  • Rome Gold
  • Semper Fi
  • Ship Simulator Extremes
  • Majesty 2
  • Knights of Honor
  • Supreme Ruler: Cold War
  • Victoria 2
  • Warlock: Master of the Arcane
  • Cities: Skylines Deluxe Edition
  • Europa Universalis IV: Pre-order
  • Stellaris
  • Cities: Skylines - After Dark
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV: Mare Nostrum
  • Crusader Kings II: Sons of Abraham
  • Cities in Motion
  • Crusader Kings II
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Knights of Pen and Paper +1 Edition
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sword of Islam
  • Europa Universalis III
  • Heir to the Throne
  • Hearts of Iron III
  • For The Glory
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Art of War
  • Stellaris: Apocalypse
  • Dungeonland
  • Cities: Skylines
  • War of the Roses
  • Europa Universalis IV: El Dorado
  • Europa Universalis 4: Emperor
  • Rome: Vae Victis
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
This is utterly amazing. I have spent the entire night finding loc that was missing and making sure it's fixed!
 

Caligula Caesar

Stellaris Technical Scripter
64 Badges
Nov 1, 2014
703
873
  • Europa Universalis III Complete
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Third Rome
  • Heir to the Throne
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Art of War
  • Divine Wind
  • Europa Universalis III
  • Europa Universalis IV: Pre-order
  • Hearts of Iron IV: Cadet
  • Stellaris: Lithoids
  • Crusader Kings II: Monks and Mystics
  • Hearts of Iron IV: Together for Victory
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Europa Universalis IV: Rights of Man
  • Europa Universalis IV: Mandate of Heaven
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Common Sense
  • Hearts of Iron IV: Death or Dishonor
  • Europa Universalis IV: Dharma
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Distant Stars
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Cities: Skylines - Parklife Pre-Order
  • Cities: Skylines - Parklife
  • Crusader Kings III
  • Stellaris: Federations
  • Age of Wonders: Planetfall
  • Imperator: Rome Deluxe Edition
  • Crusader Kings II: Holy Fury
  • Crusader Kings III: Royal Edition
  • Europa Universalis IV
  • Europa Universalis III Complete
  • Europa Universalis III Complete
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Golden Century
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Stellaris
  • Crusader Kings II: The Republic
  • Crusader Kings II: Rajas of India
@Tarne you may have missed this as I don't think it's in the description, but you can also get the tool to check the other languages. You have to go on preferences/settings and then look for CW tools, you will find a setting for languages, you then can overwrite it with your own version where you add some languages. I found a quite a lot of localisations that were only missing in one language or other in both my mods and MEM, so it's worth checking that! (I'm assuming STNH has translations)
 

Bisougai

First Lieutenant
42 Badges
May 14, 2016
236
31
  • Europa Universalis IV: Rights of Man
  • Stellaris: Galaxy Edition
  • Stellaris: Distant Stars Pre-Order
  • Stellaris: Humanoids Species Pack
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Steel Division: Normandy 44
  • Europa Universalis IV: Mandate of Heaven
  • Steel Division: Normandy 44 Deluxe Edition
  • Steel Division: Normand 44 Sign-up
  • Age of Wonders III
  • Crusader Kings III
  • Stellaris: Apocalypse
  • Stellaris: Distant Stars
  • Stellaris: Megacorp
  • Imperator: Rome Deluxe Edition
  • Imperator: Rome Sign Up
  • Stellaris: Ancient Relics
  • Stellaris: Lithoids
  • Hearts of Iron IV: Cadet
  • Stellaris: Galaxy Edition
  • Stellaris
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV: Common Sense
  • Magicka: Wizard Wars Founder Wizard
  • Europa Universalis IV: El Dorado
  • Teleglitch: Die More Edition
  • Imperator: Rome
  • Stellaris: Synthetic Dawn
  • Crusader Kings II
  • Stellaris: Galaxy Edition
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Res Publica
  • Stellaris - Path to Destruction bundle
  • Lead and Gold
  • The Showdown Effect
  • Crusader Kings II: Sons of Abraham
Very good tool !

It's installed and i started to use it ! 20% cooler than using notepad++ (which is already great).

EDIT:
By the way @Dayshine you say in planned :
"Performance: never use any_planet or every_planet if you are not in system scope"

It's not supposed to be "every_system_planet" ? (every_planet is scopeless)
 
Last edited:

Dayshine

Second Lieutenant
42 Badges
Aug 25, 2016
110
29
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Third Rome
  • BATTLETECH
  • Stellaris: Humanoids Species Pack
  • Cities: Skylines - Parklife Pre-Order
  • Cities: Skylines - Parklife
  • Imperator: Rome Deluxe Edition
  • Imperator: Rome Sign Up
  • Crusader Kings III
  • Europa Universalis IV: El Dorado
  • Cities: Skylines
  • Crusader Kings II: Way of Life
  • Crusader Kings II
  • Crusader Kings II: Charlemagne
  • Imperator: Rome
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Stellaris: Synthetic Dawn
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Sword of Islam
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • Magicka
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Res Publica
  • Sword of the Stars II
By the way @Dayshine you say in planned :
"Performance: never use any_planet or every_planet if you are not in system scope"

It's not supposed to be "every_system_planet" ? (every_planet is scopeless)

Oops, forgot to reply, I've corrected this now, thanks for the spot!
 

Darrien

First Lieutenant
26 Badges
Jun 13, 2016
209
32
  • Magicka
  • Stellaris: Necroids
  • Stellaris: Federations
  • Stellaris: Lithoids
  • Stellaris: Ancient Relics
  • Stellaris: Distant Stars
  • Stellaris: Apocalypse
  • Stellaris: Humanoids Species Pack
  • Hearts of Iron IV: Expansion Pass
  • Age of Wonders III
  • Tyranny - Bastards Wound
  • Tyranny - Tales from the Tiers
  • Hearts of Iron IV: Death or Dishonor
  • Hearts of Iron IV: Together for Victory
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Tyranny: Gold Edition
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Hearts of Iron IV: Cadet
  • Stellaris
  • Stellaris: Synthetic Dawn
  • Stellaris - Path to Destruction bundle
  • Stellaris: Megacorp
  • Hearts of Iron IV: Expansion Pass
  • Crusader Kings II
I installed this in vcode and its been able to scan my mod folder once and then just flat out stops even while clicking in a file and making changes nothing happens, no loading files in the bottom left, tried reinstalling the extension a couple times to no avail.
 

Dayshine

Second Lieutenant
42 Badges
Aug 25, 2016
110
29
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Third Rome
  • BATTLETECH
  • Stellaris: Humanoids Species Pack
  • Cities: Skylines - Parklife Pre-Order
  • Cities: Skylines - Parklife
  • Imperator: Rome Deluxe Edition
  • Imperator: Rome Sign Up
  • Crusader Kings III
  • Europa Universalis IV: El Dorado
  • Cities: Skylines
  • Crusader Kings II: Way of Life
  • Crusader Kings II
  • Crusader Kings II: Charlemagne
  • Imperator: Rome
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Stellaris: Synthetic Dawn
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Sword of Islam
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • Magicka
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Res Publica
  • Sword of the Stars II
I installed this in vcode and its been able to scan my mod folder once and then just flat out stops even while clicking in a file and making changes nothing happens, no loading files in the bottom left, tried reinstalling the extension a couple times to no avail.

Huh, that's odd. I'd appreciate if you could help me work out why, it's generally quite robust and should just work.

1. What OS?
2. What version of the extension?
3. What's the full path to the folder you opened (feel free to censor username etc)?
4. Does it say "paradox" in the bottom right when you have a file open?
5. If you open the Output (Ctrl-Shift-U) and change the dropdown on the right to "Paradox Language Server", is there anything obviously wrong there? Could you possible upload that log for me?
 

Darrien

First Lieutenant
26 Badges
Jun 13, 2016
209
32
  • Magicka
  • Stellaris: Necroids
  • Stellaris: Federations
  • Stellaris: Lithoids
  • Stellaris: Ancient Relics
  • Stellaris: Distant Stars
  • Stellaris: Apocalypse
  • Stellaris: Humanoids Species Pack
  • Hearts of Iron IV: Expansion Pass
  • Age of Wonders III
  • Tyranny - Bastards Wound
  • Tyranny - Tales from the Tiers
  • Hearts of Iron IV: Death or Dishonor
  • Hearts of Iron IV: Together for Victory
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Tyranny: Gold Edition
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Hearts of Iron IV: Cadet
  • Stellaris
  • Stellaris: Synthetic Dawn
  • Stellaris - Path to Destruction bundle
  • Stellaris: Megacorp
  • Hearts of Iron IV: Expansion Pass
  • Crusader Kings II
Huh, that's odd. I'd appreciate if you could help me work out why, it's generally quite robust and should just work.

1. What OS? Windows 10 64bit
2. What version of the extension? 0.3.3 - I I tried checking for updates for it but found none.
3. What's the full path to the folder you opened (feel free to censor username etc)? :\Users\*****\Documents\Paradox Interactive\Stellaris\mod\Echo2
4. Does it say "paradox" in the bottom right when you have a file open? Yes
5. If you open the Output (Ctrl-Shift-U) and change the dropdown on the right to "Paradox Language Server", is there anything obviously wrong there? Could you possible upload that log for me?
I assume you mean for the output dropdown box where it says Tasks initially there is no option for Paradox Language Server.

One thing that I just noticed on my Windows 7 laptop, with the same mod folder it was set to plain text, when changing it be Paradox like it is supposed to, it started scanning. I also checked the output dropdown since its missing from my win10 machine its visible on the laptop instead.
 

Dayshine

Second Lieutenant
42 Badges
Aug 25, 2016
110
29
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Third Rome
  • BATTLETECH
  • Stellaris: Humanoids Species Pack
  • Cities: Skylines - Parklife Pre-Order
  • Cities: Skylines - Parklife
  • Imperator: Rome Deluxe Edition
  • Imperator: Rome Sign Up
  • Crusader Kings III
  • Europa Universalis IV: El Dorado
  • Cities: Skylines
  • Crusader Kings II: Way of Life
  • Crusader Kings II
  • Crusader Kings II: Charlemagne
  • Imperator: Rome
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Stellaris: Synthetic Dawn
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Sword of Islam
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • Magicka
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Res Publica
  • Sword of the Stars II
I assume you mean for the output dropdown box where it says Tasks initially there is no option for Paradox Language Server.

One thing that I just noticed on my Windows 7 laptop, with the same mod folder it was set to plain text, when changing it be Paradox like it is supposed to, it started scanning. I also checked the output dropdown since its missing from my win10 machine its visible on the laptop instead.

Just to resolve this in case someone else runs into the issue.

We fixed this by uninstalling the extension, deleting the extension folder at C:\Users\<user>\.vscode\extensions and reinstalling the extension. It looks like something corrupted when it installed.
 

Dayshine

Second Lieutenant
42 Badges
Aug 25, 2016
110
29
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Third Rome
  • BATTLETECH
  • Stellaris: Humanoids Species Pack
  • Cities: Skylines - Parklife Pre-Order
  • Cities: Skylines - Parklife
  • Imperator: Rome Deluxe Edition
  • Imperator: Rome Sign Up
  • Crusader Kings III
  • Europa Universalis IV: El Dorado
  • Cities: Skylines
  • Crusader Kings II: Way of Life
  • Crusader Kings II
  • Crusader Kings II: Charlemagne
  • Imperator: Rome
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Stellaris: Synthetic Dawn
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Sword of Islam
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • Magicka
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Res Publica
  • Sword of the Stars II
Any chances you intend to add some color coding of keywords, etc. to the editor? Or do you know the textmate theme color rules for the files for us to do it ourselves?
There are two extensions I know of on vscode for paradox syntax highlighting, they can both be found by just searching "Paradox" :)

I might update one of them to cover more stellaris specific keywords and such at some point, but the available ones are enough for now I think.
 

Draotth

Recruit
44 Badges
Mar 4, 2018
3
0
  • Surviving Mars: Digital Deluxe Edition
  • Cities: Skylines - Snowfall
  • Stellaris: Leviathans Story Pack
  • Cities: Skylines - Natural Disasters
  • Stellaris - Path to Destruction bundle
  • Cities: Skylines - Mass Transit
  • Surviving Mars
  • Cities: Skylines - Green Cities
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Surviving Mars: First Colony Edition
  • Stellaris: Megacorp
  • Prison Architect
  • Surviving Mars: First Colony Edition
  • Stellaris: Lithoids
  • Stellaris: Federations
  • Stellaris: Necroids
  • Pillars of Eternity
  • Cities: Skylines
  • War of the Roses
  • Victoria 2
  • Teleglitch: Die More Edition
  • Cities: Skylines - After Dark
  • Ship Simulator Extremes
  • Crusader Kings II
  • Crusader Kings II: Sons of Abraham
  • Europa Universalis IV
  • Stellaris: Ancient Relics
  • Europa Universalis IV: Conquest of Paradise
  • Hearts of Iron III
  • Impire
  • Knights of Pen and Paper +1 Edition
  • Magicka
  • Majesty 2 Collection
  • Sengoku
  • Age of Wonders III
  • Stellaris: Synthetic Dawn
  • Cities: Skylines Deluxe Edition
  • Magicka 2
  • Cities in Motion 2
  • Stellaris
Would it be possible to support alternate directories? I keep my mods in version-tracked repositories elsewhere and copy them in as I update them.
 

Dayshine

Second Lieutenant
42 Badges
Aug 25, 2016
110
29
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Third Rome
  • BATTLETECH
  • Stellaris: Humanoids Species Pack
  • Cities: Skylines - Parklife Pre-Order
  • Cities: Skylines - Parklife
  • Imperator: Rome Deluxe Edition
  • Imperator: Rome Sign Up
  • Crusader Kings III
  • Europa Universalis IV: El Dorado
  • Cities: Skylines
  • Crusader Kings II: Way of Life
  • Crusader Kings II
  • Crusader Kings II: Charlemagne
  • Imperator: Rome
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Stellaris: Synthetic Dawn
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Sword of Islam
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • Magicka
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Res Publica
  • Sword of the Stars II
Would it be possible to support alternate directories? I keep my mods in version-tracked repositories elsewhere and copy them in as I update them.

The extension automatically activates when you open a file that meets this pattern "**/stellaris/**/*.txt", e.g. any folder below a folder called "stellaris".

If you want to manually activate it, open your mod folder, open a .txt file, then use the language selector in the bottom right to change it to "paradox". That should do what you want :)