benim autopatcher yerim
githupdan repo olusturarak release kısmına dosya yükleyip
o dosya lsitesindeki dosyaları indirir.indirdiği zipi unpack eder fakat zip dosyasını siler.her .bat acilsita tekrrar indirme yapar.
hash kontrolü ekleyemedim üzeirne çalışmam gerek.
dosyaalr zip olarka yükleyip unpack yapar sorna oyunu baslatir.
25 mb limit vermiş github free
örnek yükeldiğim dosyalar.
https://github.com/wslik9899/misafirhanemt2/releases/tag/update.zip
135991 eklentisini görüntüle
update 1.1
örneğin.
diasmas.bin olarak uplaod ettiniz.
diasmas.bin oalrak indirip .exe çevirir oyunu açar
135997 eklentisini görüntüle
update 1.2
aynı dosya adı varsa indirmez.
Fikir.
örneğin .exe güncelliyceksiniz.
eski packdaki .zip li exeyi silip.
yeni packdaki .zipliyi v2 yükliyveksiniz.
yani önceki pack metin2client0.0.0.1.zip
güncelliyeceğiniz dosya metin2client0.0.0.2.zip
metin2client0.0.0.1.zip bunu siliyorsunuz githubdan
metin2client0.0.0.2.zip bunu yüklüyorsunuz eskisini dikkate almıyor.
v1.3
turkce karater uyumu
not hash doğrulma yapılana kadar konuyu kullanmayın.
çünkü dosya yarım iner yarım inen dosyayı algılamaz tekrar indirmez v.s
sürekli indirme yaparsanızda.oyuncu söver
githupdan repo olusturarak release kısmına dosya yükleyip
o dosya lsitesindeki dosyaları indirir.indirdiği zipi unpack eder fakat zip dosyasını siler.her .bat acilsita tekrrar indirme yapar.
hash kontrolü ekleyemedim üzeirne çalışmam gerek.
dosyaalr zip olarka yükleyip unpack yapar sorna oyunu baslatir.
25 mb limit vermiş github free
örnek yükeldiğim dosyalar.
https://github.com/wslik9899/misafirhanemt2/releases/tag/update.zip
Kod:
@echo off
setlocal
REM --- Repository Bilgileri ---
set "repoOwner=wslik9899"
set "repoName=misafirhanemt2"
set "releaseTag=update.zip"
REM GitHub API üzerinden, ilgili tag'e ait release bilgisini alıyoruz.
set "apiUrl=https://api.github.com/repos/%repoOwner%/%repoName%/releases/tags/%releaseTag%"
REM --- .bat dosyasının bulunduğu dizin ---
set "localDir=%~dp0"
echo [INFO] GitHub API'den release bilgileri alınıyor...
powershell -NoProfile -Command ^
"$release = Invoke-RestMethod -Uri '%apiUrl%';" ^
"foreach ($asset in $release.assets) {" ^
" $url = $asset.browser_download_url;" ^
" $name = $asset.name;" ^
" Write-Host '[INFO] ' $name ' dosyası indiriliyor...';" ^
" Invoke-WebRequest -Uri $url -OutFile (Join-Path '%localDir%' $name);" ^
" if ($name -match '\.zip$') {" ^
" Write-Host '[INFO] ' $name ' dosyası çıkartılıyor...';" ^
" Expand-Archive -Path (Join-Path '%localDir%' $name) -DestinationPath '%localDir%' -Force;" ^
" Remove-Item (Join-Path '%localDir%' $name);" ^
" }" ^
"}"
echo [INFO] Tüm dosyalar indirildi ve çıkarıldı.
echo [INFO] Diamas.exe başlatılıyor...
start "" "%~dp0Diamas.exe"
pause
endlocal
135991 eklentisini görüntüle
update 1.1
örneğin.
diasmas.bin olarak uplaod ettiniz.
diasmas.bin oalrak indirip .exe çevirir oyunu açar
Kod:
@echo off
setlocal
REM --- Repository Bilgileri ---
set "repoOwner=wslik9899"
set "repoName=misafirhanemt2"
set "releaseTag=update.zip"
REM GitHub API üzerinden, ilgili tag'e ait release bilgisini alıyoruz.
set "apiUrl=https://api.github.com/repos/%repoOwner%/%repoName%/releases/tags/%releaseTag%"
REM --- .bat dosyasının bulunduğu dizin ---
set "localDir=%~dp0"
echo [INFO] GitHub API'den release bilgileri alınıyor...
powershell -NoProfile -Command ^
"$release = Invoke-RestMethod -Uri '%apiUrl%';" ^
"foreach ($asset in $release.assets) {" ^
" $url = $asset.browser_download_url;" ^
" $name = $asset.name;" ^
" Write-Host '[INFO] ' $name ' dosyası indiriliyor...';" ^
" Invoke-WebRequest -Uri $url -OutFile (Join-Path '%localDir%' $name);" ^
" if ($name -match '\.zip$') {" ^
" Write-Host '[INFO] ' $name ' dosyası çıkartılıyor...';" ^
" Expand-Archive -Path (Join-Path '%localDir%' $name) -DestinationPath '%localDir%' -Force;" ^
" Remove-Item (Join-Path '%localDir%' $name);" ^
" }" ^
"}"
echo [INFO] Tüm dosyalar indirildi ve çıkarıldı.
REM Diamas.bin dosyasını Diamas.exe olarak çalıştırıyoruz.
set "binFile=diamas.bin"
set "exeFile=diamas.exe"
REM Eğer .bin dosyası varsa, .exe olarak çalıştır.
if exist "%localDir%%binFile%" (
echo [INFO] %binFile% dosyası mevcut, .exe olarak başlatılıyor...
ren "%localDir%%binFile%" "%exeFile%"
start "" "%localDir%%exeFile%"
) else (
echo [ERROR] %binFile% dosyası bulunamadı!
)
pause
endlocal
135997 eklentisini görüntüle
update 1.2
aynı dosya adı varsa indirmez.
Fikir.
örneğin .exe güncelliyceksiniz.
eski packdaki .zip li exeyi silip.
yeni packdaki .zipliyi v2 yükliyveksiniz.
yani önceki pack metin2client0.0.0.1.zip
güncelliyeceğiniz dosya metin2client0.0.0.2.zip
metin2client0.0.0.1.zip bunu siliyorsunuz githubdan
metin2client0.0.0.2.zip bunu yüklüyorsunuz eskisini dikkate almıyor.
Kod:
@echo off
setlocal
REM --- Repository Bilgileri ---
set "repoOwner=wslik9899"
set "repoName=misafirhanemt2"
set "releaseTag=release"
REM GitHub API üzerinden, ilgili tag'e ait release bilgisini alıyoruz.
set "apiUrl=https://api.github.com/repos/%repoOwner%/%repoName%/releases/tags/%releaseTag%"
REM --- .bat dosyasının bulunduğu dizin ---
set "localDir=%~dp0"
echo [INFO] GitHub API'den release bilgileri alınıyor...
powershell -NoProfile -Command ^
"$release = Invoke-RestMethod -Uri '%apiUrl%';" ^
"foreach ($asset in $release.assets) {" ^
" $url = $asset.browser_download_url;" ^
" $name = $asset.name;" ^
" $filePath = Join-Path '%localDir%' $name;" ^
" if (-not (Test-Path $filePath)) {" ^
" Write-Host '[INFO] ' $name ' dosyası indiriliyor...';" ^
" Invoke-WebRequest -Uri $url -OutFile $filePath;" ^
" } else {" ^
" Write-Host '[INFO] ' $name ' zaten mevcut, indirilmiyor...';" ^
" }" ^
" if ($name -match '\.zip$') {" ^
" Write-Host '[INFO] ' $name ' dosyası çıkartılıyor...';" ^
" Expand-Archive -Path $filePath -DestinationPath '%localDir%' -Force;" ^
" }" ^
"}"
echo [INFO] Tüm dosyalar indirildi ve çıkarıldı.
echo [INFO] Diamas.exe başlatılıyor...
start "" "%~dp0Diamas.exe"
pause
endlocal
v1.3
turkce karater uyumu
Kod:
@echo off
setlocal
REM --- Repository Bilgileri ---
set "repoOwner=wslik9899"
set "repoName=misafirhanemt2"
set "releaseTag=release"
REM GitHub API uzerinden, ilgili tag'e ait release bilgisini aliyoruz.
set "apiUrl=https://api.github.com/repos/%repoOwner%/%repoName%/releases/tags/%releaseTag%"
REM --- .bat dosyasinin bulunduğu dizin ---
set "localDir=%~dp0"
echo [INFO] GitHub API'den release bilgileri aliniyor...
powershell -NoProfile -Command ^
"$release = Invoke-RestMethod -Uri '%apiUrl%';" ^
"foreach ($asset in $release.assets) {" ^
" $url = $asset.browser_download_url;" ^
" $name = $asset.name;" ^
" $filePath = Join-Path '%localDir%' $name;" ^
" if (-not (Test-Path $filePath)) {" ^
" Write-Host '[INFO] ' $name ' dosyasi indiriliyor...';" ^
" Invoke-WebRequest -Uri $url -OutFile $filePath;" ^
" } else {" ^
" Write-Host '[INFO] ' $name ' zaten mevcut, indirilmiyor...';" ^
" }" ^
" if ($name -match '\.zip$') {" ^
" Write-Host '[INFO] ' $name ' dosyasi cikartiliyor...';" ^
" Expand-Archive -Path $filePath -DestinationPath '%localDir%' -Force;" ^
" }" ^
"}"
echo [INFO] Tum dosyalar indirildi ve cikarildi.
echo [INFO] Diamas.exe baslatiliyor...
start "" "%~dp0Diamas.exe"
pause
endlocal
not hash doğrulma yapılana kadar konuyu kullanmayın.
çünkü dosya yarım iner yarım inen dosyayı algılamaz tekrar indirmez v.s
sürekli indirme yaparsanızda.oyuncu söver