Hello folks, this is my very first plugin I publish, so I really hope that everything will be right with the plugin for you.
This plugin manages your plots with regions from WorldGuard. You can define it as an WorldGuard extension or as an own plugin.
So, you can see that the plugin has a bunch of features.
At the beginning I just made it for my server, but I didn't find any plugin which has all these features I needed, so I just wrote it by myself.
That are my current main goals, but you also can post your ideas in the comments, and I will look how often an idea has been requested, and may I'll add it.
<> = Needed, [] = Optional
| Command | Description | Permission |
|---|---|---|
| /buyplot [PlotID] | Get a plot by standing on it or typing in the ID | fcgsbuy.member |
| /sellplot <plotID> | Sell or leave your plot | fcgsbuy.member |
| /listplots <plotType or all> | Get a list of the typed in plot-type or from all plots | fcgsbuy.list |
| /removeowner <plotID> | Remove the owner of a plot | fcgsbuy.admin |
| /adduser <plotID> <username> | Add a user to one of your plots | fcgsbuy.member |
| /removeuser <plotID> <username> | Remove a user of one of your plots | fcgsbuy.member |
| /updatedatabases | Fill the databases with the users and their owned plots | fcgsbuy.dropdb |
| /ownedby <plotID> | Look which user owns the plot | fcgsbuy.belongsto |
| /listplotsfromplayer <username> | Get a list of the owned plots from a player | fcgsbuy.listgsfromplayer |
| /saveplots | Save all plots to files. Needed to reset the plots | fcgsbuy.saveplots |
| /isplot <plotiD> | Look if the plotID is valid | fcgsbuy.debug.isplot |
| /pmsinfo | Get information about the plugin | None |
| /changepack <languagepackname> | Load a language pack | fcgsbuy.changelanguage |
| /myplots | Get a list of your owned plots | fcgsbuy.myplots |
| /defineplot <plotType> <costs> <permission> <alias> <pps> | Create a new plot type | fcgsbuy.admin |
| /plotinfo <plotID> | Get information about a plot | fcgsbuy.admin |
If you are questioning you why every permission has a "fcgsbuy" in it, it's just a remaining thing from the server exclusive time. It means "FloriluCraftGrundstückBuy". I know, pretty bad name. I'll may change the permissions, it just depends on the requested changes/features.
Open the plotNames.txt
member vip modern rome
There you define the full names of the plots, not the aliases.
general: languagePack: en sqlOutput: true plotRecreateBuffer: 2 ownPlots: 4 onPlots: 2 plots: member: costs: 0 pps: 0 permission: fcgsbuy.member identification: m special: false vip: costs: 1000 pps: 1 permission: fcgsbuy.vip identification: vip special: true skycraper: costs: 2000 pps: 2 permission: fcgsbuy.member identification: sky special: true
Under plots you write the names which you have written in the plotNames.txt, so the plugin can find them easily.
At first you define how much a plot will cost, "0" stands for that it's free, when you type in a number bigger than zero then the amount will be withdrawn from the players account. You are also able to define how much a plot will cost per square meter, that means when you have a plot which is like 10*10 meters big and you have defined pps: 4 then 400 money will be withdrawn from the players account plus the normal costs of a plot.
Then you define which permission a player needs to get a various type of plot, you can define them by yourself, so it doesn't matter if you write "fcgsbuy.member" or "blablabla", the player just needs the permission.
The identification is VERY important, this is the alias of the plot like for example by "member" it is "m" so that meens all member plots are named as "m1, m2, m3, m4, m5, m6, m7 etc.".
And special doesn't make sense yet, it's just a placeholder.
At "sqlOutput" you can define if you want to look which SQL-Queries the plugin sends to the database. For example if you encounter a bug.
At "ownPlots" you define how many plots a player can own. (Restriction from 20)
At "onPlots" you define on how many plots a player can build with a friend. (Restriction from 20)
Hint: I recommend to use the PluginManager http://dev.bukkit.org/bukkit-plugins/pm-pluginmanager/
Download the newest version of the plugin here on BukkitDEV, and drop it into your plugins folder.
If there are any configuration changes or changes at the database structure, delete the database or the config.yml
Restart your server or if you have installed the PluginManager type in the command
/pm reload PlotManagementSystem
If you want to save the plots and you already have them in the save folder you will encounter a server crash with the "ConcurrentModificationException". So better delete them before you use the /saveplots command.
So that's pretty much like how it works. If you have any questions or ideas, just post them in the comments, but I can't program every day alot of hours on it because I'm working as a developer in a company, I try my best to respond fast.
I hope you find it interesting and that you are going to download it :) And if you want to support me, you can write me a PM or a comment. If you encounter any bug, create a new ticket. For wishes etc. just write them into the comments.
The plugin is a little bit in development right now, so you can expect a lot of new features! It also supports 1.7.10. But I can't say alot to that, so use it at your own risk.
Here's my GitHub Repository: https://github.com/florilu/Plot-Management-System
So, after almost one year of not being active on this plugin, I spontaneously started updating the plugin to Bukkit-1.8.8. The first things are fixed now, but I have to rework alot, because there has been changed so much in the past year. So currently I'm experiencing alot of errors mostly occuring with my SQLite functionality, just because some datatypes have been changed over time. But I hope that it will be fixed pretty fast and that this thing is the only "gamebreaking" error that occurs besides the wrong file encoding...I really should use UTF-8
I plan to release the update at least during the week from 02.11.2015 to 08.11.2015.