Despite my warnings, the items below are generally safe to use - if not a little buggy/unexpected behavior with different combinations. Turning them off and restarting the game should fix things.
Base Range : Game stores a static range of 5000 that does not change. Scaling is performed off this value.
Scan Bonus: Any Bonuses to Scan are used here. Default starts at 1 (100%). Convert Percentages to decimal and add to the Default. For Example D.U.M.A lvl 4 is 2.5 (250%). Prefer to use this to modify the scan range.
Scan Distance: Since the Base Range is used for other things, this is where you can check your active distances. This section is read only. r^2 is important below.
Scan Check 1: Remember Pythagorean Theorem? Or the Circle Formula? This is what is going on here. The A and B values are squared and compared to your R squared value. If the distance is larger
(Default when enabled), the asset being scanned is abandoned.
Set to a lower number (0) to disable. Changed to a simple Enable/Disable in the next version.
Scan Check 2 : Absolute values. +Radius and -Radius is compared to distance. If the distance to the asset is larger
(Default when enabled), the scan is abandoned.
Set to a lower number (0) to disable. Changed to a simple Enable/Disable in the next version.
Scan Detected Handler: Once an asset is detected, this routine handles all the things that are related to the detection, such as the pings and map icons.
Set to 0 will prevent any assets from being detected. Changed to a simple Enable/Disable in the next version.
For those of you interested in the assembly:
Some values are pushed to the stack. Be very careful about locking any values you find. I have a helper that I used to find code that writes/accesses under the scan distance, but it only works when you set brakes between the sections you expect the value to exist.
There are a few things in Scan Check 2 (not the script) I don't understand, the distance starts as 10,000 but then goes thru a complex call that causes a distance value to be returned. I don't know why, but I don't think it can be the maximum range since D.U.M.A lvl 4 is 12,500. It also doesn't seem to do anything if I change the value (the 10,000) before the call.
Scan Check 2 (First two calls related to distance(?), xmm6 is the value, third call loads radius, unsure what the final call is for):
The call in the Scan Detected Handler (not the script) is a crazy mess. I think it uses a lot of generic methods (possibly related to asset data), which causes any breaks within that section to be unrelated to what your actively searching for. I'm not really sure where to go on with this, but if you want to help this is where I'm in over my head. Scan Detected Handler: