-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrun.bat
More file actions
240 lines (213 loc) · 8.29 KB
/
run.bat
File metadata and controls
240 lines (213 loc) · 8.29 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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
@echo off
setlocal enabledelayedexpansion
:: Check for administrator privileges
net session >nul 2>&1
if %errorLevel% neq 0 (
echo This script requires administrator privileges.
echo Please right-click and select "Run as administrator"
pause
exit /b 1
)
:: === AUTO PLAYTIME RUNNER WITH VIRTUAL ENVIRONMENT ===
echo.
echo ======================================================
echo AUTO PLAYTIME - ROBLOX RIVALS LAUNCHER
echo ======================================================
echo By: Eman
echo Discord: https://discord.gg/W5DgDZ4Hu6
echo ======================================================
echo.
:: === CONFIGURATION ===
set "SCRIPT=AutoPlaytime.py"
set "REQUIREMENTS=requirements.txt"
set "VENV_NAME=.venv"
set "PYTHON_INSTALLER=python-3.12.1-amd64.exe"
set "PYTHON_URL=https://www.python.org/ftp/python/3.12.1/%PYTHON_INSTALLER%"
:: === SCRIPT PATH ===
set "SCRIPTPATH=%~dp0"
cd /d "%SCRIPTPATH%"
:: === VIRTUAL ENVIRONMENT PATHS ===
set "VENV_DIR=%SCRIPTPATH%%VENV_NAME%"
set "VENV_PYTHON=%VENV_DIR%\Scripts\python.exe"
set "VENV_PIP=%VENV_DIR%\Scripts\pip.exe"
set "VENV_ACTIVATE=%VENV_DIR%\Scripts\activate.bat"
:: === PYTHON PATHS ===
set "PYTHON_DIR1=%ProgramFiles%\Python312"
set "PYTHON_EXE1=%PYTHON_DIR1%\python.exe"
set "PYTHON_DIR2=%LocalAppData%\Programs\Python\Python312"
set "PYTHON_EXE2=%PYTHON_DIR2%\python.exe"
:: === CHECK IF VIRTUAL ENVIRONMENT EXISTS AND IS WORKING ===
if exist "%VENV_PYTHON%" (
echo [*] Virtual environment found. Testing...
"%VENV_PYTHON%" --version >nul 2>&1
if !errorlevel! equ 0 (
echo [+] Virtual environment is working!
goto install_deps
) else (
echo [!] Virtual environment is corrupted. Recreating...
rmdir /s /q "%VENV_DIR%" >nul 2>&1
)
)
:: === FIND PYTHON INSTALLATION ===
echo [*] Looking for Python 3.12 installation...
if exist "%PYTHON_EXE1%" (
set "PYTHON_EXE=%PYTHON_EXE1%"
set "PYTHON_DIR=%PYTHON_DIR1%"
echo [+] Python 3.12 found at %PYTHON_EXE%
goto create_venv
)
if exist "%PYTHON_EXE2%" (
set "PYTHON_EXE=%PYTHON_EXE2%"
set "PYTHON_DIR=%PYTHON_DIR2%"
echo [+] Python 3.12 found at %PYTHON_EXE%
goto create_venv
)
:: === INSTALL PYTHON IF NOT FOUND ===
echo [!] Python 3.12 not found. Installing automatically...
echo [*] Downloading Python installer...
curl -L --progress-bar -o "%SCRIPTPATH%%PYTHON_INSTALLER%" "%PYTHON_URL%"
if !errorlevel! neq 0 (
echo [ERROR] Failed to download Python installer!
echo Please download Python 3.12 manually from: https://python.org
pause
exit /b 1
)
echo [*] Installing Python 3.12 (this may take a few minutes)...
"%SCRIPTPATH%%PYTHON_INSTALLER%" /passive InstallAllUsers=0 PrependPath=1 Include_test=0 Include_doc=0
echo [*] Waiting for installation to complete...
:wait_install
timeout /t 3 >nul
if exist "%PYTHON_EXE2%" (
set "PYTHON_EXE=%PYTHON_EXE2%"
set "PYTHON_DIR=%PYTHON_DIR2%"
goto install_success
)
if exist "%PYTHON_EXE1%" (
set "PYTHON_EXE=%PYTHON_EXE1%"
set "PYTHON_DIR=%PYTHON_DIR1%"
goto install_success
)
echo [*] Still installing... Please wait...
goto wait_install
:install_success
echo [+] Python installation completed!
del "%SCRIPTPATH%%PYTHON_INSTALLER%" >nul 2>&1
:create_venv
:: === CREATE VIRTUAL ENVIRONMENT ===
echo [*] Creating virtual environment...
"%PYTHON_EXE%" -m venv "%VENV_DIR%"
if !errorlevel! neq 0 (
echo [ERROR] Failed to create virtual environment!
echo Make sure Python venv module is available.
pause
exit /b 1
)
echo [+] Virtual environment created successfully!
:install_deps
:: === UPGRADE PIP IN VIRTUAL ENVIRONMENT ===
echo [*] Upgrading pip in virtual environment...
"%VENV_PYTHON%" -m pip install --upgrade pip --quiet
if !errorlevel! neq 0 (
echo [WARNING] Failed to upgrade pip, continuing anyway...
)
:: === INSTALL REQUIREMENTS ===
if exist "%SCRIPTPATH%%REQUIREMENTS%" (
echo [*] Installing dependencies from %REQUIREMENTS%...
"%VENV_PYTHON%" -m pip install -r "%SCRIPTPATH%%REQUIREMENTS%" --quiet
if !errorlevel! neq 0 (
echo [ERROR] Failed to install some dependencies!
echo Trying to continue anyway...
) else (
echo [+] All dependencies installed successfully!
)
) else (
echo [WARNING] Requirements file not found: %REQUIREMENTS%
)
:: === INSTALL AHK AND CHOCOLATEY ===
echo [*] Installing AHK and Chocolatey packages...
echo [*] Installing ahk[binary] package...
"%VENV_PYTHON%" -m pip install "ahk[binary]" --quiet
if !errorlevel! neq 0 (
echo [WARNING] Failed to install ahk[binary] package, continuing with alternative setup...
)
echo [*] Installing Chocolatey...
powershell -Command "Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))"
if !errorlevel! neq 0 (
echo [WARNING] Chocolatey installation may have failed, continuing...
)
echo [*] Installing AutoHotkey via Chocolatey...
choco install autohotkey -y >nul 2>&1
if !errorlevel! equ 0 (
echo [+] AutoHotkey installed successfully via Chocolatey!
) else (
echo [WARNING] AutoHotkey installation via Chocolatey failed, trying alternative method...
)
echo [*] Adding AHK to PATH...
for /f "delims=" %%i in ('where /r "C:\Program Files" AutoHotkey.exe 2^>nul') do set "AHK_PATH=%%~dpi"
if defined AHK_PATH (
powershell -Command "[Environment]::SetEnvironmentVariable('Path', [Environment]::GetEnvironmentVariable('Path', 'Machine') + ';!AHK_PATH!', 'Machine')"
echo [+] AHK added to system PATH: !AHK_PATH!
) else (
echo [WARNING] AutoHotkey installation not found in expected location
echo [*] Checking alternative locations...
for /f "delims=" %%i in ('where /r "C:\ProgramData" AutoHotkey.exe 2^>nul') do set "AHK_PATH=%%~dpi"
if defined AHK_PATH (
powershell -Command "[Environment]::SetEnvironmentVariable('Path', [Environment]::GetEnvironmentVariable('Path', 'Machine') + ';!AHK_PATH!', 'Machine')"
echo [+] AHK found and added to PATH: !AHK_PATH!
) else (
echo [WARNING] AutoHotkey not found. Script may use fallback mouse control.
)
)
echo [+] AHK and Chocolatey setup completed!
:: === INSTALL AHK PACKAGE AND AUTOHOTKEY BINARY ===
echo [*] Installing AutoHotkey (AHK) package...
"%VENV_PYTHON%" -m pip install ahk --quiet
if !errorlevel! neq 0 (
echo [WARNING] Failed to install AHK package, but continuing...
) else (
echo [+] AHK package installed successfully!
)
echo [*] Installing AutoHotkey binary via Chocolatey (if available)...
choco install autohotkey -y >nul 2>&1
if !errorlevel! equ 0 (
echo [+] AutoHotkey binary installed via Chocolatey!
) else (
echo [*] Chocolatey not found. Trying direct download...
echo [*] Downloading AutoHotkey installer...
curl -L --progress-bar -o "%SCRIPTPATH%AutoHotkey_1.1.37.01_setup.exe" "https://www.autohotkey.com/download/1.1/AutoHotkey_1.1.37.01_setup.exe" >nul 2>&1
if !errorlevel! equ 0 (
echo [*] Installing AutoHotkey...
"%SCRIPTPATH%AutoHotkey_1.1.37.01_setup.exe" /S
timeout /t 5 >nul
del "%SCRIPTPATH%AutoHotkey_1.1.37.01_setup.exe" >nul 2>&1
echo [+] AutoHotkey binary installed!
) else (
echo [WARNING] Could not install AutoHotkey binary automatically.
echo Please install AutoHotkey manually from: https://www.autohotkey.com/
)
)
:: === VERIFY SCRIPT EXISTS ===
if not exist "%SCRIPTPATH%%SCRIPT%" (
echo [ERROR] Script not found: %SCRIPT%
echo Make sure %SCRIPT% is in the same folder as this batch file.
pause
exit /b 1
)
:: === RUN THE SCRIPT ===
echo.
echo ======================================================
echo [*] LAUNCHING AUTO PLAYTIME SCRIPT...
echo ======================================================
echo [*] Script location: %SCRIPTPATH%%SCRIPT%
echo [*] Python executable: %VENV_PYTHON%
echo [*] Virtual environment: %VENV_DIR%
echo ======================================================
echo.
:: Run in the same window to see output and allow interaction
"%VENV_PYTHON%" "%SCRIPTPATH%%SCRIPT%"
:: === SCRIPT FINISHED ===
echo.
echo ======================================================
echo [*] SCRIPT FINISHED
echo ======================================================
set /p dummy="Press ENTER to close this window..."