Major changes to Thrive repository structure and scripts

I don’t usually announce this heavily that I tweaked the way the Thrive repo scripts or other tools like that are changed, but this time I think I should as there’s a change that impacts basically anyone having the Thrive code locally. That change is now that we are (or actually will be in a few days once I merge my PR) using a git submodule. That submodule is RevolutionaryGamesCommon which is a shared place where I’ll be putting code needed by various projects like the launcher, DevCenter, and Thrive. This means that when cloning and checking out code, you need to initialize and update the submodules whenever they change, otherwise you’ll get strange build errors.

So here’s a reminder to everyone who has the Thrive code cloned locally that you need to run git submodule update --init in a couple of days.

The other big change is that the ruby script used for building and format checking have been converted to C#. I hope this change makes the scripts more maintainable for me and would encourage other people to also help (more) to work on them. The new syntax to running the scripts is dotnet run --project Scripts -- help (the part after -- is where you put our script parameters).

One change of the checking tools that impacts non-programmers is that the JSON format is now different, and finally it requires a trailing newline instead of requiring it to be omitted.

Here’s my PR:


That PR is now merged.