Hi there, I posted an add in the plugins request section, but it was taken down due to rules around "incentives". I have been advised to post in "Off Topic" but noticed a argument there around posting a thread looking for paid devs to work with a server. I wish to post an expression of interest for devs to build some Free and Open Source plugins to share with this community. The plugins are ones that simply do not exist in this forum at present. Honestly, it feels like there is some bizarre anti-payment mind set that is present here. I would have thought that valuing devs time and work via paying them for their efforts would have been something that would help grow a community like this? Anyways, as the title states, the main question is, why is there not a well signposted place where we can as a community offer to commission our talented devs to build more and better plugins for PMMP? Thank you for any reasonable responses.
If a section like this was to be added, I personally think developers looking for work should pitch their own services. This way people looking for a developer can view a range of devs and select suitable candidates that are available for commissions.
How about allowing to give rewards to devs in the plugin request section? That would be very reasonable.
Disclaimer: This is not an official statement. To commence with, I appreciate very much that you are willing to pay developers to develop a plugin that is going to be available publicly. The main issue with paid plugins, as most have suggested, is that the forums are no marketplace, and we don't want to spend hours dealing with people who complain about deceit, stealing, etc. I believe I don't need to explain this. Another reason why I personally don't support promised payment is my belief that a financial motivation cannot drive a good trend of development. When developers are paid to develop something, they become morally bound to meet the expectations of a certain person. Hence, what the public eventually receives would likely be something that is only suitable for certain people but cannot be widely used. In addition, the developer is likely to concentrate on unimportant details that slow down the overall development as a result of utilitarianism. For example, the developer thinks that "once I finish this plugin, I will get my reward, so I don't need to think about what happens after I get my reward". This will actually lower the quality of the plugin. Not sure about other members of the team, but the above is my opinion on the "bizarre anti-payment mindset that is present here" you mentioned. An alternative would be donations. Developers can release plugins into the public and receive donations from fans of the plugins, which would guarantee a continuous motivation for developers to maintain their plugins. However, this will end up leading to unhealthy trends, such as plugins full of "please donate" ads, developers wasting time advertising their plugins, etc. This is not a good choice either. Admittedly, we have too many low-quality plugins out there. But please note that most of the low-quality plugins are unusable for most people not because they have bugs, are useless, etc., but because they are too stuck with certain scenarios. For instance, I have seen people submitting onto Poggit some very specific plugins, e.g. JoinTitle (why not KillTitle? why not TimerTitle? why not MineDiamondTitle? why not JoinMessage? why not JoinCommand?), SoupFFA (why soup? why arena in one and only one level? why must the sign text be "SoupFFA" not something else? it is just the plugin for your own server!), ExtraCommands (I rejected at least 4 submissions of this kind. why only these commands? why not let the user add their own commands?) etc. The problem with plugin development is that developers are often trapped in their own server, and they don't know what everyone else possibly needs. Although I have already rejected extremely useless cases like these, the rest are usually not much better. Of course, there are also some nice plugins out there, useful for almost any purposes. Nevertheless, they lack the ability to work together well. Take Linux commands as an example. Is there no specific tool for extracting the 1000th line in your file (awk)? No problem, you can head -n 1000, then pipe it to tail -n 1. Do you want to see the total word count for all .txt files? Just use find -name ".txt" with -exec wc -w {} +. It seems that Linux commands provide a powerful toolkit to do everything by mixing different commands together. Of course, we wouldn't expect to have a plugin with commands as extensive as those in Linux; nor would PocketMine plugins' commands be compatible with the Linux's concept of "piping". How we would do it would be a very technical issue that is yet to be discussed, but I would just like to emphasize that the problem is not in that we lack plugins, but that 1) we lack widely useful plugins, 2) we lack highly mutually compatible [1] plugins, and 3) servers lack talented admins to apply plugins together well. For example, right now, just using a mine reset plugin, a portal plugin, a tap-to-do plugin and a scheduled-command plugin, we can already make a spleef minigame server that works almost as if the server has a spleef plugin tailormade. [1]: By compatible, I am not only referring to not crashing, but also the ability to maximize their functionality together. For example, if I give you three 1-meter long sticks, you might connect them tip-to-tail in a straight line to occupy a 3-meter-long thin and long area, but you could also connect them as an equilateral triangle to get a sqrt(3)/4 meter squared area. They can already serve their independent functionalities, but there would be bonuses if you can use them together in a special way, which really relies on the wisdom of both the developer and the server admin. Perhaps I have got really off-topic. Let's return to the topic; what we need is not paid incentives to develop plugins, but to cultivate a globally compatible mindset in developers.
I completely agree with the statement of SOFe. It really isn't a problem of having too few developers or too few plugins, it's just that lots of people create either A ) A plugin with the same intentions of previously existing plugins attempting to create a better plugin, or B ) Creating a plugin that is very specific to certain servers only, and stopping when the functionality needed is added. I personally don't create like loads of plugins, but I make sure I get the most out of every plugin I make. One of my plugins for example, is already in development for almost a year now, and I'm still not satisfied with the features it brings. It's a rather large world editing plugin with lots of features which allow you to make it very customizable and use it for many purposes, so it not only fits my needs, but also the needs of many other users of the plugin. I do agree it is fairly uncommon an actually good plugin with wide functionality gets released, and that's quite dissapointing to see. I know, that if people would ask me to code plugins for money however, that my plugins would not meet the quality they do now. I put effort in plugins now because I like working on them, not because I have to do it because someone paid me to do it. I do think donations would be a fair idea, I mean, I would certainly be happy if someone would reward me for my effort, but as SOFe mentioned above, I could see that turning into one big advertisement mania. The main problem with a lot of plugins these days is that certain things are hardcoded which limit the way you can use these plugins. It's often the simple plugins that are useful. Take TimeCommander as an example. About 60 lines of code I think, but one of those plugins that serve purpose for every server. On the other hand, there's many plugins that are way bigger than that, but are simply way too specific. This could range from actual features, to messages that aren't configurable. Even the simplest prefix when using a command could discourage the user to use the command for a different purpose than the intended one.
I would like to add that hardcoding isn't limited to messages and toggling features. It can be of any program behaviour, e.g. the registration procedure configuration in HereAuth, etc. What we really need is a well-established system of API and soft dependency. Take minigames as an example. How do I join a minigame? Click signs? Type commands? Portals? Or just an item in your inventory? Or a modal form? The developer would be discouraged from implementing all these; it's just a waste of time. But there are already existing plugins doing these. Why can't they integrate?
tl;dr: a lot of the words I just scrolled past have no relevance to the OP's question. The forums are not a buy/sell site, we don't permit it, because if we did we'd have to regulate it and make it safe, provide support to those who got scammed, etc. Nobody here has time to set up or maintain PluginBay. If you want to pay developers to write plugins for you, you're more than welcome to, but not on our forums.