Residence Permissions
Very simple plugin adding temporary permissions to your Residences
Requires
Why the plugin
I use on my server rescreative, player entering residence get creative mode, then they can get items, and sell them using /sell command from essentials, so with this plugin i can remove permission to /sell on that residence.
Now with flag support You can create own flags giving player permissions, example flag preventing using mcMMO skills, or flag allowing LWC creation.
What does it do
Adds additional permissions to player on residence change.
Example Configuration
Negative Permissions doesn't work, you can set world flag "lwc" and set "-lwc" on residences.
config.yml:
debug:true # display debug in console, default: false
flags.yml - list of residence flags
emptynonusableandmore: desc: empty flag used to disable config recreate perms: [] lwc: desc: allow creating lwc protected blocks perms: - lwc.protect #LWC magic: desc: enables magic in residence perms: - magicspells.cast.* #MagicSpells mcmmo: desc: enables skills and abilities mcmmo mcmmo perms: - mcmmo.ability.* - mcmmo.skills.*
res.yml
res2: # residence name - example.permission # permission to add while player is on residence rez5-test: # residence-subzone name - someplugin.fly - someplugin.warp market-shop-player: # residence market, subzone shop, subzone player - someplugin.perm
Commands
- /resperm debug - toggle console debug
- /resperm reload - reload configuration files
- /resperm resreload - reload res.yml
Permissions
- resperm.toggledebug - access to /resperm debug command
Future Idea
- Replace - with . (still working on bukkit config pathSeparator problem)
- Add more commands
- Add more permissions
- Add "perm" flag to set permissions only to player with this flag
- Add predefined flags with permissions, example "market" flag will add permission to create/use trade signs.
How to install
- Drop jar into plugins folder.
- Run server
How to use
- open plugins/resperm/res.yml
- configure additional permissions to residences
- type in server console resperm resreload
- test it
- If something dosn't work, type in console resperm debug
- test it
- post new ticket with console output
Source
Included in jar
Known Bugs
- Negative permissions doesn't work
- Lots of overuse possibilities ;)
- Residence doesn't fire event on player teleport, so after warp player still can have permission.
Suggestions
Do you like to change something? Create Ticket :) Have some idea? Create Ticket :)
@Iwitrag
I don't interact with any movement so it's strange.
What version of my plugin and bukkit do you use? Do you use my other plugins?
(Please create ticket for it :) )
Hello, when I create residence with flag move: false and any player port to this residence with /warp command from Essentials, they are able to move even though the chat is spammed with "you cannot move in this residence" ... I have removed resperm and this problem seems to be fixed...
So, can you fix that?
@chengyaoxuan
Yes, it is more safe to use player.getName, but if you talking about randomly stack trace about not finding player object on remove perms, thats because of race condition and not catching every event that may cause player to disconnect.
But if your players are able to change their name in game like upon login, that could be problem.
I have put it into my todo when i start working on my plugins again. Thanks
find bugs,getPlayerListName replace getName,Otherwise it isn't to get player object.
Suggestion: When I have negated permission in PEX, can you make it so this plugin will override this negated permission when I want to allow it in certain residence?
@PassWordE
There should be removed, or at least changed when he enter another res, but i will add res remove as a trigger for that in next.
when player on the residence and remove it, so the player's permissions be removed too slow... :(
ResFly should bee up to date, but Residence Permissions still needs a recode, but as for now, that event i still valid so it will work without problems.
Hi. I use your plugins resfly and resperm. But i noticied that the events in residence you are listening to are deprecated. Could you update? I would help you but I can't find the repo for resperm. Anyway, I'm gonna try to make a pull request on resfly.
@kolorafa
Eh,I‘m using 1.4.7-R1.0......
Oh please me! I fogot to install residence...
@zopn333
As i know that this plugin should work without any problems, but i don't have time to test or develop it now, so if doesn't work create ticket with logs and it will be fixed :)
@Insanek
Negative permissions needs to set permanent permissions into permission plugin, and would be:
but some bugs was fixed on resCreative so in time i think it will be merged and who knows :) but if someone wants to help with it feel free to :)
Dear Author, Are you still working on this plugin now? Could you make an update?
Eagerly waiting for you to get negative permissions to work. ;) No need to rush though.
@PEZA0
As for now plugin didn't change a bit, but should work with 1.4.5 and now i don't have time to work on it (work...)
@calvindsy
You can do that without any additional plugins, in Residence config you can decide what flags player can or can't change, it's as simple as that, on my server only admin can set pvp flag, and only "vips" can change "fly" flags to their own residence, and players can only teleport to their own residence :)
I'm hosting a tekkit server, and I'm trying to use Residence. I'd like to be able to have players unable to set certain flags--I want people to always be able to teleport to a residence, always allow PVP in a residence, etc.
So is there a way to restrict certain flag permissions?
Update to 1.4.5 ? negative permissons works now?
tks
@Froogy444
Yes, multiple res and multiple flags, but the simple way is to create flags and set them :)
Paste your config (the right way with spaces) and debug console but on ticket :)
Hi ! This Plugin can have more than one residence ? I explain :
My res.yml is :
aut1: - restown.build
aut2: - restown.build
aut3: - restown.build
But only the fisrt residence ("aut1") has the permission "restown.build". I have no error in debug mode !
Thanks for helping me !
11:43:18 [INFO] "Thread-398395" Id=408413 BLOCKED on org.bukkit.plugin.SimplePluginManager@16a74282 owned by "Server thread" Id=16 at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:451) - blocked on org.bukkit.plugin.SimplePluginManager@16a74282 at com.bekvon.bukkit.residence.protection.ResidencePermissions.playerHas(ResidencePermissions.java:79) at com.bekvon.bukkit.residence.protection.ResidencePermissions.playerHas(ResidencePermissions.java:73) at me.kolorafa.resperm.resperm.appendResPerms(resperm.java:172) at me.kolorafa.resperm.resperm.playermove(resperm.java:74) - locked java.lang.Integer@6a5f3dc3 at me.kolorafa.resperm.delayPlayerCheck.run(delayPlayerCheck.java:29) at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34) at java.lang.Thread.run(Thread.java:662)
server totally hanged cause of this plugin