[Fixed][Sug][Website/Topics] More visibility of links to source code

Started by namida, July 12, 2018, 10:14:46 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

namida

Nepster has mentioned in another topic here that he does still intend for NeoLemmix to be open-source, and provided a link to the source code. Although not outright stated to be open source as such, the About dialog in the Editor implies (not outright states) that it is also intended to be open-source.

I'd like to suggest adding links to the source code:
- To this topic, or a seperate pinned topic specifically for the source links
- To either a dedicated source code page, or the relevant download pages, on the NeoLemmix website

I can make these changes if desired, just send me the links.

On a side note, I notice the Editor's about box mentions the editor and its source are licenced under CC-BY-NC. While I'm not an expert on this, I recall hearing CC licences aren't really suited to programs / source code and are more for artistic or literary works; something like MIT or GPL* may be better.

* Though do note there are several members of this community that seem to really, really dislike GPL, and I somewhat understand their point of view there
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Nepster

Great idea. I modified the "Welcome to NeoLemmix" post you linked.

Regarding the choice of license:
1) I don't like GPL (or LGPL for that matter), because it places rather nasty requirements for anyone forking these projects and modifying the code.
2) Both MIT and GPL allow others to get the source code, compile it and then sell the executables for money. But I want all NeoLemmix content to be free.
3) Yes, I know that CC licenses have problems regarding source code and I will most likely lose any court case against anyone "stealing" the intellectual property. However I never planned to sue anyone for their usage of the NeoLemmix code, but rather looked for a license that best expressed how I intended its use, which is:
- You may use, modify, extend and (re)publish it as much as you like, but please...
- Give credits where you think credits are due, and...
- Provide your work as a free download for everyone; earning money from it is very much frowned on!

namida

Fair enough re: intentions. That's your call, and I was simply mentioning what I had heard on the subject.

For the sake of consistency, I have no objection to NeoLemmix and it's source code being put under the same licence as the rest of the tools. Or more accurately, my contributions to such - you'd need to check EricLang and ccexplore are okay with it too (although it is quite possible none of ccexplore's modifications remain, as they mostly related to replay format (which we've entirely replaced) and replicating L1 glitches that EricLang hadn't; while a very significant amount of EricLang's code has been replaced, there is still a very considerable amount that does remain). I don't believe there's currently any specific licence attached to it, it's just always been treated as "yeah, you can get and use the source code, whatever".
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

ccexplore

Quote from: namida on July 13, 2018, 09:26:26 PMyou'd need to check EricLang and ccexplore are okay with it too (although it is quite possible none of ccexplore's modifications remain

Yeah, I kinda wonder the same.  You certainly have my okay on whatever code manages to remain.

Nepster

I would love to add a proper (nearly-)open source license to NeoLemmix. But the main problem I have is: How can I reach EricLang and ask him?

Quote from: namida on July 13, 2018, 09:26:26 PM
I don't believe there's currently any specific licence attached to it, it's just always been treated as "yeah, you can get and use the source code, whatever".
Well, legalese says something different: The original Lemmix editor is only "Freeware" and I couldn't find any license information regarding the Lemmix player, implying that legally Eric still has full copyright. This means that Eric retains all rights regarding the source code and certainly does not imply any permissions regarding modifying the code. As such I simply hoped that namida at some point asked Eric for permissions to modify the code.
This also explains the lack of licensing info regarding the NeoLemmix player: Anything apart full copyright (which is the current legal situation, btw.) would require stating to which parts of the code it applies (because namida and I can only grant such permissions for our parts), which would be a HUGE mess. Unfortunately "it's just always been treated that way" doesn't change any of it.

PS: And yes: All this most likely means that Eric could sue me for working on NeoLemmix. Let's just hope he doesn't do it...

Strato Incendus

QuotePS: And yes: All this most likely means that Eric could sue me for working on NeoLemmix. Let's just hope he doesn't do it...

Wow, didn't know of that! Well, we all certainly thank you two for the risks you're taking here ;) .

I'm taking the same gamble with my covers on YouTube, in essence. Sometimes, you get notified about a content ID match, and so far the original rights owners have always allowed my use of their content. Other times, probably there simply weren't that many people who noticed. Low view counts on YouTube can also be a blessing, it seems :) .
My packs so far:
Lemmings World Tour (New & Old Formats), my music-themed flagship pack, 320 levels - Let's Played by Colorful Arty
Lemmings Open Air, my newest release and follow-up to World Tour, 120 levels
Paralems (Old Formats), a more flavour-driven one, 150 levels
Pit Lems (Old Formats), a more puzzly one, 100 levels - Let's Played by nin10doadict
Lemmicks, a pack for (very old) NeoLemmix 1.43 full of gimmicks, 170 levels

namida

No - it really is that he's given permission, just not under any specific licence as such.

The exact text from the ReadMe that comes with the Lemmix source code download from EricLang's Lemmix website (note to those who want Lemmix itself: Don't get it from here, get the copies from the NeoLemmix website; they include modifications by myself and ccexplore to more accurately reproduce DOS Lemmings physics):

QuoteYou may change, redistribute and recompile the sourcecode, but do not make money with it.
It is Freeware and must stay so. If you change the code I would like to know.
The use of the sourcecode is at your own risk.

Regarding how to reach EricLang, whenever I've needed to reach him when he's inactive on the forums, I've done so via the email address on aforementioned website.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Nepster

Thanks a lot. I wasn't aware of the existance of this homepage as it isn't mentioned anywhere in the readme for the actual editor (not its code).

Nepster

I got the OK from Eric to release the NeoLemmix code under CC-BY-NC 4.0.

As the styles are much more problematic copyright-wise, they will not be licensed under this one, but the style creators will retain full rights themselves. By posting their styles here or sending them to me by PM, they grant others only the right to download and use the styles for the purpose of playing NeoLemmix.
If style creators want to release their work under a more permissive license, they are free to do it by adding a comment in that regard to their style thread. To keep it simple and consistent, I will not modify the license in the NeoLemmix repo/download, even if style creators ask me to do so!

I noticed that we (since the very early times of Lemmix) credited the wrong person for ZLibEx: Instead of "Eric Turner" it should have been "base2 technologies". I changed the default scroller credits, but if you have level packs with custom credits, you might want to change it there, too.

The license file is attached. I would like to ask everyone to have a look and see whether they spot something incorrect. Especially the style creators (and converters) are encouraged to check whether they are cited correctly as the copyright holders!

PS: If anyone wonders why the file is so huge - the reason is that the Graphics32 library that we use is licensed under LGPL forcing us to include the full LGPL license text as well. :(

Simon

In line 229, there is a garbage character ASCII 0x0C (form feed).

Matt's and NaOH's styles are CC0 in Lix, copyrights have already been waived for these styles. But you already said that you don't want to make exceptions for such styles, hmm, okay.

-- Simon

namida

QuotePS: If anyone wonders why the file is so huge - the reason is that the Graphics32 library that we use is licensed under LGPL forcing us to include the full LGPL license text as well. :(

Graphics32 is dual-licenced, you can use it under either MPL 1.1, or LGPL 2.1 with linking exception. The exact text of the exception is:

QuoteLINKING EXCEPTION FOR THE LESSER GENERAL PUBLIC LICENSE 2.1

As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent modules,
and to copy and distribute the resulting executable under terms of your choice,
provided that you also meet, for each linked independent module, the terms
and conditions of the license of that module. An independent module is a
module which is not derived from or based on this library. If you modify this
library, you may extend this exception to your version of the library, but
you are not obligated to do so. If you do not wish to do so, delete this
exception statement from your version.




On a side note,

QuoteI noticed that we (since the very early times of Lemmix) credited the wrong person for ZLibEx:
Is ZLibEx actually used by NeoLemmix anymore? It was used in earlier versions for ZLib compression / decompression for NXP files (and in even older versions - including EricLang's original distributions of Lemmix - for the internal archives that held the game data). Does GR32_Png make use of it? If not, I can't think of anywhere it would be used anymore.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Nepster

Quote from: namida on July 15, 2018, 11:00:55 PM
QuotePS: If anyone wonders why the file is so huge - the reason is that the Graphics32 library that we use is licensed under LGPL forcing us to include the full LGPL license text as well. :(

Graphics32 is dual-licenced, you can use it under either MPL 1.1, or LGPL 2.1 with linking exception. The exact text of the exception is: ...
Yes, so what? This doesn't mean that we can avoid mentioning the LGPL license for Graphics32.

Quote from: namida on July 15, 2018, 11:00:55 PM
QuoteI noticed that we (since the very early times of Lemmix) credited the wrong person for ZLibEx:
Is ZLibEx actually used by NeoLemmix anymore? It was used in earlier versions for ZLib compression / decompression for NXP files (and in even older versions - including EricLang's original distributions of Lemmix - for the internal archives that held the game data). Does GR32_Png make use of it? If not, I can't think of anywhere it would be used anymore.
I have no idea, but I guess at least the NXP converter still makes use of it. And it is part of the NeoLemmix code base. But for details, I will have to investigate.