Hello everyone.
I’m developing an open-source visual novel engine. And I’m struggling to choose between the two licenses: MIT and BSD 3-Clause. I wasn’t much about licenses until this moment, so I have to ask someone else. Which one should I pick and why, if someone knows?
Thank you in advance.
To prevent it getting lost i want to point this out in its own top-level comment:
Keep in mind that as the copyright holder you can publish your code under as many licenses as you wish, and charge for whichever licenses you wish.
You could publish it for free under AGPL, charge a smaller sum for developers who want/need a more permissive license like BSD 3-clause, and charge out the ass for a full on proprietary license.Do note though that you’d have to think about how to handle contributions, as that will be copyright of the respective authors and thus you can’t just merrily go and change the license of their contributions. You’d have to ask them to sign a Contributor License Agreement or just straight up manage the codebases separately (which is a little bit of a mess).
A simple comparison between the two via interoperable-europe.ec.europa.eu says that they’re almost identical save for one clause around trademarks:
https://interoperable-europe.ec.europa.eu/licence/compare/BSD-3-Clause;MIT
But I’d be remiss if I didn’t advocate for a license that better protected your project from corporate theft. The AGPL and GPL are excellent licenses that protect your work and that of the community from companies that would copy it, improve it exclusively for themselves and then ship your work exclusively in binary form:
I thought of using GPL, but it would mean someone else would be obliged to open their source code if they base their software on my engine. Though open-source is good and must exist (speaking of Ren’Py, which is not GPL, but still an open-source engine considered a golden standard of VN development), I’d like to give others the right to make their derivative works either open or closed, by their choice.
As for AGPL, I know nothing, unfortunately.
That’s understandable, though one of the other commenters suggested the LGPL which might make for a good fit for your case. Here’s a comparison with the other two if you’re interested.
The AGPL is just the GPL with extra rules requiring sharing the code even if you expose it exclusively via a service.
Okay, thanks for the advice. LGPL might be a good option, I’ll look into it.
AGPL is GPL + network services protection (preventing someone taking your code and spinning up a for-profit selling services without contribution back). If you don’t care about people stealing your code, closing it, and selling services based on it, then there is no need to consider strict copyleft licenses.
Okay, thank you very much. As for now, I hope my engine will be known enough for anyone to recognise the hoax.
Do you know that Apple’s macOS is historically a FreeBSD fork? (They have copied big parts.)
I find it notable that FreeBSD is struggling to stay alive, and Apple’s 1000000000000s of dollars in incomes does not help them at all.
Huh, lol. No, I didn’t know that. One of my friends uses FreeBSD, and he likes it. But yeah, that’s a good point.
Amongst those 2 toss a coin honestly ¯_(ツ)_/¯
What about the non-endorsement clause, then?
Which one has that?
BSD 3-Clause.
Out of curiosity, why develop your own instead of contributing to RenPy? Not saying there can’t be good reasons, just curious what they are in this case.
Long story short, it all started with an argument between me and a guy who thought only Japanese VN-related anything is usable normally, and that all Western VN-related software (Ren’Py included) are either clunky or laggy garbage. He also gave a Japanese novel engine called Light.vn (don’t mind the link, it’s the engine name) as an example (there is a killer feature in it: WYSIWYG editor). So I started my engine to prove him wrong.
After some time, I really saw that Ren’Py is not as fast as it was when I started to use it long ago. But that’s because it uses modern Python, which is by itself not too fast and lightweight anymore.
That’s why I write my engine in C and aim to make it much faster than Ren’Py and with better UX. Not speaking of a desire to create something meaningful myself.
WTFPL
Roflolmao
They do pretty much the same thing. If there are nuances, I do not know about them.
Well, the only difference is a so-called “non-endorsement clause”. I wanted to know where can I use it, and if I even should.





