A realtime GUI radar and activity tracker for Star Citizen that parses your Game.log file to provide situational awareness and statistics tracking based on advanced adaptive logic filtering. This advanced logic will also work for future unreleased content.
- Visual radar interface showing nearby players, vehicles, and transit activity
- Dynamic zoom with mouse wheel to adjust viewing distance
- Auto-centering on your position with distance rings (25m, 50m, 100m, 250m, 500m)
- Dark/Light mode toggle for comfortable viewing
- Color-coded markers for different entity types
- Optimized layout with radar taking less space for better information visibility
- Automatic player detection from game logs
- Live player status tracking (Alive, Dead, Incapacitated)
- Spawn reset detection - know when players respawn
- Player activity timeline showing when players were last seen
- Hostility detection - tracks combat interactions between players
- Dedicated player list panel with real-time status updates
- Smart scroll persistence - manually scroll through player list without auto-scroll interruption
- Vehicle detection when vehicles spawn nearby
- Destruction tracking with three states:
- Alive (fully operational)
- Softed (damaged but operational)
- FullDead (destroyed)
- Attacker identification - see who destroyed which vehicle
- Vehicle entry/exit tracking - displays your current vehicle
- Dedicated vehicle panel with status history
- Elevator/transit system monitoring (doors, carriages, lifts)
- Dungeon entrance/exit detection with customizable alerts
- Zone detection - automatically identifies your current location
- Landing zone tracking - detects station arrivals
- Transit association - links nearby players with transit activity
- Persistent kill statistics saved across sessions in
yapr_export.json- Total kills (all-time)
- Session kills (current server session)
- Separate tracking for Player kills vs NPC kills
- Dedicated Kill Tracking Panels:
- Player Kills Column: Alphabetically sorted list of all players you've eliminated
- NPC Kills Column: Session and total NPC kill counts
- Kill location tracking with radar visualization
- Kill distance and position logging
- Statistics survive application restarts - data automatically loads on startup
- JSON export of all statistics and detected zones
- Optional sound alerts for dungeon entrances
- Visual flash indicators for new detections
- Age-based color fading - newer pings are brighter
- Priority-based ping management - important events stay visible longer
- Server swap detection - automatically clears radar when changing servers
- Spawn flow tracking - monitors player respawn events
- Corpse detection - tracks player deaths
- Incapacitation events - shows when players go down
- Entity attachment tracking - advanced player detection
- Improved blacklist filtering - eliminates false player detections (doors, NPCs, system entities)
- Automatic JSON export to
yapr_export.json - Exports include:
- Kill statistics (total, NPCs, players)
- Unique players encountered
- Players you've killed (persistent list)
- All detected zones and transit locations
- Last updated timestamp
- Player name and game version
- Python 3.7 or higher
- Star Citizen installed
- Windows OS (uses
winsoundfor alerts)
- Clone the repository:
git clone https://github.com/scubamount/YAPR.git
cd yapr- Configure the log path (if needed):
Edit
yapr.pyand update theLOG_PATHvariable:
LOG_PATH = r"C:\Program Files\Roberts Space Industries\StarCitizen\LIVE\Game.log"python yapr.pyOr if you have the compiled executable:
yapr.exe- Center dot (Green): Your position
- Colored dots: Detected entities
- Yellow: Players
- Cyan: Transit/Elevator activity
- Magenta: Dungeon entrances/exits
- Orange: NPC kills
- Red: Player kills
- Green: Vehicles
- White: New/fresh detections
- Distance rings: Show scale (25m, 50m, 100m, 250m, 500m)
- Zoom level: Displayed in top left
- Compact size: Radar uses 1/3 of window width for better panel visibility
Recent Events Log
- Shows all detected events in chronological order
- Color-coded by event type
- Includes timestamps and position data
- Smart scroll: Stays at your scroll position until you return to top
Four-Column Layout:
-
Detected Players (Left Column)
- List of all players encountered
- Shows status (alive, dead, incapacitated)
- Time since last seen
- Spawn reset indicators
- Color-coded by status and age
-
Player Kills (Middle-Left Column)
- NEW: Dedicated list of players you've killed
- Alphabetically sorted
- Shows total kill count
- Persists across sessions
-
Nearby Vehicles (Middle-Right Column)
- Active vehicles in the area
- Destruction state tracking
- Who destroyed which vehicle
- Time since last update
-
NPC Kills (Right Column)
- NEW: Session NPC kill count
- Total lifetime NPC kills
- Statistics persist across sessions
Options > Dark Mode
- Toggle between dark and light themes
Options > Dungeon Sound Alert
- Enable/disable audio alerts for dungeon entrances
- Mouse Wheel: Zoom in/out on the radar
- Window Resize: Interface properly scales, radar stays proportional (1:3 ratio)
- Scroll in any text panel: Position persists until you scroll back to top
ENTITY_TIMEOUT = 580.0 # How long entities stay on radar
PING_LIFETIME = 45.0 # Standard ping duration
DUNGEON_PING_LIFETIME = 120.0 # Dungeon ping duration
NPC_KILL_LIFETIME = 45.0 # Kill marker duration
VEHICLE_TIMEOUT = 300.0 # Vehicle tracking timeout
INITIAL_SCALE = 1.2 # Starting zoom level
SOUND_COOLDOWN = 3.0 # Seconds between sound alertsThe application includes friendly names for common transit locations:
- Hangar ↔ Lobby elevators
- Ghost Arena entrances (A, B, C)
- Dungeon entrances and exits
- Station lifts and transit systems
The application tracks two types of kills:
- NPC Kills: Any AI enemies you eliminate
- Player Kills: PvP combat victories (with names)
Statistics are:
- Saved persistently to
yapr_export.jsonacross sessions - Exported automatically every 60 seconds
- Updated in real-time in dedicated UI columns
- Automatically loaded on startup - your kill history is never lost
- Session counters reset per server, lifetime totals persist forever
- Alive (0): Vehicle is fully functional
- Softed (1): Vehicle is damaged but operational
- FullDead (2): Vehicle is completely destroyed
The app automatically detects:
- Your player name from login events
- Game version from command-line parameters
- Your player ID/GEID for accurate self-filtering
When you change servers, the application:
- Attempts to detect the server swap automatically
- Clears temporary radar data
- Preserves persistent statistics (total kills remain intact)
- Resets session kill counters for new server
All text panels feature intelligent scrolling:
- Auto-scroll when at top: New content automatically appears
- Manual scroll persistence: Scroll down to read, position stays locked
- Resume auto-scroll: Scroll back to top to re-enable auto-updates
- Works on all panels: Events, Players, Vehicles, and Kill lists
The yapr_export.json file contains:
{
"last_updated": "2025-01-22T22:20:31.123456+00:00",
"player_name": "YourPlayerName",
"game_version": "4.0",
"total_kills": 150,
"npc_kills": 145,
"player_kills": 5,
"unique_transits": ["HangarLobby", "Ghost Arena A", ...],
"unique_players": ["Player1", "Player2", ...],
"players_killed": ["Victim1", "Victim2", ...],
"detected_zones": ["Stanton", "Pyro", ...]
}- Four-column layout for better information density
- Dedicated kill tracking panels for Player Kills and NPC Kills
- Persistent kill statistics that survive application restarts
- Optimized radar size (now 1/3 of window width vs 1/2)
- Better window resizing with proper proportions (radar:panel = 1:3)
- Smart scroll persistence across all text panels
- Improved player detection with enhanced blacklist filtering
- Player kill names now stored and displayed in dedicated column
- Windows Only: Uses Windows-specific sound library
- Game.log Required: Star Citizen must generate the log file
- Position Accuracy: Depends on log data availability
- English Logs: Primarily designed for English game client
- Ensure Star Citizen is installed
- Check the
LOG_PATHin the script matches your installation - The game must be running to generate the log file
- The application uses multiple detection methods
- Some players may only appear when they perform actions
- Close proximity is required for most detections
- Check if the Game.log file is being updated
- Restart Star Citizen if the log has stalled
- Verify file permissions on the log directory
- Ensure
yapr_export.jsonis in the same directory as the application - Check file permissions on the export file
- Statistics will be created automatically if file is missing
Please feel free to submit pull requests or open issues for bugs and feature requests.
The codebase is organized into several sections:
- CONFIG: Configuration constants
- REGEX PATTERNS: Log parsing patterns
- SHARED STATE: Application state management
- HELPERS: Utility functions
- FILE TAILER: Log file reader
- PARSER: Main log parsing logic
- UI: Tkinter interface with responsive layout
ALL RIGHTS RESERVED
SC Referral code: STAR-X9TD-9G29
https://www.patreon.com/dotyerts
This tool only reads the Game.log file and does not modify any game files or memory. It provides no gameplay advantages beyond what's visible in the log file. Use at your own discretion.
Star Citizen is a trademark of Cloud Imperium Games Corporation.