Mod Details

Meaningful Weapon Masteries

Meaningful Weapon Masteries 1.0.6

Created by  ehaugw

10.8K Downloads

SPT 3.11.0 Compatible

Make weapon mastery improve your aim, reload and malfunction fix speeds.

Latest Version 1.0.6
SPT 3.11.0

Updated Oct 5, 11:09 AM

0.0 MB

Version Notes

Decrease accuracy bonus from 15% to 10% per mastery level, up to 20% total. Revert to patching the Delta function rather than Base function to be more consistent with BSG design principles.

This download is externally hosted.
Always scan for viruses.

Did you know that in the official EFT, you gain 5% movement speed while aiming down the sights per weapon mastery of the used weapon? This mod extends this advantage to also give 5% aiming speed, reload speed and malfunction fix speed per mastery level.

Thanks to CJ for pointing out the function where this stuff happens.

Version 1.0.6
Download Mod Version
SPT 3.11.0
Latest Compatible SPT Version

0.0 MB

480 Downloads

Created Oct 5, 9:09 AM

Updated Oct 5, 11:09 AM

Virus Total Results

Decrease accuracy bonus from 15% to 10% per mastery level, up to 20% total. Revert to patching the Delta function rather than Base function to be more consistent with BSG design principles.

Version 1.0.5
Download Mod Version
SPT 3.11.0
Latest Compatible SPT Version

0.0 MB

299 Downloads

Created Oct 3, 2:49 PM

Updated Oct 3, 4:48 PM

Virus Total Results

15% reduced MOA per mastering, not for multi projectile rounds. Now patches CenterOfImpactBase

Version 1.0.2
Download Mod Version
SPT 3.11.4
Latest Compatible SPT Version

4.2K Downloads

Created Jul 7, 2:19 PM

Updated Jul 7, 2:19 PM

Virus Total Results

actually build and publish the archive

Version 1.0.1
Download Mod Version
SPT 3.11.4
Latest Compatible SPT Version

1.0K Downloads

Created Jul 1, 3:10 PM

Updated Jul 1, 3:10 PM

Virus Total Results

Changed the name of a GClass to match 3.11. Not backwards compatible with 3.10

Version 1.0.0
Download Mod Version
Unknown SPT Version
Latest Compatible SPT Version

4.8K Downloads

Created Jan 28, 9:21 PM

Updated Jan 28, 9:21 PM

Virus Total Results
Prometheus

Interesting - 15% MOA feels like a lot per level, but maybe I’m crazy. Did you choose this after testing because 5% felt too small, maybe?

0 Likes

It’s a lot. I never tested with 5%, but I have tested with 0%. The justification for this is that Tarkov implemented MOA as radius rather than diameter, meaning that its twice of IRL. This feature helps us get closer to the IRL experience. That being said, I’m considering to drop it to 10% or even 5%

1 Like
hellchickens

Once I was debugging issues with FIKA raid termination and devs told me that ur mod can cause that because of missing sync for headless. Have u tried it and will u do smth about it? Just I’m not sure that that was really the root cause or at least the only one

0 Likes

I haven’t noticed any issues with Fika from this alone, and I don’t use it on the headless client. Which I think makes sense: the headless client is mainly just responsible for AI decisions, and I don’t expect this mod to affect any of that (unless AI PMCs have different skill/mastery levels… maybe). Just my two cents.

1 Like

Mmmm, the main problem here is that there are mods that elaborate the “stats” on bots and also there is not only bot logic, but there is whole map and player state sync with headless, so different “values” for same things may lead (and leads in most cases) for desyncs and incorrect calculations. Mostly it’s valid for server + client mods, though I’ve already faced few times headless problems with only client mods that have no sync, even if it installed both on actual playing client and headless. So my intention here is to validate if there are any known (or possible by design) issues with headless client or not

0 Likes

Fair enough. For what it’s worth, my group has had stable / normal experiences w/ headless Fika; we run ~53 server mods, ~71 client mods, and ~17 headless mods. There are a couple exceptions (e.g. WTT Pack ‘n Strap), but pretty much the only mods on the headless client are AI mods and mods that explicitly include headless support (UI Fixes, Battle Ambiance, etc). No reported desyncs, even with a couple larger overhaul mods (but we don’t run Realism, FWIW).

0 Likes

I’ve been playing with this mod for ages with my friend on FIKA without issues. The only new thing is the accuracy update, which we have only been testing for a day. I always assume all clients, headless included, use the same mod, and in that case I don’t see how this could cause any issues.

0 Likes
ShadowRaptor

Would it be possible to make a config for this in order to toggle things like reload speed on or off? I’ve been trying to debug why i cannot unload or reload some mags and the most common thing i’ve found for reasons is that the unloading/loading speed modifier is too high, and with my mag drills being elite i’m guessing that’s the culprit (namely this mod and that not being very happy about the speeds combining into super-soldier like speedloading and breaking the entire mechanic as a whole)

0 Likes

It’s better to make a mod that caps the reload speed to not go below a critical threshold

0 Likes
20fpsguy

hi i just noticed this inside my Bepinex conolse is this safe to ignore?

[Error : Unity Log] TypeLoadException: Could not resolve type with token 01000014 from typeref (expected class ‘GClass1981’ in assembly ‘’)

Stack trace:

System.Reflection.MonoMethodInfo.GetMethodInfo (System.IntPtr handle) (at <8ce0bd04a7a04b4b9395538239d3fdd8>:0)

System.Reflection.RuntimeMethodInfo.GetPseudoCustomAttributes () (at <8ce0bd04a7a04b4b9395538239d3fdd8>:0)

System.MonoCustomAttrs.GetPseudoCustomAttributes (System.Reflection.ICustomAttributeProvider obj, System.Type attributeType) (at <8ce0bd04a7a04b4b9395538239d3fdd8>:0)

System.MonoCustomAttrs.GetCustomAttributesBase (System.Reflection.ICustomAttributeProvider obj, System.Type attributeType, System.Boolean inheritedOnly) (at <8ce0bd04a7a04b4b9395538239d3fdd8>:0)

System.MonoCustomAttrs.GetCustomAttributes (System.Reflection.ICustomAttributeProvider obj, System.Type attributeType, System.Boolean inherit) (at <8ce0bd04a7a04b4b9395538239d3fdd8>:0)

System.MonoCustomAttrs.GetCustomAttributes (System.Reflection.ICustomAttributeProvider obj, System.Boolean inherit) (at <8ce0bd04a7a04b4b9395538239d3fdd8>:0)

System.Reflection.RuntimeMethodInfo.GetCustomAttributes (System.Boolean inherit) (at <8ce0bd04a7a04b4b9395538239d3fdd8>:0)

HarmonyLib.PatchTools+<>c__DisplayClass2_0.<GetPatchMethod>b__0 (System.Reflection.MethodInfo m) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)

System.Linq.Enumerable.TryGetFirst[TSource] (System.Collections.Generic.IEnumerable1\[T\] source, System.Func2[T,TResult] predicate, System.Boolean& found) (at <a314714511a14f84b853c03efd8682b8>:0)

System.Linq.Enumerable.FirstOrDefault[TSource] (System.Collections.Generic.IEnumerable1\[T\] source, System.Func2[T,TResult] predicate) (at <a314714511a14f84b853c03efd8682b8>:0)

HarmonyLib.PatchTools.GetPatchMethod (System.Type patchType, System.String attributeName) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)

HarmonyLib.PatchClassProcessor..ctor (HarmonyLib.Harmony instance, System.Type type, System.Boolean allowUnannotatedType) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)

HarmonyLib.PatchClassProcessor..ctor (HarmonyLib.Harmony instance, System.Type type) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)

HarmonyLib.Harmony.CreateClassProcessor (System.Type type) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)

HarmonyLib.Harmony.<PatchAll>b__11_0 (System.Type type) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)

HarmonyLib.CollectionExtensions.Do[T] (System.Collections.Generic.IEnumerable1\[T\] sequence, System.Action1[T] action) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)

HarmonyLib.Harmony.PatchAll (System.Reflection.Assembly assembly) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)

HarmonyLib.Harmony.PatchAll () (at <474744d65d8e460fa08cd5fd82b5d65f>:0)

MeaningfulWeaponMasteries.MeaningfulWeaponMasteries.Awake () (at <680dd0bb6c2840cc8746cfa98a758794>:0)

UnityEngine.GameObject:AddComponent(Type)

BepInEx.Bootstrap.Chainloader:Start()

UnityEngine.Application:.cctor()

Sirenix.Serialization.UnitySerializationInitializer:Initialize()

Sirenix.Serialization.UnitySerializationInitializer:InitializeRuntime()

1 Like

Yes, absolutely. It means that I forgot to build the project before I published the new version. I’m sorry for the inconvenience

0 Likes
drippin jimmy

This is so huge! thank you so much

0 Likes
ColdFish

hey there will this mod be updated for 3.11? much love

0 Likes

Should be working now

1 Like
Alkiroth

Thanks for this mod! Would it be possible to add a small buff to recoil control as well?

1 Like

It should be possible. I’ll look into it

0 Likes
Merlin

Is this compatible with Realism?

0 Likes

Technically, this mod doesn’t change anything. It just adds additional behavior. Thus, it is compatible with everything. If it doesn’t work with Realism, it’s Realism not being compatible with this mod.

That being said, it does excessive null checking and will fail gracefully if installed together with incompatible mods

0 Likes

Incompatibility isn’t one way 🙂that being said if they don’t work well together I’m open to making changes on my end or helping you make them on yours

0 Likes
NateCheez

Is there anyway to configure this mod to increase meaningfulness?

0 Likes

Nope. I don’t have the habit of creating configs

0 Likes
McDewgle

Will this mod conflict with CJ’s Skills Extended mod?

0 Likes

No. It will work just fine

0 Likes

Details