View Issue Details
ID | Project | Category | Date Submitted | Last Update | |
---|---|---|---|---|---|
0023358 | AI War 2 | Bug - Other | Jul 6, 2020 7:37 pm | Jul 7, 2020 3:27 pm | |
Reporter | BadgerBadger | Assigned To | Chris_McElligottPark | ||
Status | resolved | Resolution | fixed | ||
Product Version | 2.090 Returning From Beta | ||||
Fixed in Version | 2.093 Hotfixes and New Player Guidance | ||||
Summary | 0023358: Problems with quickstarts on base game | ||||
Description | Reported by Glowsun on discord here: https://discord.com/channels/240637654717300736/240637654717300736/729842201768624179 When this player tries to load a quickstart without having DLC1 installed they get error messages and can't start any games. | ||||
Tags | No tags attached. | ||||
|
Note that disabling the expansion inside the game won't reproduce this problem. See the discord link above fore more details |
|
Thanks -- it's the beacons, will fix it. |
|
Thanks! This was NOT simple, in the end. * Fixed an issue in the new versions of the game where any quickstarts that had expansion factions in them (typically for beacons) were no longer able to be loaded by people without the expansions. ** The game now properly just discards those expansion factions from the quick start. This has been a hard thing to maintain, but goes back to us not being able to selectively disable expansions when we were originally creating the quick starts. * All list-style xml attributes can now have [attributename]_ignore_errors="true" set on them in order to avoid any exceptions that would happen from missing or malformed data in them. ** Turns out this was a dead end and we don't need this right now, but it's useful to have in the future just in case. * Prior to the recent changes to how we deserialize worlds, we had some logic in place for "if you can't find an entity to load as, then just load as a VWing" or something similar. ** This was a way to load incompatible savegames, but mostly it was a way to load them as quickstarts -- aka, loading a quickstart that has some DLC or mod content in there that your current configuration of the game doesn't have installed or active. ** We now have brought that general sort of logic back, although ONLY for purposes of loading quick starts. When loading a proper savegame, it should fail and tell you the content is missing, because otherwise you're just asking for strange trouble. A quickstart is different because it's about to regenerate the world and toss all the entities out anyway. * UpdateVisualObj on Planet objects now catches exceptions when it tries to draw a planet and gives a debugIndex for useful debugging. This both prevents the game from stalling out when the data is bad, as well as gives us the information to fix whatever is wrong at a given time. ** This area has been very rare for errors but it has come up prior to now. ** Put in a bunch of fixes to places where the display mode could be null if the game only partially loaded properly, thus preventing error loops. * In some of the various loading code that we have for "mod or dlc is not installed," we show a nice clean message without stack traces to the user. ** This is great, and is new and is a lot more clear to players. But when there is an actual problem (like the quickstarts thing), we need to actually see those stack traces and similar. It now does the full stack trace in the log, just not visibly to the player. * Fleet memberships now use the same sort of "load as a vwing if we can't find the type we're talking about and this is a quick start load" logic that game entities now do. ** This was never done before, nor needed before, but with the stricter rules (read: more correctness, and better for multiplayer, under normal circumstances) on deserialization, it is now needed. * Three other places that were deserializing entity types now just don't frankly care if they fail, since they have little consequence if they do. ** This prevents quick starts from failing to load if they had some extra dlc or mods around when they were saved, but also slightly malformed savegames (of which there should be none, but there's no worth to this particular distinction here). * A smaller subset of quick starts couldn't load because of not finding an entity system by name. These are also now fixed to not care. ** In the end we've had to load every quick start and make sure that they all function. ** By now, all but one of them did. The Buggalactic War quick start had one more error that was an old form of viral shredders being present in the "drones that get built" part of fleets code. Things have been updated to not care about that, too, so now all of the quick starts load properly again. |
Date Modified | Username | Field | Change |
---|---|---|---|
Jul 6, 2020 7:37 pm | BadgerBadger | New Issue | |
Jul 6, 2020 7:37 pm | BadgerBadger | Status | new => assigned |
Jul 6, 2020 7:37 pm | BadgerBadger | Assigned To | => Chris_McElligottPark |
Jul 6, 2020 7:38 pm | BadgerBadger | Note Added: 0057503 | |
Jul 6, 2020 8:45 pm | Chris_McElligottPark | Note Added: 0057504 | |
Jul 7, 2020 3:27 pm | Chris_McElligottPark | Status | assigned => resolved |
Jul 7, 2020 3:27 pm | Chris_McElligottPark | Resolution | open => fixed |
Jul 7, 2020 3:27 pm | Chris_McElligottPark | Fixed in Version | => 2.093 Hotfixes and New Player Guidance |
Jul 7, 2020 3:27 pm | Chris_McElligottPark | Note Added: 0057506 |