If you have more than one item classified as a mine detector in your inventory, the function determining what your mine detection range is seems to exit with the first mine detector found and uses it's detection range instead of trying to see if there are other mine detectors in the player's inventory with a better range.
This is especially problematic when there are items in the players inventory that use the mine detector category as a workaround to show up in Arsenal's "Misc. Items" section on uniforms / vests / backpacks.
Here is an example config of an item (from ACE3) using the above mentioned workaround:
class CfgWeapons {
class ItemCore; class ACE_ItemCore: ItemCore { type = 4096; detectRange = -1; simulation = "ItemMineDetector"; };
};
If an item inheriting from the above class was added to the players inventory before the actual mine detector, your mine detector is essentially not working (as your detection range will be -1).
Ideally all items in the player's inventory should be searched and the mine detector with the best detection range chosen.
At the very minimum, mine detectors with a negative detection range should be ignored, or a "Misc. Item" category added that shows up in Arsenal (see #23925).
Related to #23921.