Steamworks-dokumentaatio
Steam DRM

Yleiskatsaus

Steam DRM -paketoija on tärkeä osa Steam-alustaa, koska se tarkistaa pelin omistajuuden ja varmistaa, että Steamworksin ominaisuudet toimivat asianmukaisesti käynnistämällä Steamin ennen peliä.

Steam DRM -paketoija ei ole itsessään piratismin vastainen ratkaisu. Steam DRM -paketoija suojaa satunnaiselta piratismilta (esim. kaikkien pelitiedostojen kopioiminen toiselle tietokoneelle). Siinä on jonkin verran obfuskointia, mutta motivoitunut hyökkääjä pystyy helposti poistamaan sen.

Suosittelemme, että parannat laillisten pelikopioittesi arvoa käyttämällä Steamworks-toimintoja (esim. verkkomoninpeliä, saavutuksia, pistetaulukoita, keräilykortteja), jotka eivät toimi laittomissa versioissa.

Lisätietoja Steam DRM -paketoijan yhdistämisestä muihin DRM- tai luvattoman käsittelyn vastaisiin ratkaisuihin löytyy Steam-paketoijan käyttäminen muissa DRM-ratkaisuissa -dokumentaatiosta.

Automaattinen Steam DRM -paketoija

Steam-paketoijaa voi käyttää SteamPipe-lähetyskomentosarjan kautta. Tämä suorittaa alustuspyynnön Steam-palvelimille asiakasohjelmasta, jolle on kirjauduttu sisään, ja lähettää sen jälkeen HTTP-protokollan kautta salaamattoman suoritustiedoston Steamin taustajärjestelmään. Paketointi tehdään palvelinpuolella, ja tämän jälkeen steamcmd lataa paketoidun suoritustiedoston.

Salli komentosarjan kirjautua sisään ja suorita drm_wrap-Steam-komento, jotta DRM-paketointi voidaan tehdä SteamPipella:
drm_wrap [appid] [input filename] [output filename] [toolname] [flags] [<destination>]

Parametrit:
  • appid – Numeerinen sovellustunnuksesi (AppID).
  • input filename – Suhteellinen tai absoluuttinen polku syötettyyn, salaamattomaan suoritustiedostoon. Muista merkitä polut, jotka saattavat sisältää välilyöntejä!
  • output filename – Suhteellinen tai absoluuttinen polku, johon työkalu kirjoittaa paketoidun suoritustiedoston tuotoksen.
  • toolname – Tällä hetkellä ainoa tuettu toolname-parametri on drmtoolp.
  • flags – Seuraavien, numeeristen merkintöjen bittipeite. Merkinnät määrittävät työkalun toimintaa.
    • 0 – Normaali paketointi (vahvin suoja).
    • 6 – Yhteensopivuustila (poistaa obfuskoinnin käytöstä).
    • 32 – Ohittaa virheenkorjauksen tarkistuksen.
    • 38 – Yhteensopivuustila sekä virheenkorjauksen tarkistuksen ohitus (heikoin suoja).
  • destination, valinnainen parametri – Vaihtoehtona voi olla joko cloud tai local. Nykyinen oletusarvo on Cloud. Paikallinen-vaihtoehtoa ei pitäisi tarvita, ellei Cloud-vaihtoehdon käytössä ole ongelmia.

Esimerkki: run_build.bat-komentosarja sisäänkirjautumiseen, ota DRM käyttöön, tee ja lähetä koontiversio Steamiin (jossa sovellustunnus on 480):
builder\steamcmd.exe +login mysteamaccount +drm_wrap 480 "D:\src\steamworkssdk\steamworksexample\release\steamworksexample.exe" "D:\src\steamworkssdk\tools\ContentBuilder\content\windows_content\SteamworksExample.exe" drmtoolp 0 +run_app_build ..\scripts\app_build_480.vdf +quit

Manuaalinen Steam DRM -paketoija

Saat exe-tiedoston nopeasti paketoitua Steam-paketoijalla, kun käytät Steamworksin sovellustietojen hallintasivua pelin ensisijaisen exe-tiedoston paketoimiseen.

  1. Valitse sovelluksesi hallintasivulta peli, johon haluat lisätä digitaalisten käyttöoikeuksien (DRM) hallinnan.
  2. Valitse sovellushallintasivun Tekniset työkalut -osiosta Muokkaa Steamworks-asetuksia.
  3. Valitse Turvallisuus-välilehdeltä DRM.
  4. Lataa pelin ensisijainen exe-tiedosto. Katso lisätietoja työkalun suoritusasetuksista ylhäällä olevasta automatisoidun paketoijan osiosta.
  5. Lataa exe-tiedosto takaisin paikalliselle koneellesi.
  6. Nimeä exe-tiedosto uudelleen alkuperäisellä nimellä.
  7. Kopioi se sisältötyökaludepottien lähdesijaintiin.
  8. Luo depotista uusi versio.
  9. Testaa depottia paikallisella sisältöpalvelimellasi.

Steam-paketoijan käyttäminen muissa DRM-ratkaisuissa

Steam-paketoijaa voi ja tulisi käyttää muiden DRM-ratkaisujen kanssa yhdessä. Käytä Steam-paketoijaa ensin yhteensopivuustilassa ja sen jälkeen muissa DRM-ratkaisuissa. Näin se ei vaikuta DRM-ratkaisun toimintaan. Yhteensopivuustila poistaa paketoijan DRM-ominaisuudet käytöstä.

Lähetä exe-tiedosto yhteensopivuustilassa joko valitsemalla se Steamworks-sivun pudotusvalikosta tai käyttämällä automaattisen drmtool-työkalun merkintöjä.

Usein kysytyt kysymykset

K: C# / .Net -pelini ei toimi Steam-paketoijan käyttöönoton jälkeen.
V: Steam-paketoija ei tue .Net-sovelluksia. Käytä DRM-paketoijan sijaan tätä: SteamAPI_RestartAppIfNecessary.

K: Pelini ei toimi DRM-paketoijan käyttöönoton jälkeen.
V: Steam-paketoija voi rikkoa muut DRM-työkalut. Katso kohta Steam-paketoijan käyttäminen muissa DRM-ratkaisuissa, sillä kyseessä saattaa olla ristiriita.

K: Onko minun käytettävä DRM:ää exe-tiedostossani joka kerta uuden koontiversion yhteydessä?
V: Kyllä, jokainen koontiversio, jonka aiot julkaista, on paketoitava Steam-paketoijalla. Yritä automatisoida se käyttämällä edellä kuvattua Automatisoitu Steam-paketoija -prosessia.

K: Otettuani Steam DRM -paketoijan käyttöön, viruksentorjuntaohjelma havaitsi, että binääritiedostoissani saattaa olla virus. Mitä minun tulisi tehdä?
V: Tämän kaltaisia vääriä positiivisia tuloksia saattaa tulla, kun DRM-syöttöprosessi muokkaa binääritiedostoa samalla tavoin kuin virus saattaisi muokata tiedostoa. Ota yhteyttä viruksentorjuntaohjelman tarjoajaan tai käytä Steam DRM -paketoijan sijaan ohjelmointirajapintaa.