-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmonitor_game.ps1
More file actions
67 lines (54 loc) · 2.6 KB
/
Copy pathmonitor_game.ps1
File metadata and controls
67 lines (54 loc) · 2.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# Monitor Minecraft game log for mod loading and errors
$logPath = "G:\MinecraftGames\CTNH-BaopuEdition\.minecraft\versions\GregTech Odyssey\logs\latest.log"
Write-Host "=== Monitoring Minecraft Log ===" -ForegroundColor Cyan
Write-Host "Log file: $logPath" -ForegroundColor Gray
Write-Host ""
$lastSize = 0
$startTime = Get-Date
while ($true) {
if (Test-Path $logPath) {
$currentSize = (Get-Item $logPath).Length
if ($currentSize -gt $lastSize) {
$content = Get-Content $logPath -Tail 100
# Check for mod loading
$modLoading = $content | Select-String -Pattern "integratedindustrialcraft|Integrated Industrial" -CaseSensitive:$false
if ($modLoading) {
Write-Host "[MOD] " -ForegroundColor Green -NoNewline
$modLoading | ForEach-Object { Write-Host $_.Line }
}
# Check for XaerosWorldMap integration
$xaeromap = $content | Select-String -Pattern "xaeromap|XaerosWorldMap|pollution.*overlay" -CaseSensitive:$false
if ($xaeromap) {
Write-Host "[XAERO] " -ForegroundColor Cyan -NoNewline
$xaeromap | ForEach-Object { Write-Host $_.Line }
}
# Check for mixin application
$mixin = $content | Select-String -Pattern "GuiMapMixin|GuiMapAccessor|PollutionOverlay" -CaseSensitive:$false
if ($mixin) {
Write-Host "[MIXIN] " -ForegroundColor Yellow -NoNewline
$mixin | ForEach-Object { Write-Host $_.Line }
}
# Check for errors
$errors = $content | Select-String -Pattern "ERROR|FATAL|crash|exception" -CaseSensitive:$false
if ($errors) {
Write-Host "[ERROR] " -ForegroundColor Red -NoNewline
$errors | ForEach-Object { Write-Host $_.Line -ForegroundColor Red }
}
# Check for warnings
$warnings = $content | Select-String -Pattern "WARN.*integratedindustrialcraft|WARN.*xaeromap" -CaseSensitive:$false
if ($warnings) {
Write-Host "[WARN] " -ForegroundColor Yellow -NoNewline
$warnings | ForEach-Object { Write-Host $_.Line -ForegroundColor Yellow }
}
$lastSize = $currentSize
}
}
# Check if game is still running
$elapsed = (Get-Date) - $startTime
if ($elapsed.TotalMinutes -gt 10) {
Write-Host "`n=== Monitoring timeout (10 minutes) ===" -ForegroundColor Yellow
break
}
Start-Sleep -Milliseconds 500
}
Write-Host "`n=== Monitoring stopped ===" -ForegroundColor Cyan