Dokumentacja Steamworks
Steam DRM

Wprowadzenie

Steam DRM wrapper jest ważną częścią platformy Steam, ponieważ weryfikuje własność gry i upewnia się, że wszystkie funkcje działają poprawnie, uruchamiając Steam przed rozpoczęciem gry.

Steam DRM wrapper sam w sobie nie jest rozwiązaniem antypirackim. Steam DRM wrapper chroni przed wyjątkowo częstym przypadkiem piractwa (tj. kopiowaniem wszystkich plików gry na inny komputer) i ma pewne ograniczenia, ale jest łatwy do usunięcia przez osobę, która chce się go pozbyć.

Sugerujemy zwiększenie wartości legalnych kopii twojej gry dzięki funkcjom Steamworks, które nie będą działać w nieautoryzowanych kopiach (na przykład w wieloosobowym trybie online, osiągnięciach, tabelach wyników, kartach itp.).

Aby uzyskać więcej informacji, przejdź do Używanie Steam Wrapper wraz z innymi rozwiązaniami DRM.

Automatyczny Steam DRM Wrapper

Steam wrapper może zostać zastosowany z poziomu skryptu SteamPipe. Spowoduje to wysłanie żądania inicjalizacji do serwerów Steam za pośrednictwem zalogowanego klienta, a następnie przesłanie pliku wykonywalnego tekstu do serwera Steam za pośrednictwem protokołu HTTP. Wrap jest dodawany do serwera, a następnie SteamCMD pobiera plik wykonywalny.

Aby dodać DRM za pomocą SteamPipe, przygotuj skrypt, a następnie wykonaj polecenie drm_wrap:
drm_wrap [appid] [input filename] [output filename] [toolname] [flags]

Parametry:
  • appid — twój identyfikator numeryczny aplikacji
  • input filename — względna lub bezwzględna ścieżka do pliku wykonywalnego. Pamiętaj o cudzysłowiu, jeśli na ścieżce są przerwy.
  • output filename — względna lub bezwzględna ścieżka do folderu, w którym zostanie zapisany plik wykonywalny.
  • toolname — „drmtoolp” dla nowego przenośnego narzędzia. „drmtool” dla starego narzędzia Win32.
  • flags — maska bitowa następujących flag numerycznych określających zachowanie narzędzia.
  • 0 — normalny wrap (największa ochrona)
  • 6 — tryb zgodności (wyłącza obfuskację)
  • 32 — pomiń sprawdzanie debugerra
  • 38 — tryb zgodności i pominięcie sprawdzania debuggera (najmniejsza ochrona)

Uruchom run_build.bat, aby się zalogować, dodaj DRM, prześlij build na Steam (identyfikator aplikacji to 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

Ręczne dodanie Steam DRM Wrapper

Aby szybko dodać Steam DRM do pliku wykonywalnego gry, przejdź do strony App Data Admin na stronie Steamworks.

  1. Wybierz grę, którą chcesz objąć DRM na stronie App Admin
  2. Wybierz „Edytuj ustawienia Steamworks” w sekcji dotyczącej narzędzi technicznych na stronie administratora aplikacji
  3. Z zakładki „Bezpieczeństwo” wybierz DRM.
  4. Prześlij główny plik exe — więcej informacji na temat tej opcji znajduje się wyżej.
  5. Pobierz exe na swój lokalny komputer
  6. Zmień nazwę pliku, nadając mu oryginalną nazwę
  7. Skopiuj go do lokalizacji źródłowej dla Content Tool
  8. Utwórz nową wersję
  9. Przetestuj to na lokalnym serwerze treści

Używanie Steam Wrapper wraz z innymi rozwiązaniami DRM

Steam wrapper może i powinien być używany w połączeniu z innymi rozwiązaniami DRM. Aby to zrobić, przed dodaniem innych rozwiązań DRM, dodaj Steam wrapper w trybie zgodności. Zastosuj to w pierwszej kolejności, aby nie kolidował z innym rozwiązaniem DRM. Tryb zgodności wyłączy możliwości DRM wrappera.

Prześlij plik exe w trybie zgodności, wybierając go w menu rozwijanym na stronie Steamworks lub używając odpowiednich flag w automatycznym drmtool.

Najczęściej zadawane pytania

P: Moja C# / .Net gra nie działa po uruchomieniu Steam wrapper
O: Steam wrapper nie obsługuje aplikacji .Net. Zamiast DRM wrapper, użyj SteamAPI_RestartAppIfNecessary.

P: Moja gra nie działa po włączeniu Steam DRM wrapper
O: Steam wrapper może mieć negatywny wpływ na działanie innych narzędzi DRM. Aby sprawdzić, czy wystąpi konflikt, zajrzyj tutaj Używanie Steam Wrapper wraz z innymi rozwiązaniami DRM.

P: Czy muszę dodawać DRM za każdym razem, gdy pracuję nad nowym buildem?
O: Tak, każdy build, który chcesz opublikować, musi być posiadać Steam wrapper. W celu automatyzacji możesz skorzystać z procesu Automatycznego Steam Wrapper opisanego powyżej.