karolherbst / Gamekeeper-Framework

Library for hooking up game stores and merging them into one single library
GNU Lesser General Public License v2.1
2 stars 0 forks source link

[RFC] DRM Support #128

Open Jookia opened 9 years ago

Jookia commented 9 years ago

DRM is games is pretty commonplace, but DRM in stores themselves is only really seen in large stores like Steam and Origin that thrive on being proprietary. I don't expect most of us to be fans of DRM, but I think it's time we figure out how it's going to be done, or if it's going to be done. There's a couple of ways to do it:

The first is adding proprietary modules to clients with some kind of help of GameKeeper, which the LGPL license allows. This is equivalent to the HTML5 EME drama. The second is that we allow secure communication between the store and the game through a channel. The third is we just don't do it at all.

Personally I'm not a fan of having GameKeeper deal with any kind of DRM in stores and instead push it upon the games to do it themselves, although this would rule out support for things like Steam support if that would ever happen.

Cheeseness commented 9 years ago

Yeah, it seems like it's better to just let stores implement their own DRM mechanisms server side that talk directly with the game. GameKeeper doesn't need to be involved, I don't think.

karolherbst commented 9 years ago

I already said in IRC, that I don't feel bad about displaying game keys needed for local activisation or needed in game installations. In the end I think we should target a sitation, where everything can be done through a gamekeeper client.

But I don't think, that we should allow drm where we need a propritary moudle, because this contradicts the idea of being able to play old games, because server might be shutdown and games not being patched.

Cheeseness commented 9 years ago

As discussed in IRC, I think the better approach to this (displaying keys) is to allow store operators to provide a URL to be displayed in an overlay for that game for that user. That means that the client itself doesn't have to handle this stuff, and store operators have as much flexibility as they want/need with regards to what stuff they expose/show to players.