The most important part of your project might not even be a line of code

Discussion in 'Spigot Plugin Development' started by jflory7, Feb 7, 2016.

  1. It's worth noting that the company is only obligated to release the source code if they release the plugin or library to the public after modifying it.

    If they modify your code and keep it to themselves, they aren't forced to release the source code.

  2. WPM


    This is a very useful thread. This should be stickied so users can use this when publishing a resource online :D
  3. Maybe add a section about custom licences?
  4. Unfortunately, to most people licenses are just words that are later deleted when copy/pasting :p

    Good thread though, very informative.
  5. You should make posts on a daily or weekly basis they're useful afterall..:)
  6. If in doubt: Use WTFPL :p
  7. It's very good, i add this for my futur plugins.Thanks !
  8. Is there a specific reason you didn't include the creative commons license?
  9. jflory7

    jflory7 Retired Moderator
    Retired Benefactor

    While true, this would mean you could never post your plugin in a place such as the Spigot Resources section, BukkitDev, or hosting on your own service without violating the GPL.

    Hmmm, I don't think this is a good idea. Custom licenses will not be OSI-compliant, which means that the code you write cannot be combined or used with other open source projects. Even if you decide to release your plugin under a custom license in the open on GitHub, other common open source licenses in use will not be able to mix your code with theirs for the exact reason that the custom license is not compliant.

    When it comes to how you legally share your code, I prefer to leave it to the hands of the organizations that have lawyers writing these licenses and defer my licensing to those who have spent time studying in the field of open source software and law.

    That is very unfortunate. When licenses are ignored, if a plugin is ever continued elsewhere, a DMCA is a valid tool at the disposal of the original author (in the US, anyways). I believe other countries also have similar processes in place for those who have found their intellectual property stolen or used in ways not compliant with the license. Someone who forks another project, destroys the license, and continues working on it is eligible to have legal action taken against them.

    I'd like to, but I don't have as much time as I'd like! I do write occasionally for the Fedora Magazine though.

    True. Although just be aware of the things you are giving up by using this license. If you don't care at all with what people do with your code (even if Hypixel were to take your plugin, change it, and make thousands of dollars based off of your work), then this license is fine for that. I think it is technically OSI-compliant.

    Glad you found it useful!

    Well, those licenses are typically for non-code oriented projects, like writing, pictures, and other "less technical" items. Creative Commons is definitely one of the most well-known and well-used licenses out there, but to license code with a Creative Commons license seems a little strange to me. For other media, I certainly agree, Creative Commons is the way to go!
    • Like Like x 1
  10. I have always wanted to add a licences but all this copywrite confuses me.

    So let's say I pick a license.

    Do I just make a license file and place it in the GitHub page? I see some people have it in every single file at the top. Do we have to do that, or does it just have to be packaged in the .jar? What happens to the plugin releases before the license, does the license apply to those or should you remove those versions from being downloaded?

    I remember Bukkit had a license type you put to the right of the download which says which license it is in. Does Spigot have that feature somewhere? And does that even apply any copywrites or is it just there to help the downloader see which type it is without decompiling it?

    Do you know which would be best for a premium plugin?
  11. When you create a repo it asks for a license (if I remember right)
  12. For existing ones you have to manually add it. Just wondering if you also have to include the copywrites at the top, or is that some sort of IntelliJ feature
  13. You can do that, but it's not neccessary afaik if there's a license file in the jar/on the repo
    • Informative Informative x 1
  14. I'm always told that every Spigot plugin is automatically licensed under GPL because the Bukkit API is. Doesn't that mean that we don't have the option which license to choose?
    • Agree Agree x 1
  15. This is 100% correct. GPL is very strict about library linking. If you link against a GPL library (like Bukkit) then your project has to be GPL, too.

    Anything else violates the GPL and can be DMCA'd or worse.
    • Like Like x 2
  16. Looks like the bukkit creators don't really care though, but you're 100% right
  17. Indeed. No one really cares. Just like no one cared that CraftBukkit was distributed with non GPL, copyrighted code for years.

    But, all it takes is for 1 person to get upset and throw a hissy fit to ruin the whole thing. We're all witness to what happens after that. ;)

    Hint: That's the entire reason CraftBukkit was DMCA'd.
    • Like Like x 1
    • Agree Agree x 1
  18. What I want to know. Who is going to take time out of their way to pursue legal action against another over a game?

    What I'm NOT saying:

    Why would someone sue someone over a line of 0's & 1's. I understand this.
  19. jflory7

    jflory7 Retired Moderator
    Retired Benefactor

    Putting the LICENSE.txt file at the top of your repository is sufficient enough to have your code be "licensed". All it takes is you saying your code is licensed under $YOUR_PREFERRED_LICENSE, and it's done. It's a little more complicated though if there are multiple people working on an existing project and you want to change the license later.

    GitHub has that option, but just putting the license file at the top is sufficient.

    IntelliJ has a feature to add headers to the top of your class files with the license. While it is recommend, you don't have to do that for your code to be "licensed".

    Heh. It was and still is a mess…
    • Like Like x 1
  20. Well... Too bad I lost interest in Minecraft mostly :( this would've been handy.. Oh wells :) great thread tho :)