It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
avatar
Maighstir: Commenting out or disabling a block of code is quite a bit different than adding new functionality. The former can even be done without having access to the code (crackers to it all the time, and several games on GOG do use such cracks to disable the DRM).
Certainly, but the beauty of the suggestion is that if GOG Galaxy would support IP play directly, then the developer would not have to do ANYTHING to support it. All he would do would be to connect to the Galaxy API, and how Galaxy handles the physical connection would be of no concern to him.

The game probably could not even tell the difference (and would not need to) between a connection negotiated through a GOG master server and one created directly between two user clients using IP.
I agree with most of what you are saying, so just a few short remarks:

avatar
skeletonbow: No general rule, but game by game decision for me.
Of course for some games multiplayer does not interest me, so I would agree with you.

But I do wish GOG would communicate a bit clearer in this regard. For example there are some reviews by users who bought Age of Wonders 3 and are really annoyed by the multiplayer-DRM.

GOG should say it as it is: If the multiplayer part runs only through some central server of the developer then that IS some form of DRM, with all the problems that brings. Maybe it does not affect singleplayer, but it does affect a portion of the game. So there should be some big, fat, unmissable icon saying something like "Singleplayer is DRM-free; but multiplayer has some form of DRM" or something like that.

The way GOG currently handles it is not nice: Talking in an unqualified way about DRM-freeness everywhere on the webpage, but then making exceptions for multiplayer mode, which for many games and gamers is an integral part of the product.


avatar
skeletonbow: The DRM-free aspect is the entire root purpose of GOG's business model so that doesn't apply here. GOG does not and never ever has had any core fundamental stating that all games must have LAN multiplayer mode if they have a multiplayer mode at all, and I don't see GOG decision makers stating that they're planning on adding such a rule to their business model at this time
True, but I think this was mainly because the question was not too relevant so far, as all the "good old games" did have IP play anyway. The more new games GOG offers the more important this question becomes. And as I tried to argue above, IP play can be seen as a part of DRM-freeness "done properly". So GOG will have to take a stance on this, and we as customers should try to influence this in the right direction.

(This also answers your gluten-freeness objection. If at some point, for some hypothetical reason, products could not be "truly organic" anymore without at the same time being gluten-free, then yes, the store SHOULD amend its understanding of "organic" and start rejecting products containing gluten.)
avatar
rhoelzl: I agree with most of what you are saying, so just a few short remarks:

avatar
skeletonbow: No general rule, but game by game decision for me.
avatar
rhoelzl: Of course for some games multiplayer does not interest me, so I would agree with you.

But I do wish GOG would communicate a bit clearer in this regard. For example there are some reviews by users who bought Age of Wonders 3 and are really annoyed by the multiplayer-DRM.

GOG should say it as it is: If the multiplayer part runs only through some central server of the developer then that IS some form of DRM, with all the problems that brings. Maybe it does not affect singleplayer, but it does affect a portion of the game. So there should be some big, fat, unmissable icon saying something like "Singleplayer is DRM-free; but multiplayer has some form of DRM" or something like that.

The way GOG currently handles it is not nice: Talking in an unqualified way about DRM-freeness everywhere on the webpage, but then making exceptions for multiplayer mode, which for many games and gamers is an integral part of the product.

avatar
skeletonbow: The DRM-free aspect is the entire root purpose of GOG's business model so that doesn't apply here. GOG does not and never ever has had any core fundamental stating that all games must have LAN multiplayer mode if they have a multiplayer mode at all, and I don't see GOG decision makers stating that they're planning on adding such a rule to their business model at this time
avatar
rhoelzl: True, but I think this was mainly because the question was not too relevant so far, as all the "good old games" did have IP play anyway. The more new games GOG offers the more important this question becomes. And as I tried to argue above, IP play can be seen as a part of DRM-freeness "done properly". So GOG will have to take a stance on this, and we as customers should try to influence this in the right direction.

(This also answers your gluten-freeness objection. If at some point, for some hypothetical reason, products could not be "truly organic" anymore without at the same time being gluten-free, then yes, the store SHOULD amend its understanding of "organic" and start rejecting products containing gluten.)
Yeah, we should air our opinions but not just to GOG.com. It is the game developers that make the games ultimately where we need to air our concerns as they have all of the control over what they put in their games. We can tell GOG to not sell games that don't meet some criteria, but that doesn't stop game companies from /making/ the games, and the tendency over time has been for more and more developers to go down the "bad" route. If the sole reaction from GOG.com and GOG customers is "we don't want your games" that is fine, but then 10 years from now there are going to be very slim pickings of games to add to GOG.com except perhaps 10000 indie platformers released per week. ;o)

This is a fundamental problem in the game industry with regards to consumers and not a GOG specific problem, rejecting it at GOG.com with a hardline stance without addressing the fundamental issue at heart will not really resolve the problem. Game companies can pretty much do whatever they want with their games and sell infinite copies on Steam, Origin or Uplay or other distribution platforms without really feeling any kind of economic consequences from not having their game on GOG.com. In order for them to care, professional dialogue needs to be established and positive proactive efforts to change the way the game industry does business need to happen rather than knee-jerk type mini-battles that don't actually harm the offending shops in question in any material way, but do shrink the attractiveness of a store like GOG.com to the average consumer who generally doesn't care too much either way about these things.

GOG is one of the good voices out there communicating with game devs/publishers to steer them in the direction we'd all like to see, but it's an uphill battle to change multi-decade ways of doing things. Hopefully the success of The Witcher 3 will rattle the industry a bit and get the ball rollling.
GOG should just partner with Evolve ( www.evolvehq.com ) instead. It already has everything people need: in-game overlay, community functions, integrated virtual LAN, etc. Pretty much, a "deal/partnership" wouldn't require much more on either companies behalf than integrating a plugin to allow GOG users to sign in to, and d/l from their game library through the client.
Post edited June 19, 2014 by BrandeX
avatar
BrandeX: GOG should just partner with Evolve ( www.evolvehq.com ) instead. It already has everything people need: in-game overlay, community functions, integrated virtual LAN, etc. Pretty much, a "deal/partnership" wouldn't require much more on either companies behalf than integrating a plugin to allow GOG users to sign in to, and d/l from their game library through the client.
Not sure that a 3rd party website/service that requires a new login account to use would be very popular with GOG customers who generally balk at needing to have any accounts anywhere other than their own GOG account to get the best out of their games. It's kind of a moot point either way though because GOG is not just contemplating wanting to provide such gaming services and thinking of looking of who to partner with, but they've already implemented their own gaming service and announced it publicly. GOG Galaxy will be able to do anything some 3rd party service might be able to do and more and for GOG to completely be in control of what it is capable of and enhance it over time based on what GOG's own customers want. A 3rd party service could never do what GOG can create (and are creating already) themselves so any remote idea of partnering with a 3rd party site is kind of rather unlikely and pointless, not to mention it would be a huge vote of non-confidence in their own Galaxy product that they're working hard on producing.

GOG's interests both for themselves and for the great GOG community are served in a vastly superior way by GOG developing their own solutions and being in full control over them solutions and trying to make them match their customers expectations than giving up control to some 3rd party service that might be just as non-existent as Gamespy in a month/year/etc. Imagine if GOG had partnered with Gamespy or Games for Windows Live (shutting down in July) or ...

No thanks. I trust GOG and I trust what they do themselves, but I definitely would not trust a bunch of random services built on 3rd party stuff and I don't think the majority of the GOG customerbase would like that either. They're doing the right thing doing this all in house, and if there are features people want bad enough that they do not have at the outset when this is launched, it is nothing that they can't add in future updates based on the feedback and desires of the community. They grew DRM-free gaming organically and they can grow GOG Galaxy and its services organically too.
"The network code exists in the application itself to establish sockets to communicate with. On a LAN that would usually be done by either specifying an IP address manually (mid 1990's style) or in modern days by doing a UDP broadcast on the LAN to either announce a server's presence to all local clients or for clients to poll for the existence of a server"

What if anything would stop the Galaxy client to implement this A)For older games that don't support LAN or B)All games using the Galaxy API?

Could GOG say to developers and publisher: "Sure you are welcome to sell your game that doesn't support LAN on GOG" while at the same time adding functionality to Galaxy that would ensure LAN support for any game launched through it? Perhaps even (some?) non-GOG games.
avatar
Kristian: "The network code exists in the application itself to establish sockets to communicate with. On a LAN that would usually be done by either specifying an IP address manually (mid 1990's style) or in modern days by doing a UDP broadcast on the LAN to either announce a server's presence to all local clients or for clients to poll for the existence of a server"

What if anything would stop the Galaxy client to implement this A)For older games that don't support LAN or B)All games using the Galaxy API?

Could GOG say to developers and publisher: "Sure you are welcome to sell your game that doesn't support LAN on GOG" while at the same time adding functionality to Galaxy that would ensure LAN support for any game launched through it? Perhaps even (some?) non-GOG games.
I apologize for the length of this, but I want to express some things that require explanations that can't be easily shortened without losing their meaning, so I will just try to explain my thoughts about this as briefly as possible but try complete and hopefully help people understand the complexities involved at least as I see them from my own experience as a software developer.

LAN or Direct IP support in a game really needs to be implemented in the game, or in the code linked into the game that is providing the networking functionality, and the game needs a user interface to specify which mode of networking to use and to enter an IP address (for direct IP) or a chooser to select a game running on the local LAN. If all that a game supports is connecting to a central service like Gamespy or similar, then the game's network code is hard coded to connect to the hosts of that service and to communicate with that service using the service's proprietary protocol.

The only way that game is going to play multiplayer is to connect to the service it was intended to, or to connect to another host that is running the exact same server software. So for example if you want to play a game that is hard coded to use the GameWhizBlaster online gaming service, then you have to use that service, or you have to have a machine that is running the exact same software that service runs and have a way of configuring or hacking the game to connect to a different DNS hostname than the official game service uses. An example of how this is done is with Blizzard's old games that connect to Battle.NET such as Starcraft or Warcraft II for example. Ignore for the moment that those games did not include LAN support and pretend that they only support Battle.NET. If Blizzard's Battle.NET no longer provides support for those games then you simply can't play them multplayer anymore unless you can set up your own Battle.NET server somehow and reconfigure the game to use the custom private service that is compatible with Battle.NET (again, pretend the games do not have LAN support). Fortunately some people reverse engineered Battle.NET and produced an open source alternative to it and released it on the Internet known as "bnetd", which ended up getting sued by Blizzard and taken offline more or less, but not long after that someone else took the bnetd code and kept working on it changing the name of it to "PvPGN" and it still works and is still available today. So, it is technically possible to play old Blizzard games (most of them are supported) using this 3rd party open source reimplementation of Battle.NET's server code and it works quite well. It is however in violation of Blizzard's license agreements and is something that would be used by end users manually rather than something likely to be endorsed by some game company out there, and Blizzard could and probably would sue anyone again if they felt the urge to.

In order to provide support for any other game out there in such a similar situation one would have to reverse engineer the game's communication protocol with the server back end and reimplement all of the functionality the server provides and in the case of a company like GOG.com, they would have to have the blessing of the rights owners to do this otherwise they would most likely be violating the licensing agreements and intellectual property laws. However, the chances are high that if a game company would allow a partner like GOG to do this, they probably would have the source code of the server side too, and just offer it to GOG to set up their own servers and no hacking or messing around would be necessary.

Now, what does that have to do with LAN support or direct IP support? Well, if a game does not have either built into it, then the only way it can communicate is through the existing mechanisms it has, and this basically means that a server has to be running somewhere that is using a compatible communication protocol the game already understands, and that the game can be pointed to the proper host that is running that server, and that all other gamers wanting to join the same game can also connect to that server. Now, if one were to run such a server on the local host the game is running on and redirect a DNS entry by hijacking the hostname via the local "hosts" configuration file to point to localhost, that would satisfy the local game to communicate to a server it can talk to. The other games on the network would be unaware of this completely and have no idea how to communicate to that server or that it even exists. To hack something automatic to handle this into this game server software you'd have to more or less set up every single game on the network to have their own local hack server like this, and the server modified to UDP broadcast across the LAN to try and autodetect other hosts running the game server, and then they could share status of games waiting for players to join or whatnot.
[ continued below]
[continued from above]

That is a hell of a lot of work to do for one single game, and just about every game ever made is going to have it's own proprietary protocols to reverse engineer etc. and go through all this hack work. Not to mention that various security software would throw a cardiac arrest over some game hacking up the "hosts" file to redirect DNS queries. And all of this is actually a huge oversimplification of the problems that would need to be solved ultimately.

Adding direct IP support would be even more complex because the game would not have an existing in-game UI for inputting the game server IP. You'd have to probably binary hack the game binaries to make a custom UI for it and do that for every single game.

The quality assurance testing of all of this would be a gigantic nightmare and the whole idea is just super ugly nasty hacks. I can appreciate people wanting to have such features and I think it would be great to have LAN support and direct IP in every game ever made too, but it's easy to request or even demand such a feature, but to truly understand the monumental herculean per-video-game effort required to implement such a thing with practically every single game needing reverse engineering and highly custom code written just to have a rather shoddy and probably unstable experience that only a fraction of users would even likely care about or use, and doing so at the risk of violating reverse engineering laws...

Aside from having the game's source code to freely modify and the permission to do so, and the desire, and being convinced enough that the development efforts of hacking on the game will result in an increase in profits for any features added - the only way to really add such features is with the source code and doing it properly, or by hacking the game binaries to do the same thing (extremely nasty), and only then with the approval of the developer/publisher as well. A rather costly prospect which for the most part isn't going to be a huge factor that is likely to double or triple the sales of any game or even really make any likely noticeable dent in sales figures IMHO for most titles.

On the other side, games that do have LAN support over TCP/IP can be made to work over the Internet via just about any kind of VPN software, and many people use software such as Hamachi or Tunngle or similar to continue playing games long after the multiplayer servers are taken offline. If GOG could get the legal ok from a game developer to set something like this up or similar for a given game, then that would be something they could theoretically do much more easily and could integrate the VPN component into Galaxy or as a separate standalone thing. The other way around though - no LAN support and just something like Gamespy... for all intents and purposes - infeasible.

Sorry if what I'm saying might sound negative as that is not my intention even remotely. I'm just trying to be a realist here with some background in network programming. It's very easy to have cool sounding ideas like some people are suggesting, but if one is not a video game developer or familiar with how networking code is written and works underneath then it is very easy to suggest things to do which sound super easy but which are an immense amount of work that there most likely is no financial incentive to expend the manpower to do, and without the approval of the game developer who left such features out of the games they developed in the first place - bypassing those limitations through 3rd party software hacks outside of the game binaries would probably violate the law in one or more countries such as the USA's DMCA (if a game company saw their lack of LAN/DIrect IP as a form of copy protection and creating software to do what is being asked could be shown to be considered a form of bypassing said copy protection illegally).

As for GOG telling publishers "you must have LAN support or we wont accept your games", that is 1000 times more harmful to GOG who must practically beg to get games as it is and just get game companies to swallow the DRM-free aspect. To make a laundry list of all kinds of other restrictions and demands of which only a small fraction of the gamers would actually benefit or care about, would just send game publishers laughing their asses off out of the GOG offices, yanking their games from the GOG catalogue, labelling GOG a bunch of nuts, and embracing Steam and other platforms that give them the flexibility to decide exactly how their game will works and never looking back at GOG again.

I applaud people's enthusiasm for suggesting these things, but what everyone is suggesting is just really not technically or finanacially viable for the majority of games, and more importantly is most likely not legal either unless GOG secured the right to make such modifications or hacks to the game to do these things.

I've written a fair bit of networking code myself in the past and IMHO trying to do what some are suggesting is just not viable either technically and/or financially for the work involved and the potential financial payoff.

Having said that, if there is anyone else present with extensive knowledge of network programming who has any idea how to do what people are requesting/hoping GOG does in any manner that is simpler than what I've suggested above, I'd absolutely love nothing more to have my opinion about this proven wrong by seeing someone suggest an actually viable technical solution that is actually something accomplishable without immense dedication of engineering resources reverse engineering every single game/game server and would be financially viable for GOG to even remotely consider.

I just don't see it happening, but I welcome being wrong.

If GOG has to actually hack the code in a game, either with or without the source code, doing it to retrofit a nasty hack as per above isn't the smartest thing to do. Instead, just adding proper support for GOG Galaxy's native functionality would be the only sensible thing to do worthy of the man hours put into it IMHO. That's what I hope to see them do with as many games as possible, and I believe that is the approach that they are likely to take with any games they can.
"Hi, I'd like to hear a TCP joke."
"Hello, would you like to hear a TCP joke?"
"Yes, I'd like to hear a TCP joke."
"OK, I'll tell you a TCP joke."
"Ok, I will hear a TCP joke."
"Are you ready to hear a TCP joke?"
"Yes, I am ready to hear a TCP joke."
"Ok, I am about to send the TCP joke. It will last 10 seconds, it has two characters, it does not have a setting, it ends with a punchline."
"Ok, I am ready to get your TCP joke that will last 10 seconds, has two characters, does not have an explicit setting, and ends with a punchline."
"I'm sorry, your connection has timed out. Hello, would you like to hear a TCP joke?"

-----------

YOU ARE GOING TO HEAR MY UDP JOKE!
YOU ARE GOING TO HEAR MY UDP JOKE!
YOU ARE GOING TO HEAR MY UDP JOKE!
YOU ARE GOING TO HEAR MY UDP JOKE!
YOU ARE GOING TO HEAR MY UDP JOKE!
YOU ARE GOING TO HEAR MY UDP JOKE!

OK! Gee I got the message.
Post edited October 07, 2014 by Klumpen0815
So what are the games currently on GoG.com that would have to be removed if the restriction was added :
"If your game has multiplayer*, it has to provide a direct IP option" ?

*disregarding games so old they only have IPX support, and those that only have forms of non-realtime multiplayer like Hotseat an Play-By-E-Mail.
Post edited May 06, 2015 by BlueTemplar
It's totally possible to have an API where one of the users on a LAN can act as a matchmaking finder. It would take some additional coding, and likely some UI work for the setup aspect, but it's achievable.
avatar
jsjrodman: It's totally possible to have an API where one of the users on a LAN can act as a matchmaking finder. It would take some additional coding, and likely some UI work for the setup aspect, but it's achievable.
But I guess GOG won't do it. Although it would actually be really cool.