cwtools / cwtools-vscode

A VS Code extension providing language server support for paradox script files using cwtools
Other
91 stars 12 forks source link

EU4 1.30 update #36

Closed HerrX2000 closed 4 years ago

HerrX2000 commented 4 years ago

Greetings tboby, thanks first of all for the tool!

I'd very much like to contribute to help getting the EU4 part update for 1.30. Concerning VSCode extension coding, I know JS from working with RN and basic shell scripting but don't know where to get started.

Do you have something I can help you with?

tboby commented 4 years ago

Hi @HerrX2000, thanks for offering to help :)

There are two things that come to mind:

1. Updating the rules for 1.30:

This doesn't require much programming ability, just knowledge of EU4 scripting and a willingness to learn the cwtools rules format. We should be able to publish a starting point for this shortly, so you won't have to start from 1.29, but it's quite out of date and will be missing a fair amount. The workflow is basically:

  1. clone https://github.com/cwtools/cwtools-eu4-config somewhere
  2. In the extension, set the setting cwtools.rules_folder to that folder, and cwtools.rules_version to manual.
  3. Open 1.30 vanilla in one window, open the rules folder in another window
  4. Look for the largest sources of errors in the vanilla window
  5. Correct the rules in the other window
  6. Ctrl-shift-p "Reload config rules"
  7. Confirm errors are reduced, return to step 4

Once done, create a PR against https://github.com/cwtools/cwtools-eu4-config

The config rules are mostly documented here: https://github.com/tboby/cwtools/wiki/.cwt-config-file-guidance

But I'd be happy to help you get familiar with them (or add new features if required).

2. Improving the extension onboarding experience

As you're familiar with JS and webdev, if you're willing to learn typescript and VSCode's api there is some really useful work that could be done around helping users get started with cwtools (or helping them when things break).

As there is no clear way to detect mod files (they're just .txt), nor which game we're modding (all games just use .txt), getting started with cwtools can be confusing and fiddly. While the steps in the readme will always work, it's obviously not clear to users which parts are important, or they don't always read them :)

It would be great to use the recently added "Welcome view" https://github.com/microsoft/vscode/issues/89080 to guide people through getting started for example.

If you'd like to chat, you can find me in a number of the Paradox related modding discord server with the name "Dayshine", e.g. the EU4 Mod Coop