Published November 4, 2025 • 6 min read
Scouts in EVE Frontier know the frustration: you've just checked every system within 10 light-years of your current position, haven't found what you're looking for, and now need to search further out. The problem? If you simply increase your search radius to 20 light-years, you'll re-check all those same systems you just visited.
Today we're introducing range-based filtering to the Scout Optimizer—a simple but powerful enhancement that lets you specify a minimum and maximum distance from your starting point, so you can focus your search on unexplored outer regions without wasting time on areas you've already covered.
The Problem: Inefficient Progressive Search
The typical scout workflow looks like this:
- Set a starting system and search radius (e.g., 10 LY)
 - Scout Optimizer collects all systems within that bubble
 - Run optimization, visit all systems, find nothing interesting
 - Expand search to 20 LY... but now you're re-checking 10 LY of already-visited systems
 
This is inefficient. Scouts were forced to choose between:
- Manual exclusion: Note which systems they'd already checked and avoid them (tedious and error-prone)
 - Wasteful re-checks: Just accept that half their next route would revisit old ground
 - Mental math: Try to calculate which systems fall in the 10-20 LY band (impractical with hundreds of candidates)
 
Users were vocal about this pain point. One scout put it perfectly: "I want to search the outer ring without including the inner circle I just finished."
The Solution: Min-Max Range Input
The fix is conceptually simple: instead of only accepting a maximum radius, the Scout Optimizer now supports a range with both minimum and maximum bounds.
How It Works
The same input field that previously accepted a single number (like 20) now also accepts range notation:
- Single number: 
20→ collects systems from 0-20 LY (backward compatible) - Range with hyphen: 
10-20→ collects only systems from 10-20 LY - Range with spaces: 
10 - 20→ same result (whitespace tolerant) 
The placeholder text now reads: "Max Radius (LY) or Range (e.g., 10-20)" to guide users on the new format.
First pass: Enter 10 → Scout Optimizer collects 47 systems within 10 LY, you visit them all, no luck.
Second pass: Enter 10-20 → Scout Optimizer now collects only the 63 systems in the 10-20 LY band—none of which you've already visited.
Third pass: Enter 20-30 → Expand to the next ring, again excluding everything you've already checked.
Edge Cases and Validation
The parser handles several edge cases gracefully:
0-20→ Valid (equivalent to20)10-10→ Valid (systems at exactly 10 LY)20-10→ Invalid (min > max) → shows "No systems collected"-5-10→ Invalid (negative values not allowed)- Empty input → Falls back to region mode or shows no collection
 
The validation ensures that both values are positive, finite numbers, and that the minimum doesn't exceed the maximum.
Implementation: Minimal, Backward Compatible
This feature required only a small code change—about 25 lines modified in the ScoutOptimizer component. The key insight was that the distance check in the system collection logic is simple geometry:
// Before: single max radius
const r = parseFloat(radius);
return distance <= r;
// After: min-max range
const range = parseRadiusInput(radius);
return distance >= range.min && distance <= range.max;
The parseRadiusInput helper function detects whether the input contains a hyphen (range format) or is just a number (legacy format), and returns { min, max } bounds. Single numbers are treated as { min: 0, max: value } to maintain backward compatibility.
Because the input is parsed at collection time and stored as a raw string in session storage, there were no persistence changes required. Existing bookmarks and saved sessions continue to work exactly as before.
Why This Matters
This isn't just a convenience feature—it fundamentally changes how scouts can approach systematic exploration:
1. Fuel Efficiency
By excluding already-visited inner regions, scouts can optimize routes that only cover new ground. This means:
- Shorter total route distance
 - Less fuel consumed per expedition
 - More systems visited per tank of fuel
 
2. Time Savings
No more manually tracking which systems you've already checked. The range filter does the spatial math for you, instantly excluding the inner zones.
3. Systematic Coverage
Scouts can now methodically expand outward in concentric shells:
- 0-10 LY: Initial sweep
 - 10-20 LY: First expansion
 - 20-30 LY: Second expansion
 - And so on...
 
This creates a mental map of "I've fully scouted everything within 20 LY of my base" that's impossible to achieve with simple max-radius filtering.
4. Resource Discovery Optimization
When hunting for specific resources or wormholes, scouts can use intelligence from their first pass to inform the second:
- Inner ring had low resource density? Expand the search.
 - Specific asteroid types only found at 15+ LY? Start your next search at 15-25 LY.
 - Gate access patterns suggest interesting systems further out? Jump straight to 25-35 LY.
 
User Feedback: "This is exactly what we needed"
We deployed this feature to a preview branch and invited a few active scouts to test it. The response was immediate and enthusiastic:
"Finally! I've been doing this manually for weeks—now it's just one input field."
"The 10-20 format is obvious once you see the placeholder. Took me 5 seconds to figure it out."
"This saves me probably 20 minutes per scouting session. I can actually plan systematic sweeps now."
The feature went from user request to production deployment in under two hours—and it's already changing how scouts operate in the field.
What's Next
This enhancement opens the door to several future improvements:
- Visited system integration: Automatically exclude systems you've already visited (tracked via the Visited Systems feature)
 - Range presets: Quick-select buttons for common ranges like "Next 10 LY ring"
 - Visual feedback: Highlight the selected range band on the 3D map before running optimization
 - Multi-range support: Collect multiple non-contiguous bands (e.g., "10-15 and 25-30") for complex search patterns
 
Try It Now
Range filtering is live in production on ef-map.com. To use it:
- Open the Routing panel
 - Switch to the Scout Optimizer tab
 - Enter a range like 
10-20in the radius field - Watch the system count update to show only the outer band
 - Run optimization and scout the unexplored frontier
 
For more on how the Scout Optimizer works under the hood, check out our deep dive on the genetic algorithm approach to solving the traveling salesman problem in space.
Related Features
- Visited Systems Tracking—Remember where you've been across sessions
 - Scout Optimizer Deep Dive—How multi-waypoint optimization works
 - User Overlay—See your optimized route directly in-game via DirectX overlay
 - Follow Mode—Keep the map centered on your in-game position while scouting