I only just finished my project for July's challenge! But I am going to get started on something for this right away, and try to do a better job controlling the scope this time... :)
OGA has 'improved' on CC-BY license with OGA-BY, I suppose we could do the same with CC-BY-SA by spinning off an OGA-BY-SA license. It could be just a copy of CC-BY-SA but with some added language to explicitly state that games or other apps that use the artwork will not be considered 'derivative works' and will not be subject to the 'share alike' clause. A line clarifying that source code would never fall under the 'share alike' clause could be added as well.
I do agree that there is something of a gap in CC stuff when it comes to games. I first learned about CC from OpenGameArt so I just kind of assumed the CC licenses were created with games in mind, but after reading into it and talking to the CC rep, I realized they were actually created with more traditional arts (photography, painting, writing, etc) in mind.
The issue, as it appears regularly on OGA discussions, seems to boil down to two different takes on what 'share alike' means, eg.
"Here's my work, if you create something with it, you need to share your creation under the same license."
OR
"Here's my work, if you modify it, you need to share your modifications under the same license."
From what I can tell, as a matter of practicality, the CC people are aiming more for the later definition but folks can certainly be forgiven for assuming the former when they hear the words 'share alike'.
Thus it's hard to know an artists' intent when they choose to license a work under CC-BY-SA. And that's without getting into the weeds of what all the legalese actually means in practice.
It's been a few years now, but I did speak directly to someone at Creative Commons about this (and several other licensing questions that come up often on OGA) and was told very directly that source code, game engines, etc. are NOT considered 'derivative' works under the CC-BY-SA license.
They were very clear that just using an CC-BY-SA art work (be it music, image, animation, etc) in a game would not require the game's source code to be redistributed under CC-BY-SA.
Whether or not the technical wording of the license itself bears this out, I can't say, but I can tell you that the representative I spoke with was very clear about this issue.
The message I got from my conversation with the CC rep was that they are concerned with protecting and licensing 'creative' works not technical works (eg. code).
As an example, the rep told me that if you made some sprites and released them under CC-BY-SA and some one took those sprites and used them in a game, the game itself would not be considered a derivative work. Indeed, even if they made modifications to your sprites, only those modifications and not the game they were used in would be considered subject to the 'share alike' principle.
However, if you made some sprites, say for a group of anthropomorphic flowers, /AND/ you added a little background or story to go with them, something like 'The Flower Family frolics in the fields until the Evil Patrick Pesticide arrives and they must embark on an epic quest to save themselves from this awful man and his vicious chemical concoctions'. If someone were to make a game using elements of that story or those characters, then that game WOULD be considered a derivative work and need to be shared under the 'share alike' principle. However, even in this case, 'share alike' would apply only to the game executable, not the original source code.
To put it in another way, if you took a CC-BY-SA image and painted a copy of it on the side of a building, they would not need the blue prints for the building. Or if you printed out some copies of a CC-BY-SA image and handed them out at the park, they would not need the patent for your printer.
Again, it was a ways back now, so I'd need to review my notes for any of the finer points, but I do recall leaving the conversation being quite sure that the Creative Commons people were not at all interested in forcing anyone to release source code for anything. Again, whether this is born out by the actual legalese I can't say, but they definitely made it clear to me what their intent was.
Regarding GoDot MIT, I'll certainly agree, MIT license is among the gold standards for flexibility and using it is definitely to GoDot's benefit, especially when compared to the complex licensing agreements governing the commercial engines like Unity and Unreal.
LINQ? What are you using database stuff for?
Just curious.
Totally know what you are talking about with Equals() and IComparable.
You make a good point about 'GetHashCode()' returning only 'semi unique' integers. I'm guessing whatever hashing algo they use is pretty good and not likely to generate many collisions, but all the same, if you really want to be sure your Equals() results are returning true equality, then best to write your own comparer. So just another reason to implement your own Equals() tests, etc.
Interestingly, I find myself almost never using structs in C#, which is odd because I have a lot of c/c++ in my past where structs are definitely a way of life. I guess I read early on that passing structs into functions was expensive and have just stuck with classes ever since. I do sometimes miss the ease of copying structs but once you get in the habit of writing Clone() and Copy() routines for your classes it's not a big deal.
Is there anything special your using stucts for? or something you find useful about them vs. classes? Curious to know if I'm missing out! :)
@William.Thompsonj: If you've a minute to explain it and the rest of the thread can bear some programmer talk for a bit, I'd love to hear more about what you meant by 'C# does a lot of boxing of variables and crazy nonsense.' Have had a few run ins with C#'s memory management systems myself...
Nothing to worry about, just got my head stuck up too many projects at once is all!
Thanks for participating, it's a great song!
Sorry I didn't get my sprites done in time to give you some competition, hoping to post them soon though!
Here I am at the buzzer with mine!
https://opengameart.org/content/knit-pixel-art-tiles
awesome! If you can share source PSD or XCF files for these then I can try and do some 'Made For' splash screen to go with them.
I only just finished my project for July's challenge! But I am going to get started on something for this right away, and try to do a better job controlling the scope this time... :)
Well, on the better late (ok very, very late) than never, here's what I worked up for this challenge.
https://opengameart.org/content/monsters-village-construction-set
Just to confirm, I am seeing that message too. Firefox browser on windows 10.
OGA has 'improved' on CC-BY license with OGA-BY, I suppose we could do the same with CC-BY-SA by spinning off an OGA-BY-SA license. It could be just a copy of CC-BY-SA but with some added language to explicitly state that games or other apps that use the artwork will not be considered 'derivative works' and will not be subject to the 'share alike' clause. A line clarifying that source code would never fall under the 'share alike' clause could be added as well.
I do agree that there is something of a gap in CC stuff when it comes to games. I first learned about CC from OpenGameArt so I just kind of assumed the CC licenses were created with games in mind, but after reading into it and talking to the CC rep, I realized they were actually created with more traditional arts (photography, painting, writing, etc) in mind.
The issue, as it appears regularly on OGA discussions, seems to boil down to two different takes on what 'share alike' means, eg.
"Here's my work, if you create something with it, you need to share your creation under the same license."
OR
"Here's my work, if you modify it, you need to share your modifications under the same license."
From what I can tell, as a matter of practicality, the CC people are aiming more for the later definition but folks can certainly be forgiven for assuming the former when they hear the words 'share alike'.
Thus it's hard to know an artists' intent when they choose to license a work under CC-BY-SA. And that's without getting into the weeds of what all the legalese actually means in practice.
It's been a few years now, but I did speak directly to someone at Creative Commons about this (and several other licensing questions that come up often on OGA) and was told very directly that source code, game engines, etc. are NOT considered 'derivative' works under the CC-BY-SA license.
They were very clear that just using an CC-BY-SA art work (be it music, image, animation, etc) in a game would not require the game's source code to be redistributed under CC-BY-SA.
Whether or not the technical wording of the license itself bears this out, I can't say, but I can tell you that the representative I spoke with was very clear about this issue.
The message I got from my conversation with the CC rep was that they are concerned with protecting and licensing 'creative' works not technical works (eg. code).
As an example, the rep told me that if you made some sprites and released them under CC-BY-SA and some one took those sprites and used them in a game, the game itself would not be considered a derivative work. Indeed, even if they made modifications to your sprites, only those modifications and not the game they were used in would be considered subject to the 'share alike' principle.
However, if you made some sprites, say for a group of anthropomorphic flowers, /AND/ you added a little background or story to go with them, something like 'The Flower Family frolics in the fields until the Evil Patrick Pesticide arrives and they must embark on an epic quest to save themselves from this awful man and his vicious chemical concoctions'. If someone were to make a game using elements of that story or those characters, then that game WOULD be considered a derivative work and need to be shared under the 'share alike' principle. However, even in this case, 'share alike' would apply only to the game executable, not the original source code.
To put it in another way, if you took a CC-BY-SA image and painted a copy of it on the side of a building, they would not need the blue prints for the building. Or if you printed out some copies of a CC-BY-SA image and handed them out at the park, they would not need the patent for your printer.
Again, it was a ways back now, so I'd need to review my notes for any of the finer points, but I do recall leaving the conversation being quite sure that the Creative Commons people were not at all interested in forcing anyone to release source code for anything. Again, whether this is born out by the actual legalese I can't say, but they definitely made it clear to me what their intent was.
Regarding GoDot MIT, I'll certainly agree, MIT license is among the gold standards for flexibility and using it is definitely to GoDot's benefit, especially when compared to the complex licensing agreements governing the commercial engines like Unity and Unreal.
LINQ? What are you using database stuff for?
Just curious.
Totally know what you are talking about with Equals() and IComparable.
You make a good point about 'GetHashCode()' returning only 'semi unique' integers. I'm guessing whatever hashing algo they use is pretty good and not likely to generate many collisions, but all the same, if you really want to be sure your Equals() results are returning true equality, then best to write your own comparer. So just another reason to implement your own Equals() tests, etc.
Interestingly, I find myself almost never using structs in C#, which is odd because I have a lot of c/c++ in my past where structs are definitely a way of life. I guess I read early on that passing structs into functions was expensive and have just stuck with classes ever since. I do sometimes miss the ease of copying structs but once you get in the habit of writing Clone() and Copy() routines for your classes it's not a big deal.
Is there anything special your using stucts for? or something you find useful about them vs. classes? Curious to know if I'm missing out! :)
@William.Thompsonj: If you've a minute to explain it and the rest of the thread can bear some programmer talk for a bit, I'd love to hear more about what you meant by 'C# does a lot of boxing of variables and crazy nonsense.' Have had a few run ins with C#'s memory management systems myself...
Nothing to worry about, just got my head stuck up too many projects at once is all!
Thanks for participating, it's a great song!
Sorry I didn't get my sprites done in time to give you some competition, hoping to post them soon though!
Pages