Jump to content

Wrye Bash - All Games


Utumno

Recommended Posts

21 hours ago, Sharlikran said:

Don't forget that @Surazal has BAT the Bain Archive Tool.

You know, I've had that for a while, but only opened it once to have a quick look through. I didn't bother to RTM at the time, and thought it was easier to just restructure my downloaded mods in Explorer. Now that you mentioned it @Sharlikran, I read through some of the documentation & it looks a lot more useful than I first thought. I didn't realize it could help create wizards without scripting knowledge. I'm going to have to play around a lot more with it now. Thank you!

@alt3rn1ty, do you mind if I link to your WB Pictorial guide in my forum signatures? I usually don't bother with signatures, but want to point people to your great guide to help them get over Bashophobia. I just didn't know if it would be rude not to ask you first. Thx

Link to comment
Share on other sites

Linking by more people = Less Bashophobia = A good thing I do not object to in the slightest :). I dont think anyone regards linking to other peoples work to be bad in any way, its not what I would consider bad netiquette, and is used all over the forums by people who want to spread the word on good things they have found which help the community.

Link to comment
Share on other sites

I has a bug report .. Not a priority among all the current concerns and trying to get the next beta out for compatability with newer versions of games, but please note this somewhere :

OMOD extraction is currently not working for Oblivion - Drag n drop .omod onto Installers Tab = Error

To reproduce grab Surazals Sensual Walks For Female NPCs, the file you need is the Wrye Bash friendly one, not the first one.

Extract the archive

Then from the extracted files there is a BAIN with Wizard Installer, but this also requires that a few animation files have been installed prior to its use

The animation files are in the file ..

Sensual Walks Animations Installer 8.0.omod

When you drag n drop that file onto Wrye Bash Installers Tab the following error occurs

Wrye Bash starting
Using Wrye Bash Version 307.201710141454 (Standalone)
OS info: Windows-10-10.0.15063
Python version: 2.7.12
wxPython version: 2.8.12.1 (msw-unicode)
input encoding: None; output encoding: None; locale: ('en_GB', 'cp1252')
filesystem encoding: mbcs
Using scandir 1.5
bash.pyo  316 _main: Searching for game to manage:
bush.pyo   76 _supportedGames: Detected the following supported games via Windows Registry:
bush.pyo   78 _supportedGames:  Oblivion: e:\oblivion
bush.pyo   78 _supportedGames:  Skyrim Special Edition: D:\Steam\steamapps\common\Skyrim Special Edition
bush.pyo   78 _supportedGames:  Fallout4: D:\Steam\steamapps\common\Fallout 4
bush.pyo  136 _detectGames: Detecting games via the -o argument, bash.ini and relative path:
bush.pyo  142 _detectGames: Set game mode to Oblivion found in parent directory of Mopy:  E:\Oblivion
bush.pyo  156 __setGame:  Using Oblivion game: E:\Oblivion
testing UAC
mods_metadata.pyo  228 __init__: Using LOOT API version: 0.10.1
__init__.pyo 2265 _extractOmods: Failed to extract 'Sensual Walks Animations Installer 8.0.omod'.


Traceback (most recent call last):
  File "bash\basher\__init__.pyo", line 2256, in _extractOmods
  File "bash\bosh\omods.pyo", line 165, in extractToProject
  File "bash\bosh\omods.pyo", line 75, in readConfig
  File "bash\bosh\omods.pyo", line 36, in _readNetString
TypeError: 'int' object is not iterable

Link to comment
Share on other sites

Looking forward to it .. I just noticed something too which I had not noticed before :

Occasionally you refer to Utumno-WIP, and its a bit confusing as to what that refers to - You actually mean the "307 WB Wip Standalone" Dropbox link .. Sometimes, but others you mean on Github Branches

I just went to the dropbox link to check if you had already churned one out, and only now have noticed the title at the top of that page :) (my eyes usually go straight to the files, hover mouse there to get the expanded filename in the browser, then if its new .. Click). So now when you mention Utumno-WIP, I know that you might actually mean the Dropbox link aswell as Github branches.

 

I just updated the NEWS sticky topic on all Nexus comments to include a link to it for anyone who feels they are able to help .. I know there will probably be a few who dont know what they are doing and may get in a pickle with occasional development emerging hiccups, but I gave advice for that too to keep a previous known good installer backed up to re-install as necessary. And, well I think its at a pretty good state just now, they can test pre-beta aswell as not have problems with SSE or FO4 (which is what people are doing from someone elses post in the comments already which was a tip from someone on the S.T.E.P forum apparently).

Link to comment
Share on other sites

Well - utumno-wip refers to utumno-wip branch which can be downloaded from the same link : https://github.com/wrye-bash/wrye-bash/archive/utumno-wip.zip which however points to the current content of this branch (branch in git (we use to store the code) is a term meaning a line of development, for end users this basically means a set of files in a given state).

From time to time, I pack a standalone from the contents of this branch and time-stamp it - I also upload the timestamp commit in the utumno-wip branch. So at this point the standalone links and the utumno-wip python code are the exact same Bash. I refer to these timestamped versions of utumno-wip as nightlies.

But then I continue development in python and go on pushing code in utumno-wip - which now again reads just plain 307.

So the most up to date version of Bash is the python utumno-wip (when it's timestamped it's identical to the second post otherwise newer)

There is also the dev branch - utumno-wip contains additional stuff than dev - for instance all esl and saves stuff is currently in utumno-wip. dev is considered stable, but truth is utumno-wip is usually (apart small regressions like the one in omods) more bug-free than dev, or indeed any other version floating on the web

So bottom line - if you use python use latest utumno-wip - the zip above (or use git to clone and fetch the code - recommended ;) ). If not, use the WB standalone from second post here. Always redirect users with bugs etc to the second post code (or utumno-wip if they use python) the beta is almost one year old it's badly outdated.

 

  • Like 2
Link to comment
Share on other sites

I'm getting a crash dump on startup with utumno-wip (SHA-1: bc321e45181fa28ea7b7699b0cf2360aafabad1c). I get a GUI popup error message with the trace in it, and even when running in debug mode nothing much goes to the logs.  Hitting the "Quit" button makes the window go away, but leaves behind an "Initializing ModInfos" status bar window that cannot be closed without use of the task manager.

Reverting back to 'dev', and the error goes away.

OS: Microsoft Windows [Version 10.0.15063]
Python32 v2.7.3
Game: Fallout 4

BashBugDump_startup.log
Found Python at 'C:\dev\Python27\pythonw.exe'
Launching Wrye Bash 307 in debug mode

Wrye Bash Error Pop-Up:
Traceback (most recent call last):
  File "bash\bash.py", line 260, in main
    _main(opts)
  File "bash\bash.py", line 425, in _main
    app.Init() # Link.Frame is set here !
  File "bash\basher\__init__.py", line 3996, in Init
    self.InitData(progress)
  File "bash\basher\__init__.py", line 4035, in InitData
    bosh.modInfos.refresh()
  File "bash\bosh\__init__.py", line 1976, in refresh
    forceRefresh=hasChanged or _modTimesChange, forceActive=deleted)
  File "bash\bosh\__init__.py", line 1759, in _modinfos_cache_wrapper
    self._refreshMissingStrings()
  File "bash\bosh\__init__.py", line 2036, in _refreshMissingStrings
    k for k, v in self.iteritems() if v.isMissingStrings())
  File "bash\bosh\__init__.py", line 2036, in <genexpr>
    k for k, v in self.iteritems() if v.isMissingStrings())
  File "bash\bosh\__init__.py", line 912, in isMissingStrings
    if bsa_info.has_assets({assetPath}):
  File "bash\bosh\bsa_files.py", line 369, in has_assets
    return set((u'%s' % a).lower() for a in asset_paths) & self.assets
  File "bash\bosh\bsa_files.py", line 377, in assets
    self.__load(names_only=True)
  File "bash\bosh\bsa_files.py", line 296, in __load
    self.load_bsa_light()
  File "bash\bosh\bsa_files.py", line 551, in load_bsa_light
    name_size = struct.unpack_from('H', file_names_block)[0]
TypeError: unpack_from() argument 1 must be string or read-only buffer, not memoryview

 

Link to comment
Share on other sites

20 hours ago, Utumno said:

But then I continue development in python and go on pushing code in utumno-wip - which now again reads just plain 307.

So the most up to date version of Bash is the python utumno-wip (when it's timestamped it's identical to the second post otherwise newer)

Thank you Utumno, this answers a previous question I posted, and some others I had been thinking about. I also never link people to the version on Nexus. I had previously directly linked to the Dropbox standalones with explanation, but since saw that you preferred linking to the second page post here. I've been trying to build some hype for WB and think I've got a few converts! :D Thanks for all your hard work! I can't imagine what it must take to do something like this alone. Wrye Bash has become an amazing tool that I can't imagine going without!

 

On 10/19/2017 at 12:48 AM, alt3rn1ty said:

Linking by more people = Less Bashophobia = A good thing I do not object to in the slightest :). I dont think anyone regards linking to other peoples work to be bad in any way, its not what I would consider bad netiquette, and is used all over the forums by people who want to spread the word on good things they have found which help the community.

Thank you, I wasn't certain. Other than doing some malware cleanup on Tech Support Forum years ago, this is the most time I've spent using forums. :)

Link to comment
Share on other sites

8 hours ago, Verayth said:

I'm getting a crash dump on startup with utumno-wip (SHA-1: bc321e45181fa28ea7b7699b0cf2360aafabad1c). I get a GUI popup error message with the trace in it, and even when running in debug mode nothing much goes to the logs.  Hitting the "Quit" button makes the window go away, but leaves behind an "Initializing ModInfos" status bar window that cannot be closed without use of the task manager.

Reverting back to 'dev', and the error goes away.

OS: Microsoft Windows [Version 10.0.15063]
Python32 v2.7.3
Game: Fallout 4

BashBugDump_startup.log
Found Python at 'C:\dev\Python27\pythonw.exe'
Launching Wrye Bash 307 in debug mode

Wrye Bash Error Pop-Up:
Traceback (most recent call last):
  File "bash\bash.py", line 260, in main
    _main(opts)
  File "bash\bash.py", line 425, in _main
    app.Init() # Link.Frame is set here !
  File "bash\basher\__init__.py", line 3996, in Init
    self.InitData(progress)
  File "bash\basher\__init__.py", line 4035, in InitData
    bosh.modInfos.refresh()
  File "bash\bosh\__init__.py", line 1976, in refresh
    forceRefresh=hasChanged or _modTimesChange, forceActive=deleted)
  File "bash\bosh\__init__.py", line 1759, in _modinfos_cache_wrapper
    self._refreshMissingStrings()
  File "bash\bosh\__init__.py", line 2036, in _refreshMissingStrings
    k for k, v in self.iteritems() if v.isMissingStrings())
  File "bash\bosh\__init__.py", line 2036, in <genexpr>
    k for k, v in self.iteritems() if v.isMissingStrings())
  File "bash\bosh\__init__.py", line 912, in isMissingStrings
    if bsa_info.has_assets({assetPath}):
  File "bash\bosh\bsa_files.py", line 369, in has_assets
    return set((u'%s' % a).lower() for a in asset_paths) & self.assets
  File "bash\bosh\bsa_files.py", line 377, in assets
    self.__load(names_only=True)
  File "bash\bosh\bsa_files.py", line 296, in __load
    self.load_bsa_light()
  File "bash\bosh\bsa_files.py", line 551, in load_bsa_light
    name_size = struct.unpack_from('H', file_names_block)[0]
TypeError: unpack_from() argument 1 must be string or read-only buffer, not memoryview

 

@Daidalos - those are for you:

- even when running in debug mode nothing much goes to the logs.

- Hitting the "Quit" button makes the window go away, but leaves behind an "Initializing ModInfos" status bar window that cannot be closed without use of the task manager.

See comments at https://github.com/wrye-bash/wrye-bash/commit/85bafa011260c9fde2c38e2410cb0cd8d99ecad8

@Verayth - good catch, thanks for using wip (and posting me the sha) - tricky - failing on a bsa, but which one ? Please try latest wip (7dbcf6f4ae57aa015a14dc3d7ca716cee3c55085)

Link to comment
Share on other sites

I clipped the duplicate tracebacks, so it wasn't quite so long, but it looks all the Fallout4*.ba2 files except the Nvflex one are causing issues:

Failed to parse Fallout4 - Textures1.ba2:
Failed to parse Fallout4 - Textures2.ba2:
Failed to parse Fallout4 - Textures3.ba2:
Failed to parse Fallout4 - Textures4.ba2:
Failed to parse Fallout4 - Textures5.ba2:
Failed to parse Fallout4 - Textures6.ba2:
Failed to parse Fallout4 - Textures7.ba2:
Failed to parse Fallout4 - Textures8.ba2:
Failed to parse Fallout4 - Textures9.ba2:
Failed to parse Fallout4 - Startup.ba2:
Failed to parse Fallout4 - Shaders.ba2:
Failed to parse Fallout4 - Interface.ba2:
Failed to parse Fallout4 - Voices.ba2:
Failed to parse Fallout4 - Meshes.ba2:
Failed to parse Fallout4 - MeshesExtra.ba2:
Failed to parse Fallout4 - Misc.ba2:
Failed to parse Fallout4 - Sounds.ba2:
Failed to parse Fallout4 - Materials.ba2:
Failed to parse Fallout4 - Animations.ba2:
Traceback (most recent call last):
  File "bash\bosh\__init__.py", line 912, in isMissingStrings
    if bsa_info.has_assets({assetPath}):
  File "bash\bosh\bsa_files.py", line 369, in has_assets
    return set((u'%s' % a).lower() for a in asset_paths) & self.assets
  File "bash\bosh\bsa_files.py", line 377, in assets
    self.__load(names_only=True)
  File "bash\bosh\bsa_files.py", line 296, in __load
    self.load_bsa_light()
  File "bash\bosh\bsa_files.py", line 551, in load_bsa_light
    name_size = struct.unpack_from('H', file_names_block)[0]
TypeError: unpack_from() argument 1 must be string or read-only buffer, not memoryview

 

Link to comment
Share on other sites

14 hours ago, Verayth said:

The full debug log is on pastebin.

Thanks for posting the full bugdump - an esl triggers the string detection algorithm (dev doesn't know about esls). Your error per se is due to ancient Python version - please update to 2.7.12+ (I use that but I believe latest - 2.7.14 - should be fine)

Link to comment
Share on other sites

3 hours ago, Utumno said:

Thanks for posting the full bugdump - an esl triggers the string detection algorithm (dev doesn't know about esls). Your error per se is due to ancient Python version - please update to 2.7.12+ (I use that but I believe latest - 2.7.14 - should be fine)

Thank you, upgrading Python solved it.  I'm on utumno-wip now with both SkyrimSE and Fallout 4 specifically for the ESL support.

The ESL that triggered my error in F4 (ccbgsfo4023-powerarmorskin(camo02).esl) is warning of missing strings.  It comes with a couple of BA2's of it's own, and looking at them in BSA Browser, I can see there are strings files in "ccbgsfo4023-powerarmorskin(camo02) - main.ba2".  The other BA2 file is just textures.

Link to comment
Share on other sites

1 hour ago, Verayth said:

Thank you, upgrading Python solved it.  I'm on utumno-wip now with both SkyrimSE and Fallout 4 specifically for the ESL support.

The ESL that triggered my error in F4 (ccbgsfo4023-powerarmorskin(camo02).esl) is warning of missing strings.  It comes with a couple of BA2's of it's own, and looking at them in BSA Browser, I can see there are strings files in "ccbgsfo4023-powerarmorskin(camo02) - main.ba2".  The other BA2 file is just textures.

Thanks - and thanks for additional info - regex match was failing due to parenthesis - fixed in utumno-wip

Link to comment
Share on other sites

@Utumno  I'm using Python 2.7.12 and wxPython 2.8.12.1 (Unicode) due for helping Sharlikran with updating of Wrye Mash.  However, there is one thing I wonder about and that's related to wxPython 2.8.12.1 (Unicode).

I've read a couple of posts there people are using wxPython 2.8.12.1 (msw-Unicode).  Why is that (I've tried to search for it without luck), is there a reason for using it?

Link to comment
Share on other sites

307.201710220018

Fixups for recent reports

I need to merge esl support - what mainly remains is I think load order handling - feedback on this (short sweet and technical) appreciated

Link to comment
Share on other sites

A couple of things I've noticed while working with ESL files in utumno-wip.
 - Saves->Copy To: works, but always reports "0 files copied to [profile name]".
 - ESL load order is acting strangely.  The following is my load order for this particular save, but the save shows the 2 ESL files are at positions 0E and 0F respectively (save file provided).  The second ESL is one I generated using the creation kit.
Masters for Save2_D1C70479_0_4672657961_HelgenKeep01_000025_20171021214945_1_1.ess:

00  Skyrim.esm
01  Update.esm
02  Dawnguard.esm
03  HearthFires.esm
04  Dragonborn.esm
05  ccqdrsse001-survivalmode.esl
06  unofficial skyrim special edition patch.esp  [Version 4.1.0]
07  TriRings of Powers.esl
08  unlimitedamuletsandrings.esp
09  rich merchants of skyrim.esp
0A  ars metallica.esp
0B  betterquestobjectives.esp  [Version 1.5.8a]
0C  Henrys Ring of Light.esp
0D  My Dragonborn Items.esp
0E  My Items-Dragonborn.esp
0F  BrighterTorchesBiggerMagelight.esp

Link to comment
Share on other sites

- you cannot activate additional ESLs if you are already at the espm limit.  But you can de-activate 1 esp, activate all the ESLs, and then go back and re-activate the esp.

Link to comment
Share on other sites

8 hours ago, Utumno said:

307.201710220018

Fixups for recent reports

I need to merge esl support - what mainly remains is I think load order handling - feedback on this (short sweet and technical) appreciated

 

Reference previous report on sensual walks, omods are still throwing errors, plus now getting ismissingstrings ?, thats new

Wrye Bash starting
Using Wrye Bash Version 307.201710220018 (Standalone)
OS info: Windows-10-10.0.15063
Python version: 2.7.12
wxPython version: 2.8.12.1 (msw-unicode)
input encoding: None; output encoding: None; locale: ('en_GB', 'cp1252')
filesystem encoding: mbcs
Using scandir 1.5
bash.pyo  316 _main: Searching for game to manage:
bush.pyo   76 _supportedGames: Detected the following supported games via Windows Registry:
bush.pyo   78 _supportedGames:  Oblivion: e:\oblivion
bush.pyo   78 _supportedGames:  Skyrim Special Edition: D:\Steam\steamapps\common\Skyrim Special Edition
bush.pyo   78 _supportedGames:  Fallout4: D:\Steam\steamapps\common\Fallout 4
bush.pyo  136 _detectGames: Detecting games via the -o argument, bash.ini and relative path:
bush.pyo  142 _detectGames: Set game mode to Skyrim Special Edition found in parent directory of Mopy:  D:\Steam\steamapps\Common\Skyrim Special Edition
bush.pyo  156 __setGame:  Using Skyrim Special Edition game: D:\Steam\steamapps\Common\Skyrim Special Edition
testing UAC
mods_metadata.pyo  228 __init__: Using LOOT API version: 0.10.1
__init__.pyo  907 isMissingStrings: Scanning BSAs for string files for Update.esm
__init__.pyo  907 isMissingStrings: Scanning BSAs for string files for Skyrim.esm
__init__.pyo  907 isMissingStrings: Scanning BSAs for string files for Dawnguard.esm
__init__.pyo  907 isMissingStrings: Scanning BSAs for string files for Dragonborn.esm
__init__.pyo  907 isMissingStrings: Scanning BSAs for string files for HearthFires.esm
__init__.pyo 2261 _extractOmods: Failed to extract 'Sensual Walks Animations Installer 8.0.omod'.


Traceback (most recent call last):
  File "bash\basher\__init__.pyo", line 2252, in _extractOmods
  File "bash\bosh\omods.pyo", line 175, in extractToProject
  File "bash\bosh\omods.pyo", line 39, in _readNetString
TypeError: 'int' object is not iterable

Link to comment
Share on other sites

@Utumno I'm going to spend some quality time this morning doing some testing, specifically #181.

@alt3rn1ty and I have been messing with OMODs for some Oblivion wizards, so I can replicate his bug check. I'll post mine if needed.

@Verayth thanks that's a good find with the saves.  I have four ESL files (three homemade in the CK + one from @Pabulum) in addition to the Survival ESL, and the load order according to the saves is still out of sync with the load order in plugins.txt. In my case, the Survival Mode ESL is at 05 (right after the Skyrim masters) in plugins.txt but it is loading at AD in the save, behind the USSEP and several mod ESMs.  My other four ESL files are loading at the tail-end of my load order according to the save file (MI column) which is expected. Not sure why your .ESL is in the middle.  I'm also using the latest LOOT with ESL support.

For reference, here's my save (and cosave) with the load orders.  I'm curious if what we're seeing is in line with some of the super-squirrely stuff identified in the ESL thread.

I also replicated the "0 files copied" bug.  The save and cosave both copied successfully to the test folder despite the UI message.

Link to comment
Share on other sites

1 minute ago, Beermotor said:

@Utumno I'm going to spend some quality time this morning doing some testing, specifically #181.

@alt3rn1ty and I have been messing with OMODs for some Oblivion wizards, so I can replicate his bug check. I'll post mine if needed.

@Verayth thanks that's a good find with the saves.  I have four ESL files (three made in the CK) and the load order according to the saves is still out of sync with the load order in plugins.txt. In my case, the Survival Mode ESL is at 05 (right after the Skyrim masters) in plugins.txt but it is loading at AD in the save, behind the USSEP and several mod ESMs.  My other four ESL files are loading at the tail-end of my load order according to the save file (MI column) which is expected. Not sure why your .ESL is in the middle.  I'm also using the latest LOOT with ESL support.

For reference, here's my save (and cosave) with the load orders.  I'm curious if what we're seeing is in line with some of the super-squirrely stuff identified in the ESL thread.

I also replicated the "0 files copied" bug.  The save and cosave both copied successfully to the test folder despite the UI message.

Well I am afraid 181 was not fixed after all - did some testing myself. Rest (apart from esls stuff) is trivial stay tuned. @alt3rn1ty the missing strings is just debug message ignore it

  • Like 2
Link to comment
Share on other sites

EDIT: trivial does not mean easy means I know where it comes from - btw the esl stuff is still lacking a load order specification right ?

Re; saves and esls - all the esls are in a separate block in the save file from the espms - after the espm block - so their positions in the master table of the save are all after the espms. That's why you see them like that. This means that their master position is undefined in the save. Not sure what I should display here

Link to comment
Share on other sites

23 minutes ago, Utumno said:

Well I am afraid 181 was not fixed after all - did some testing myself. Rest (apart from esls stuff) is trivial stay tuned. @alt3rn1ty the missing strings is just debug message ignore it

I commented on Github but I'll mention it here  - when you get ready just ping me and I'll test.

I also found ALL of my save files for Oblivion going back to May 2006. All of them. Apparently Steam had been storing them all these years and when I reinstalled it synced them back down. That gives us some nice testing fodder. I stashed them safely for now.

18 minutes ago, Utumno said:

EDIT: trivial does not mean easy means I know where it comes from - btw the esl stuff is still lacking a load order specification right ?

Re; saves and esls - all the esls are in a separate block in the save file from the espms - after the espm block - so their positions in the master table of the save are all after the espms. That's why you see them like that. This means that their master position is undefined in the save. Not sure what I should display here

That makes sense, thank you for clarifying re: master position.

AFAIK there is no "Official" specification or confirmation from Bethesda yet.  I was thinking of pinging a Bethesda developer or community outreach member to see if we could get official clarification but I'm not sure who to reach out to.

EDIT: I think someone smarter than me should probably give input on how the ESL positions in the saves should be displayed. 

Link to comment
Share on other sites

32 minutes ago, Beermotor said:

EDIT: I think someone smarter than me should probably give input on how the ESL positions in the saves should be displayed. 

Markdf has updated the Scriptcleaner and More. Updated today. Haven't had a close look at the package yet.

Link to comment
Share on other sites

307.201710221607

Small fixups above - apart esls and saves that need thought and work

Now - because I eventually have to address the formVersion issue and because this means refactoring records code and because this is game dependent and because I have a dinosaur fallout3/NV branch I have to apply changes separately to and because I have lost infinite time and energy trying to keep that low quality code (because pre refactoring) in par with main development - I am thinking of merging that in. But it will remain an eternal beta because I don't have those games and because I have no help (as in helpful help) - quite the contrary, I have people just working against me. So I will need help doing this, as in real help. Roll up your sleeves ?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...