Установщик публикации

В этом документе показано, как опубликовать свою игру в Google Play Games на ПК с помощью установщика игры.

При использовании метода "Установка разработчиком" предоставленный вами установщик игры должен управлять установкой, обновлением и удалением игры.

Прежде чем начать

Интегрируйте SDK Google Play Games в свою игру.

Упакуйте свою игру в файл WAB.

Для запуска Google Play Games на ПК необходимо загрузить установщик игры в Google Play Console в виде файла пакета приложения Windows (WAB). Чтобы создать файл WAB, выполните следующие действия:

  1. Загрузите инструмент для публикации в Play Store . Вы можете запустить этот инструмент в командной строке Windows или PowerShell.

  2. Создайте файл конфигурации публикации в Play Store с любым именем. Например, play_publishing_config.xml в следующем формате:

    <?xml version="1.0" encoding="UTF-8"?>
    <play-publishing-config version="1.0">
      <application>
        <package-name>PACKAGE_NAME</package-name>
        <version-name>VERSION_NAME</version-name>
      </application>
      <installer requiresElevation=INSTALLER_REQUIRES_ELEVATION>
        <path>INSTALLER_PATH</path>
        <installation-path-registry-location>
          <key-name>UNIQUE_REGISTRY_PATH</key-name>
          <value-name>InstallLocation</value-name>
        </installation-path-registry-location>
      </installer>
      <launcher requiresElevation=LAUNCHER_REQUIRES_ELEVATION>
        <launch-path-registry-location>
          <key-name>UNIQUE_REGISTRY_PATH</key-name>
          <value-name>InstallLocation</value-name>
        </launch-path-registry-location>
        <executable-invocation>
          <filename>RELATIVE_PATH_TO_LAUNCHER_EXE</filename>
          <arguments>LAUNCHER_ARGS_IF_ANY</arguments>
        </executable-invocation>
      </launcher>
      <uninstaller requiresElevation=UNINSTALLER_REQUIRES_ELEVATION>
        <uninstall-path-registry-location>
          <key-name>UNIQUE_REGISTRY_PATH</key-name>
          <value-name>UninstallString</value-name>
        </uninstall-path-registry-location>
      </uninstaller>
    </play-publishing-config>

    Замените следующее:

    • PACKAGE_NAME : Название пакета вашей игры. Это уникальный идентификатор, который будет связан с вашей игрой в Google Play. Например, com.yourcompany.yourgame . Название пакета должно соответствовать следующим правилам:
      • Она должна состоять как минимум из двух сегментов (одной или более точек).
      • Каждый сегмент должен начинаться с буквы.
      • Все символы должны быть буквенно-цифровыми или представлять собой символ подчеркивания ( [a-zA-Z0-9_] ).
    • VERSION_NAME : Строка версии игры. Это может быть произвольная строка, но она должна быть уникальной для всех загруженных WAB-файлов вашей игры. Например: 1.0 , 1.0.1-beta , 2025.11.24 , v1.rc1 .

      • INSTALLER_REQUIRES_ELEVATION : Указывает, необходимо ли запускать исполняемый файл установщика от имени администратора для завершения процесса установки.

        • "true" : Запустить исполняемый файл от имени администратора.
        • "false" : Запустить исполняемый файл от имени текущего пользователя.
      • INSTALLER_PATH : Путь к файлу установщика в WAB. Этот путь может быть как абсолютным , так и относительным к родительскому каталогу конфигурации публикации Play. Например, path\to\test\installer . Не забудьте использовать authenticode и цифровую подпись для подписи исполняемого файла установщика вашей игры.

      • UNIQUE_REGISTRY_PATH : Путь к ключу реестра Windows. Этот путь должен быть указан относительно раздела реестра, такого как HKEY_LOCAL_MACHINE или HKEY_CURRENT_USER ; не включайте имя раздела в строку пути. Например, если ваш установщик записывает данные в HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\YourUniqueName , укажите только Software\Microsoft\Windows\CurrentVersion\Uninstall\YourUniqueName . Google Play Games на ПК ищет этот путь в нескольких разделах реестра, чтобы найти значения, необходимые для запуска и удаления.

        Исполняемый файл, указанный в INSTALLER_PATH должен создать эти ключи реестра. Перед завершением установки необходимо создать пары ключ-значение реестра и имя значения, указанные в параметрах installation-path-registry-location , launch-path-registry-location и uninstall-path-registry-location . Хотя в примере используются InstallLocation и UninstallString , вы можете указать любое имя в этих тегах <value-name> , если ваш установщик создаст соответствующие записи реестра для всех трех. Google Play Games на ПК использует эти значения для запуска и удаления игры. Если ваша игра использует лаунчер, то этот путь должен указывать на ключ реестра, содержащий информацию об установке лаунчера, а значение в записи реестра, указанной в launch-path-registry-location должно указывать на каталог лаунчера.

        Этот путь должен быть уникальным на компьютере пользователя. Например: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\YourUniqueName .

        Если ваш установщик игры — 32-битное приложение, работающее на 64-битной Windows, Windows использует перенаправление реестра для записи записей реестра в раздел HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node . Например, запись в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\YourUniqueName перенаправляется в HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\YourUniqueName .

      • LAUNCHER_REQUIRES_ELEVATION : Указывает, нужно ли запускать программу запуска или исполняемый файл игры от имени администратора каждый раз при запуске.

        • "true" : Запустить исполняемый файл от имени администратора.
        • "false" : Запустить исполняемый файл от имени текущего пользователя.
      • RELATIVE_PATH_TO_LAUNCHER_EXE : Путь к исполняемому файлу вашей программы запуска или игры в каталоге установки. Он должен включать имя исполняемого файла вашей программы запуска или игры. Например, если ваш файл программы запуска или игры называется mygame.exe и находится в каталоге {INSTALL_DIR}\Resources\mygame.exe, вам нужно указать Resources\mygame.exe

      • LAUNCHER_ARGS_IF_ANY : Любые аргументы командной строки, которые необходимо передать в ваш лаунчер или игру. Эта запись необязательна.

        • В случае наличия нескольких аргументов, связанных с исполняемым файлом, их необходимо разделять пробелом.
        • Если исполняемый файл требует, перед аргументами необходимо добавить символ '--' или '-'.
      • UNINSTALLER_REQUIRES_ELEVATION : Указывает, необходимо ли запускать исполняемый файл деинсталлятора от имени администратора для завершения процесса удаления.

        • "true" : Запустить исполняемый файл от имени администратора.
        • "false" : Запустить исполняемый файл от имени текущего пользователя.

    Пример файла конфигурации публикации Play.

    Рассмотрим игру под названием MyGame , у которой есть установщик игры game_installer.exe и лаунчер игры launcher.exe . В примере также показано, как использовать CDATA. Вот как будет выглядеть файл play_publishing_config.xml :

    <?xml version="1.0" encoding="UTF-8"?>
    
    <play-publishing-config version="1.0">
      <application>
        <!-- The package name for your game. -->
        <package-name>com.mycompany.mygame</package-name>
        <!-- The game's version string. -->
        <version-name>1.0.0</version-name>
      </application>
      <!-- If requiresElevation is "true", installer runs as Administrator
           and a UAC prompt is displayed. This is required for system-wide
           installs (e.g., to Program Files) or writing to HKLM. -->
      <installer requiresElevation="true">
        <!-- Path to your installer executable. -->
        <path>game_installer.exe</path>
        <!-- The registry location where the installer writes the installation path. -->
        <installation-path-registry-location>
          <!-- Registry key path (typically under HKLM or HKCU).
               game_installer.exe MUST create this key. -->
          <key-name>SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MySystemWideUniqueKey</key-name>
          <!-- game_installer.exe, specified in <path>, creates the registry
               value called 'InstallLocation' within
               SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MySystemWideUniqueKey
               by the time it exits. -->
          <value-name>InstallLocation</value-name>
        </installation-path-registry-location>
      </installer>
    
      <!-- If requiresElevation is "true", launcher runs as Administrator
           and a UAC prompt is displayed on every game launch. -->
      <launcher requiresElevation="true">
        <!-- Specifies the registry location where Google Play Games reads the installation path
             in order to launch the game. -->
        <launch-path-registry-location >
          <!-- Registry key path (typically under HKLM or HKCU) where
               the launch path can be found. -->
          <key-name>SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MySystemWideUniqueKey</key-name>
          <!-- Google Play Games reads the installation directory from this
               registry value, for example InstallLocation, to launch the game. -->
          <value-name>InstallLocation</value-name>
        </launch-path-registry-location>
        <executable-invocation>
          <!-- Game executable or launcher filename, relative to the
               directory path specified in the InstallLocation registry value. -->
          <filename>launcher.exe</filename>
          <!-- Optional arguments to pass to the executable.
               CDATA is used here to avoid issues with special characters
               like & or >. -->
          <arguments><![CDATA[arg1&arg2>arg3]]></arguments>
        </executable-invocation>
      </launcher>
    
      <!-- If requiresElevation is "true", uninstaller runs as
           Administrator and a UAC prompt is displayed for uninstall. -->
      <uninstaller requiresElevation="true">
        <!-- Registry key where Google Play Games finds the
             uninstallation command. -->
        <uninstall-path-registry-location>
          <!-- Registry key path (typically under HKLM or HKCU) where
               uninstall command can be found. -->
          <key-name>SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MySystemWideUniqueKey</key-name>
          <!-- game_installer.exe also creates the registry value, for example, 'UninstallString'
               within SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MySystemWideUniqueKey,
               containing the command Google Play Games executes to uninstall
               the game. -->
          <value-name>UninstallString</value-name>
        </uninstall-path-registry-location>
      </uninstaller>
    </play-publishing-config>
    
  3. Запустите инструмент публикации Play в командной строке Windows или PowerShell.

    playpublishingtool.exe build-installer-bundle --input=PLAY_PUBLISHING_CONFIG_PATH --output=WAB_OUTPUT_PATH
    

    Чтобы перезаписать существующий WAB-файл с тем же именем, используйте аргумент --force .

    playpublishingtool.exe build-installer-bundle --input=PLAY_PUBLISHING_CONFIG_PATH --output=WAB_OUTPUT_PATH --force
    

    Замените следующее:

    • PLAY_PUBLISHING_CONFIG_PATH : Путь к файлу конфигурации публикации Play. Например, path\to\play_publishing_config.xml .
    • WAB_OUTPUT_PATH : Путь к WAB-файлу. Например, path\to\output_bundle.wab .

    Как использовать инструмент публикации в Play Store

    Предположим, что в текущем рабочем каталоге находятся исполняемый файл инструмента публикации Play playpublishingtool.exe , файл конфигурации публикации Play play_publishing_config.xml и установщик игры game_installer.exe .

    Ваша текущая рабочая директория должна выглядеть следующим образом:

    .\
    ├── game_installer.exe
    ├── play_publishing_config.xml
    ├── playpublishingtool.exe
    

    Чтобы создать WAB-файл с именем, например, installer_bundle.wab , ​​в той же директории, команда будет выглядеть следующим образом:

    playpublishingtool.exe build-installer-bundle --input=play_publishing_config.xml --output=installer_bundle.wab
    

    С аргументом --force команда будет выглядеть следующим образом:

    playpublishingtool.exe build-installer-bundle --input=play_publishing_config.xml --output=installer_bundle.wab --force
    

    В случае успеха вы должны увидеть результат, аналогичный следующему:

    Successfully built the installer bundle at installer_bundle.wab
    

    Найдите WAB-файл в папке:

      .\
      ├── game_installer.exe
      ├── installer_bundle.wab
      ├── play_publishing_config.xml
      ├── playpublishingtool.exe
    

Опубликуйте игру с помощью Play Console.

После успешного создания WAB для вашей игры загрузите её в Play Console и настройте параметры и требования. Для публикации игры выполните следующие шаги:

Добавьте поддержку игр Google Play на ПК в форм-факторе

Этот шаг необходим только при первой публикации игры.

  1. В меню Play Console слева выберите «Тестирование и выпуск» > «Настройка» > «Расширенные настройки» ( прямая ссылка ).
  2. Перейдите на вкладку «Форм-факторы» и добавьте Google Play Games on PC выбрав соответствующий пункт в выпадающем списке «+ Добавить форм-фактор» .

  3. В правой части экрана нажмите кнопку «Управление» , соответствующую разделу «Игры Google Play на ПК» .

  4. Выберите опцию «Использовать выделенную дорожку для игры в составе пакета приложений Windows» .

  5. Нажмите «Сохранить» , а затем еще раз «Сохранить» в диалоговом окне подтверждения.

Включите управляемую публикацию.

Чтобы включить управляемую публикацию, выполните следующие действия.

  1. На странице «Обзор издательской деятельности» в разделе «Управляемая издательская деятельность» нажмите «Включить управляемую издательскую деятельность» .
  2. Появится диалоговое окно. Включите управляемую публикацию для трека.
  3. Нажмите « Сохранить ».

Загрузите WAB-файл

Для загрузки WAB-файла выполните следующие действия:

  1. В меню Play Console слева выберите «Тестирование и выпуск» > «Расширенные настройки » ( прямая ссылка ).
  2. На странице «Расширенные настройки» перейдите на вкладку «Форм-факторы» .
  3. На вкладке «Форм-факторы» нажмите « + Добавить форм-фактор» и выберите «Google Play Games на ПК» , чтобы добавить игру.
  4. В разделе «Игры Google Play на ПК» нажмите «Управление» .
  5. Выберите « Использовать выделенную дорожку для игры в составе пакета приложений Windows» .
  6. Нажмите « Сохранить ».
  7. В консоли Play Console в левом меню выберите «Тестирование и выпуск» > «Производство» ( прямая ссылка ).
  8. На странице «Производство» выберите в выпадающем списке «Формат устройства » только игры Google Play для ПК (Windows) .
  9. На вкладке «Пакет приложений Windows» нажмите «Редактировать» и загрузите WAB-файл.

Настройте требования к ПК под управлением Windows.

Для настройки требований к ПК под управлением Windows:

  1. В консоли Play в левом меню выберите «Увеличить количество пользователей» > «Присутствие в магазине» > «Настройки магазина» ( прямая ссылка ).
  2. В разделе «Требования к ПК» нажмите кнопку «Редактировать» в правой части экрана.
  3. Обновите поля и нажмите «Сохранить» .

Настройте графическое оформление покупки внутри приложения.

Это необязательный шаг. Чтобы настроить графическое оформление покупки внутри приложения:

  1. В консоли Play в левом меню выберите «Увеличить количество пользователей» > «Присутствие в магазине» > «Списки магазинов » ( прямая ссылка ).
  2. В разделе «Список магазинов по умолчанию» на вкладке «Списки» нажмите кнопку -> (стрелка) справа. Это переведет вас на страницу списка магазинов по умолчанию .
  3. Перейдите в раздел «Игры Google Play на ПК» и загрузите изображение по ссылке «Графика для внутриигровых покупок в Google Play на ПК (Windows)» .
  4. Нажмите « Сохранить ».

Отправить изменения на проверку

  1. В меню левой панели консоли Play выберите «Обзор публикации» .
  2. В разделе «Изменения, еще не отправленные на проверку» нажмите « Отправить изменения на проверку» .

После того, как команда проверки одобрит ваши изменения, ваша игра станет доступна в Google Play.