minis-patchers / SynWeaponKeywords

Weapon keywords patcher for various mods
4 stars 5 forks source link

no longer patching dai-katana names after latest update. #27

Open NRogue opened 3 months ago

NRogue commented 3 months ago

I have Katana Crafting installed in my game and it no longer recognizes the dai-katanas despite common names in settings including the proper words. The katanas and wakizashis are working fine, it's the dai-katanas that are no longer working and I have no idea why.

Minizbot2012 commented 3 months ago

I updated this to use OCF (Object categorization framework) as it is more modern. Without logs, I cannot even begin to fix this either.

AxielT commented 3 months ago

Can you share the old version if you still have it? The new version is causing problems with my installation

Minizbot2012 commented 3 months ago

With the patching framework changes... hmm... there's an option in the config to disable auto-patching, but getting and retrofitting the old DB is gonna be harder @AxielT. What kind of issues are you having, and is there a way I can somehow fix it for more people rather than just one?

AxielT commented 3 months ago

This condition for spear was working before the update:'''("Update.esm" | 0x777770)'''. Now only the keyword from SpearMechanic works, or from other mods. Dai Katanas are also broken. Other weapons are fine, I don't understand why.

Minizbot2012 commented 3 months ago

Can you upload a log from the last run of the patcher? (This is likely related to the OCF thing I did, as I replaced a whole bunch of older keywords with the unified ones from OCF)

AxielT commented 3 months ago

Here: SynWeaponKeywords.txt

Minizbot2012 commented 3 months ago

Ahh... I see, you're running an old version of the database, I am gonna have to work around old installs of the database, somehow...

AxielT commented 3 months ago

I understand. I hope you can make it. Thanks for the effort!

Minizbot2012 commented 3 months ago

I did some work to add a DB Patcher version marker... it'll clear the DB and replace it if it is mismatched between versions.

AxielT commented 3 months ago

I get error :/

image

Minizbot2012 commented 3 months ago

I had jd in my system path, I did not realize it wouldn't work in the directory as I had to specify the full path to JD for users, apologies, try now ;).

Edit: As a note I am likely to change the way this thing patches the DB in the near future, again

AxielT commented 3 months ago

Unfortunately spears and Dai-katanas are still broken :/ I guess it won't be solved without using the new keywords. At least most other weapons are fine. Thank you for your efforts!

Minizbot2012 commented 3 months ago

Yeah, should prolly convert your DAR / OAR mods to use OCF and install OCF, I could include other keywords as a legacy mode though.... the source of the keywords doesn't really matter, just that the name matches for me :)

AxielT commented 3 months ago

That would be nice, thanks!

Minizbot2012 commented 3 months ago

Legacy keywords and sources have been added to the Database, just re-run (I still highly recommend doing the OCF stuff eventually)

AxielT commented 3 months ago

I added the necessary OCF keywords to my installation. I left the rest as it is, is it OK? Thank you very much for all your efforts!

AxielT commented 3 months ago

Everything's working perfectly now. Thank you very much!

Minizbot2012 commented 3 months ago

May or may not help that I readded the legacy stuff. I'm already working on the some of the new database update framework stuff (I'm excited as it's written in rust and should have a fairly seamless integration path now that a lot of the prerequisites for this thing are now working perfectly, as a bonus it should all be fairly atomic)... but everything should just work for the moment.

One of the things I am going to be able to do with this is have a "core" database maintained by me and then using the same official patch format users will be able to merge in patches adding different weapons to the database or adding various different keywords to weapons without conflicting badly, and it'll all be managed in rust and cleanup almost all of the mess this C# code now has. As yet another bonus user changes in the ui will be saved as yet another patch file, and even Skyrim data folder patches will be able to viewed in the ui as if it was merged globally. There's a lot I want to do with this second codebase in rust.

AxielT commented 3 months ago

Even though I don't understand much, what you're saying looks wonderful. I hope you can do what you want. Good luck!

AxielT commented 3 months ago

Hello again, a friend of mine is getting errors in the new version. Do you know why?
SynWeaponKeywords (1).txt

Minizbot2012 commented 3 months ago

This looks to be an error with many plugins he has installed... it almost looks like a form of either A) file-system corruption to my eyes (dealt with it myself a couple of times)... or B) a super-hyperactive anti-virus locking files in use.

Gonna guess super-hyper AV, even skyrim.esm has a problem

AxielT commented 3 months ago

Specifically, only your patch wasn't working. The others were fine. Is there any way to fix this?

Minizbot2012 commented 3 months ago

Well for one your friend should / needs to look at their dotnet install this line says as much

System.IO.FileNotFoundException: Could not load file or assembly 'System.Linq.Expressions, Version=7.0.0.0, Culture=neutral, 
[65.7] File name: 'System.Linq.Expressions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'

I build my patchers with dotnet 7 as it is supported by the dotnet 8 sdk... this is a critical file in the dotnet sdk (is a dll) and shouldn't be erroring like this... and I make fairly heavy use of Linq in my patcher, so this is sadly on your friend, not me. (Tell him to install the dotnet 8 sdk and retry). why the 8 sdk? Its the next version being used as mutagen's standard.

AxielT commented 3 months ago

Ok, reinstalling dotnet 8 SDK fixed it. Thanks for your help!

Minizbot2012 commented 3 months ago

Yeah... dotnet is a bit of a dll-hell situation, especially around versions of the SDK...