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. Sen vuoksi Steam-sovellus käynnistyy ennen peliä.

Steam DRM -paketoija ei ole itsessään piratismin vastainen ratkaisu. Steam DRM -paketoija suojaa laittomia tuoteväärennöksiä (esim. kaikkien pelitiedostojen kopioimista toiselle tietokoneelle) vastaan. Siinä on käytetty 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.

Katso kohdasta Steam-paketoijan käyttäminen muissa DRM-ratkaisuissa lisätietoja Steam DRM -paketoijan yhdistämisestä muihin DRM- tai luvattoman käsittelyn vastaisiin ratkaisuihin.

Automaattinen Steam DRM -paketoija

SteamPipe-lähetyskomentosarjan kautta voi käyttää Steam-paketoijaa. Tämä suorittaa alustuspyynnön Steam-palvelimille sovelluksesta, 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] [syötteen tiedostonimi] [tulosteen tiedostonimi] [toolname] [flags]

Muuttujat:
  • appid – Numeromuodossa oleva sovellustunnuksesi
  • 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 – Työkalun nimi "drmtoolp" uudelle, siirrettävälle työkalulle. "drmtool", jos käytetään vanhaa, yhteensopivaa win32-työkalua.
  • flags – Seuraavien, numeromuodossa olevien merkkien bittipeite. Merkit määrittävät työkalun toimintaa.
  • 0 – Normaali paketointi (eniten suojausta)
  • 6 – Yhteensopivuustila (poistaa obfuskoinnin käytöstä)
  • 32 – Virheenkorjauksen tarkistuksen ohitus
  • 38 – Yhteensopivuustila sekä virheenkorjauksen tarkistuksen ohitus (heikoin suoja)

Esimerkiksi sisäänkirjautumisen voi tehdä run_build.bat-komentosarjalla. Käytä DRM:ää. Rakenna ja luo koontiversio Steamiin (jossa sovellustunnus on 480):
builder\steamcmd.exe +login mysteamaccount mysteampassword +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 hallinnan.
  2. Valitse sovellushallintasivun Tekniset työkalut -osiosta Muokkaa Steamworks-asetuksia
  3. Valitse DRM Turvallisuus-välilehdeltä.
  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ä. Tämä onnistuu käyttämällä Steam-paketoijaa ensin yhteensopivuustilassa ja sen jälkeen muissa DRM-ratkaisuissa, jottei se 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ämisen jälkeen
V: Steam-paketoija ei tue .Net-sovelluksia. Käytä DRM-paketoijan sijaan kutsua SteamAPI_RestartAppIfNecessary.

K: Pelini ei toimi DRM-paketoijan käyttämisen 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 tehdessäni uuden koontiversion?
V: Kyllä, jokainen koontiversio, jonka aiot julkaista, on paketoitava Steam-paketoijalla. Yritä automatisoida se käyttämällä edellä kuvattua "Automatisoitu Steam-paketoija" -prosessia.