← Back to Blog

Visited Systems Tracking: Remember Where You've Been in New Eden

EVE Frontier's universe is vast—over 7,000 star systems spread across dozens of regions. As you explore, mine, fight, and trade, you naturally accumulate spatial history: which systems you've visited, how many times, and when.

Before the Visited Systems Tracking feature, that history lived only in your memory. Now, EF-Map remembers for you—visualizing your exploration footprint directly on the 3D star map, tracking both all-time stats and individual play sessions.

This post explains how Visited Systems works, how it integrates with the EF Helper overlay, and how players are using it to plan efficient routes and measure exploration progress.

The Problem: Forgotten Systems and Redundant Travel

Scenario 1: Exploration Surveying

You're mapping wormhole chains, scanning down signatures in dozens of systems. After 3 hours, you can't remember: "Did I already scan System X? Or was that yesterday?"

Without tracking, you either:

Scenario 2: Mining Routes

Your corporation has a 20-system mining circuit. You want to visit each system once per session, extracting ore then moving on. But after 15 jumps, you lose track: "Have I been to System Y this session?"

Without tracking:

Scenario 3: Territory Familiarization

You join a new alliance and need to learn their 12-system home territory. You want to visit each system at least once to memorize the gate layout.

Without tracking:

The Solution: Visited Systems Tracking

EF-Map now tracks two types of visit history:

  1. All-Time Tracking: Persistent record of every system you've ever visited (toggle on/off)
  2. Session Tracking: Temporary record for a single play session (start/stop manually)

Both integrate with the EF Helper desktop app, which monitors your EVE Frontier client's log files to detect system jumps automatically—no manual logging required.

How It Works: Log File Monitoring

EF Helper: The Bridge Between Game and Map

The EF Helper is a Windows desktop app that:

The web app polls this API every 2 seconds (when tracking visualization is enabled) and displays visit counts as orange halos around stars.

Automatic Detection: No Manual Logging

When you jump to a new system in-game, EVE Frontier writes a log entry:

[2025-10-23 14:32:15] Player entered system: Jita (30000142)

EF Helper's log watcher tails the file, parses this line, and increments the visit counter:

void LogWatcher::onLogEntry(const std::string& line) {
  std::regex systemPattern(R"(Player entered system: (.+) \((\d+)\))");
  std::smatch match;
  
  if (std::regex_search(line, match, systemPattern)) {
    std::string systemName = match[1].str();
    std::string systemId = match[2].str();
    
    // Record visit in all-time tracker (if enabled)
    if (sessionTracker_->isAllTimeTrackingEnabled()) {
      sessionTracker_->recordSystemVisitAllTime(systemId, systemName);
    }
    
    // Record visit in active session (if exists)
    if (sessionTracker_->hasActiveSession()) {
      sessionTracker_->recordSystemVisitSession(systemId, systemName);
    }
  }
}

Result: Completely hands-free tracking—just play the game, and the helper records your path.

All-Time Tracking: Persistent Exploration History

Enable All-Time Tracking

In the web app's Helper panel:

  1. Ensure EF Helper is running and connected
  2. Toggle "Enable all-time tracking"
  3. The helper creates %LocalAppData%\EFOverlay\data\visited_systems.json

From this point forward, every system you visit is recorded.

Data Structure

{
  "version": 1,
  "tracking_enabled": true,
  "last_updated_ms": 1730000000000,
  "systems": {
    "30000142": {
      "name": "Jita",
      "visits": 47
    },
    "30000144": {
      "name": "Perimeter",
      "visits": 23
    }
  }
}

Fields:

Visualization: Orange Halos

When you enable "Show visited systems on map" in the web app, stars you've visited render with an orange outer ring:

 ●  ← Unvisited system (default blue)
 ◉  ← Visited system (orange halo)

Hover over a visited system to see:

Jita (30000142)
Visited: 47 times

This gives you instant spatial awareness—at a glance, you know which regions you've explored.

Reset All-Time Data

If you want to start fresh (e.g., new character, new tracking period):

  1. Click "Reset All-Time" in the Helper panel
  2. Confirm the prompt
  3. All-time visit data is cleared (JSON file emptied)

Sessions remain unaffected—they're separate.

Session Tracking: Temporary Play Session Records

What is a Session?

A session is a bounded time period you manually start and stop. Use sessions to track:

Sessions are independent of all-time tracking—you can run a session with all-time tracking disabled.

Start a Session

In the Helper panel:

  1. Click "Start Session"
  2. The helper creates session_YYYYMMDD_HHMMSS.json (e.g., session_20251023_143022.json)
  3. Visit counter starts at 0

Session data structure:

{
  "version": 1,
  "session_id": "session_20251023_143022",
  "start_time_ms": 1729712202000,
  "end_time_ms": 0,
  "active": true,
  "systems": {
    "30000142": {
      "name": "Jita",
      "visits": 2
    }
  }
}

Stop a Session

When you're done:

  1. Click "Stop Session"
  2. The helper sets active: false and writes end_time_ms
  3. Session file is saved permanently

You can later view historical sessions via the session dropdown.

View Session History

The Helper panel shows a dropdown of all sessions (newest first):

📊 Session History
┌──────────────────────────────────────┐
│ Active Session (2 systems visited)  │
│ 2025-10-23 14:30 (15 systems)       │
│ 2025-10-22 09:15 (8 systems)        │
│ 2025-10-21 20:45 (12 systems)       │
│ ...                                  │
└──────────────────────────────────────┘

Select a session to visualize only those visits on the map (orange halos disappear for unvisited systems).

Session Use Case: Mining Circuit Verification

Goal: Visit 20 specific mining systems exactly once per session.

Workflow:

  1. Start a new session
  2. Visit each mining system in your route
  3. Check the map—systems you've visited show orange halos
  4. At the end, stop the session
  5. Review session history: "20 systems visited" ✅

If you see 21 systems, you revisited one accidentally. If 19, you missed one.

Integration with Follow Mode

What is Follow Mode?

Follow Mode is another EF Helper feature that syncs your current in-game location to the web app in real-time. When enabled:

How Follow Mode + Visited Systems Work Together

When both features are enabled:

  1. You jump to a new system in-game
  2. EF Helper detects the jump (via log file)
  3. Visit count increments
  4. Follow Mode broadcasts your new location
  5. The map auto-centers on the new system
  6. Orange halo appears (new visit recorded)

Result: A live exploration tracker—the map visually traces your path through space as you play.

Privacy and Data Storage

Local-Only Storage

All visit data is stored locally on your PC:

%LocalAppData%\EFOverlay\data\
  ├── visited_systems.json       (all-time data)
  ├── session_20251023_143022.json
  ├── session_20251022_091500.json
  └── ...

Zero server upload. The web app polls the helper's localhost API (http://127.0.0.1:38765/session/visited-systems) but never sends visit data to EF-Map servers.

Anonymous Aggregates Only

EF-Map's usage telemetry tracks only:

We never log:

Your exploration history is yours alone.

Performance Considerations

Polling Frequency

The web app polls the helper API every 2 seconds when visualization is enabled:

useEffect(() => {
  if (!showVisitedSystems || !helperConnected) return;
  
  const interval = setInterval(async () => {
    const response = await fetch('http://127.0.0.1:38765/session/visited-systems?type=all');
    if (response.ok) {
      const data = await response.json();
      setVisitedSystemIds(new Set(Object.keys(data.systems)));
    }
  }, 2000);
  
  return () => clearInterval(interval);
}, [showVisitedSystems, helperConnected]);

Overhead: <1ms per poll. The helper serves cached JSON from memory—no disk I/O on each request.

Rendering Overhead

Orange halos are rendered as instanced meshes (same technique as the starfield). Adding halos to 500 visited systems adds ~2ms to frame time—negligible.

API Endpoints (Helper)

EF Helper exposes these HTTP endpoints:

GET /session/visited-systems?type=all

Returns all-time tracking data.

Response:

{
  "version": 1,
  "tracking_enabled": true,
  "last_updated_ms": 1730000000000,
  "systems": {
    "30000142": { "name": "Jita", "visits": 47 }
  }
}

GET /session/visited-systems?type=active-session

Returns currently active session (404 if none).

Response:

{
  "version": 1,
  "session_id": "session_20251023_143022",
  "start_time_ms": 1729712202000,
  "active": true,
  "systems": {
    "30000142": { "name": "Jita", "visits": 2 }
  }
}

GET /session/visited-systems?type=session&session_id=X

Returns specific session by ID.

POST /session/visited-systems/toggle

Toggles all-time tracking on/off.

POST /session/visited-systems/reset-all

Clears all-time visit data.

POST /session/start-session

Starts a new session.

Response:

{
  "session_id": "session_20251023_143022",
  "start_time_ms": 1729712202000
}

POST /session/stop-session

Stops the active session.

Future Enhancements

Planned Features

Community Requests

Troubleshooting

"Tracking not updating"

Cause: Helper not running or not connected.

Fix:

  1. Check Helper panel—should show "Connected"
  2. If disconnected, launch ef-overlay-helper.exe
  3. Enable "Show visited systems on map" to trigger polling

"Orange halos don't appear"

Cause: Visualization toggle is off.

Fix: In the Helper panel, enable "Show visited systems on map".

"Session dropdown is empty"

Cause: No sessions have been started yet.

Fix: Click "Start Session", visit a few systems, then stop the session. It will appear in the dropdown.

"Visit count is wrong"

Cause: Log file parsing missed a jump (rare).

Fix: Manually trigger a re-sync by toggling tracking off/on. If persistent, check helper logs (%LocalAppData%\EFOverlay\logs\helper.log) for parse errors.

Real-World Use Cases

Mining Corporation "Ore Haulers Inc."

Goal: Rotate through 25 mining systems, visiting each exactly once per day.

Workflow:

  1. Start session at beginning of shift
  2. Mine in each system for 15 minutes
  3. Check map—orange halos show progress
  4. At end of day, stop session
  5. Review: "25 systems visited" ✅

Result: Eliminated double-visits (wasted time) and missed systems (lost income).

Explorer "Captain Wanderer"

Goal: Scan all wormhole systems in a J-space chain before it collapses.

Workflow:

  1. Start session
  2. Scan down each system, record signatures
  3. Use visited halos to avoid re-scanning
  4. When chain collapses, stop session
  5. Export session JSON for corp intel sharing

Result: 30% faster survey (no redundant scans).

Alliance Patrol "Border Guard"

Goal: Patrol all 18 border systems every 4 hours.

Workflow:

  1. Start session at patrol start
  2. Visit each border system, check local
  3. Orange halos mark checked systems
  4. Stop session, confirm "18 systems visited"

Result: Zero missed systems—full coverage every patrol.

How to Get Started

Step 1: Install EF Helper

Download from https://ef-map.com (Helper panel → Install button) or Microsoft Store.

Step 2: Launch Helper

Run ef-overlay-helper.exe. It will appear in the system tray.

Step 3: Connect in Web App

Open EF-Map → Helper panel → should show "Connected".

Step 4: Enable Tracking

Toggle "Enable all-time tracking" and "Show visited systems on map".

Step 5: Play EVE Frontier

Jump to a system. Within 2-4 seconds, an orange halo should appear.

You're now tracking your exploration!

Related Posts

Visited Systems Tracking transforms EF-Map from a static reference tool into a live exploration companion—remembering where you've been so you can focus on where you're going next. Try it on your next mining run or exploration survey!

visited systemssession trackinghelper bridgevisualizationexploration history