AGS Is Going Open-Source!

All the inane chatter goes in here. If you're curious about whether we will support a game, post HERE not in General Discussion :)

Moderator: ScummVM Team

RickJ_Ags
Posts: 2
Joined: Sun May 15, 2011 5:22 am

Post by RickJ_Ags »

Hi all,

I'm a long time AGS community member and have been listening to this conversation which I find interesting.

I believe some clarity is needed from both SCUMMVM and AGS perspective. CJ has stated that he finds GPL too restrictive but does not opine further nor does anyone inquire specifically as to how it is too restrictive. It would be my guess that he is referring to burdens/obligations real or perceived that would be placed on the authors of AGS games by the GPL.

From the above discussion the SCUMMVM community isn't clear about what burdens/obligations game authors would or should have.

I think these issues ought to be resolvable. There are other open source projects out there that have successfully dealt with similar issues.

I think CJ and the SCUMMVM folks need to get more specific about what they want and then discuss how the actual issues could be resolved to everyone's mutual satisfaction.

For example if I am correct in guessing that CJ's concern is about restricting what AGS users can do with their creations then perhaps his concerns about the GPL could be alleviated by adding a couple mutually agreeable terms to the ScummVM License.

Here is an example what these additional terms my look like and the issues they may address. I have no idea if these have any relation to CJ's concerns or how agreeable or objectionable may be to ScummVM folk. Their only purpose is to illustrate the form of a possible compromise rather than proposing the content of an actual compromise. I offer the following in hope of furthering the discussion.
1. Games/Programs executed by the ScummVM ARE NOT derivative works of ScummVM or otherwise affected by the ScummVM GPL license.

2. Packaging the ScummVM binary runtime in the same file as a game or program that it executes does not constitute a derivative work.

3. The ScummVM binary runtime and games/programs it executes may be distributed without ScummVM source code provided the standard scummvm-license.txt file is included in the distribution.
So what's the bottom line?

1. What are CJ's specific objections to GPL?

2. Are those objections addressable via additional license terms?

Cheers RickJ
User avatar
DrMcCoy
ScummVM Developer
Posts: 595
Joined: Sat Dec 17, 2005 1:33 pm
Location: Braunschweig, Germany
Contact:

Post by DrMcCoy »

RickJ_Ags wrote:It would be my guess that he is referring to burdens/obligations real or perceived that would be placed on the authors of AGS games by the GPL.
IANAL, but from what I understand, the actual games are completely outside the scope of ScummVM's and the engine's license.
RickJ_Ags wrote:adding a couple mutually agreeable terms to the ScummVM License.
As in modifying ScummVM's license? As in not the engine, but ScummVM itself?

Yeah, no, not really possible.
We had that (quick) discussion before when talking about relicensing ScummVM to the GPLv3, and the thing is: We would need to track down, contact and get consents from every single contributor to ScummVM (and, since we merged with Sarien and FreeSCI, probably their contributors too).
ScummVM's license and/or patch submission guidelines does not include a "You'll sign your copyright over to us" clause like the GNU projects have. Meaning, the copyright is still owned by the respective contributors, and a changing the license would need their approval.
The sheer number of contributors would make that a whole lot of work, it's just not feasable.
RickJ_Ags wrote:1. Games/Programs executed by the ScummVM ARE NOT derivative works of ScummVM or otherwise affected by the ScummVM GPL license.
Again, from what I understand, that should hold true regardless of that extra clause.
RickJ_Ags wrote:2. Packaging the ScummVM binary runtime in the same file as a game or program that it executes does not constitute a derivative work.
No idea about that.
Personally, I always thought that practice of pasting the game archive onto the interpreter EXE was ugly and damn weird, but YMMV.
RickJ_Ags wrote:3. The ScummVM binary runtime and games/programs it executes may be distributed without ScummVM source code provided the standard scummvm-license.txt file is included in the distribution.
Depending on the context of that license file, that could be a direct violation of the GPL: It would need to contain an URL where to obtain the ScummVM source code.
User avatar
marticus
Posts: 77
Joined: Sat Nov 26, 2005 11:32 am

Post by marticus »

I was under the impression that GPL (at least from v2) allows relicensing under subsequent versions without needing extra permission from original authors.
User avatar
DrMcCoy
ScummVM Developer
Posts: 595
Joined: Sat Dec 17, 2005 1:33 pm
Location: Braunschweig, Germany
Contact:

Post by DrMcCoy »

I must admit, the details of all the arguments for/against relicensing to GPLv3 are hazy in my memory (there's a surprise :P).

Anyway, adding clauses, as was suggested by RickJ_Ags, is a completely different anymal than going from "GPLv2 or later" to "GPLv3 or later".
fingolfin
Retired
Posts: 1452
Joined: Wed Sep 21, 2005 4:12 pm

Post by fingolfin »

RickJ_Ags,
actually I think we (ScummVM) pretty much know exactly the implications and ramifications of the GPL for us and game authors; we also know what we want.

We don't know what CJ wants and intends, though. Of course it would be interesting to know what his specific reasons against the GPL are. However, it his choice whether he wants to explain them or not. He certainly does not owe it to us to justify himself. I also don't think it makes sense to guess at his reasons; at least I fail to see the point in doing that.

Also note: Even if the GPL issue was resolved: So far I know of nobody with proven track record (whether from the ScummVM team, AGS community or elsewhere) who actually wants to actively work on AGS support in ScummVM. So even *if* CJ were to switch to the GPL right now, I am not sure whether it would do anybody any good :). Just sayin'.
User avatar
LordHoto
ScummVM Developer
Posts: 1029
Joined: Sun Oct 30, 2005 3:58 pm
Location: Germany

Post by LordHoto »

DrMcCoy wrote:I must admit, the details of all the arguments for/against relicensing to GPLv3 are hazy in my memory (there's a surprise :P).

Anyway, adding clauses, as was suggested by RickJ_Ags, is a completely different anymal than going from "GPLv2 or later" to "GPLv3 or later".
Yes this is why we can't add those additional clauses IMHO. Anyway I don't like them being part of the license text and I especially think 3 must be gone.

The other two could be included as explanation (as in nothing legal binding) on our views at out FAQ or maybe in the possible case when being distributed with the games.
User avatar
sev
ScummVM Lead
Posts: 2272
Joined: Wed Sep 21, 2005 1:06 pm
Contact:

Post by sev »

Let me provide my own understanding.

One important thing to understand is that APL->GPL is one way. I.e. APL code could be used in GPL, but not vice versa. That basically means is that any changes performed in ScummVM tree cannot be taken back to AGS.

Now, onto the technical challenge. My understanding is that AGS 2.x evolved to 3.x gradually, i.e. there was no rewrite. That means that if somebody would take 2.x and start adapting it to OSystem, he will have to redo the work once again when/if bringing in of 3.x will be decided. This will be gross effort duplication.

However, I do not see a problem if AGS engine could be developed within ScummVM tree, but on a different release schedule. They could just consider creating custom builds with only one engine enabled. The main ScummVM releases will contain just the latest stable version of the engine. With git it is much easier to do. Of course that will mean that those builds must be distributed under GPL.

I would personally love to see AGS engine as part of our engine family.


Eugene
timofonic
Posts: 254
Joined: Thu Jun 01, 2006 2:18 am

Post by timofonic »

This fork seems to clean some stuff related to portability, no idea about the official source code repository.

http://gitorious.org/ags

I would love to play games from all AGS generations on different systems, without depending on certain platforms that I never use (Microsoft and Apple ones).

I was playing Gemini Rue in someone's computer that had Windows 7 and liked the classic style of the game, but I don't have access to that computer anymore :(

EDIT: There's a recent PSP port, I'm pasting the message here for more information (original message here:
JJS wrote: Finally, here is an initial AGS runtime port to the PSP.

There are some restrictions, especially this port cannot run high-res games because the native resolution of the PSP is only 480x272 pixels. Also memory demanding games will run out of memory and crash. More about this is written in the readme.

What this port can do is run games requiring certain plugins like snowrain because the plugin exports are implemented as function stubs. This means you can e.g. run Gemini Rue with this (without the rain effects of course).

http://www.jjs.at/temp/AGS_for_psp_3.2.1.zip

Are there plans to release the 3.1 and 2.7 source too? Edit: I guess that was already answered. I will stay tuned.
Last edited by timofonic on Sat Jun 11, 2011 12:10 am, edited 1 time in total.
zorbid
Posts: 66
Joined: Sun Nov 27, 2005 6:41 pm

Post by zorbid »

1. Games/Programs executed by the ScummVM ARE NOT derivative works of ScummVM or otherwise affected by the ScummVM GPL license.

2. Packaging the ScummVM binary runtime in the same file as a game or program that it executes does not constitute a derivative work.

3. The ScummVM binary runtime and games/programs it executes may be distributed without ScummVM source code provided the standard scummvm-license.txt file is included in the distribution.
Regarding point 3, the GPL does not mandate to package the source with the executable, just to provide it upon request. In the unlikely event that someone asks for the source of the engine, the game author could point to the ScummVM web site (assuming that he uses the canonical binary), or send it by email, ftp, put it on Megaupload or even send it by snail mail, on a CD or printed on paper...).

The only contentious point is #2, and I'm not even sure it is problematic. The opinion of the FSF could be handy.
User avatar
SuperDre
Posts: 157
Joined: Thu May 31, 2007 5:06 pm
Location: helmond.nl
Contact:

Post by SuperDre »

Well, maybe I'm a bit blunt now, but who cares if AGS is still under development, it's the current games that are out there that are important, not future games. Up till the current build of AGS there are so many games out, even AGS itself isn't capable of just running those old games on the newer engine. Also there aren't really that many external plugins used and even those aren't used by many games, so 'emulating' those plugins wouldn't be much of a problem too (just like on other engines).

AGS will now begin a new chapter in it's life, and one of that will propably be refactoring it into much cleaner/portable code for the future, which means a real new higher version. You could say 3.2.1 is the lastest active version before the real 'upgrade'..
With the long list of already existing games it will take some time getting them to run anyway, and a lot of games deserve the time it takes, without having to keep newer versions of the engine in mind.

BTW I always thought AGS is just an exe which is the interpreter with the data/bytecode slapped onto it, but I can be mistaken about that.

So for current games there shouldn't be a problem, the problem here stems from future games, which I personally would say could be added as a seperate engine AGS4 or something like it. And aren't there really any engines already supported by ScummVM which are still used by their original makers for newer games?
robboten
Posts: 11
Joined: Mon Oct 31, 2011 2:26 pm
Location: Sweden

Post by robboten »

Any news on this? I would love support for all indie-games made in AGS on my Android!
User avatar
sev
ScummVM Lead
Posts: 2272
Joined: Wed Sep 21, 2005 1:06 pm
Contact:

Post by sev »

We still did not see 2.x engine sources.


Eugene
timofonic
Posts: 254
Joined: Thu Jun 01, 2006 2:18 am

Post by timofonic »

sev wrote:We still did not see 2.x engine sources.


Eugene
The current version seems to run games from 2.60 to forwards, or the PSP/Android port at least.

He said about release older AGS versions too. Previously tothe Open Source release (the official code repository is a Subversion server, plus other forks like the Android/PSP port on Gitorious) he did use Microsoft Visual SourceSafe as source control system, I said him about the vss2git tool and he did find it interesting too.

He did attend AdventureX and that was an unique opportunity to meet him. 2012 edition will be announced soon, I hope they make the next edition sooner in a better date (summer?) and I can attend :)

Anyway, maybe some interested people would try to contact him. He connects to AGS forums quite rarely, so maybe an e-mail is better or ask a trusted AGS community member for help to contact him.
da1writer
Posts: 20
Joined: Thu Oct 21, 2010 5:48 pm

Post by da1writer »

timofonic wrote:
sev wrote:We still did not see 2.x engine sources.


Eugene
The current version seems to run games from 2.60 to forwards, or the PSP/Android port at least.

He said about release older AGS versions too. Previously tothe Open Source release (the official code repository is a Subversion server, plus other forks like the Android/PSP port on Gitorious) he did use Microsoft Visual SourceSafe as source control system, I said him about the vss2git tool and he did find it interesting too.

He did attend AdventureX and that was an unique opportunity to meet him. 2012 edition will be announced soon, I hope they make the next edition sooner in a better date (summer?) and I can attend :)

Anyway, maybe some interested people would try to contact him. He connects to AGS forums quite rarely, so maybe an e-mail is better or ask a trusted AGS community member for help to contact him.

While interesting, it's probably best to have the person who did the psp port of AGS to do the android port (and it apparently he is as the project page shows). The people at scummvm have better things to do like getting Myst or Riven up and running well or whatever they are up to.

P.S. I also suggested what you post in another thread before ya but well.. my signature says it all...
scoriae
Posts: 274
Joined: Thu Jan 03, 2008 3:32 am

Post by scoriae »

I've just read through this thread and it seems to me that CJ is approaching this from a development perspective while the scummvm devs are approaching it from a compatibility perspective.

It is two fundamentally different things. Please correct me if I am wrong, but the idea as laid forth by the ScummVM side is (assuming someone were to work on it):

Take older, no longer developed, versions of AGS and rework\clean-up\implement them into the ScummVM tree.

Where as CJ, and others at AGS, seem to think that ScummVM would take over development of the engine moving forward... which doesn't fit within the scope of ScummVM at all.

So I think it should be stated plainly that the ScummVM team has no interest in developing the AGS engine, or even implementing any versions of AGS that are in active development. But as new versions of AGS are released, older (non active) ones would become candidates for inclusion. This has zero effect on game authors and/or the future of AGS as an engine.

I think this is obvious to myself and many of the other ScummVM devs\lurkers, but it seems to be a misnomer for our friends on the AGS side.
Post Reply