I didn't want to post anything until I did more testing, but now that I've played around with it for a few hours, I'm fairly certain that the raider base information isn't getting saved/loaded properly. From what I can tell, raider bases only spawn properly in a new campaign during your initial gaming session. (For reference purposes, I'm considering a "gaming session" to be running/exiting the Starsector executable itself - not simply exiting a campaign back to the main menu and then loading a saved campaign.)
Rather than go into a rambling summary of all the different things I tried that led me to this conclusion, let me just give a quick series of steps that should reproduce the issue:
Spoiler
- Start a new campaign with Kadur Remnant, Vayra's Sector, Nexerelin, and whatever other mods you desire enabled.
- Save the game once you've started flying around after sector generation. (Do NOT save again after this point...)
- Use Nex's faction directory feature (defaults to 'z' key - not sure if you can change it) to see which markets Kadur owns.
- Speed up time with the 'shift' key until a month or two passes.
- Check the faction directory again - it should indicate that Kadur now has 1 Hidden market (i.e. the raider base).
- Exit the campaign and shut down Starsector completely WITHOUT saving.
- Restart the game and load/continue the save.
- From this point forward, month after month will pass without ever spawning a Kadur raider base.
There are probably much more efficient ways of reproducing this problem, but I wasn't sure if using something like the vayraDebug flag in the settings file would mess with the results.
Normally, this is the point where I'd try to suggest a fix (or at least some spot in the code to look at), but I'm really not sure how Starsector decides what to save/load. I can suggest a really silly workaround for players that seems to temporarily fix the problem though. Due to the VayraRaiderBaseManager class storing the raider data as a static member, you could start a brand new campaign, immediately exit (and delete) that new campaign after sector generation, and then load your previously saved campaign. This little trick should keep the raider data in memory (and allow them to spawn bases as expected) for the rest of the gaming session...