Tired of all looted weapons being broken? Then this is the mod for you! For STCoM, including Weapon Degradation + FOV fix!
- Call of Misery 1.0d fix 2
- STCoM Ideally... But not actually required
HOW TO INSTALL:
Drop the gamedata folder in your Call of Misery directory, before or after STCoM, should be compatible with any mod that doesn't change death_manager.script.
1.0 - Release
1.1 - Added Weapon Degradation + FOV fix
1.2 - Fixed MP-412 Rex not having any (or enough) zoom
- Weapon Degradation + FOV fixes:
- Adjusts the rate in which most weapons degrade, some are lower, some are raised and some left untouched. I tried to balance it out realistically and none are exaggerated, for example the Vintorez will no longer degrade at 0.8% per shot!
- FOV fix just fixes some inconsistencies, like the TT33 having no zoom at all (when other pistols have some zoom) and some weapons not having enough zoom which made them awkward to use (Kar98, SVT-40, scopeless-SVD, some shotguns, etc.)
If you prefer no zoom at all, try SashaReds FOV edit here.
TL;DR: Makes it possible to loot weapons off NPCs that aren't always in low condition.
In Call of Misery (and Misery by itself), the condition of weapons dropped by enemies are determined by this section of death_manager:
function set_weapon_drop_condition(npc,itm) local condition = (math.random(40)+5)/100 --printf("condition [%s]", tostring(condition)) itm:set_condition(condition)
What this code does is basically use a random number generator to produce a number between 6 and 45 and set that as the condition. Meaning that the highest possible condition you can ever find a weapon is 45% and lowest is 6%. The reason for this is for balance apparently, so you can't get rich off selling weapons, but I thought this to be unrealistic. With how often you find gun cleaning items, you'd think even lowly bandits would at least a tiny amount of maintenance, no? Maybe the gun took a bullet in the firefight, sure, but I don't think that's quite a common occurrence irl.
I changed the algorithm to what I personally think is more realistic and at least somewhat balanced:
function set_weapon_drop_condition(npc,itm) local rng = math.random(100) local condition if (rng <= 5) then condition = math.random(80,100)/100 --Good Condition 5% chance elseif (rng <= 55) then condition = math.random(65,80)/100 --Average condition 50% chance elseif (rng <= 85) then condition = math.random(25,65)/100 --Poor condition 30% chance else condition = math.random(25)/100 --Destroyed condition 15% chance end --printf("condition [%s]", tostring(condition)) itm:set_condition(condition)
What this does is determine the quality by a roll of the dice, there is a 5% chance to find a weapon in excellent condition (80-100% condition), 50% to find one in average condition (65-80% condition), 30% to find one in poor condition (25-65%) and 15% to find one practically destroyed (1-15%).
Mind that this does not affect weapon distribution and quality types (low level bandits will still carry Worn and Rusty guns, some will have actually been maintained, for example.)
It's up to you if this affects balance or not, personally I don't think its very cheat-like, but for those who want it then there it is.