RimWorld

RimWorld

Not enough ratings
Официальная локализация :: Автоматическое обновление
By crtdgd
   
Award
Favorite
Favorited
Unfavorite
Описание
Файлы локализации находятся на GitHub[github.com], вы можете обновить ее вручную не дожидаясь обновления игры. Данный процесс можно автоматизировать с помощью скрипта.
Гайд
  1. Создать текстовый файл "UpdateLocalization.txt", поменять расширение с ".txt" на ".bat". Если у вас не отображаются расширения: ПКМ на значок Пуск => "Найти" => Набрать и открыть "Параметры Проводника" => Убрать галочку "Скрывать расширения для зарегистрированных типов файлов" => "ОК".

  2. Открыть файл в режиме редактирования

    1. Копировать в файл содержимое из раздела "Скрипт"

    2. Поменять путь до файлов игры, если он отличается от значения по умолчанию
      set "RimWorldFolder={путь}"
      по умолчанию
      set "RimWorldFolder=C:\Program Files (x86)\Steam\steamapps\common\RimWorld"

    3. Сохранить скрипт

  3. Запустить скрипт, подождать пока он выполнится

  4. Создать ярлык скрипта

  5. ПКМ на ярлык => "Свойства" => В поле "Окно" выбрать "Свернутое в значок"

  6. ПКМ на значок Пуск => "Выполнить" => Копировать "shell:startup" в поле "Открыть" => ОК.

  7. Переместить ярлык скрипта в открывшуюся папку

Ярлыки в папке "Автозагрузка" будут запускаться автоматически при каждом включении ПК, создайте ярлык данной папки и переместите его в удобное место, чтобы иметь быстрый доступ. Если вы перестанете играть в RimWorld, вы можете просто убрать ярлык скрипта.

Я храню ярлыки в отдельной папке и когда возвращаюсь в игру, копирую их в "Автозагрузку", в случае ненадобности - удаляю.

Как восстановить локализацию по умолчанию: Открыть библиотеку Steam => ПКМ на игру => "Свойства" => "Установленные файлы" => "Проверить целостность файлов игры".
Скрипт
@echo off
chcp 65001 > nul
setlocal EnableDelayedExpansion

set Language=Russian (Русский)
set GitHubRepository=RimWorld-ru
set "RimWorldFolder=C:\Program Files (x86)\Steam\steamapps\common\RimWorld"
set "DataFolder=%RimWorldFolder%\Data"
set "TempFolder=%SystemDrive%\Temp\RimWorld\Localization"
set LimitDownloads=true
set "LimitDownloadsFolder=%TempFolder%\Logs\LimitDownloads_OnceADay"
set "LimitDownloadsFile=%LimitDownloadsFolder%\%date%.txt"

if not exist "%RimWorldFolder%\Data\Core" (
echo Not found Core folder in RimWorld\Data folder.
pause & exit
)

if not exist "%TempFolder%\New" md "%TempFolder%\New"
if not exist "%TempFolder%\Old" md "%TempFolder%\Old"
if not exist "%LimitDownloadsFolder%" md "%LimitDownloadsFolder%"

if %LimitDownloads%==true if exist "%LimitDownloadsFile%" if exist "%TempFolder%\New\master.zip" goto SkipDownload

curl -L -o "%TempFolder%\New\master.zip" "https://github.com/Ludeon/%GitHubRepository%/archive/master.zip" >nul 2>nul
if %errorlevel%==0 (
(echo=) > "%LimitDownloadsFile%"
)

:SkipDownload

if exist "%DataFolder%\Core\Languages\%Language%.tar" goto UpdateLocalization
if not exist "%DataFolder%\Core\Languages\%Language%" goto UpdateLocalization
if not exist "%TempFolder%\Old\master.zip" goto UpdateLocalization

for %%q in ("%TempFolder%\New\master.zip") do set NewFileSize=%%~zq
for %%q in ("%TempFolder%\Old\master.zip") do set OldFileSize=%%~zq
if not "%NewFileSize%"=="%OldFileSize%" goto UpdateLocalization

goto End

:UpdateLocalization

if not exist "%TempFolder%\New\master.zip" (
echo Failed to download localization.
pause & exit
)

rd /s /q "%TempFolder%\%GitHubRepository%-master"
powershell -command "Expand-Archive '%TempFolder%\New\master.zip' '%TempFolder%'"

for /d %%q in ("%TempFolder%\%GitHubRepository%-master\*") do (

if exist "%DataFolder%\%%~nq" (

set "Source=%TempFolder%\%GitHubRepository%-master\%%~nq"
set "Target=%DataFolder%\%%~nq\Languages\%Language%"

if exist "!Target!.tar" (
del /q "!Target!.tar"
)

if exist "!Target!" (

set NewFilesSize=0
set OldFilesSize=0

cd "!Source!"
for /r %%x in (*) do set /a NewFilesSize+=%%~zx

cd "!Target!"
for /r %%x in (*) do set /a OldFilesSize+=%%~zx

if not "!NewFilesSize!"=="!OldFilesSize!" (
rd /s /q "!Target!"
robocopy /s "!Source!" "!Target!" >nul
)
)

if not exist "!Target!" (
robocopy /s "!Source!" "!Target!" >nul
)
)
)

copy /y "%TempFolder%\New\master.zip" "%TempFolder%\Old"

:End

exit

Автор
Если нужно что-то исправить или добавить, напишите в Discord[discord.gg]
Оповещения о новинках и изменениях будут в группе VK[vk.com]
Стримы плюс все ссылки автора Twitch[www.twitch.tv]