Author Topic: Permissions and recent releases  (Read 3347 times)

Offline Dasher42

  • Posts: 2
  • Cookies: 1
Permissions and recent releases
« on: January 05, 2025, 04:59:52 PM »
Hello, everyone. 

Where we last left off, there was a considerable problem with people using Foundation in projects that included Foundation but didn't release their own code or indicate where the exact source PY used could be found, which breaks its LGPL license.  When people are reliant on GUI tools that I had nothing to do with, and they bundle my code, and my code is a key active component that the GUI copies into place to run as part of the game - people see the GUI, not the code or the documentation, and become completely unaware of my years of work bootstrapping this community's core tools.  They won't understand what was made that brought in contributors like MLeo,  Nanobyte, sleight42, Apollo, and Banbury - most of the mod scene around this game simply wouldn't exist without this work.

Omitting Foundation's documentation and license, either from the download package or the notice of users, is  akin to ripping the tags off and letting any claim about who did what fly.

It was a shock and strain to me to work out who actively caused this, and who was just doing their best with what they thought they knew was happening here.  The loss of the original forums where I and others discussed and documented this code, and our intent and permissions for it, in great detail, allows people to be misled by vaporware hawks who are, somehow, both sneering at this work and really, really mad about anything that guards against stealing it in secret. 

I worked hard to get through to people who didn't intentionally cause that issue, and one of the understandings reached, for example, was that Remastered would supply all .PY files, and point to the Bridge Commander SDK for any that remained untouched.  This is a good and satisfactory outcome explicitly mentioned in the LGPL and its core documentation.

I'm noticing releases with plenty of "import Foundation" but far from complete PY files.  I'm not surprised that for all the noise about getting rid of Foundation, people are still using it.  But anyone who told you including Foundation without including source is okay or legal is either misguided or deceitful.

Omitting source keeps people from building an exact copy of the release, merging and debugging code, continuing development.  It fosters inscrutable secrets, unfixable bugs, unverifiable claims, and plagiarism.  I said only a little about the LGPL in the Foundation's release documentation, because the first generation of BC modders were mostly developers already very familiar with these practices, and that was a golden age of friendly co-development - but I said enough to make it the basis for using and distributing Foundation.  That was very, very intentional.  The merit of this code and its contract with the community is plain, else you would not be using it 22 years after its first release.  So, please remedy this.

The entire point of Foundation is to give any developer working on the Python layers of Bridge Commander a full, open, and equal chance to develop their work with intercompatibility.  Nobody gets to use it as part of secret sauce.

Foundation is not a mod manager, and was never meant to be.  It is meant for coders to make manageable mods.

Foundation is not a replacement for writing good code.  It can't make you not write bugs.  Failing to look at the code and the documentation I worked to provide you is a major cause of this community's trouble in larger projects.  My code is not a substitute for merging and maintaining your - plural - code, which requires openness Foundation's licensing is meant to ensure.  Foundation greatly aids that coding work, if properly used.  I clearly called the Mutators "experts only" in the documentation, and GUI tools aimed at end users making a mutator out of every little thing was the exact opposite of the intent.  Ignoring that guideline is what makes many heavily modded setups a buggy, haywire mess - the word for that is "monkey patching", a risky approach that usually falls apart.

I will not be returning to active modding, because compared to what I've given here, the response I was looking for - respect and constructive use of my work and permission - has been lacking.

But as long as you use my work, please respect the LGPL license and the transparent, open source, NDA-free development philosophy it comes from.  That is the only basis under which anyone has permission to use Foundation.  And however old my work, as part of my open source portfolio as a professional software engineer, I will insist that it be redistributed properly and legally, or not at all.

Thank you.

Offline Dasher42

  • Posts: 2
  • Cookies: 1
Re: Permissions and recent releases
« Reply #1 on: January 10, 2025, 09:16:28 PM »
If you use Foundation, it is itself a framework for loading and activating modifications to everything in the Python environment, including Foundation itself.  Such modifications fall under the scope of modifications to Foundation and need to have their source code released, or have a simple, highly visible link to source code including all changes to Foundation or based on Foundation.  For files identical to the Bridge Commander SDK's Python files, a link to the BC SDK suffices, *if* those files are in fact identical.

To be clear:  If your installation breaks if you remove scripts/Foundation* or scripts/Custom/Autoload/* or other signature Foundation-related code, you're based on Foundation.  Releasing mods based on that has to be in accordance with Activision Bridge Commander SDK license *and* the Foundation's LGPL.  Remove your use of the Foundation if you only intend to comply with Activision's license or anyone else's interpretation of it.

If you're using Foundation, even if someone broke the license by removing mention of it with their tool to copy Foundation into place, scripts that import and use Foundation have no barrier between libraries as the LGPL specifies as its limit, and interact directly with each other's code.  They work in the same namespace with complete access to each other's code.  If this were not the case, MutatorDefs wouldn't work.

Do not go on the willful misinterpretations put out there who cannot tell a linker and compiler apart; they couldn't get past the sophomore year of any computer science curriculum and their portfolio reflects it.  They have no grounds to overturn my expressed wishes regarding my code.  That is by definition software piracy.

Nobody has permission to use my work or release work based upon it except in compliance with the LGPL.  That is not covered by "just give credit".  I do not want credit for anyone's willful theft.

I will not explain this further.  This community has had this clearly explained, enough to counter those who spoke for me about my work with no permission from me.  People have had years to understand the Foundation's LGPL, and either use my work as permitted or find an alternative.

I hate the necessity of warning a community to whom my work is literally foundational, but I refuse to hear any further distortion or abuse, and I refuse to be the sole exception to author's permissions in a scene I played a key role in founding.

This will be my last attempt at recourse *within* this community.