0 of 0

File information

Last updated

Original upload

Created by

SGurjar

Uploaded by

SGurjar

Virus scan

Safe to use

Tags for this mod

About this mod

Free up 15+ GB in Days Gone with this script.

Permissions and credits
Changelogs
Credit: MCC on Steam guides. Please visit the link below and rate the guide if this mod helps you remove the unused files.
(https://steamcommunity.com/sharedfiles/filedetails/?id=2491331889)

So I bought Days Gone on the Winter Sale on Steam and before I play any new game on Steam I check the guides section on Steam to see if there are things that can improve the game. so I found the guide on how to reduce the game size which is not that much like it's just 15 Gigs but hey if you are like me and like to have a lot of games installed then this script is for you.

How It Works:

  • Download and extract the zip file.
  • Paste the file in the base folder of the game installation directory (name Days Gone).
  • Execute the included script (Remove_Unused_Lang_Files.bat).
  • Follow the on-screen instructions to select the language file you wish to keep.
  • Enjoy!!

Note: the siepresents.pak file should not be deleted as it is a required file the script takes care of it so don't worry.

Source Code (its a mess):
Spoiler:  
Show


@echo off
setlocal enabledelayedexpansion
set "langFolderPath=BendGame\Content\Paks\Lang"
set "fileToPreserve=siepresents"
set "defaultOption=0"
:selectLanguage
cls
echo Validating language files...
rem Check if the language folder exists
if not exist "%langFolderPath%" (
    echo Error: The language folder "%langFolderPath%" does not exist.
    timeout /nobreak /t 3 >nul
    exit /b 1
)
rem Check if the required file is present
set "preserveFileFound="
for %%F in ("%langFolderPath%\%fileToPreserve%*") do (
    set "preserveFileFound=1"
    break
)
if not defined preserveFileFound (
    echo Error: The required file "%fileToPreserve%" is missing in "%langFolderPath%".
    echo This file is necessary for the game. Please ensure it is present.
    timeout /nobreak /t 3 >nul
    exit /b 1
)
set "languageOptions="
set "validOption=0"
echo 0. - English : "en"
set /a optionIndex=1
for %%F in ("%langFolderPath%\*.pak") do (
    set "langCode=%%~nF"
    set "langCode=!langCode:~0,2!"
    set "excludeLang="
    
    if /i not "!langCode!"=="%fileToPreserve%" (
        set "languageName="
        set "excludeLang="
        
        if /i "!langCode!"=="ar" set "languageName=Arabic"
        if /i "!langCode!"=="br" set "languageName=Brazilian Portuguese"
        if /i "!langCode!"=="ch" set "languageName=Chinese"
        if /i "!langCode!"=="cs" set "languageName=Czech"
        if /i "!langCode!"=="de" set "languageName=German"
        if /i "!langCode!"=="dk" set "languageName=Danish"
        if /i "!langCode!"=="el" set "languageName=Greek"
        if /i "!langCode!"=="es" set "languageName=Spanish"
        if /i "!langCode!"=="fi" set "languageName=Finnish"
        if /i "!langCode!"=="fr" set "languageName=French"
        if /i "!langCode!"=="hr" set "languageName=Croatian"
        if /i "!langCode!"=="hu" set "languageName=Hungarian"
        if /i "!langCode!"=="it" set "languageName=Italian"
        if /i "!langCode!"=="ko" set "languageName=Korean"
        if /i "!langCode!"=="ls" set "languageName=Latvian"
        if /i "!langCode!"=="nl" set "languageName=Dutch"
        if /i "!langCode!"=="no" set "languageName=Norwegian"
        if /i "!langCode!"=="pl" set "languageName=Polish"
        if /i "!langCode!"=="pt" set "languageName=Portuguese"
        if /i "!langCode!"=="ru" set "languageName=Russian"
    if /i "!langCode!"=="se" set "languageName=Swedish"
        if /i "!langCode!"=="si" (
            set "languageName=Not_A_Language_File"
            set "excludeLang=1"
        )
        if /i "!langCode!"=="tu" set "languageName=Turkish"
        if /i "!langCode!"=="uk" set "languageName=Ukrainian"
        
        if not defined excludeLang (
            echo !optionIndex!. - !languageName! : "!langCode!.pak"
            set "languageOptions=!languageOptions!!optionIndex%,"
            set "languageCodes[!optionIndex!]=!langCode!"
            set /a optionIndex+=1
        )
    )
)
echo Validation complete.
set /p "option=Enter the assigned number of the language you want to keep: "
set "selectedLanguage="
if defined languageCodes[%option%] (
    set "selectedLanguage=!languageCodes[%option%]!"
) else (
    set "selectedLanguage=!option!"
)
if /i "%option%"=="%defaultOption%" (
    echo Removing all non-English files...
    for %%F in ("%langFolderPath%\*.pak") do (
        set "langCode=%%~nF"
        set "langCode=!langCode:~0,2!"
        if /i not "!langCode!"=="%fileToPreserve%" (
            if /i "%%~nF" neq "%fileToPreserve%" (
echo Keeping the "%fileToPreserve%.pak" file.
                echo Deleting "%%F"
                del "%%F" /q
            )
        )
    )
    echo All non-English files removed.
) else (
    set "selectedLanguage=!languageCodes[%option%]!"
    if not defined selectedLanguage (
        echo Error: Invalid option. Starting the script again.
        timeout /nobreak /t 1 >nul
        goto selectLanguage
    )
    if /i "!selectedLanguage!"=="%fileToPreserve%" (
        echo Warning: The specified file "%fileToPreserve%" is preserved. No files will be deleted.
    ) else (
echo Keeping the "%selectedLanguage%.pak" and "%fileToPreserve%.pak" file.
        for %%F in ("%langFolderPath%\*.pak") do (
            set "langCode=%%~nF"
            set "langCode=!langCode:~0,2!"
            if /i not "!langCode!"=="%fileToPreserve%" (
                if /i not "!langCode!"=="!selectedLanguage!" (
                    if /i "%%~nF" neq "%fileToPreserve%" (
                        echo Deleting "%%F"
                        del "%%F" /q
                    )
                )
            )
        )
    )
)
pause