Skip to content

20220920a

Latest
Compare
Choose a tag to compare
@GregUtas GregUtas released this 20 Sep 14:56
· 4 commits to master since this release
  • Make the configuration file an optional command line parameter (c=<path>).
  • Change the Module constructor so that an optional module can define a symbol that allows it to be enabled.
  • Define an OptionalModules configuration parameter (a string) that specifies the optional modules to enable.
  • Enable optional modules at the bottom of NbModule::Startup.
  • Change CreateModules in main.cpp and rscapp.cpp to use the optional modules capability.

Warning

A module that is not required by another one must define a symbol when it invokes the base Module constructor, and that symbol must appear in the OptionalModules parameter in the configuration file. Each module must also override the Enable function to enable the modules that it requires, plus itself (Module::Enable). Instantiating a module is no longer sufficient to make its capabilities available; it must also be enabled for its Startup function to be invoked during initialization and restarts. See the comments in Module.h.

  • Convert each fn_name function in a template header to an inline fn_name (a C++17 capability).
  • Enhance the static analysis tool to support inline data.
  • Change how Diplomacy bot events and reconnect attempts are implemented.
  • Rename RscLauncher to Launcher.