Tom_Neverwinter icon

Hawken resolution and server launcher

Tom_Neverwinter | PRO | 04/17/23 06:38:01 AM UTC (Edited) | 0 ⭐ | 1932 👁️ | Never ⏰ | []
PowerShell |

5.32 KB

|

None

|

0 👍

/

0 👎

cls
Write-Host "Hawken Launcher" -ForegroundColor Green
Write-Host "=================================="
 
$resX = 1920
$resY = 1080
$gameMode = "Robots.R_TeamDeathmatch"
$timeLimit = 10
$goalScore = 40
 
do {
    Write-Host "Choose an option:"
    Write-Host "1) Change screen resolution"
    Write-Host "2) Set up a Hawken server"
    Write-Host "3) Start Hawken with selected settings"
    Write-Host "4) Exit"
    Write-Host "=================================="
    $mainChoice = Read-Host "Enter your choice (1-4)"
 
    switch ($mainChoice) {
        1 {
            do {
                cls
                Write-Host "Hawken Resolution Changer" -ForegroundColor Green
                Write-Host "=================================="
                Write-Host "Choose a screen resolution:"
                Write-Host "1) 1280x720"
                Write-Host "2) 1366x768"
                Write-Host "3) 1600x900"
                Write-Host "4) 1920x1080"
                Write-Host "5) 2560x1440"
                Write-Host "6) 3840x2160"
                Write-Host "7) Back to main menu"
                Write-Host "=================================="
                $resChoice = Read-Host "Enter your choice (1-7)"
 
                switch ($resChoice) {
                    1 { $resX = 1280; $resY = 720; break }
                    2 { $resX = 1366; $resY = 768; break }
                    3 { $resX = 1600; $resY = 900; break }
                    4 { $resX = 1920; $resY = 1080; break }
                    5 { $resX = 2560; $resY = 1440; break }
                    6 { $resX = 3840; $resY = 2160; break }
                    7 { break }
                }
            } while ($resChoice -eq 7)
        }
        2 {
            do {
                cls
                Write-Host "Hawken Server Setup - Game Mode" -ForegroundColor Green
                Write-Host "=================================="
                Write-Host "Choose a game mode:"
                Write-Host "1) Team Deathmatch"
                Write-Host "2) Deathmatch"
                Write-Host "3) Back to main menu"
                Write-Host "=================================="
                $gameModeChoice = Read-Host "Enter your choice (1-3)"
 
                switch ($gameModeChoice) {
                    1 { $gameMode = "Robots.R_TeamDeathmatch"; break }
                    2 { $gameMode = "Robots.R_Deathmatch"; break }
                    3 { break }
                }
 
                if ($gameModeChoice -ne 3) {
                    do {
                        cls
                        Write-Host "Hawken Server Setup - Time Limit" -ForegroundColor Green
                        Write-Host "=================================="
                        Write-Host "Choose a time limit:"
                        Write-Host "1) 10 minutes"
                        Write-Host "2) 15 minutes"
                        Write-Host "3) 20 minutes"                        
                        Write-Host "4) Back to game mode menu"
                        Write-Host "=================================="
                        $timeChoice = Read-Host "Enter your choice (1-4)"
 
                        switch ($timeChoice) {
                            1 { $timeLimit = 10; break }
                            2 { $timeLimit = 15; break }
                            3 { $timeLimit = 20; break }
                            4 { break }
                        }
 
                        if ($timeChoice -ne 4) {
                            do {
                                cls
                                Write-Host "Hawken Server Setup - Goal Score" -ForegroundColor Green
                                Write-Host "=================================="
                                Write-Host "Choose a goal score:"
                                Write-Host "1) 40 points"
                                Write-Host "2) 60 points"
                                Write-Host "3) 80 points"
                                Write-Host "4) Back to time limit menu"
                                Write-Host "=================================="
                                $scoreChoice = Read-Host "Enter your choice (1-4)"
 
                                switch ($scoreChoice) {
                                    1 { $goalScore = 40; break }
                                    2 { $goalScore = 60; break }
                                    3 { $goalScore = 80; break }
                                    4 { break }
                                }
                            } while ($scoreChoice -eq 4)
                            break
                        }
                    } while ($timeChoice -eq 4)
                    break
                }
            } while ($gameModeChoice -eq 3)
        }
        3 {
            Write-Host "Starting Hawken with $resX x $resY resolution, game mode $gameMode, time limit $timeLimit minutes, and goal score $goalScore..."
            Start-Process -FilePath ".\HawkenGame-Win32-Shipping.exe" -ArgumentList "-FULLSCREEN -resx=$resX -resy=$resY", "Server Sahara_DM_E3?NumPublicConnections=16?GoalScore=$goalScore?TimeLimit=$timeLimit?bIsLanMatch=True?game=$gameMode -log"
            break
        }
        4 { exit }
    }
} while ($mainChoice -ne 4)
 

Comments