there is an issue with steam drm wrapping in 4.19p

in 4.18, my game’s main .exe file in root folder and Win64-Shipping.exe file in Binaries\Win64 were able to wrap properly with drm wrapping steam provides using drmtoolp

in 4.19 i receive an error in drmtoolp, the steam error is error code 8 in my batch file output.

there is some issue with how the binary is packaged in the latest version of unreal that makes drm wrapping with steam not possible - please fix if possible? message me if you have additional questions about my report?

here is an example of how you would use the drmtoolp in a bat file

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

Hello,

We’ve recently made a switch to a new bug reporting method using a more structured form. Please visit the link below for more details and report the issue using the new Bug Submission Form. Feel free to continue to use this thread for community discussion around the issue.

https://forums.unrealengine.com/unreal-engine/announcements-and-releases/1410408-unreal-engine-bug-submission-form

Thanks

Can you provide the tracking number for your issue? I can’t find it

hi, i have been using 4.19.1-release and the issue no longer appears - drm wrapping works now with my binaries using drmtoolp on steam.

if there is a tracking number epic sent to me when i submitted the report to the above url, i no longer have it because i deleted the email several months ago.

Did you update drmtool or something else? I upgraded my project from 4.18.4 to 4.19.1 and now drm returns the same error 8

Thanks! I will try to build ue4 from source. But maybe you right about problems on valve’s serverside

same problem here :confused:

File region 6 overlaps file region 13
Not a valid PE code module
)
DRM wrap failed with EResult 8 (Invalid Parameter)

hi, i have been using 4.19.1-release and the issue no longer appears - drm wrapping works now with my binaries using drmtoolp on steam.

try to update to 4.19.1-R or 4.19.2 R

should help it.

Is this still an issue for you guys? Im using 4.19.2 and receiving the following error:
File region 5 overlaps file region 13 Not a valid PE code module

it works for me after a week of trying from way back earlier - it could be an intermittent issue that you might have to try again in a few days or so, maybe a week.

things to double check would be - did you use the proper drmtoolp line as i mentioned above? did you build unreal from source? almost positively the issue is an intermittent issue that valve has serverside.

koshi

I’m on 4.19.2 already, and still the error :frowning:

DRM operation failed.
Error code was 8
Error text: Valve Portable DRM Tool (Build: Jul 17 2018 14:02:00) (C) Copyright 2012-2018, Valve Corporation, All rights reserved. File region 6 overlaps file region 13 Not a valid PE code module

did you follow the docs here: Steam DRM (Steamworks Documentation)

i use that

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

and this seems to work for me - again the issue only happened for me for about a week… and it happened like several months ago for me. another thing you can try is updating 4.20

try making a batch file and running it - automating it with this steamcmd.exe from steamworks 1.42 which you can get from here Steamworks SDK (Steamworks Documentation)

got it - thank you - submitted bug report with steps to Unreal Engine Bug Submission Form - Formstack thanks for looking into steam drm wrapping issue in 4.19P1!

drmtoolp is serverside on valve’s server, i thought you were an admin so i replied here earlier thinking you weren’t able to find my bug submission from earlier. :slight_smile:

here is the line i use in the .bat file to create the drm wrapping:

[drive]:[path_to_sdk]\steamworks_sdk_142\sdk\tools\ContentBuilder\builder\steamcmd.exe +login [username] [password] +drm_wrap [appid, eg. 838823] “[drive]:[path_to_sdk]\steamworks_sdk_142\sdk\tools\ContentBuilder\content\windows_content\GAME.exe” “[drive]:[path_to_sdk]\steamworks_sdk_142\sdk\tools\ContentBuilder\content\windows_content\GAME_DRM.exe” drmtoolp 0

with this unreal version, i am packaging project to shipping, make sure you set packaging project → project → build configuration → shipping in the unreal settings for the project (i needed this for an addon i use for my steam game called the advanced sessions plugin)

here is the failure message -

Upload complete.
Requesting server side DRM wrap
Finish method returned eresult 8
Error result: 8 (Invalid Parameter - Valve Portable DRM Tool (Build: Jan 30 2018 14:14:45)
(C) Copyright 2012-2017, Valve Corporation, All rights reserved.

File region 6 overlaps file region 13
Not a valid PE code module
)
DRM wrap failed with EResult 8 (Invalid Parameter)
Exiting on SPEW_ABORT

here is what is expected and what you should get and what i get

Upload complete.
Requesting server side DRM wrap
Requesting download URL
Downloading wrapped file
DRM wrap completed;

if you are getting that error 8 as i had earlier, only other thing i can think of other than packaging settings is maybe building 4.19.1-release from source? if you want source build, go to epic github.

my recollection of what happened is i repeatedly tried to use drmtoolp and one day it worked. either after my unreal engine update or steam serverside had some kind of downtime issue and they fix their drmtoolp binary on their machine. it could also be that. maybe give it a few days and try this again, as well.

For anyone else still experiencing this issue, it seems to be caused by trying to apply the DRM wrapper to the bootstrap exe instead of the actual application exe. Remember that UE4 produces two executables; the exe in the project root folder is just a small application to check for prerequisites and invoke the real application exe which is typically further down in the directory structure.

This error from the DRM wrapper is precisely what is expected from trying to sign the bootstrapper rather than the program executable.

That’s correct, just the one needs to be wrapped. The bootstrapper can’t be re purposed to bypass the DRM, so you’re safe.

good to know this - in practice do you only need to apply the DRM to the real applicaiton shipping exe located in Binaries\Win64?

i am currently wrapping both binaries but can remove a few lines from my batch script if the win64 one is all that’s really needed to be wrapped.

How come this .exe for me exceeds the 65MB file size, making it too large to be wrapped by the Steam DRM wrapper? My file is 90 MB.

which file have you wraped? The root one or the Binaries\Win64 one?
what’s your file’s size?

Me the same,mine is 66.2 MB,and actually the file size need to be under 64MB