Skip to content

Commit

Permalink
Add support for the vehicle update (#31)
Browse files Browse the repository at this point in the history
- New save format (v140) which adds another plugin list flag for 'is custom plugin'; remaining changes are compatible with existing parser
- New core plugin (SFBGS004.esm)
  • Loading branch information
Silarn authored Sep 28, 2024
1 parent c3adebc commit 1b71dc1
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 6 deletions.
8 changes: 4 additions & 4 deletions src/game_starfield_en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,22 +29,22 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="gamestarfield.cpp" line="428"/>
<location filename="gamestarfield.cpp" line="429"/>
<source>You have active ESP plugins in Starfield</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="gamestarfield.cpp" line="430"/>
<location filename="gamestarfield.cpp" line="431"/>
<source>sTestFile entries are present</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="gamestarfield.cpp" line="440"/>
<location filename="gamestarfield.cpp" line="441"/>
<source>&lt;p&gt;ESP plugins are not ideal for Starfield. In addition to being unable to sort them alongside ESM or master-flagged plugins, certain record references are always kept loaded by the game. This consumes unnecessary resources and limits the game&apos;s ability to load what it needs.&lt;/p&gt;&lt;p&gt;Ideally, plugins should be saved as ESM files upon release. It can also be released as an ESL plugin, however there are additional concerns with the way light plugins are currently handled and should only be used when absolutely certain about what you&apos;re doing.&lt;/p&gt;&lt;p&gt;Notably, xEdit does not currently support saving ESP files.&lt;/p&gt;&lt;h4&gt;Current ESPs:&lt;/h4&gt;&lt;p&gt;%1&lt;/p&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="gamestarfield.cpp" line="454"/>
<location filename="gamestarfield.cpp" line="455"/>
<source>&lt;p&gt;You have plugin managment enabled but you still have sTestFile settings in your StarfieldCustom.ini. These must be removed or the game will not read the plugins.txt file. Management is still disabled.&lt;/p&gt;</source>
<translation type="unfinished"></translation>
</message>
Expand Down
3 changes: 2 additions & 1 deletion src/gamestarfield.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -258,7 +258,8 @@ QStringList GameStarfield::primaryPlugins() const
QStringList plugins = {"Starfield.esm", "Constellation.esm",
"OldMars.esm", "BlueprintShips-Starfield.esm",
"SFBGS007.esm", "SFBGS008.esm",
"SFBGS006.esm", "SFBGS003.esm"};
"SFBGS006.esm", "SFBGS003.esm",
"SFBGS004.esm"};

auto testPlugins = testFilePlugins();
if (loadOrderMechanism() == LoadOrderMechanism::None) {
Expand Down
6 changes: 5 additions & 1 deletion src/starfieldsavegame.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,11 @@ std::unique_ptr<GamebryoSaveGame::DataFields> StarfieldSaveGame::fetchDataFields
dummyLocation, dummyTime);
}

bool extraInfo = saveVersion >= 122;
int extraInfo = 0;
if (saveVersion >= 122)
extraInfo = 1;
if (saveVersion >= 140)
extraInfo = 2;
QStringList gamePlugins = m_Game->primaryPlugins() + m_Game->enabledPlugins();

QString ignore;
Expand Down

0 comments on commit 1b71dc1

Please sign in to comment.