diff --git a/AutoTrackR2/KillTrackR_MainScript.ps1 b/AutoTrackR2/KillTrackR_MainScript.ps1
index 3f2294a..4edc7ee 100644
--- a/AutoTrackR2/KillTrackR_MainScript.ps1
+++ b/AutoTrackR2/KillTrackR_MainScript.ps1
@@ -205,186 +205,195 @@ function Read-LogEntry {
 		$weapon = $matches['Weapon']
 		$damageType = $matches['DamageType']
 		$ship = $global:loadOut
-	
-	If ($enemyShip -eq $global:lastKill){
-		$enemyShip = "Passenger"
-	} Else {
-		$global:lastKill = $enemyShip
-	}
 
-	If (($player -eq $global:userName -and $enemyPilot -ne $global:userName) -and ($enemyPilot -notlike "PU_*" -and $enemyPilot -notlike "NPC_*")){
-		If ($enemyShip -match $cleanupPattern){
-			$enemyShip = $matches[1]
-		}
-		If ($weapon -match $cleanupPattern){
-			$weapon = $matches[1]
-		}
-		If ($weapon -eq "KLWE_MassDriver_S10"){
-			$global:loadOut = "AEGS_Idris"
-			$ship = "AEGS_Idris"
-		}
-		if ($damageType -like "*bullet*") {
-			$ship = "Player"
-		}
-		If ($ship -match $cleanupPattern){
-			$ship = $matches[1]
-		}
-		if ($ship -notmatch $shipManPattern){
-			$ship = "Player"
-		}
-		If ($enemyShip -notmatch $shipManPattern) {
-			$enemyShip = "Player"
-		}
-			
-			# Repeatedly remove all suffixes
-			while ($enemyShip -match '_(PU|AI|CIV|MIL|PIR)$') {
-				$enemyShip = $enemyShip -replace '_(PU|AI|CIV|MIL|PIR)$', ''
-			}
-			# Repeatedly remove all suffixes
-			while ($ship -match '_(PU|AI|CIV|MIL|PIR)$') {
-				$ship = $ship -replace '_(PU|AI|CIV|MIL|PIR)$', ''
-			}
-
-			$KillTime = (Get-Date).ToUniversalTime().ToString("d MMM yyyy H:mm 'UTC'")
+		Try {
 			$page1 = Invoke-WebRequest -uri "https://robertsspaceindustries.com/citizens/$enemyPilot"
-			
-			# Get Enlisted Date
-			if ($($page1.content) -match $joinDatePattern) {
-				$joinDate = $matches[1]
-				$joinDate2 = $joinDate -replace ',', ''
-			} else {
-				$joinDate2 = "-"
-			}
+		} Catch {
+			$page1 = $null
+		}
 
-			# Check if there are any matches
-			$enemyOrgs = $page1.links[3].innerHTML
-
-			if ($null -eq $enemyOrgs) {
-				$enemyOrgs = "-"
-			}
-
-			# Get UEE Number
-			if ($($page1.content) -match $ueePattern) {
-				# The matched UEE Citizen Record number is in $matches[1]
-				$citizenRecord = $matches[1]
-			} else {
-				$citizenRecord = "-"
-			}
-			If ($citizenRecord -eq "n/a") {
-				$citizenRecordAPI = "-1"
-				$citizenRecord = "-"
+		If ($null -ne $page1){
+	
+			If ($enemyShip -eq $global:lastKill){
+				$enemyShip = "Passenger"
 			} Else {
-				$citizenRecordAPI = $citizenRecord
+				$global:lastKill = $enemyShip
 			}
 
-			# Get PFP
-			$victimPFP = "https://robertsspaceindustries.com$($page1.images[0].src)"
-
-			Write-Output "NewKill=throwaway,$enemyPilot,$enemyShip,$enemyOrgs,$joinDate2,$citizenRecord,$killTime,$victimPFP"
-
-			$GameMode = $GameMode.ToLower()
-			# Send to API
-			# Define the data to send
-			If ($null -ne $apiUrl -and $offlineMode -eq $false){
-				$data = @{
-					victim_ship		= $enemyShip
-					victim			= $enemyPilot
-					enlisted		= $joinDate
-					rsi				= $citizenRecordAPI
-					weapon			= $weapon
-					method			= $damageType
-					loadout_ship	= $ship
-					game_version	= $GameVersion
-					gamemode		= $GameMode
-					trackr_version	= $TrackRver
+			If ($player -eq $global:userName -and $enemyPilot -ne $global:userName){
+				If ($enemyShip -match $cleanupPattern){
+					$enemyShip = $matches[1]
 				}
-
-				# Headers which may or may not be necessary
-				$headers = @{
-					"Authorization" = "Bearer $apiKey"
-					"Content-Type" = "application/json"
-					"User-Agent" = "AutoTrackR2"
+				If ($weapon -match $cleanupPattern){
+					$weapon = $matches[1]
 				}
-
-				try {
-					# Send the POST request with JSON data
-					Invoke-RestMethod -Uri $apiURL -Method Post -Body ($data | ConvertTo-Json -Depth 5) -Headers $headers
-					$logMode = "API"
-				} catch {
-					# Catch and display errors
-					$apiError = $_
-					# Add to output file
-					$logMode = "Err-Local"
+				If ($weapon -eq "KLWE_MassDriver_S10"){
+					$global:loadOut = "AEGS_Idris"
+					$ship = "AEGS_Idris"
+				}
+				if ($damageType -like "*bullet*") {
+					$ship = "Player"
+				}
+				If ($ship -match $cleanupPattern){
+					$ship = $matches[1]
+				}
+				if ($ship -notmatch $shipManPattern){
+					$ship = "Player"
+				}
+				If ($enemyShip -notmatch $shipManPattern) {
+					$enemyShip = "Player"
 				}
-			} Else {
-				$logMode = "Local"
-			}
 			
-			# Define the output CSV path
-			$csvPath = "$scriptFolder\Kill-log.csv"
+				# Repeatedly remove all suffixes
+				while ($enemyShip -match '_(PU|AI|CIV|MIL|PIR)$') {
+					$enemyShip = $enemyShip -replace '_(PU|AI|CIV|MIL|PIR)$', ''
+				}
+				# Repeatedly remove all suffixes
+				while ($ship -match '_(PU|AI|CIV|MIL|PIR)$') {
+					$ship = $ship -replace '_(PU|AI|CIV|MIL|PIR)$', ''
+				}
 
-			# Create an object to hold the data
-			$killData = [PSCustomObject]@{
-				KillTime         = $killTime
-				EnemyPilot       = $enemyPilot
-				EnemyShip        = $enemyShip
-				Enlisted         = $joinDate2
-				RecordNumber     = $citizenRecord
-				OrgAffiliation   = $enemyOrgs
-				Player           = $player
-				Weapon           = $weapon
-				Ship             = $ship
-				Method           = $damageType
-				Mode             = $GameMode
-				GameVersion      = $GameVersion
-				TrackRver		 = $TrackRver
-				Logged			 = $logMode
-			}
-
-			# Export to CSV
-			if (-Not (Test-Path $csvPath)) {
-				# If file doesn't exist, create it with headers
-				$killData | Export-Csv -Path $csvPath -NoTypeInformation
-			} else {
-				# Append data to the existing file
-				$killData | Export-Csv -Path $csvPath -Append -NoTypeInformation
-			}
-
-			$sleeptimer = 10
-
-			# VisorWipe
-			If ($visorwipe -eq $true -and $enemyShip -ne "Passenger" -and $damageType -notlike "*Bullet*"){
-				# send keybind for visorwipe
-				start-sleep 1
-				$sleeptimer = $sleeptimer -1
-				&"$scriptFolder\visorwipe.ahk"
-			}
+				$KillTime = (Get-Date).ToUniversalTime().ToString("d MMM yyyy H:mm 'UTC'")
 			
-			# Record video
-			if ($recording -eq $true -and $enemyShip -ne "Passenger"){
-				# send keybind for windows game bar recording
-				Start-Sleep 2
-				$sleeptimer = $sleeptimer -9
-				&"$scriptFolder\videorecord.ahk"
-				Start-Sleep 7
+			
+				# Get Enlisted Date
+				if ($($page1.content) -match $joinDatePattern) {
+					$joinDate = $matches[1]
+					$joinDate2 = $joinDate -replace ',', ''
+				} else {
+					$joinDate2 = "-"
+				}
 
-				$latestFile = Get-ChildItem -Path $videoPath | Where-Object { -not $_.PSIsContainer } | Sort-Object CreationTime -Descending | Select-Object -First 1
-				# Check if the latest file is no more than 10 seconds old
-				if ($latestFile) {
-					$fileAgeInSeconds = (New-TimeSpan -Start $latestFile.CreationTime -End (Get-Date)).TotalSeconds
-					if ($fileAgeInSeconds -le 10) {
-						# Generate a timestamp in ddMMMyyyy-HH:mm format
-						$timestamp = (Get-Date).ToString("ddMMMyyyy-HHmm")
+				# Check if there are any matches
+				$enemyOrgs = $page1.links[3].innerHTML
+
+				if ($null -eq $enemyOrgs) {
+					$enemyOrgs = "-"
+				}
+
+				# Get UEE Number
+				if ($($page1.content) -match $ueePattern) {
+					# The matched UEE Citizen Record number is in $matches[1]
+					$citizenRecord = $matches[1]
+				} else {
+					$citizenRecord = "-"
+				}
+				If ($citizenRecord -eq "n/a") {
+					$citizenRecordAPI = "-1"
+					$citizenRecord = "-"
+				} Else {
+					$citizenRecordAPI = $citizenRecord
+				}
+
+				# Get PFP
+				$victimPFP = "https://robertsspaceindustries.com$($page1.images[0].src)"
+
+				Write-Output "NewKill=throwaway,$enemyPilot,$enemyShip,$enemyOrgs,$joinDate2,$citizenRecord,$killTime,$victimPFP"
+
+				$GameMode = $GameMode.ToLower()
+				# Send to API
+				# Define the data to send
+				If ($null -ne $apiUrl -and $offlineMode -eq $false){
+					$data = @{
+						victim_ship		= $enemyShip
+						victim			= $enemyPilot
+						enlisted		= $joinDate
+						rsi				= $citizenRecordAPI
+						weapon			= $weapon
+						method			= $damageType
+						loadout_ship	= $ship
+						game_version	= $GameVersion
+						gamemode		= $GameMode
+						trackr_version	= $TrackRver
+					}
+
+					# Headers which may or may not be necessary
+					$headers = @{
+						"Authorization" = "Bearer $apiKey"
+						"Content-Type" = "application/json"
+						"User-Agent" = "AutoTrackR2"
+					}
+
+					try {
+						# Send the POST request with JSON data
+						Invoke-RestMethod -Uri $apiURL -Method Post -Body ($data | ConvertTo-Json -Depth 5) -Headers $headers
+						$logMode = "API"
+					} catch {
+						# Catch and display errors
+						$apiError = $_
+						# Add to output file
+						$logMode = "Err-Local"
+					}
+				} Else {
+					$logMode = "Local"
+				}
+			
+				# Define the output CSV path
+				$csvPath = "$scriptFolder\Kill-log.csv"
+
+				# Create an object to hold the data
+				$killData = [PSCustomObject]@{
+					KillTime         = $killTime
+					EnemyPilot       = $enemyPilot
+					EnemyShip        = $enemyShip
+					Enlisted         = $joinDate2
+					RecordNumber     = $citizenRecord
+					OrgAffiliation   = $enemyOrgs
+					Player           = $player
+					Weapon           = $weapon
+					Ship             = $ship
+					Method           = $damageType
+					Mode             = $GameMode
+					GameVersion      = $GameVersion
+					TrackRver		 = $TrackRver
+					Logged			 = $logMode
+				}
+
+				# Export to CSV
+				if (-Not (Test-Path $csvPath)) {
+					# If file doesn't exist, create it with headers
+					$killData | Export-Csv -Path $csvPath -NoTypeInformation
+				} else {
+					# Append data to the existing file
+					$killData | Export-Csv -Path $csvPath -Append -NoTypeInformation
+				}
+
+				$sleeptimer = 10
+
+				# VisorWipe
+				If ($visorwipe -eq $true -and $enemyShip -ne "Passenger" -and $damageType -notlike "*Bullet*"){
+					# send keybind for visorwipe
+					start-sleep 1
+					$sleeptimer = $sleeptimer -1
+					&"$scriptFolder\visorwipe.ahk"
+				}
+			
+				# Record video
+				if ($recording -eq $true -and $enemyShip -ne "Passenger"){
+					# send keybind for windows game bar recording
+					Start-Sleep 2
+					$sleeptimer = $sleeptimer -9
+					&"$scriptFolder\videorecord.ahk"
+					Start-Sleep 7
+
+					$latestFile = Get-ChildItem -Path $videoPath | Where-Object { -not $_.PSIsContainer } | Sort-Object CreationTime -Descending | Select-Object -First 1
+					# Check if the latest file is no more than 10 seconds old
+					if ($latestFile) {
+						$fileAgeInSeconds = (New-TimeSpan -Start $latestFile.CreationTime -End (Get-Date)).TotalSeconds
+						if ($fileAgeInSeconds -le 10) {
+							# Generate a timestamp in ddMMMyyyy-HH:mm format
+							$timestamp = (Get-Date).ToString("ddMMMyyyy-HHmm")
         
-						# Extract the file extension to preserve it
-						$fileExtension = $latestFile.Extension
+							# Extract the file extension to preserve it
+							$fileExtension = $latestFile.Extension
 
-						# Rename the file, preserving the original file extension
-						Rename-Item -Path $latestFile.FullName -NewName "$enemyPilot.$enemyShip.$timestamp$fileExtension"
+							# Rename the file, preserving the original file extension
+							Rename-Item -Path $latestFile.FullName -NewName "$enemyPilot.$enemyShip.$timestamp$fileExtension"
+						} else {}
 					} else {}
-				} else {}
+				}
+				Start-Sleep $sleeptimer
 			}
-			Start-Sleep $sleeptimer
 		}
 	}