Jump to content

Wrye Bash - All Games


Utumno

Recommended Posts

10 hours ago, DylanJames said:

This is entirely unrelated to anything you guys are discussing right now, but I figured I should post it just in case. There's also a chance you're familiar with this issue, in which case I apologize for bringing it up again. I took this screenshot about two weeks ago when I noticed that my bashed patch ran into a weird precision error when calculating weight and texture lighting (every weight record is 30, while the Bashed Patch figured it was 30.000002).

I was told that python in particular has float point precision issues, but IEEE 754 should be able to represent 30 and in this particular case there shouldn't be any arithmetic operations running on the number.

Personally, I don't know if character weight even accounts that low (I'm pretty sure it rounds to the hundredth decimal or ignores anything past that) and I do not know the repercussions of character lighting being 1 point off (don't believe it would cause in facegen issues). From the people I talked to, it was recommended at the very least I should report this as a bug.

Thanks!

1508463325_SSEEdit.png

Thanks for being respectful of my time and priorities. Please post me an issue but with a reproducer (minimal!, see bug report guidelines, https://github.com/wrye-bash/wrye-bash/wiki/[github]-Reporting-a-bug ) - it won't be looked at in the near future as indeed I am the only one working with the code and simply have not the time to look at the patcher. Can you Python ? :P

8 hours ago, Sharlikran said:

@Utumno To make sure the changes will more easily merge into utumno-wip I made a copy of the branch for the Skyrim SE updates, rebased off of utumno-wip.

Are those the pulls you deleted ? I still need those commits being reworked a bit:

- remove whitespace changes, just leave code changes in

- add detailed commit messages as you do in your posts - what change you made and why  - details like those belong to the commit message (and not to the posts). If we had a commit message for topIgTypes we wouldn't be wondering now 7 years later. 'Updated MreLens' (for instance) says nothing, especially years after the fact.

Don't open new pulls - just mention me from reworked branch

9 hours ago, Arthmoor said:

I'll give the new version a look and let you know. As far as displaying the ESL files, I still think it would be best if they were placed in the order the save itself thinks they're being handled in. I noticed something odd about that the other day though and need to take a bit of time to look it over again to be sure. I think I may end up needing to update my post on the subject.

I think we definitely want to issue a warning if any mods with Form 43 in the TES4 header are present. Don't block them from being used, just pop up a warning box about it. It's a serious enough problem that it should not simply be ignored because a few random people think it isn't a real issue.

Building a patch needs to abort though if an SSE mod record is going to be imported but it's not from a mod that's using Form 44 for that record type. When the CK saves a file in SSE, all forms are version 44. So there should be no reason to see mixed versions in anything other than Bethesda's original 5 files.

I know nothing about what topIgTypes is so I'll defer to anyone else who might on what to do with it.

1 hour ago, Arthmoor said:

Ok, I've had a chance to check load positioning on ESL files again now that their index numbers are showing up in the saves tab (somehow they weren't before, but are now) and I've modified the relevant thread to reflect the updated findings.

The Mods tab currently agrees with the logic seen in the actual load order the save masters present, but the saves tab itself still has the plugins ordered wrong. Not sure what the deal is there, but hey.

Somewhat disappointing that they chose to push ESLs converted from normal ESPs onto the top side of the load stack instead of just letting them get sorted amongst the other ESP files. That kind of restricts their usefulness.

Well, what happens is they monkey patched the saves and just added the esls all together. That probably means their load order does not matter much (duh ?!) - but please understand that the way you see esl save masters in saves tab is just the way I dump them from the save. I should probably reorder them somehow before displaying them. Let's continue this discussion in https://github.com/wrye-bash/wrye-bash/issues/382

In general I am now again pressed for time, and already what I did was too much, don't wanna loose my job because of those lousy esls you see. I won't be in the forums, continue any discussions in the tracker - short, sweet and technical.

Link to comment
Share on other sites

It doesn't really matter to the grand scheme of things, but I feel it is important enough to mention anyway, especially considering some of the current things happening. My daughter had to go to the Hospital last Friday because she felt her Heart stopped. She has had Holter Monitor over the last month so I am hoping some of the results will help the doctor figure out what is happening. The cardiologist did explain that most likely the heart did stop briefly as there are notes from the Doctor that gave her the Holter Monitor saying he did notice brief moments when the heart beats in an irregular manner. He explained that when that happens, the heart isn't pumping blood correctly. What the Heart will then do is it will stop and reset so it can resume pumping blood. They feel some medication should help reduce the presence of chemicals in the body that increase heart rate in an attempt to keep her heart beating at a consistent rate.

I would be exaggerating if I said that it will consume my entire day and blah blah blah, stupid excuses. However, it's not exaggerating or a stupid excuse to simply say that won't be around to do much anymore.  Obviously I will probably work on xEdit, or the xEdit websites, tinker with Wrye Mash and Valda's Wrye Flash, as well as work on other projects when I have time.  It isn't like I will be fooling anyone. We all know how the doctor is. You call and make an appointment and they don't have time to see you for a week or two because of other patients. It's not like my daughter has a more serious condition like Cancer where I would be spending all my time at the Hospital. So I'll be around and if I make any changes for personal use the code will be on my Fork.

I have been trying to tie up some loose ends and make sure that the Form Version is working and added to the Bash Patch and that the records are current as of the Creation Club. Up until last Friday when this happened I also wanted to be sure CTDA was updated so it properly captures a FormID (which is very important and needs to be applied to all games), and that the JIP update to CTDA for Fallout New Vegas was added as well. However, I will have to cut short making sure all that happens. I'm sure you will all understand.

Take care and good luck with things.

Link to comment
Share on other sites

One being occupied by RL does not need to express any excuse and I don't think anyone here would object to that when I say...

"RL comes first and foremost"

...so take your time and we'll wait until you return.

Sorry to hear that about your daughter.

Link to comment
Share on other sites

5 hours ago, Sharlikran said:

Take care and good luck with things.

As someone who has had weird medical issues  (and had to lug around medical stuff attached to me in the past) that took forever to diagnose,   I sincerely hope they figure out what is going on with your daughter and get her fixed up quickly. I can say from experience that having your parents with you in those situations is the most important thing in the universe.

Don't worry about us -  we'll be here when you get back.

Link to comment
Share on other sites

10 hours ago, Utumno said:

Well, what happens is they monkey patched the saves and just added the esls all together. That probably means their load order does not matter much (duh ?!) - but please understand that the way you see esl save masters in saves tab is just the way I dump them from the save. I should probably reorder them somehow before displaying them. Let's continue this discussion in https://github.com/wrye-bash/wrye-bash/issues/382

In general I am now again pressed for time, and already what I did was too much, don't wanna loose my job because of those lousy esls you see. I won't be in the forums, continue any discussions in the tracker - short, sweet and technical.

I'm off-call and getting over my illness, so I should be back in the tracker shortly. I have a lot to catch up on.

Link to comment
Share on other sites

@Sharlikran I echo Beermotor! Go be with your daughter! If my baby girl had that going on I wouldn't even have bothered with a reply. Family comes first. Always. Good luck to you both!!

@Beermotor Glad to hear you're getting over your illness! Never fun, especially when you have to work too! Be sure to take some time to relax. You're of no use to us if you're overtired!  ;) (I jest.)

 

On 9/7/2017 at 4:13 PM, Utumno said:

> Quick question regarding scandir: for those of us on python installs, is it necessary to do a 'pip install scandir' or is this built-in now?

Yep, python.exe -m pip install --upgrade scandir

I upgraded via the instructions Utumno gave. Had to download C++ 9.0 for Py27 to get it to work, (no biggie). Is this going to be a necessary procedure for all Python version users? It's not hard, but I would never have known about it if I hadn't a need to go over some previous posts in this thread.

Also, does anyone know if scandir speeds up the building of the Bashed Patch? From what I've read, WB seems to use it to gather the info on files/folders for the Installers tab functions, and (maybe?) info on the Mods tab. I tried looking through the code for CBash and find no mention of scandir. I suppose that doesn't preclude it being fed info collected by scandir, plus I can barely decipher code as it is. I ask not only out of curiosity, but also because I have some users on 307 Beta-1 & earlier complaining about the time it takes to build a bashed patch, (even with CBash). I built one with about 235 esp/m's including merges, filters, etc. in about 60 sec; contrary to another user with a lighter load and better hardware @ >2:30. I'm trying to get more people on the stable post Beta-1 builds, but sometimes need more info to convince them. *sigh* I even have one on v305 (pre-Utumno). Heh, think we can make P.U. (Pre-Utumno) a thing? "Oh, you're on a P.U. version of Wrye Bash.."  lol

Link to comment
Share on other sites

Hello guys. I am currently using 307 WIP Standalone and trying to get rid of Form 43 stuff. I resaved all mods that had it with CK and now only Bashed Patch is reported by SSEEdit script "Check for old form" to include old form version. 

1) Is this normal thatr the Bashed Patch has Form 43?

2) Should I worry?

3) Sorry if this was already discussed and thank you in advance for any answers.

Link to comment
Share on other sites

2 hours ago, OutdatedTV said:

Hello guys. I am currently using 307 WIP Standalone and trying to get rid of Form 43 stuff. I resaved all mods that had it with CK and now only Bashed Patch is reported by SSEEdit script "Check for old form" to include old form version. 

1) Is this normal thatr the Bashed Patch has Form 43?

2) Should I worry?

3) Sorry if this was already discussed and thank you in advance for any answers.

1) The patches actually don't have a Form Version at all. I think it was fixed in the bleeding edge code, but you need to install Python to use it.

2) Probably. They (Arthmoor) say that a Form Version other than 44 in SSE will corrupt saves.

3) It was discussed a few pages back, but you are forgiven in my book.

Link to comment
Share on other sites

10 hours ago, Pabulum said:

1) The patches actually don't have a Form Version at all. I think it was fixed in the bleeding edge code, but you need to install Python to use it.

2) Probably. They (Arthmoor) say that a Form Version other than 44 in SSE will corrupt saves.

3) It was discussed a few pages back, but you are forgiven in my book.

Hello, I am using the Python version already (because of Mod Organizer 2 and Windows 10 Creator's Update), but not bleeding edge. I just released a video on cleaning Form 43 off the mods. For now I did not mention any solution for Bashed Patch, as I don't want the users of my TUCOGUIDE to go bleeding edge. 

So basically when the current bleeding edge will not be bleeding anymore, the Bashed Patch Form 43 problem will be resolved. I will test the dev version. Thanks again.

Link to comment
Share on other sites

3 hours ago, OutdatedTV said:

Hello, I am using the Python version already (because of Mod Organizer 2 and Windows 10 Creator's Update), but not bleeding edge. I just released a video on cleaning Form 43 off the mods. For now I did not mention any solution for Bashed Patch, as I don't want the users of my TUCOGUIDE to go bleeding edge. 

So basically when the current bleeding edge will not be bleeding anymore, the Bashed Patch Form 43 problem will be resolved. I will test the dev version. Thanks again.

Bleeding edge is the most correct and up to date Bash version - please go for it. `dev` is currently unaware of esls, form version and new saves

Link to comment
Share on other sites

8 hours ago, Utumno said:

Bleeding edge is the most correct and up to date Bash version - please go for it. `dev` is currently unaware of esls, form version and new saves

Installed Bleeding Edge, Form 43 is gone from Bashed Patch. Thank you. Tomorrow I will shoot a little video for the users of my TUCOGUIDE on how they can quickly and safely update Wrye Bash to this version. So now I have all my mods Form-43-free and also the Bashed Patch. Good stuff. 

  • Like 3
Link to comment
Share on other sites

307.201711041935

Stablest WB ever - includes changes by @Sharlikran for skyrim records (all the best with health issues!) and some code by @Beermotor (thanks !). Fixes the stuck progress bar. All in all ready for beta - well, remains saves esls masters display handling (feedback at https://github.com/wrye-bash/wrye-bash/issues/382) and some testing for formVersion fixups. Please also test renaming cosave masters - should be ok (see https://github.com/wrye-bash/wrye-bash/issues/236 )

 

Wait for upload I guess

Link to comment
Share on other sites

I just want to thank you guys for all your continued work. I don't know enough to be able to help test it, really, but from the point of view of a simple user, "it just works." 

Link to comment
Share on other sites

Wrye Bash starting
Using Wrye Bash Version 307.201711041935 (Standalone)
OS info: Windows-7-6.1.7601-SP1
Python version: 2.7.12
wxPython version: 2.8.12.1 (msw-unicode)
input encoding: None; output encoding: None; locale: ('en_US', '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: G:\Games\steamapps\common\Oblivion
bush.pyo   78 _supportedGames:  Skyrim: F:\Games\steamapps\common\Skyrim
bush.pyo   78 _supportedGames:  Skyrim Special Edition: F:\Games\steamapps\common\Skyrim Special Edition
bush.pyo   78 _supportedGames:  Fallout4: C:\Games\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:  G:\Games\steamapps\common\Oblivion
bush.pyo  156 __setGame:  Using Oblivion game: G:\Games\steamapps\common\Oblivion
testing UAC
mods_metadata.pyo  227 __init__: Using LOOT API version: 0.10.2
races_multitweaks.pyo 1005 buildPatch: Mesh undefined for eye (Waalx Animals & Creatures.esm,0x006955) in race VampireRace, eye removed from race list.
Traceback (most recent call last):
  File "bash\balt.pyo", line 436, in <lambda>
  File "bash\balt.pyo", line 1605, in _conversation_wrapper
  File "bash\basher\patcher_dialog.pyo", line 204, in PatchExecute
  File "bash\patcher\patch_files.pyo", line 344, in buildPatch
  File "bash\parsers.pyo", line 4130, in getMastersUsed
  File "bash\parsers.pyo", line 3856, in getOrdered
  File "bash\load_order.pyo", line 205, in get_ordered
  File "bash\bolt.pyo", line 1048, in __lt__
  File "bash\bolt.pyo", line 565, in __getCase
  File "ntpath.pyo", line 419, in normpath
AttributeError: 'int' object has no attribute 'startswith'

Is that error easy to resolve without plugins and explanation of steps? It's not my error so I don't know how to reproduce it and the user reporting it has a plugin but that plugin requires several mods to install it so it's not any kind of minimal reproducer and I wouldn't have time to figure it out. He says he just builds the bash patch and gets the error.

Link to comment
Share on other sites

Is this the one on Oblivion that gets it with PBash, but successfully built with CBash?

If needed, I can try to work with him to repro.

Link to comment
Share on other sites

Yes but the problem isn't reproducing it.  It's that if Utumno sees something obvious and has a face palm moment then fine, otherwise the user has a plugin that works fine and one that he made changes to in TES4Edit.  So once he makes said change, whatever that is, then he gets the error. So yes Wrye Bash should not have an error, but what is the plugin doing?  That's something I have to look at but I don't really want to look at a bunch of differences in the records to find the issue.

Link to comment
Share on other sites

I understand but about the only thing I can think of is telling him to start with the working plugin and make the same changes one change at a time until it breaks.  You would have to put it on him to figure out. I am about to do the same thing to be honest because I can't find the needle in the haystack.

Link to comment
Share on other sites

I just got an idea, I need to use Dump to make a text file so I can compare them.

There is one Creature record with a different case, like capital letters, which is part of the error.  Hmmm.

Loading it in the CS doesn't fix it.This is stupid now I have to figure it out because whatever he changed has nothing to do with the masters of the files so why is the Bash Patch failing because of an edit to the plugin.

Spoiler

 


[16903873, bolt.Path(u'DLCBattlehornCastle.esp'), bolt.Path(u"Oscuro's_Oblivion_Overhaul.esm"), bolt.Path(u'Map Marker Overhaul.esp'), bolt.Path(u'DLCHorseArmor.esp'), bolt.Path(u'DLCThievesDen.esp'), bolt.Path(u'DLCSpellTomes.esp'), bolt.Path(u'DLCVileLair.esp'), bolt.Path(u'DLCMehrunesRazor.esp'), bolt.Path(u'WAC.esp'), bolt.Path(u'Knights.esp'), bolt.Path(u'Waalx Animals & Creatures.esm'), bolt.Path(u'Oblivion.esm'), bolt.Path(u'WAC - TCOS Shops.esp'), bolt.Path(u'OOOWACer - Broken.esp'), bolt.Path(u'DLCFrostcrag.esp'), bolt.Path(u'WAC - TCOS.esp'), bolt.Path(u'DLCOrrery.esp')]
from def __lt__(self, other):
dlcbattlehorncastle.esp
Traceback (most recent call last):
  File "bash\balt.py", line 436, in <lambda>
    if onButClick: self.Bind(wx.EVT_BUTTON, lambda __event: onButClick())
  File "bash\balt.py", line 1605, in _conversation_wrapper
    return func(*args, **kwargs)
  File "bash\basher\patcher_dialog.py", line 204, in PatchExecute
    patchFile.buildPatch(log,SubProgress(progress,0.8,0.9))#no speeding needed/really possible (less than 1/4 second even with large LO)
  File "bash\patcher\patch_files.py", line 344, in buildPatch
    self.tes4.masters = self.getMastersUsed()
  File "bash\parsers.py", line 4133, in getMastersUsed
    return masters.getOrdered()
  File "bash\parsers.py", line 3856, in getOrdered
    temp = load_order.get_ordered(self)
  File "bash\load_order.py", line 207, in get_ordered
    mod_names.sort() # resolve time conflicts or no load order
  File "bash\bolt.py", line 1051, in __lt__
    return self._cs < Path.__getCase(other)
  File "bash\bolt.py", line 565, in __getCase
    return os.path.normcase(os.path.normpath(name))
  File "C:\Python27\lib\ntpath.py", line 419, in normpath
    if path.startswith(('\\\\.\\', '\\\\?\\')):
AttributeError: 'int' object has no attribute 'startswith'

 

If I just add a crap ton of print statements, when it crashes, just at the point of mod_names.sort() that is the file name it crashes on.  Obviously I have dlcbattlehorncastle.esp in my data folder so that makes no sense.

Link to comment
Share on other sites

3 hours ago, Sharlikran said:

Wrye Bash starting
Using Wrye Bash Version 307.201711041935 (Standalone)
OS info: Windows-7-6.1.7601-SP1
Python version: 2.7.12
wxPython version: 2.8.12.1 (msw-unicode)
input encoding: None; output encoding: None; locale: ('en_US', '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: G:\Games\steamapps\common\Oblivion
bush.pyo   78 _supportedGames:  Skyrim: F:\Games\steamapps\common\Skyrim
bush.pyo   78 _supportedGames:  Skyrim Special Edition: F:\Games\steamapps\common\Skyrim Special Edition
bush.pyo   78 _supportedGames:  Fallout4: C:\Games\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:  G:\Games\steamapps\common\Oblivion
bush.pyo  156 __setGame:  Using Oblivion game: G:\Games\steamapps\common\Oblivion
testing UAC
mods_metadata.pyo  227 __init__: Using LOOT API version: 0.10.2
races_multitweaks.pyo 1005 buildPatch: Mesh undefined for eye (Waalx Animals & Creatures.esm,0x006955) in race VampireRace, eye removed from race list.
Traceback (most recent call last):
  File "bash\balt.pyo", line 436, in <lambda>
  File "bash\balt.pyo", line 1605, in _conversation_wrapper
  File "bash\basher\patcher_dialog.pyo", line 204, in PatchExecute
  File "bash\patcher\patch_files.pyo", line 344, in buildPatch
  File "bash\parsers.pyo", line 4130, in getMastersUsed
  File "bash\parsers.pyo", line 3856, in getOrdered
  File "bash\load_order.pyo", line 205, in get_ordered
  File "bash\bolt.pyo", line 1048, in __lt__
  File "bash\bolt.pyo", line 565, in __getCase
  File "ntpath.pyo", line 419, in normpath
AttributeError: 'int' object has no attribute 'startswith'

Is that error easy to resolve without plugins and explanation of steps? It's not my error so I don't know how to reproduce it and the user reporting it has a plugin but that plugin requires several mods to install it so it's not any kind of minimal reproducer and I wouldn't have time to figure it out. He says he just builds the bash patch and gets the error.

308+ - but have a look https://github.com/wrye-bash/wrye-bash/issues/236

That's the issue @RavenMind

2 hours ago, RavenMind said:

Is this the one on Oblivion that gets it with PBash, but successfully built with CBash?

If needed, I can try to work with him to repro.

was referring to. Read comments there - I bet this happens when he builds two patches in a row. Then, workaround, restart Bash.

 

Link to comment
Share on other sites

I don't have to build two patches in a row. As I am testing this I am closing Wrye Bash each time.  Then I am altering one record at a time trying to find this one edit that causes the error. I would like to know what he did for xEdit because we need to prevent whatever it is he did.

Link to comment
Share on other sites

9 hours ago, Supierce said:

Utumno, with your new WIP, I have two similar FO4 mods, with many identical files that fail to show as conflicting under the Installers tab. Here's a .7z file that contains both mods:

https://www.dropbox.com/s/wzcilx8f1obwz8t/ConflictingMods.7z?dl=0

Let me know what you need. Thank you!

I was able to replicate this.

Between the two mods, the only things that conflict are a number of scripts. Note the path:

Spoiler

./data/Scripts/Fragments/TopicInfos
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_00223388.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_01001733.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_01001ECD.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_01001ED1.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_01001ED2.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_0100266D.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_0100266F.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_01002E09.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_01002E0C.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_010035A9.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_010035AA.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_01003D45.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_010044DF.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_010044E2.pex
./data/Scripts/Fragments/TopicInfos/TIF_DialogueDiamondCity_010044E3.pex

 

Bash knows they're there as they are appearing in the "Matched" tab.

Link to comment
Share on other sites

Everyone see Beth updated SSE & FO4 again?

SSE Post | FO4 Post (Same "Fixes" for both)

Quote

Bug Fixes

  • Fixed issue with rate of critters respawning in world
  • Fixed issues with screenshots displaying incorrectly in Creation Club/Mods
  • Message of the Day heading revised
  • Changed logic for how Creation Club content is initialized 
  • Minor bug fixes to Bethesda.net

I couldn't find any more info related to item 4, to see if it may change the way in which esl's need to be handled. I'm probably just not looking in the right place. I'm not qualified to make that assessment, but hoped I could at least link it for you guys. Luckily, so far the only panicked cries I'm hearing are those of "It broke SKSE64." (Along, of course, with the angry shouts of "Stop 'fixing' what ain't broke"..)

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...