Steamworks-dokumentaatio
Pelien lataaminen ja pyörittäminen Steam Deckillä

Yleiskatsaus

Tarjoamme Steam Deckin kanssa työskentelevien kehittäjien avuksi SteamOS Devkit Clientin ja SteamOS Devkit Servicen. Työkalujen avulla voi ladata pelin koontiversion suoraan kehityslaitteistolta Steam Deck -kehittäjäpakettiin (tai Linux-laitteistoon) ja suorittaa muita kehitystoimintoja.
Tärkeää:
Ennen kuin lähetät ja testaat peliäsi seuraamalla alla olevia ohjeita, kannattaa asentaa ja testata Steam Deck -kehittäjäpaketissa toista Steam-peliä, joka käyttää Steam Playta (Protonia). Tämä varmistaa, että Proton ja kaikki sen riippuvuudet on asennettu.

Asenna työkalut

Asiakasohjelman asennus (kehitystietokoneelle)

  • SteamOS Devkit Client pyörii kehitystietokoneella ja mahdollistaa yhdistämisen Steam Deckiin tai Linux-järjestelmään ohjelmien käyttöä ja vianmääritystä varten.
  • Asenna SteamOS Devkit Client Steamistä. Löydät sen tästä asennuslinkistä.
  • Työkalun voi käynnistää Steam-kirjaston Ohjelmistot-luokasta. Jos haluat sen sijaan käynnistää komentoriviltä:
    • Suorita Windowsilla windows-client/devkit-gui.exe.
    • Suorita Linuxilla python3.9 ./devkit-gui-cp39.pyz hakemistossa linux-client.

Palvelimen määrittäminen (Steam Deckille)

  • SteamOS Devkit Service pyörii valitussa Steam Deckissä / Linux-järjestelmässä ja mahdollistaa yhdistämisen toisella tietokoneella, jotta kehittäjä voi ottaa ohjelmiston käyttöön tai suorittaa vianetsinnän.
  • Jos sinulla on Steam Deck -kehittäjäpaketti, SteamOS Devkit Service on valmiiksi asennettu ja toiminnassa. Sinun ei tarvitse tehdä muuta.
  • Jos sinulla ei ole Steam Deckiä ja testaat omalla Linux-järjestelmällä, sinun tulee asentaa SteamOS Devkit Service. Tässä on kehittäjäpakettityökalun asennuslinkki. (Palvelu on tuettu ainoastaan PC-tietokoneilla, joissa on Manjaro. Lisätietoa löytyy täältä.)

Steam Deckiin yhdistäminen

Käynnistä SteamOS-kehittäjäpakettiohjelma kehitystietokoneella. Kehittäjäpaketin/Linux-järjestelmän on oltava paikallisessa verkossa, joka sallii DNS-monilähetyksen isäntäkoneen kanssa, jotta se voidaan löytää ja listata. Tämä toimii wifi- tai Ethernet-yhteydellä (USB-C-jakajan avulla).

  • Varmista, että Steam Deck on yhdistetty verkkoon ja olet asentanut kaikki päivitykset (Asetukset > Järjestelmä).
  • Steam Deckillä: Siirry kohtaan Asetukset > Järjestelmä > Järjestelmän asetukset ja valitse Ota kehittäjätila käyttöön. Siirry kohtaan Asetukset > Kehittäjä > Isäntäkoneen pariliitos kehitystä varten ja valitse Pariliitä uusi isäntäkone.
  • Kehitystietokoneella: Hae kehittäjäpakettityökalussa Linux-järjestelmä. (EV2-kehittäjäpaketeissa se näkyy nimellä callistoXXX, uudemmissa laitteissa nimellä Valve Aerith). Klikkaa oikealla olevaa Register-painiketta rekisteröidäksesi kehittäjäpaketin työkalun kanssa. (Tämä asettaa laitteelle SSH-avaimen ja myöntää täyden käyttöoikeuden.)
  • Steam Deckillä: Hyväksy tietokoneen pariliitospyyntö.
  • Jos et näe mitään kehittäjäpakettityökalun käyttöliittymässä, varmista, että kehitystietokone ja kehittäjäpaketti ovat samassa lähiverkossa. Ympäristöstä riippuen saatat joutua käyttämään Add by IP -kenttää.

dev-kit_landing.png

Yllä näkyvässä kuvakaappauksessa callisto530 on rekisteröity kehittäjäpaketti.

Pelin koontiversion lähettäminen Steam Deckiin

Klikkaa Title Upload -välilehteä ja valitse peli määrittääksesi sen lähetettäväksi kehitystietokoneelta Steam Deck -kehittäjäpakettiin. Ruutu näyttää täytettynä tältä:

title-upload-20211111.png

Kuvakaappaus on esimerkki testipelin Windows-koontiversion lähettämisestä kehittäjäpakettiin.
  • Local folder (paikallinen kansio) – Päähakemisto kaikille pelin pyörittämiseen vaadittaville pelitiedostoille.
  • Upload filtering (lähetyksen suodatus) – Lähetysprosessi tapahtuu Rsyncin avulla SSH:n kautta. Sen nopeus sopii toistuville lähetyksille, joissa on vain pieniä sisältömuutoksia.

    Lähetyksen sisältöä voi hallinnoida kolmella valinnalla:

    Exclude only ottaa välilyönnillä erotellun listan malleista, joita ei sisällytetä lähetykseen.
    Include only lähettää vain tiedostot ja hakemistot, jotka vastaavat malleja, ja jättää huomiotta kaiken muun.
    Rsync args sallii edistyneiden käyttäjien määrittää rsync-komentoriviargumentit suoraan.

    Lisätietoja suodatusmalleista löytyy tästä artikkelista.

  • Clean upload – Ota käyttöön, jotta voit poistaa kehittäjäpaketista Local Folder -kansion ulkopuoliset tiedostot, kun mallien poissulkeminen on käytössä.
  • Start Command – Lisää tämä (ja haluamasi argumentit) pelin binääriseen suoritustiedostoon.
  • Steam Play – Valitse tämä, jos lähetät Windows-binääritiedostoja, jotka tulee suorittaa Steam Playlla Protonia käyttäen.
  • Steam Play debug – Virheenkorjauspalvelun valintaruutu mahdollistaa C++-koontiversion vaiheittaisen tarkistuksen Visual Studiossa.

Jos pelillä on jo sovellustunnus ja käytät Steamworks-ohjelmointirajapintaa, sisällytä steam_appid.txt-tiedosto (jossa pitää olla vain sovellustunnus) lähetyksesi juurihakemistoon sekä suoritettavan tiedoston oheen. Lue lisätietoja Steamworks-ohjelmointirajapinnan alustus ja sammutus -artikkelista.

Päivitettyjen koontiversioiden käynnistäminen

Navigoi Steam Deck -kehittäjäpaketin kirjastoon, hae sieltä uusi peli nimeltä "Devkit Game: PelinNimi" ja valitse se.
Kuten ylempänä mainittiin, ennen kuin lähetät ja testaat omaa peliäsi, kannattaa asentaa ja testata Steam Deck -kehittäjäpaketissa toista Steam-peliä, joka käyttää Steam Playta (Protonia). Tämä varmistaa, että Proton ja kaikki sen riippuvuudet on asennettu oikein.

Steam-asiakasohjelman konsoli

Jos kehitysprosessisi vaatii Steam-asiakasohjelman konsolikomentojen käyttöä, ne löytyvät CEF-konsolista.

Kun kehittäjäpakettisi asiakasohjelman työkalu on käynnissä ja yhdistetty Deckiin, valitse Devkits-välilehdeltä CEF Console -painike. Verkkoselain avaa sivun, joka yhdistää Steam Deckin CEF-asiakasohjelmaan. Klikkaa sivulla näkyvää SP-painiketta, joka avaa Steam Deckin asiakasohjelman käyttöliittymälle omistetun välilehden. Sivun oikeasta reunasta löytyy CEF-vianmäärityskonsoli.

CEF-vianmääritysikkunan auettua ota Steamin konsolisyöte käyttöön suorittamalla komento EnableSteamConsole() Console-välilehdellä. Tuloste, joka normaalisti näkyy Steam-asiakasohjelman konsolivälilehdellä (joka käynnistetään komennolla -console) tulee korostettuna näkyviin täällä tunnisteella SteamClient.

Suorittaaksesi konsolikomentoja lähetä SteamClient.Console.ExecCommand() -pyyntö kirjoittamalla komento lainausmerkkien sisään. Alla kaksi esimerkkiä kyseisistä pyynnöistä. Ensimmäisessä sovellukselle 480 myönnetään lupa dynaamiselle Cloud-synkronoinnille. Toisessa pyynnössä dynaaminen Cloud-synkronointi estetään:

deck_cef_client_console_example.png