• The VOIDRUNNER'S CODEX is LIVE! Explore new worlds, fight oppressive empires, fend off fearsome aliens, and wield deadly psionics with this comprehensive boxed set expansion for 5E and A5E!

DM Genie

Luke

Explorer
What do I know? Am I too harsh?

Do I need to backtrack?

I've been saying that any SRD rules mechanics cannot be compiled into a distributable, and after coming out strong on this, I'm now a little shaken.

PCGen was vetted a while ago by Wizards, and I assumed that their latest release would show how they had tackled the issues. Out of interest, at the time, I downloaded PCGen to have a look at a vetted example.
I quick look seemed to show that they basically had a "compiled" jar file, and a bunch of lst files. At the time, with only a brief look, it seemed to me that the lst files were pure data, and that the compiled mechanics were in the compiled file (the bites that add the numbers together). I was a little confused, but, being busy, moved on.

Having made some big statements on this thread about license compliance, though, I thought I'd go and have a closer look at the PCGen source that is actually compiled.

I want to stress that I've only had a cursory look, so it doesn't necessarility mean much, but what I found is surprising.

I picked on AC calculations by way of example. The calculations of AC, and the various sorts (standard, touch, range) and the bits that compose add up to make AC are, to my mind, clear SRD derivations that cannot be done in compiled code.

I actually found a file called "ACCalculator.java", which seems to be clearly compiled into the main executable.
That file clearly contains functions which implement SRD mechanics. An example is the "calculateACBonusTouch()" function which adds together size, dexterity and natural AC bonuses, to get the "touch AC".
There's lots of other examples. To a large extent, it appears that PCGen is mostly composed of generic processing functions that in themselves don't implement specific SRD functions. On the other hand, there are functions that I personally would clearly interpret as being derivations of the SRD. Since the lst files don't appear to contain anything other than pure data, I'm now assuming that virtually everything specifically calculated in PCGen (like a fully calculated save bonus, or skill check) is actually using compiled code.

This is pretty unexpected, and my confidence in what I've previously said is a little shaken. Either:
1) PCGen contains fundamental violations, and Wizards just missed them (seems unlikely), or;
2) I've been too harsh in my interpretations, of discussions and Wizard stances on the official OGL list.

How hard is all this?????
 

log in or register to remove this ad

ladyofdragons

First Post
Re: What do I know? Am I too harsh?

Luke said:
Do I need to backtrack?

*snipped*

This is pretty unexpected, and my confidence in what I've previously said is a little shaken. Either:
1) PCGen contains fundamental violations, and Wizards just missed them (seems unlikely), or;
2) I've been too harsh in my interpretations, of discussions and Wizard stances on the official OGL list.

How hard is all this?????

I wonder if perhaps wizards isn't a bit subjective on their compliance calls. I don't know if they've come up with an actual standard yet on what crosses the line as far as uncompiled/compiled code, it would seem that they tell different people different things (maybe just to keep us guessing?). Until they come up with an OGL software license that spells things out for software versus published text-type material, it's very difficult to tell.

I for one am going to add the logging function (a 3 level logger should do it, none/minimum/verbose) when it comes time to doing calculations based on OGC information, but for now I'm still working on saving and retrieving various information from the database, and I have each record with an OGC signifier, so I'm pretty sure I'm safe so far :)
 
Last edited:

smetzger

Explorer
Re: What do I know? Am I too harsh?

Luke said:
This is pretty unexpected, and my confidence in what I've previously said is a little shaken. Either:
1) PCGen contains fundamental violations, and Wizards just missed them (seems unlikely), or;
2) I've been too harsh in my interpretations, of discussions and Wizard stances on the official OGL list.

How hard is all this?????

Yes, PCGen does have what they call 'Tags' in their .lst data files. These 'Tags' are representations of rules which can be configured by the data that is associated with the 'Tag'. Thus via 'Tag' and data manipulation you should be able to tell PCGen to calculate AC in a different manner. The way I read the OGL is that this is legal and this is the direction I am going in my little project.

I also think that there is nothing wrong with designating a binary as OGC. I think that this would be most useful for DLLs.

I do not think that these are 'loopholes' in the licenses. I am grateful for WOTC in releasing the OGL and d20 licenses, but that doesn't mean that I won't take what is the easiest path to compliance for me.
 

CRGreathouse

Community Supporter
Luke said:
How does that reconcile with why PCGen had to go and do all that restructuring.

They are a free, open source project. Is it really possible that all they had to do was say - our entire "binary" is all OGC, and somehow everybody missed it?

PC Gen doesn't have sufficient rights to release their binary as OGC, because they use outside libraries and work (worked?) under the LGPL.

I couldn't find the quote I was origianlly thinking of from the OGL mailing list, but I found another:
http://mail.opengamingfoundation.org/pipermail/ogf-l/2002-September/002528.html
 

Luke

Explorer
Re: Re: What do I know? Am I too harsh?

smetzger said:
I also think that there is nothing wrong with designating a binary as OGC. I think that this would be most useful for DLLs.
Well, I just spoke to Anthony Valterra, and he clearly has a problem with it, if it contains any Wizards OGC in it.
As far as Anthony is concerned, any Wizard's OGC used in a program has to be openly readable, and you cannot distribute it in compiled binary form. That would obviously apply to DLLs as well.

Basically Anthony and Ryan Dancey engineered the SRD and OGL, and Anthony appears to be the person at the helm of it now.

I believe that we can possibly expect Andy of Wizards to post a message on this board soon, and help clear up these issues.
 
Last edited:

smetzger

Explorer
Re: Re: Re: What do I know? Am I too harsh?

Luke said:

Well, I just spoke to Anthony Valterra, and he clearly has a problem with it, if it contains any Wizards OGC in it.
As far as Anthony is concerned, any Wizard's OGC used in a program has to be openly readable, and you cannot distribute it in compiled binary form. That would obviously apply to DLLs as well.

I would be interested in hearing what a non-WOTC lawyer has to say about that. Once again we get back to the 'Clearly Marked' question. The license does not define 'clearly marked' and this is the crux of the problem and is what a court would need to decide. I think that saying everything in such and such product is OGC is very clear and I really don't understand how anyone could argue otherwise. AV and Wizard's may indeed have a 'problem' with this however I think it is permissable by the OGL.

If 'Clearly Marked' means 'human readable' someone will need to explain how one type of binary file (PDF) and another type (DLL or exe) can be treated differently. Actually anything in electronic format is not in human readable format but is interpreted in some way by a computer before it is displayed on a monitor or printed out.
 

CRGreathouse

Community Supporter
I look forward to having Anthony post here, but I expect it will come down to "it's OK in theory but it's never been done right, and we don't expect it ever will be".

If the entire thing's Open, all OGC is marked, so there can be no problem. Human-readable is not required by the OGL and hard -- if indeed possible -- to define for binary files.
 

Fractalwave

First Post
WotC and their processes of vetting

It is difficult, at best, to describe what you go through to "pass" their examination of your product. Though I think Luke did a decent job of it. And you don't get any type of "official seal of approval" which has everyone confused. But think about it, there is no official seal of approval for publishers either.

I think you can expect a change in the license and/or the guide soon to cover these questions that people keep asking of us.

We can't, however, tell you HOW to do things in order to be compliant with the license other than to tell you how we did some things at various times. There is always more than one solution to any given problem.

There is also the fact that WotC's interpretation has changed several times to the point that we changed things within our program at different times in order to comply with their interpretation of the d20stl if the change in interpretation affected our program. That is one challenge with the d20stl as it relates to software. Right now, it's a moving target and hasn't settled down yet.

Also, you don't simply "pass" once and that's it. You can expect review, after review, after review. That's why we've said we've been talking to them for quite some time. (In fact, we dropped the d20stl from our product and we're STILL talking to them all the time.) It's been an ongoing process that includes in our QC for us to vet our own software after each update to make sure it's in compliance as of the last information we had from WotC. Even though the d20stl is being removed, we still vet our software for OGL compliance.

Because of this constant review process, if something is found in any software after it "passes" I am absolutely positive that WotC will address it with whomever distributes the product in question. I know we've been asked to change things from time to time, mostly just cosmetic things but they were still there.
 

CRGreathouse

Community Supporter
Luke said:
Charles suggests a different easy "silver bullet" where anything is okay, as long as you declare everything open.

No matter where you stand, my solution is no silver bullet. I don't know anyone who could release their compiled code as OGC, since it would require rewriting just about every basic programming function. Even free software generally comes with terms of use (GPL, shaeware, etc.), so they couldn't be used.

However, if someone was willing to basically develop a programming language from the ground up and use it to make a binary derived only from their own efforts and information in the public domain, they could then add content from the SRD and OGL it. It's not easy, and hardly practical, but it is possible.
 

smetzger

Explorer
CRGreathouse said:


No matter where you stand, my solution is no silver bullet. I don't know anyone who could release their compiled code as OGC, since it would require rewriting just about every basic programming function. Even free software generally comes with terms of use (GPL, shaeware, etc.), so they couldn't be used.

You should be able to release the binary as OGC. This would be analogous to a publisher releasing a PDF product but not releasing his original work before he laid it out in PDF format.
 

Voidrunner's Codex

Remove ads

Top