Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Now with gamemaker studio source files are no longer stored in a proprietary format - instead they are stored as simple XML files containing all data. Now I am wondering, can projects created with gamemaker be licensed using an open source license - especially wondering about the GPL and BSD/APACHE families?

And if so how to? The biggest objection I see is that all files are generated by gamemaker - and regenarated each time gamemaker saves/loads. The main problem with this is that GM will remove any "unrecognized" data from the xml (so any comments). Including copyright notices.
A second problem is that gamemaker typically creates a few dozen files, basically for each function a separate file is created.

A typical generated xml looks as following:

<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<object>
  <spriteName>&lt;undefined&gt;</spriteName>
  <solid>0</solid>
  <visible>-1</visible>
  <depth>0</depth>
  <persistent>0</persistent>
  <parentName>&lt;undefined&gt;</parentName>
  <maskName>&lt;undefined&gt;</maskName>
  <events>
    <event eventtype="0" enumb="0">
      <action>
        <libid>1</libid>
        <id>603</id>
        <kind>7</kind>
        <userelative>0</userelative>
        <isquestion>0</isquestion>
        <useapplyto>-1</useapplyto>
        <exetype>2</exetype>
        <functionname></functionname>
        <codestring></codestring>
        <whoName>self</whoName>
        <relative>0</relative>
        <isnot>0</isnot>
        <arguments>
          <argument>
            <kind>1</kind>
            <string>xml = FS_xml_open("C:\Users\user\Documents\filesystem\student.xml");

</string>
          </argument>
        </arguments>
      </action>
    </event>
    <event eventtype="9" enumb="13">
      <action>
        <libid>1</libid>
        <id>603</id>
        <kind>7</kind>
        <userelative>0</userelative>
        <isquestion>0</isquestion>
        <useapplyto>-1</useapplyto>
        <exetype>2</exetype>
        <functionname></functionname>
        <codestring></codestring>
        <whoName>self</whoName>
        <relative>0</relative>
        <isnot>0</isnot>
        <arguments>
          <argument>
            <kind>1</kind>
            <string>var root_elem = FS_xml_root_element(xml);
show_message("start with root element: " + FS_xml_get_elem_name(xml, root_elem));
xml_test_display_func(xml, root_elem, "");
</string>
          </argument>
        </arguments>
      </action>
    </event>
  </events>
  <PhysicsObject>0</PhysicsObject>
  <PhysicsObjectSensor>0</PhysicsObjectSensor>
  <PhysicsObjectShape>0</PhysicsObjectShape>
  <PhysicsObjectDensity>0.5</PhysicsObjectDensity>
  <PhysicsObjectRestitution>0.100000001490116</PhysicsObjectRestitution>
  <PhysicsObjectGroup>0</PhysicsObjectGroup>
  <PhysicsObjectLinearDamping>0.100000001490116</PhysicsObjectLinearDamping>
  <PhysicsObjectAngularDamping>0.100000001490116</PhysicsObjectAngularDamping>
  <PhysicsObjectFriction>0.200000002980232</PhysicsObjectFriction>
  <PhysicsObjectAwake>-1</PhysicsObjectAwake>
  <PhysicsObjectKinematic>0</PhysicsObjectKinematic>
  <PhysicsShapePoints/>
</object>

(where you can see that the amount of non-generated actual code programmed corresponds to 4 lines). Adding something like <!-- copyright 2013 ....... > to each file does not work as the notice will simply get replaced the moment gamemaker "saves".

Is using a central COPYRIGHT notice file "enough" for open source formats? Can that be used with GPL/APACHE? If it is incompatible, what would cause this?

share|improve this question
1  
Tangental - the copyright status of computer generated material appears to be "it isn't copyrightable" as there is no original work done. See this, this, and this for some material on it. I am not a lawyer, and if this is applicable, you had best discuss it with someone versed in intellectual property law. –  MichaelT Mar 4 '13 at 15:26
    
@MichaelT The "problem" however is that computer generated material & original code is directly mixed.. Similar to how for example qt generates a lot of code through macros. (But with gamemaker those macros are "expanded" at file save). –  paul23 Mar 4 '13 at 15:38
1  
Use build management software (maven?) to bulk add your c/p notice to these files maybe? –  Mchl Mar 4 '13 at 15:43
1  
@MichaelT I wouldn't quite believe that. After all, most artwork(images, logos etc) are "computer generated" with a human to guide, but they are clearly capable of being copyrighted. I'm not a lawyer, but I'd believe it's capable of being open sourced(even if it requires proprietary software to make use of). I'd just include a license.txt file or some such that has the license in it –  Earlz Mar 4 '13 at 16:05
    
@Tangental - so when I click on "build" in Visual Studio, the resulting binary isn't copyrighted either, because it was computer-generated by the compiler? –  Philipp Apr 10 '13 at 14:07

1 Answer 1

IANAL, but I think Earlz's comment is spot on (of course different countries might have different rules, contact an intellectual property lawyer if you want to be 100% certain).

Copyright is implicit, it belongs to the original creator. That's the person who pressed the "generate" button in a computer program as much as it is the photographer who presses the shutter release on his camera (which would also fall under Michael's "generated and therefore can't be copyrighted", when we all know photos ARE copyrighted material) or the painter putting his pencils to the canvas.

Of course copyright and licensing are different beasts, but generally speaking the copyright owner can determine how to license his or her creations, barring restrictions placed upon him by the law or other contracts (I don't know Gamemaker, but have seen in the past code generators that required generated code to be released under a specific license, so double check).

There's no need to have a license statement in each code file, just as there's no need to have a copyright notice in each work (source file, photo, painting). As long as you notify the recipient of the terms under which he can use your work, that should be enough (Da Vinci didn't write a license agreement on the back of the Mona Lisa either, nor Ansel Adams on his photographs...).

share|improve this answer
    
Read the articles linked to by Michael. He misunderstands what they said about copyright. They essentially make the same claim as you. –  slebetman Apr 11 '13 at 2:01
    
@slebetman The source code generated by wsdl2java is not copyrightable. It fails the originality test of copyright. There are many court cases that define the originality test. Composing the image of a photograph and pressing the shutter on a camera is not the same (its a poor strawman argument). The tangental question posed of "are the xml files generated by a program copyrightable" is one that needs to be answered by an intellectual property lawyer. My links point out that this area of the law is very much in the grey area and one should not assume that they are or are not. TALK TO A LAWYER –  MichaelT Apr 11 '13 at 2:14
    
@MichaelT: But that is not the issue being discussed here - code conversion. What is being discussed here is using a tool (gamemaker) that saves the product of your work as an xml file. There is no difference between this and using MS Word to save a novel in a docx file. Both pass the originality test. –  slebetman Apr 11 '13 at 2:25
    
@slebetman "In a recent Full Federal Court decision, it was found that source code which is generated by a computer program, or is contributed to by multiple programmers in conjunction with a computer program, will not be found to be an original literary work for the purposes of the Copyright Act, and copyright will therefore not subsist in the code" -- This is exactly source code which is generated by a computer program or is contributed to by programmers with a computer program. Some jurisdictions do not recognize mechanically generated items as being copyrightable. Talk to a lawyer. –  MichaelT Apr 11 '13 at 2:40

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.