Documentation Steamworks
Comment charger et exécuter des jeux sur Steam Deck

Présentation

Pour aider les équipes de développement à travailler sur Steam Deck, nous fournissons deux outils : SteamOS Devkit Client et SteamOS Devkit Service. Ces outils vous permettent de charger les builds de vos jeux directement sur votre kit de développement Steam Deck (ou votre machine Linux) depuis votre machine de développement. Ils intègrent également d'autres fonctionnalités de développement.
Important :
avant de charger et de tester votre propre jeu en suivant les instructions ci-dessous, nous vous recommandons d'installer et d'exécuter un autre titre disponible sur Steam qui utilise Steam Play (Proton) sur le kit de développement. Ainsi, Proton et toutes ses dépendances seront installés.

Installation des outils

Configuration du client (sur le PC de développement)

  • L'outil SteamOS Devkit Client est exécuté sur votre PC de développement et vous permet de vous connecter à votre Steam Deck ou votre système Linux pour déployer des logiciels et les déboguer.
  • Installez SteamOS Devkit Client depuis Steam. Voici un lien d'installation direct.
  • Vous pouvez lancer l'outil depuis votre bibliothèque Steam, dans la catégorie « Logiciels ». Si vous préférez l'exécuter sous forme de ligne de commande, suivez ces étapes :
    • sous Windows, exécutez windows-client/devkit-gui.exe ;
    • sous Linux, exécutez python3.9 ./devkit-gui-cp39.pyz dans le répertoire linux-client.

Configuration du serveur (sur Steam Deck)

  • L'outil SteamOS Devkit Service est exécuté sur votre Steam Deck ou votre système Linux et vous permet de vous connecter depuis un autre PC pour déployer des logiciels et les déboguer.
  • Si vous possédez un kit de développement Steam Deck, SteamOS Devkit Service est préinstallé et est déjà en cours d'exécution. Aucune action de votre part n'est nécessaire.
  • Si vous ne possédez pas de Steam Deck et que vous testez sur votre propre système Linux, vous devez installer SteamOS Devkit Service. Voici un lien d'installation direct vers l'outil SteamOS Devkit Service. (Ce service n'est pris en charge que sur les ordinateurs exécutant Manjaro, conformément aux instructions détaillées ici.)

Connexion à Steam Deck

Sur votre PC de développement, lancez SteamOS Devkit Client. Pour être visibles, le kit de développement ou le système Linux doivent être connectés à un réseau local qui autorise la multidiffusion DNS (mDNS) avec l'hôte de développement. Vous pouvez utiliser une connexion Wi-Fi ou un câble Ethernet (via un adaptateur multiport USB-C).

  • Assurez-vous que votre Steam Deck est bien connecté à votre réseau et que toutes les mises à jour sont bien installées (Paramètres > Système).
  • Sur votre PC de développement : dans l'outil SteamOS Devkit Client, recherchez votre système Linux. Pour les kits de développement EV2, il s'agit de « callistoXXX » ; pour les kits les plus récents, il s'agit de « Valve Aerith ». Cliquez sur le bouton Register à droite pour associer ce kit de développement à l'outil.
  • Sur votre PC de développement : dans l'outil SteamOS Devkit Client, recherchez votre système Linux. Pour les kits de développement EV2, il s'agit de « callistoXXX » ; pour les kits les plus récents, il s'agit de « Valve Aerith ». Cliquez sur le bouton Register à droite pour associer ce kit de développement à l'outil. (Une clé SSH sera alors générée sur l'appareil, ce qui vous octroiera un contrôle total de l'appareil.)
  • Sur votre Steam Deck : approuvez la demande d'association de votre PC.
  • Si vous ne voyez pas votre kit dans l'interface, vérifiez que votre PC de développement et votre kit sont connectés au même réseau local. Selon votre environnement, il vous faudra peut-être utiliser le champ Add by IP pour ajouter le kit au moyen de votre adresse IP.

dev-kit_landing.png

Dans la capture d'écran ci-dessus, callisto530 est un kit de développement associé.

Chargement d'un build de jeu sur Steam Deck

Cliquez sur l'onglet Title Upload pour configurer votre jeu afin qu'il soit chargé de votre PC de développement vers votre kit de développement Steam Deck. L'écran ressemble à ceci une fois les champs remplis :

title-upload-20211111.png

Cette capture d'écran est un exemple de chargement d'un build Windows de jeu test vers le kit de développement.
  • Local Folder : ce répertoire de base contient tous les fichiers nécessaires pour exécuter votre jeu.
  • Upload filtering : le processus de chargement utilise rsync plutôt que SSH, le but est de gagner en rapidité quand les téléchargements sont répétés avec peu de modifications du contenu.


    Pour contrôler quels contenus seront téléchargés, il existe trois options :

    Exclude only : prend une liste de règles séparées par des espaces et l'exclut du chargement.
    Include only : ne charge que des fichiers et répertoires qui correspondent aux règles et ignore le reste.
    Rsync args : permet aux expert(e)s de rédiger des arguments de ligne de commande rsync directement.

    Pour plus d'informations sur les règles d'exclusion, consultez cet article.

  • Clean upload : cochez cette case pour supprimer du kit de développement tous les fichiers qui ne sont pas présents dans le répertoire Local Folder, une fois les règles d'exclusion (Exclude patterns) appliquées.
  • Start Command : indiquez l'exécutable binaire du jeu dans ce champ (ainsi que tout autre paramètre que vous souhaitez ajouter).
  • Steam Play : cochez cette case si vous chargez des exécutables binaires Windows qui doivent être lancés par Steam Play via Proton.
  • Steam Play debug : cochez cette case pour lancer le service de débogage et analyser votre build C++ dans Visual Studio.

Si vous possédez déjà un AppID pour votre jeu et utilisez l'API Steamworks, vous devrez inclure le fichier steam_appid.txt (qui contient uniquement votre AppID) à la racine de votre arborescence de téléchargement, ainsi qu'avec votre fichier exécutable (.exe). Pour plus d'informations, veuillez consulter la section Initialisation et arrêt dans l'article dévolu à l'API Steamworks.

Exécution de builds de jeux chargés

Sur votre kit de développement Steam Deck, rendez-vous dans votre bibliothèque et cherchez un nouveau produit intitulé « Devkit Game: nom_de_votre_jeu ». Lancez-le.
Comme mentionné au début de l'article, avant de charger et de tester vos propres jeux sur le kit de développement, nous vous recommandons d'installer et d'exécuter un autre titre disponible sur Steam qui utilise Steam Play (Proton). Ainsi, Proton et toutes ses dépendances seront correctement installés.

Console du client Steam

Si vous avez besoin d'exécuter des commandes dans la console du client Steam pour vos activités de développement, vous les trouverez dans la console CEF.

Avec votre outil SteamOS Devkit Client en cours d'exécution et connecté à votre Steam Deck, accédez à l'onglet Devkits et cliquez sur le bouton CEF Console. Un nouvel onglet devrait s'ouvrir sur votre navigateur et vous connecter au client CEF sur votre appareil Steam Deck. Sur cette page, cliquez sur SP pour ouvrir un onglet spécifique à l'interface principale du client Steam Deck. Une console de débogage CEF devrait être incluse sur le côté droit de la page.

Une fois la fenêtre de débogage CEF ouverte, dans l'onglet console, activez la sortie de la console Steam à l'aide de la commande EnableSteamConsole(). Après avoir exécuté cette commande, la sortie normalement affichée dans l'onglet Console du client Steam (lorsqu'il est démarré avec l'option de démarrage -console) s'affichera ici sous le nom de SteamClient.

Pour exécuter des commandes de la console, enveloppez la commande tout entière entre des guillemets anglais doubles et effectuez un appel à SteamClient.Console.ExecCommand(). L'exemple ci-dessous présente deux appels de ce type, le premier pour activer le test de la synchronisation dynamique avec le cloud avec l'application 480, et le suivant pour le désactiver :

exemple_console_du_Client_cef_avec_steam_deck.png