morerokk / IreNFist

A continuation/fix of the IreNFist mod for PAYDAY 2
MIT License
4 stars 2 forks source link

(Bug?) Previously "cosmetic" weapon parts now have stats #84

Closed MrVavlo closed 3 years ago

MrVavlo commented 3 years ago

20201106123824_1 20201106123841_1 20201106123847_1

I thought that it was intended, but

    -- Thrust Primus
    self.parts.wpn_fps_upg_ass_m4_upper_reciever_core.stats = deep_clone(nostats)
    -- Thrust Secundus
    self.parts.wpn_fps_upg_ass_m4_lower_reciever_core.stats = deep_clone(nostats)

they still have no stats in .lua. Did something wrong happened when you moved custom parts in separate file, or is it just me?

morerokk commented 3 years ago

Can you upload your BLT Log? I moved all custom weapon parts to a new file. If an error happens anywhere in this file, it will silently eat the error as opposed to putting your game in a crashloop. I thought that was preferable, but there might still be some local variables that I missed which can ironically cause these things to happen.

Upload your BLT log here and I can pinpoint which mod is causing the issues and I can fix it.

morerokk commented 3 years ago

Actually scratch that, that particular weaponmod is vanilla and oughta not be causing issues to begin with.

Can you still upload your BLT log so I can pinpoint any fatal errors that may have happened?

MrVavlo commented 3 years ago

Alright. This one?

2020_11_06_log.txt

morerokk commented 3 years ago

Is this the most recent log? This isn't showing anything weird for me. It's like wpn_parts was never even hooked.

It works fine on my end as well.

Can you close PAYDAY 2, delete or backup your log files, start the game, close it, then upload the latest one again? The game sometimes doesn't flush the log file correctly.

morerokk commented 3 years ago

I also just now realized that I changed the mod priority in InF's mod.txt (for Autofire soundfix compatibility). If any other mods overwrite these part stats, they will write right over InF's changes like they never happened.

Can you open the InF mod.txt file and set mod priority from 12 to -1? If that fixes it, this is a mod conflict issue of some sort.

MrVavlo commented 3 years ago

Ok, so I just changed the mod priority, and that fixed the issue... but I don't recall myself using any mods that affect vanilla stats' parts. Anyway, here's the fresh log, I only started the game after changing mod' priority. 2020_11_06_log.txt

morerokk commented 3 years ago

That's slightly worrying.

This could mean that another mod in your mods or mod_overrides folder either removes the "infpartstats" posthook, or another mod defines a posthook with the same ID name. If you have Notepad++, I recommend using the "Find in files" function to look for infpartstats in .lua files in your mods folder, and in your mod_overrides folder. Example:

image

The only result you should find is IREnFIST. If you find any other mods, they're the culprit.

I'll try changing the posthook name in a bit to see if that fixes it.

MrVavlo commented 3 years ago

Nope, there's no results aside IREnFIST in both folders.

morerokk commented 3 years ago

Very worrying.

I pushed another update which just finished building. Can you update ingame and tell me if that fixes it?

I can't exactly change the mod priority back because it'll break Autofire Soundfix (which makes all weapons fully silent).

MrVavlo commented 3 years ago

Just updated it - didn't work, stats on those parts are back now

morerokk commented 3 years ago

Is it only those parts?

Try searching for wpn_fps_upg_ass_m4_upper_reciever_core in the same way, both in your mods folder and mod_overrides. I'm willing to bet another mod has a PostHook which overrides the stats of these parts. That's the only explanation I can give.

morerokk commented 3 years ago

Actually, make sure to also search for WeaponFactoryTweakData:init, which will sniff out any mods which override the whole weaponfactorytweakdata function. There might be one which does it incorrectly. If you find any, can you link those mods to me?

MrVavlo commented 3 years ago

The only mod that have WeaponFactoryTweakData:init is SSO. But I also checked for wpn_fps_upg_ass_m4_upper_reciever_core and I found out that I have this mod installed. ... Guess I'll remove it for testing.

EDIT: Well, since I can't delete it without crashing for some reason, I added in Silent Enforcer' mod priority value (16) - and it solved the issue.

morerokk commented 3 years ago

The "Improved Weapon Modification" mod does indeed change the stats of various M4 parts, including the lower/upper receivers. It's got a whole bunch of lines like these:

self.parts.wpn_fps_upg_ass_m4_upper_reciever_core.stats = {value = 4, spread = -2, damage = 7}

Technically I can't fix this (the fix is removing the conflicting mod), but I might end up reverting the mod.txt priority change in InF which would work around silly issues like these. If I can get that working with Autofire sound fix, I will do that.

MrVavlo commented 3 years ago

Well, that mod is 2 years old anyway, and there was no prority in mod.txt at all, so I can let it aside and try to delete that mod... ...or add prioity myself... Anyway, guess the issue is solved.

morerokk commented 3 years ago

I reverted the priority changes (and added AFSF compatibility), so this issue should be fixed regardless, even with that other mod using the original priority values.