To all Developers who dropped 1.8 support (or plan to), Here is a message for you.

Discussion in 'Spigot Discussion' started by Nubba, Feb 13, 2020.

Thread Status:
Not open for further replies.
  1. Gianluca

    Gianluca Retired Resource Staff
    Retired Patron

    Dropping 1.8 support in plugins becomes a "must", because it's honestly a waste of time for developers and creators to create projects that support nearly 8 major versions of the game. At least 90% of people on Bukkit, Spigot and Paper do this all as a hobby, and to improve their programming skills, there's no reason for them to hinder future updates by trying to ensure backwards compatibility for a very small minority.

    As someone who's ran a ton of projects since 1.9 came out, trust me when I say, if you don't have a PvP oriented gamemode, it's worth the risk in upgrading. For example, many Prison and SkyBlock servers now run 1.12 (with backwards compatibility), Survival and Creative are on the latest. It's only really Factions and KitPvP (and a few minigames) that are on 1.8, with HCF on 1.7. BungeeCord natively supports 1.8+, so, if you run a network, there's no reason to not run the "best" version for your specific gamemode.

    The only argument for staying on 1.8, aside from PvP is because of the mods, and a lot of that is due to there being no update in ages (I think 1.8 -> 1.9 was something like 2 years). But, with the developments to Forge and Fabric, and with Mojang releasing the mappings, it's a fantastic step in the right direction for the modding community, and that should see some of the popular 1.8 mods updated/remade on future versions.

    Plus, Mojang is releasing combat changes and they are trying to find a middleground (granted, they want parity with Bedrock for whatever reason), and they are taking a ton of user feedback. Combine this with the modding advancements, and, soon, there'll be no reason to be on legacy versions.
    • Winner Winner x 7
    • Agree Agree x 3
    • Like Like x 2
    • Optimistic Optimistic x 1
  2. Not trying to discredit bStats in any way, but it should be pointed out that most server owners using legacy plugins have patched out statistics because it causes a hell of a lot of errors in old plugins. The data for 1.8 is greatly skewed because of that, and it should also be pointed out that bStats is NEW and it used to be McStats when 1.8 plugins were being made, again supporting my statement that the data is heavily in favour of new plugins for new versions.
    • Agree Agree x 1
  3. electronicboy

    IRC Staff

    Basically, if you opt to use 5 year old software, great, that's on you, but; Unless you're paying me for support, I owe you not a daaamned thing, especially in codebases which actually have to go out of their way to support multiple versions, I have to implement support for the current version and test it, and then follow the exact same tactic for every other single version of the software that I support, supporting 1.8 and latest at the very least doubles my workload, and often requires more work due to refactoring to work around the limitations of 5 year old software

    It really boils down to the fact that the entire community owes you nothing, and maintaining support for 5 year old server software adds a lot of extra work on developers, spigot also opted to make some changes which makes providing such support more of a pain in the ass, which I can honestly see why, especially with recent releases, some devs really don't care to deal with all of the quirks for handling support for software versions they stopped caring about, especially with the time investment required to refactor some of these changes in properly, what you have to remember is that many are not paid a single dime for their software, even devs running some of the largest plugins in the community gain practically nothing and often pay out of their own pockets to keep up the infrastructure, etc.

    I personally don't really deal with many public plugins outside of 2 minute hack-em-togethers for people because I don't really care to deal with the entitlement of a hefty chunk of this community, the ROI is basically 0 unless you're looking to make a pretty portfolio, much easier to invest my time working on server software (Which, the investment is that I use it myself, so, having it running is generally better...), private work, or doing commissions, where at least I get some form of return on my investment, be that monetarily or personal

    Nobody is saying that people don't still use 1.8, it's just, the effort required to maintain support for it is increasing release by release, and there is practically 0 ROI on supporting this, as a community, people would do a much better job of getting what they wanted if they where actually willing to support others instead of expecting that people should maintain support for 5 year old software, or even supporting the software you're using in general. be that donating to actually support the time investment people make, or contributing to these resources directly, e.g. source, community support, etc, etc
    • Winner Winner x 18
    • Agree Agree x 7
    • Like Like x 1
  4. Hear hear!!!
    I wanted to rate this winner, and like, and agree, basically all the ratings (except funny and optimistic) ... this is truly the best response!!!
    • Agree Agree x 1
  5. it all depends. if you already wrote codes for old versions, you would not need to change much to keep the support since the old server versions have not been updated. If new server versions introduced new features or removed old features, just add a small wrapper to absorb those changes. I don't see why it's such a big deal...
  6. electronicboy

    IRC Staff

    It's the burden of support of supporting older versions that you've gotta consider too, you can't just forget about your old code unless you're not expanding your plugin or dealing with issues from older versions, if you're adding new features, etc, especially in areas where the API is lacking, you fast go beyond what a quick small wrapper can deal with and start needing to handle nms classes (or at least mapping data) for every rev

    Dev time is dev time, you can't expect people to freely increase their workload because you wanna stick to a 5 year old server version, this is as much about the time effort developers are willing to put into this as well as the entitlement of people expecting that devs will freely support their decision to use software which hasn't been maintained in 5 years
    • Agree Agree x 3
  7. Well I haven’t been doing any of you’ve mentioned every time new versions come out to keep supporting old version. It sounds like I must have been lucky so far.
  8. I wouldn't assume that. I think that VKBackPack could be easily provided for free when dropping old version support.
    I would assume that a 16 dollar price tag is added because of the hassle you have with new features and older versions.

    Screenshot 2020-02-14 at 10.57.10.png
  9. lol, my premium plugins' prices were not set by me... those were set by a group of people who requested to compensate my time. Backward compatibility has never been an issue. (that's why I said I must have been lucky)
  10. We used to support 1.7-1.12.2 in PlotSquared. When 1.13 came around, we decided to ditch all prior versions entirely and stop providing any sort of support for those versions. It was a great decision, as we could focus on improving the software for future versions, rather than supporting (often quite angry) server owners insisting on using 1.8. Adding onto that, 1.13 changed a lot. To support older versions, we would need layer on layer on layer of dumb compatibility hacks. We still have the versions available for download, but we won't help you if anything goes south.

    To expect developers to make their plugins compatible with wildly outdated server versions is ridiculous. Even more so, to expect them to maintain support for an outdated API, is even more ridiculous. If you want to be able to use recent software, then update. If you insist on using archaic Minecraft versions, then jump into a time machine and grab whatever was available back then. Though, make sure to watch out for the dinosaurs.
    • Winner Winner x 7
    • Like Like x 1
    • Agree Agree x 1
  11. A well-defined, properly written plugin will not need any updates,* so the old version should continue to work with old Bukkit builds. It should not require much if any support.

    * This is why Spigot's rule about requiring updates for premium plugins every so often is bogus. Define the scope of the plugin, write it properly (including using the API), and it can go years without updates.
    • Agree Agree x 2
  12. Problem is, the majority of plugins posted on the site here aren't made by expert developers that use fantastic principles to achieve such a lifecycle on plugins. The average plugin here is simply made by a hobbyist, and supporting 7 versions through (what @Sauilitired explained) layers after layers after layers of abstraction and backwards compatibility hacking is just not feasable to a hobbyist. It unfortunately ruins the development community to place this burden on these inexperienced developers.

    That being said, I do agree that the rule in a premium plugin case is a bit flawed or misphrased. Update when necessary, don't update just to update.

    I have one plugin on MCM I wanted to reinvent soon (a v2 version). I won't support anything below 1.13, simply out of principle. Not because I can't, but because I don't want to.
    • Like Like x 2
  13. I update to stay with the current latest version of the game. Then again all mine are custom specific to the server I run. As well as a friends I help with. Although im sure someone here would like them, I wouldnt go out of my way to add support to older versions as like someone stated earlier it would be too much of a hastle for someone that does it for mainly a Hobby. (I dont find the need nor want to mainly because im doing it for 2 servers that will LOSE its community every time its late to update to the next version.

    Yes we lose people if we arent on the next MC version ASAP.
  14. Half the battle is to define a reasonable scope for the plugin and avoid "feature creep". You'll have fewer bugs, easier maintenance, and the plugin will be more likely to work with newer MC versions. If you start throwing in everything but the kitchen sink (I'm looking at you, PlotSquared), you're creating a nightmare for yourself.
    • Agree Agree x 1
    • Funny Funny x 1
  15. electronicboy

    IRC Staff

    Two things

    1) feature creep is an issue with any project, but, expanding your plugin does not always equate to feature creep, even if you once considered it complete, you might wanna add something fancy, e.g. bossbars

    Not all features are easily contained in the API, especially if you wanna start going 5 years back, features like bossbars, etc, where not available in the API in 1.8, yes, there are libraries for this, but it's an extra dependency in your toolchain which others might prefer to avoid these, especially given that the API now supports this and the plugins are unmaintained, action bar messages are only supported in spigot and using API which has a "hack" added to avoid a quirk of action bar messages that was added a few years ago

    It's pretty easy for some plugins to stay in the bounds of the API, but that doesn't mean that you're not going to get away from version discrepancies, also, it's pretty easy to say that you should stay within the bounds of the API, but it's also pretty easy to leave the API; e.g. world generator plugins are practically screwed with bukkits API, and necessitate using NMS if you wanna be able to handle world-gen properly, without having to cludge in workarounds for things like bukkits ChunkPopulateEvent not running during population, wanting to add features like bossbars to older versions or using action bar messages, etc; Sure, you can probably easily just say to not support those features on versions where there is no native API support for it, but even that often sees people recieving reviews, etc; begging for such features

    If your plugins can stay within the bounds of the API, sure, that can make your life a *lot* easier on this aspect, but, I seriously doubt that if you've been a developer for a long time you've not had cases where you wished some API was available but isn't
    • Agree Agree x 1
  16. You are basically asking the developers to spend their time on something that they don't need. Which means that such time has to be compensated somehow, so what's your offer?
    • Agree Agree x 3
    • Like Like x 1
  17. This is where the issue is.

    The server owners running these big PVP servers are literrally making $500k to over 1 million dollars per year running their servers. (cosmicpvp, saico, etc)

    Other established PVP servers are in the 6 figure income, $100k to $250k per year.

    The plugin developers are making pennies, literally for selling their plugins and no see no point in spending extra time developing for older versions. Every time a new MC version comes out, the API gets easier to work with, which means less dev time for plugin developers.

    If you want these plugin devs to support 1.8, then these servers that need it needs to stop hoarding their money and click that donate button with requests for 1.8 support. Money talks and if enough of you get together you'll be able to offer an incentive to get the support you need.

    You all know who you are and I'm sure some of you will read this. If all of you were donating a certain percentage of what you made back to these devs that develop plugins that allow you to make so much money there wouldn't be any issues with getting support for such older versions.

    I've made a few posts like yours directly to plugin devs and they just don't care for the amount of money they make selling their plugins or the time the spend on free plugins.
    • Agree Agree x 7
    • Winner Winner x 1
  18. Or just pay actual developers to make custom plugins instead with all of that money
    • Like Like x 1
  19. I would rather like to see that money being put into open source projects than others.
    • Agree Agree x 4
  20. Big server have their own forks of many plugins. There is no reason to pay the person. More a reason to do not because you pay to get your monopole ripped off.
Thread Status:
Not open for further replies.