Towny Advanced - Developed by LlmDl
A special message from LlmDl precedes the normal Readme :
Hello Towny community,
Deciding to write this has not been easy, but I think it is better to get this out here rather than have you in the dark.
To the folks already sponsoring me: you are all awesome and you can expect my regular old self. You will have my full attention, the words below do not apply to you. I am grateful for the help you've provided me over the years (some of you, you know who you are,) and I am incredibly grateful for the support you've given over the last 4 months.
I have been working with Towny since 2011. I have been in charge of the project since 2014. I have put in more than 12 years of service to an Open Source project that you use. I have not run a minecraft server, or played minecraft in over 4.5 years.
Some of you may know this, some may not: Late last year my source of income ceased, resulting in not getting paid many thousands of dollars that are owed to me (which I had expected and budgeted for.) Because of the nature of that company's failures I am unlikely to ever see this money. Up until that point, my normal job fully-subsidized the time I put into coding Towny and its many add-on plugin. You all have enjoyed my works because I was able to feed and house my family via my regular work whilst paying myself to work on Towny.
I make myself available regularly on Discord answering mundane and complex questions alike. Bugs are usually fixed the same day they are reported. Other developers that contribute Pull Requests to Towny get reviews right away, and jr developers can usually expect me to help with commits so their work gets merged.
99% of Towny server admins are not sponsoring the work that I put into Towny. As of this posting, just after Github dropped support for Paypal, I have 120 sponsors, down from 148 (nearly reaching my current goal.)
This is somehow a normal thing for Open Source developers. If we put up paywalls in front of Downloads or in front of Support we can expect get nasty comments about being greedy, we can expect to receive negative reviews for not providing instant support. How dare an Open Source developer try to monetize what everyone gets to take for granted! Here's a look at what the worst-case scenario looks like for Open Source developers: https://github.com/zloirock/core-js/blob/master/docs/2023-02-14-so-whats-next.md
There are days that I enjoy every minute of what I do with Towny. Helping out the new server admins with their greenleaf in the Discord as they learn the ropes around Towny can be fun. Making a sponsor's feature request a reality. Creating a brand new add-on plugin from nothing but code and the TownyAPI that I have spent years fostering. As of this posting Towny has a 4.8/5 rating on Spigot, with 115 reviews. Nearly all of the reviews cite me and my efforts. I enjoy coding or I would not still be doing it.
And then there are days that I do not enjoy every minute of it, but you will be hard-pressed to find any days that I have not answered every question asked on the Discord.
I not only provide server owners with amazing support I also provide many plugins. It is not uncommon for servers to use Towny with side-plugins I am also in charge of: SiegeWar, Dynmap-Towny, iConomy5, TownyResources all playing very large roles on the server with other plugins like TownyChat, TownyFlight, TownyCultures, and others playing smaller roles. I read people's startup logs when they need my help and they tend to use a lot of my plugins if they use Towny.
I remember the time that Goosius decided to stop working on his fork of Towny that had SiegeWar built into it. He spent a little more than a year doing intense, active development, constantly getting feedback from server admins and players, constantly tweaking things. And then he vanished, burnt out from everything. He logged out of his SiegeWar discord and that was seemingly it. When I joined the SiegeWar discord in late 2020, I was surprised at how many people were clamouring for SiegeWar, willing to throw money at anyone that would continue coding SiegeWar. The developer left, and all of a sudden people were willing to pay.
Is that what it will take with Towny? I have to outright quit in order for server owners to realize how much they rely on Towny?
I am going to change how I handle things for the time being:
- If you're expecting support on the Discord: I expect you to sponsor. Companies that provide software do not provide support for free. I will probably still respond to you if you're brand new and need that extra bit of help. If you can find something that isn't already documented on the Wiki, let me know and I'll add it.
- If you are not sponsoring, please do not make suggestions for new features, I don't need ideas right now.
Right now I need to pay my bills and provide food to my wife and children.
The ball is in your collective hands as to whether you'll continue to see my presence felt here.
I'm LlmDl, the third lead developer of Towny. I have been managing the Towny project since 2014 and the release of Minecraft 1.8. Prior to me there was the original creator: Shadeness (active 2010-2011,) and the second developer: ElgarL (active 2011-2014.)
I am helped out by the TownyAdvanced team: Articdive, FlagCourier, Warrior and a few other private members. Being open-source Towny has a large list of Contributors who have helped improve the code base over the years as well.
Towny is one of the oldest still-in-development plugins for Minecraft. Shadeness created Towny for the now-defunct server platform called hMod. Shadeness ported Towny to Bukkit and left the project shortly afterwards, returning later to add EnemyWar or as it became known: FlagWar. Towny is now over 13 years old!
Go check out some of the features Towny has and see why it's still popular for yourself.
If you're interested in add-on plugins for Towny, check out the TownyAdvanced website/portal where you can view and download all of the plugins that the team maintains, or check out the SponsorPlugins you get access to when you give back!
- Latest Release supports MC 1.16.* & 1.17.* & 1.18.* & 1.19.* & 1.20.*.
- Latest Pre-Release supports MC 1.16.* & 1.17.* & 1.18.* & 1.19.* & 1.20.*.
Minecraft Version | Towny Version |
---|---|
MC 1.20.* | Use 0.100.1.0 or the the Latest Pre-Release. |
MC 1.19.* | |
MC 1.18.* | |
MC 1.17.* | |
MC 1.16.* | |
MC 1.15.2 | 0.98.1.0 |
MC 1.14.4 | |
MC 1.13.2 | 0.96.2.0 for 1.13.2 |
MC 1.12.2 | 0.97.0.0 for 1.12.2 |
MC 1.11.2 | 0.93.1.0 for 1.11.2 |
MC 1.10.2 | 0.93.1.0 for 1.10.2 |
MC 1.9.4 | 0.93.1.0 for 1.9.4 |
MC 1.8.9 | 0.93.1.0a for 1.8.9 |
MC 1.7.10 | 0.92.0.0 for 1.7.10 |
MC 1.6.4 | 0.88.0.0 for 1.6.4 |
MC 1.5.2 | 0.88.0.0 for 1.5.2 |
MC 1.2.5 | 0.82.0.0 |
Now that all Release builds and Pre-release builds are being made available here on github's Releases tab I am recommending that server admins "watch" Towny on github. Just click the watch button in the upper right and select "Custom > Releases".
Alternatively, if you watch the resource on Spigot you will be notified on that website when a new Release version is out.
The documentation found on the Towny Wiki is updated every time a Release version of Towny is put out. If you are using a pre-release version it is expected that you have read the changelog for any important changes since the previous Release build.
Some important pages to look over:
- Installing Towny - Why make installation hard on yourself?
- Frequently Asked Questions - Actually read this!
- How Towny Works - The bulk of the Towny documentation, read it eventually.
Here on GitHub's Issue Tracker you can file bug reports, feature requests, or just ask general questions.
If you still need help, join us on the Discord server, where you'll find Channels for support, add-on plugins, SponsorPlugins, plugin-development and just regular old discussion of the plugin.
If you want to support the developer consider becoming a Sponsor.
Courtesy of Major_Graft, we have a new series of Tutorial Videos available on the Towny website and YouTube.
If you'd like to contribute to the Towny code, see the CONTRIBUTING.md.
If you'd like to help translating Towny into the available languages or add entirely new languages, we're on Crowdin!
Towny is licensed under the Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported (CC BY-NC-ND 3.0) License
We don't object to you making your own forks and builds but we do object to people being selfish, which is why we specify No Derivative Works. If you want to modify the code to add some nice feature the least you can do is ask and submit a pull request to allow everyone to benefit from it.
Developers who wish to use the Towny API in their plugins may read the following instructions on adding Towny via a Maven pom.xml, or read the API guide to learn about the vast API Towny has to offer.
If you would like to build from a specific branch yourself, you can do so with either Apache Ant or Apache Maven, depending on the age of the branch.
For building, open your terminal / command prompt and navigate to the Towny Directory (either extracted, or cloned).
-
Maven
- Run
mvn clean package
to generate the plugin in thetarget
directory, within the Towny folder.
- Run
-
Ant (Deprecated)
- For older branches using the Ant build system, the main command to use would be:
ant clean jar
. This command will exit the Towny directory, creating a lib folder alongside it. A Towny.jar file will be generated and placed within there. - Note: As Ant is being deprecated, older branches may eventually not be able to be built against without modification of the
build.xml
file. We leave no guarantee that the file repo providing the dependencies will stay up.
- For older branches using the Ant build system, the main command to use would be: