Skip to content

Conversation

@th3w1zard1
Copy link

@th3w1zard1 th3w1zard1 commented Feb 6, 2024

I have setup a branch of PyKotor specifically for this repo. By merging this PR you will merge the workflow files .github/workflows/test_compile_k1_scripts.yml and .github/workflows/test_compile_tsl_scripts.yml. These workflows will do the following:

  • Setup Python
  • Clone the special branch from PyKotor
  • Run the pytest that will test all four versions of nwnnsscomp (edit: tslpatcher is the only nwnnsscomp that doesn't require a kotor installation) as well as the PyKotor compiler with all the scripts on this repo.

This will provide detailed information about which scripts can compile and which ones do not. I am aware some of the NCS in the game are broken, if a list can be provided I could add that hardcoded list of script names to the list of scripts to skip. Currently only nwscript.nss is on the ignorable list.

Note:

  • These tests take quite a long time to run.
  • To my knowledge, Github Actions do not have bandwidth or resource restrictions. The overhead shouldn't affect your process at all.
  • Github actions have a default timeout of 6 hours, the tests will only take about half an hour each.
  • These tests require nwnnsscomp.exe to be setup in the folder structures I have provided, as well as nwscript.nss residing in the same folder.

If you use GitHub Desktop or other gui for github, most will notify you when workflows fail. If not, see the below image for how the logging will work:
image

@th3w1zard1 th3w1zard1 marked this pull request as ready for review February 6, 2024 06:37
@th3w1zard1
Copy link
Author

When clicking on Github's actions, the following will be visible for each workflow:
image

The artifacts is the summary/report information for that test.
image

fallback_level_info_nwnnsscomp.txt usually has the most relevant information. The html report is worth checking out:
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant