I like playing with content mods, and I don't like wrestling with symlinks to get tes3cmd to work. So I wrote https://github.com/jmelesky/omwllf.
It uses the same pattern as tes3cmd -- process your mods, then generate a new "load it last" mod. But, it reads your openmw.cfg and uses that to make the list of esm/esp/omwaddon files to merge. Then it creates the new mod in your OpenMW-CS mod directory, so it automatically appears in your list in the launcher.
At least, that's what it does in theory. And on my machine. But testing would be lovely, because it almost certainly has problems that I haven't anticipated. In particular, I don't have easy access to a Windows machine to try it on.
At any rate, please try it out, and please give me feedback. Thanks in advance!
OpenMW leveled list fixer
Re: OpenMW leveled list fixer
I'm going to try this later tonight with a few mods I've been wanting to test in OpenMW, and if I can get it to work as intended I'd like to take a stab at making a GUI for it. I have coding experience with Java, VB.NET, and PHP, but I'm still a bit lost at seas with your code. I need to pick up some knowledge of Python anyway, so with your permission and guidance, I'd like to try converting this to IronPython and use GTK for a GUI, assuming I can learn to follow your code.
TTYL, hopefully
TTYL, hopefully
Re: OpenMW leveled list fixer
Hm. IronPython is still stuck in python 2, while this was written for python 3 -- there might be more porting than you'd expect. And it would mean requiring Mono (or bundling it).
I've been considering writing a GUI for it, myself, though I was leaning towards tkinter. It's simple, cross-platform, and is part of the python standard library. If I had a GUI, I'd use one of the python packagers out there to make a .exe and .app as a single file download for Windows and OSX, respectively.
That said, feel free to work on it. It's open source for that reason! If you beat me to it, you get the glory.
I've been considering writing a GUI for it, myself, though I was leaning towards tkinter. It's simple, cross-platform, and is part of the python standard library. If I had a GUI, I'd use one of the python packagers out there to make a .exe and .app as a single file download for Windows and OSX, respectively.
That said, feel free to work on it. It's open source for that reason! If you beat me to it, you get the glory.
Re: OpenMW leveled list fixer
Thanks for replying so quickly... I spotted the IronPython legacy problem, and there are .NET tools for Python 3 which I just installed, so making it Mono compatible should in theory be trivial. It sounds like you're already at work on a GUI. The race is on!
Re: OpenMW leveled list fixer
uh, so i installed my mods the openMW way and have them in the .cfg
and i have the launcher load order ... played a few hours of it and was like "dang the leveled lists of these mods isnt right, but meh, but i wanna fix it"
and i installed python 3.01 (maybe i shoulda got 3.0? but the site said bugfix 3.0.1 so was like "okay i guess its just a bugfix, so ill get that")
and then i ran cmd (iam on Windows 8.1)
and then i dragged the python.exe to cmd and dragged this .py file into cmd and ran it and it says
line 133
yield record
Syntax Error: 'return' with argument inside generator
and i have the launcher load order ... played a few hours of it and was like "dang the leveled lists of these mods isnt right, but meh, but i wanna fix it"
and i installed python 3.01 (maybe i shoulda got 3.0? but the site said bugfix 3.0.1 so was like "okay i guess its just a bugfix, so ill get that")
and then i ran cmd (iam on Windows 8.1)
and then i dragged the python.exe to cmd and dragged this .py file into cmd and ran it and it says
line 133
yield record
Syntax Error: 'return' with argument inside generator
- AnyOldName3
- Posts: 2678
- Joined: 26 Nov 2015, 03:25
Re: OpenMW leveled list fixer
If something says it requires Python 3, it means it will work with any Python version where the major version number is 3, so anything between 3.0 and 3.6.1 should work. However, there have been improvements over time, including bug fixes, so you should really be using the latest version.
Re: OpenMW leveled list fixer
So sorry you're running into that problem!
As AnyOldName3 says, "python 3" means "any python > 3.0", but it looks like that specific error means that it requires "any python > 3.3". I'll update my documentation appropriately.
In the meantime, though, I do recommend that you give it a try with the most recent available release. Please let me know if you have any further problems.
And thanks for using my code!
As AnyOldName3 says, "python 3" means "any python > 3.0", but it looks like that specific error means that it requires "any python > 3.3". I'll update my documentation appropriately.
In the meantime, though, I do recommend that you give it a try with the most recent available release. Please let me know if you have any further problems.
And thanks for using my code!
Re: OpenMW leveled list fixer
okay! yep! i got it to work with python 3.6.1
and i see different mods items at a trader in game!
thanks!
for other people that might need the info:
python.exe for 3.6.1 is found in (for windows 8.1 at least) .... after you download and install it...
Users/<name>/appdata/local/programs/python/python36
and in windows you type
cmd in search cmd.exe ... the command prompt
and then you drag python.exe in there, make a space
and then drag this omwllf.py file in there, and press enter,
after following the instructions in the readme
easy peesy
and i see different mods items at a trader in game!
thanks!
for other people that might need the info:
python.exe for 3.6.1 is found in (for windows 8.1 at least) .... after you download and install it...
Users/<name>/appdata/local/programs/python/python36
and in windows you type
cmd in search cmd.exe ... the command prompt
and then you drag python.exe in there, make a space
and then drag this omwllf.py file in there, and press enter,
after following the instructions in the readme
easy peesy
Re: OpenMW leveled list fixer
Any chance we could get this functionality rolled into the launcher?
Re: OpenMW leveled list fixer
The 1st stage would be to port this utiliy from Python to C++, I guess. But it's better to flesh out the Python version first.