-
Notifications
You must be signed in to change notification settings - Fork 84
Closed
Labels
A-new-gameArea: New Game Implementation (new subpackage in the game package)Area: New Game Implementation (new subpackage in the game package)C-goalCategory: Long term goal. May be code-related or a meta goal.Category: Long term goal. May be code-related or a meta goal.G-starfieldGame: StarfieldGame: StarfieldM-relnotesMisc: Issue should be listed in the version history for its milestoneMisc: Issue should be listed in the version history for its milestone
Milestone
Description
Central issue for tracking support. This is not about adding Bashed Patch support yet, just the basics for now (like FO4 before #482).
Needed Info
- What files are in the Data folder by default? - Initial Starfield Support #667 (comment)
- Where is the load order stored?
- Speaking of LO, which of the plugins in the Data folder are forcibly active? - Initial Starfield Support #667 (comment)
- Is there anything in
Starfield.ccc? - noStarfield.cccyet, though the game does look for it. - It seems the LO is in
plugins.txt, but it's bugged - the game doesn't create it but does read it, but it also can't even load third-party plugins right now.
- Has the BA2 structure changed?
- Apparently compression changed? - Yes and no. v2 BA2s are unchanged (except for two new unknowns in the header), but v3 BA2s have a third unknown in the header and use LZ4 block compression - note SSE uses LZ4 frame compression.
- Extension is still
.ba2&GNRLvsDX10is still a thing, according to xEdit sources. - Valid BA2 versions seem to be
2and3- general BA2s use version 2, texture BA2s use version 3 - Starfield seems to use forward slashes in its BA2s by default, important once we want to write them (we already handle reading forward slashes correctly since many modded BSAs used them in previous games).
- We need the icon, extracted from the official EXE. - Initial Starfield Support #667 (comment)
- SF does not seem to have registry keys? If so, we need to accelerate our plans for a new Steam detection method (see Initial Starfield Support #667 (comment)).
- Does SF support ESLs? What about
.eslfiles? - yes, but the flag is0x100, not0x200 - Are the plugin-name-specific dirs the same (i.e. do
sound/voice,meshes/actors/character/facegendata/facegeomandmeshes/actors/character/facecustomizationhave folders with plugin names in them)? Are there new ones? - there are three:meshes/actors/character/facegendata/facegeom,sound/voiceandtextures/actors/character/facecustomization/starfield.esm. - What about INIs?
- What's the name of the 'default' INI in the game folder?
Starfield.ini? - Yup. - What's the default game language?
en? - Yup. - What INIs are present in the
My Gamesfolder? Is there even aMy Gamesfolder? - Yes, it has onlyStarfieldPrefs.inithough. - Does SF have the same BA2-loading keys as FO4? I.e.
sResourceIndexFileList,sResourceStartUpArchiveList,sResourceArchiveList,sResourceArchiveList2andsResourceArchiveListBeta? - latter two don't exist anymore, see https://stepmodifications.org/forum/topic/19019-starfield-default-values-for-all-known-valid-ini-settings/
- What's the name of the 'default' INI in the game folder?
- I assume SF uses Papyrus. Is the extension the same (
.psc/.pex)? What about the folder it's in (scripts)? - What about saves?
- The extension is
.sfs, seen on many Nexus save uploads. - What does the header look like? - The whole thing is wrapped inside a new
BCPSzlib-compressed container, save screenshots don't seem to exist anymore, but beyond that the header is similar. There are two unknown bytes after the master list that clearly belong to it (master list size stored in the save is e.g. 82, but we only get 80 bytes by reading regular + ESL masters) - maybe a new overlay plugin block?
- The extension is
- What about record structure?
- Is it generally the same in terms of records, headers and subrecords? - Yes, though Bethesda has made the plugin format much worse yet again (
REFLandBFCB/BFCE). - Does SF have the expanded plugin range from FO4 (i.e. start from
0x001instead of0x800)? Does Next Object ID begin at0x001? - Yes, it appears so. - Does the file extension force ESM/ESL flags like in FO4 and SSE? - Yes, confirmed by aers on Discord.
- Only valid header version appears to be
0.96, according to xEdit sources. - Is the maximum leveled list size still 255? Are there even leveled lists? - Yes and yes.
- Has someone dumped the CTDA functions yet? - Nope.
- Is there a
GetVATSValuefunction with the same quirk as in earlier games? - Unknown, see above.
- Is there a
- What are the top GRUPs? - https://github.com/TES5Edit/TES5Edit/blob/c3f0246f3836888732273611e1754ba7c2e0c65/Core/wbDefinitionsSF1.pas#L17445-L17619
- I implemented a basic
TES4record, does it work? - Yes.
- Is it generally the same in terms of records, headers and subrecords? - Yes, though Bethesda has made the plugin format much worse yet again (
- Add a proper SFSE link, currently just links to the github.
Later Stuff
- There is a second Data folder in
My Games\Starfield\Datathat takes priority over the game's Data folder- Vortex replaces that one with a junction linking back to the main Data folder, we may have to take that account when we add support for the second folder
- What about localized plugins?
- Does SF still use strings files?
- If yes, has the strings format changed? And are they still in the same folder with the same naming convention?
- Add CTDA info once dumped.
- Add CK info once the CK comes out.
- Does SF have achlists? Probably need to wait for the CK?
- There appears to be a new flag (
0x200, what the ESL flag used to be) that makes plugins not take up a load order slot, but prevents them from adding new records. Would be really great for unlimited conflict resolution patches! But let's wait until we have confirmation how that works. -> new issue: Add Support for Overlay Plugins #668 - Check what key
SF1Edituses (guessingsf1View). - Any useful INI tweaks?
- The enable/disable loose files tweak is needed again.
- Wait for the CK, then see if they made the same mistake with
source/scriptsagain.
Links
- LOOT issue: Add support for Starfield loot/loot#1882
- Current xEdit definitions: https://github.com/TES5Edit/TES5Edit/blob/dev-4.1.5/Core/wbDefinitionsSF1.pas
- Documentation on the horrible CDB format used for
REFLdata and terrain: https://github.com/gibbed/Gibbed.Starfield/tree/main/projects/Gibbed.Starfield.FileFormats - Nukem's
plugins.txtEnabler: https://www.nexusmods.com/starfield/mods/4157
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
A-new-gameArea: New Game Implementation (new subpackage in the game package)Area: New Game Implementation (new subpackage in the game package)C-goalCategory: Long term goal. May be code-related or a meta goal.Category: Long term goal. May be code-related or a meta goal.G-starfieldGame: StarfieldGame: StarfieldM-relnotesMisc: Issue should be listed in the version history for its milestoneMisc: Issue should be listed in the version history for its milestone