Jump to content

[Morrowind] Cannot run WMSA after I install WB306


Go to solution Solved by lmstearn,

Recommended Posts

17 minutes ago, Leonardo said:

can you explain to me why I always get a Python error when using the edit a file header feature in Yacoby's WMSA while I don't get that error in Melchor's WMSA

Another thing that matters is about what kind of version we are talking about and what I mean is between ANSI and Unicode and I know that is important for mlox, especially the wxPython ANSI version which mlox requires otherwise mlox won't work.

Correct me if I am wrong, but I think most of the code for Wrye Mash are written with the ANSI version of wxPython.

 

Yes, I am aware of Yacoby's WMSA Fork of Melchor's WMSA.  It was actually who made me aware of the edit file header bug in Yacoby's WMSA in the first place and he has been since then using both WMSA versions due for various reasons.

1. If someone who is using both WMSA version wants to edit the file header in any mod then the user use Melchor's WMSA, just for that purpose

2. I can only guess, but I think Spirithawke are only using Yacoby's WMSA just for being the latest WMSA version

Why, plain and simple, Yacoby changed the code, and now there is an error. But I know where to look it will just take me a few days to finish what I am doing and make some changes to things.

I have never tried mlox.

Yeah there is no true unicode support for Wrye Mash but I'm still using wxPython 2.8.12 Unicode anyway. The other thing is that they tried to add some unicode support. It's even in the change log. Only they just added the minimum needed and didn't actually update everything.

Once I figure out what was changed, well if I can figure it out, then I'll just change it and hopefully then you can edit the header with Yacoby's version and won't need both.

Record Header
  Signature: TES3
  Data Size: 346
  Version Control Info: 00 00 00 00
  Record Flags
Header Info
  HEDR - Header
    Version: 1.300000
    Record Flags: ESM
    Author: Bethesda Softworks
    Description: The main data file for Tribunal.
(requires Morrowind.esm to run)
    Number of Records: 9999
  Master Files
    Master File
      MAST - Filename: Morrowind.esm
      DATA - Master Size: 79837557

That's what I get for Tribunal, and when I tried to edit the esm, regardless of whether or not I destroyed it, I did get 9999 for the number of records. So it should be working.  I'll look into the MAST and DATA a bit more because those look off even in TES3Dump. I want to be sure they are correct.

EDIT: I take that back, the DATA field is correct because Morrowind.esm is 79,837,557 bytes in size.  I'll have to see where the error is.

You know what's funny.  That DATA field, still carries over into each and every game. It's just no longer used anymore. It's just amazing to me how Bethesda recycles things and sometimes doesn't remove them. That field is a 64bit integer which explains why in Skyrim, Fallout, and every other game it's 8 00s, because it's a 64 bit integer.

Link to post
Share on other sites
2 hours ago, Sharlikran said:

Why, plain and simple, Yacoby changed the code, and now there is an error. But I know where to look it will just take me a few days to finish what I am doing and make some changes to things.

I have never tried mlox.

Yeah there is no true unicode support for Wrye Mash but I'm still using wxPython 2.8.12 Unicode anyway. The other thing is that they tried to add some unicode support. It's even in the change log. Only they just added the minimum needed and didn't actually update everything.

Once I figure out what was changed, well if I can figure it out, then I'll just change it and hopefully then you can edit the header with Yacoby's version and won't need both.


Record Header
  Signature: TES3
  Data Size: 346
  Version Control Info: 00 00 00 00
  Record Flags
Header Info
  HEDR - Header
    Version: 1.300000
    Record Flags: ESM
    Author: Bethesda Softworks
    Description: The main data file for Tribunal.
(requires Morrowind.esm to run)
    Number of Records: 9999
  Master Files
    Master File
      MAST - Filename: Morrowind.esm
      DATA - Master Size: 79837557

That's what I get for Tribunal, and when I tried to edit the esm, regardless of whether or not I destroyed it, I did get 9999 for the number of records. So it should be working.  I'll look into the MAST and DATA a bit more because those look off even in TES3Dump. I want to be sure they are correct.

EDIT: I take that back, the DATA field is correct because Morrowind.esm is 79,837,557 bytes in size.  I'll have to see where the error is.

You know what's funny.  That DATA field, still carries over into each and every game. It's just no longer used anymore. It's just amazing to me how Bethesda recycles things and sometimes doesn't remove them. That field is a 64bit integer which explains why in Skyrim, Fallout, and every other game it's 8 00s, because it's a 64 bit integer.

Yeah, you got that right Yacoby did changed the code.  You do?  Take your time I can wait, since I have been waiting for an updated WMSA for 6-7 years now and can wait another year or two if necessary.

However, since you mention it I wonder, did you find any code related to the "Tes3Cmd" menu command and why I mention it is because it's related to the automatic update mlox_rulebase feature that was added into mlox 0.59.

If you find any code related to the menu "mlox" command in the Mods tab then remove everything regarding mlox since some stuff won't work properly in mlox when selecting an option for mlox in the Mods tab in WMSA.

menu_Tes3Cmd_command.thumb.jpg.9139f8a9fe78124a28c0ea1224f61d35.jpg

Here is the discussion about the issue.

:lol: Yeah, typically Bethesda for doing stuff they only needed for one game and let it be transferred to later games without a real purpose, but somehow they seem to forgot how to remove such a thing in the later games.

 

Oh, I almost forgot to tell you that.  I wonder if you could add a popup note for the user to check the path for the Installers folder via the green disk icon in the bottom left corner, when launching WMSA 87 for the first time before clicking the Installers tab and let BAIN generate some data.

The Installers folder is the same as the Installers tab in WMSA and not having the Installers folder in the Morrowind folder then the user won't see a Installers tab in WMSA I think.  So if the user has started to install mods without checking the path for the Installers folder he/she wouldn't know for sure where the Installers folder is located, usually in the C:\Program Files(x86)\Bethesda Softworks\Morrowind folder, and that could be a real mess due to UAC in Windows.

Link to post
Share on other sites

I'm doing this for fun and learning. It's a smaller code base then Wrye Bash. However, I'm noticing that the routines where the files are renamed, where Wrye Mash checks for the time, all the places where I find Tes3Cmd , haven't changed.  If there are changes Yacoby made a change in an attempt to figure out what was going on. So he didn't know why things had changed.  Which is what I was afraid might happen. So that means I have to test the code with older versions of Python and see what is being returned. Like WrinklyNinja told me years ago I have to check the change logs. That's what Lojack did when he made that routine for getNorm to return the proper path after the changes in 2.7.8.

For example:

    @staticmethod
    def getNorm(name):
        """Return the normpath for specified name/path object."""
        if sys.version[:3] == '2.7':
            if isinstance(name,Path): return name._s
            elif not name: return name
            else: return os.path.normpath(name)
        else:
            if not name: return name
            elif isinstance(name,Path): return name._s
            else: return os.path.normpath(name)

If I do something like I have above, then I can test it in either environment with the same code and see what's happening. It's not going to be as simple as comparing their change like I had hoped.

Link to post
Share on other sites

As for testing the code with older Python versions then I suggest that you start with Python 2.6.5 then go back to Python 2.5.  Alternatively, go back to Python 2.4, if you really want to know how things looks like in the code for the original Wrye Mash 84.

I still have the old WryePython 01-08 files for WB295 or older somewhere on my HDD, not every WryePython though.  I think Python 2.6.5 belongs to the WryePython 03.exe file or was it Wrye Python 04.exe.

 

 

EDIT:  My bad, I forgot I once uploaded those Wrye Python files on GHF-DL, so grab most of them there and in particular the Wrye Python 03a since it contains Python 2.6.5.

Link to post
Share on other sites

As for version I have decided on using what Wrye put in his docs, Python 2.5 and wxPython 2.8.0.1 ANSI. Because I am fairly certain, since the folder names are different C:\Python25\ and C:\Python27\ I can have both installed at the same time. Pycharm should let me configure the version I'm using. I would just have to use different folders. Like when testing Yacoby's version I have to use say Wrye-Yacoby and Wrye-Melchor because Pycharm uses small files in a hidden folder to track what you are doing and it's only logical that it would clash if you used the same folder.

 

Link to post
Share on other sites

Sorry I'm posting so many things Leonardo, but ummm I just installed a file named BoundWeaponReplacer.ESP. I did it just to play with. I tried to change Morrowind.esm to Tribunal.esm just to see what it did.  It didn't rename Morrowind.esm.  What it did instead was, it added another file as a master. But now for both Melchor's version with 2.5 and Yacoby's version with 2.7 I can rename the extra master to whatever I want without an error. I am in Python mode though. I don't know if this would be something only due to compiling the EXE but that shouldn't matter.  I am pretty sure I was able to duplicate the error though with the compiled version. So I'll keep looking into it.  There is always a chance that it's the importing of all the modules. They way things are being done is not best practice.  You don't do either of these two things.

import bolt
from bolt import BoltError
from bolt import LString, GPath, Flags, DataDict, SubProgress

or

from bolt import *

I'll try to improve on things but can't make any promises.

Link to post
Share on other sites

There is no need to apologize, so keep me/us posted of what you find when digging deeper into the code.  I really appreciate someone like you who have the energy and inspiration to actually update Wrye Mash. :unworthy:

In your previous post you mentioned that you had issues with Melchor's WMSA when using Python 2.5.4.  What was the error you got, could you post that error please?

Link to post
Share on other sites

Leonardo, I made some changes and I want to see if it broke anything. I'm still using 87 as the version and the same file name for the zip download form GitHub.  The EXE should be different and if you need to know of some way to tell the difference, then when you right click the EXE and choose details it should be version 87 instead of 84.

Would you please test installing and uninstalling mods and sorting mods. Not the Anneal thing though. Don't do anything too fancy.  There shouldn't be any issues, but see if you notice any errors with the Icons. Like the green, blue, orange plus symbols and stuff.  Also watch for any Unicode errors. Again I'm testing with 2.5 only to look for differences between new and old versions.  I'm trying to make Wrye Mash work with 2.7.8 or higher and wxPython 2.8.12.1 Unicode.

As far as the bugs, the ones you mentioned should still be there, or not there since for me I don't have the issues I don't think, or at least not while I test using Python from Pycharm.  So don't worry about the bugs you told me about so far, just see if something mysteriously broke.

EDIT: The only difference now is that when there is an error you will get two windows. I have some more changes to make, hopefully that will go away when I do.

Link to post
Share on other sites

Yes, you actually added one improvement without breaking anything as far I can tell based on my quick test of a couple of small mod but simple mods.  I didn't want to mess with large mods such as Uvirith's Legacy, just to save some time.

What I refer to is the same feature that WB users will see in the Mods tab when uninstalling a mod in BAIN shown in this picture (look for the activated esp).  In the previous versions of Wrye Mash, I think even in the original Wrye Mash, any activated mod (esm/esp) are not removed from the mods tab properly after being uninstalled in BAIN.  Instead the user needed to right click and delete the esp in the Mods tab (then launch mlox to sort the loadorder and merge the levelled lists into the Mashed Lists.esp).

That's not good practice since a lot of Morrowind mods were often dirty and needed cleaning before using them in-game, but as often most mods were dirty then it was very easy to clean them since they only had evil GMST and Yacoby's escog become my favorite cleaning tool.

And now after installing mods then I tried to merge the levelled lists but that wasn't necessary.  After that I uninstalled all mods and every esp in Mods tab were gone, except for the Mashed Lists.esp and this is the first time it happen.  Great job Sharlikran! :horkercookie:

Yes, I did see the correct version for mash.exe, although, it says 87.0 and not 0.87. :P

I didn't notice anything regarding those things you wanted me to look for.

Link to post
Share on other sites
  • 6 months later...
On 2017-09-28 at 12:51 PM, Sharlikran said:

I posted on Fliggerty also but I'd rather just discuss it here.

And I really miss our discussion we had last year in the WMSA thread, but I understand you have issues in RL and I need to accept that.

The correct link that I quoted is this.  

http://mw.modhistory.com/forum/viewtopic.php?f=53&t=3646&start=75

Edited by Leonardo
Broken link corrected.
Link to post
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...