LoginPerks
What is LoginPerks?
LoginPerks is a plugin for the popular Minecraft server Bukkit. The plugin credits users every day that they log in with items and/or money. LoginPerks aims to be:
- Lightweight – Java takes up enough memory as is!
- Easy to use – intuitive commands for on-the-fly configuration in your client.
- Powerful – Allow for customization at the global, group, or player level.
Latest release: 0.1e [Download]
1.0 Compatible Release: 0.1c [Download]
Latest Dev build: http://jenkins.brianturchyn.net/job/LoginPerks/
What Makes LoginPerks different (aka. Features)?
Every other plugin seems to be just too basic for what I’ve always wanted this kind of plugin to do. Therefore, I wrote my own. Here are a few specific features of LoginPerks:
- Fine-grained control at every permissions level; global, group, and player
- Flat file data storage
- Supports all permissions and economy plugins supported by Vault
- Message Customization- with colour support — NEW in 0.1e!
- Data value support (for colours of wool, etc) — NEW in 0.1e!
- Ability to give experience as a perk — NEW in 0.1e! — suggested by xXReVurbXx
Planned Features
- MySQL and PostgreSQL support
- Integration with Hawkeye anti-griefing mod for better auditing
- Colour support for messaging
- Multiple items being given as a single reward
- Random quantity support (eg. 1-10 of the item) — suggested by quickclay
Requirements
Hard Requirements
You need these:
- Java 1.6 or above (or OpenJRE equivalent)
- The minimum-supported CraftBukkit build:
- 0.1e or above: Bukkit 1.1 R4 (minimum tested build: CraftBukkit #1938)
- 0.1c or below: Bukkit 1.0.0 R1 (minimum tested build: Bukkit 1073)
- Vault
- Along with this, a supported economy and permissions plugin
Soft Requirements
Coming soon!
Installation
- Download the latest version (or the development version, if you feel like living on the wild side):
- Latest release*: See Link Above
- Latest Dev build*: http://jenkins.brianturchyn.net/job/LoginPerks/
- Place the plugin in the
plugins/
directory - Restart your server
- Configuration information can be found here or in the Pages link above.
Links
Permissions
** IMPLEMENTED ** - loginperks.getsMoney -- Determines if a node will get money from the Economy plugin -- default: false - loginperks.getsItem -- Determines if a node will get items in their inventory -- default: false
** COMING SOON ** - loginperks.admin.global -- Can a node edit the global defaults? -- default: op - loginperks.admin.group -- Can a node edit all groups? -- default: op - loginperks.admin.group.<groupname> -- Can a node edit a specific group? -- default: false - loginperks.admin.player -- Can a node edit all players? -- default: op - loginperks.admin.player.<playername> -- Can a node edit a specific players? -- default: false
As always, you should reserve loginperks.admin.*
for your admins and mods.
Commands
Coming soon
Author and About
LoginPerks is coded and designed by Brian Turchyn (Minecraft handle: Th3Bra1n). Brian runs the NOS Gamers group, which runs a Teamspeak (teamspeak.nosgamers.com
) and Minecraft(minecraft.nosgamers.com
) server. The servers are Pay-To-Play access to ensure everybody has a vested interest in keeping the server a great place for players to play.
Donate
If you’ve used this plugin and like it, please consider making a contribution to its support and development. All proceeds collected go straight towards the running of NOS Gamers and maintaining the plugins. The money doesn’t go into my own pocket.
License
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
Before the 1.1 R5 can you release it for 1.1 R4 with a little update?
@Latusy
I'll add those ideas to the list of planned features. I will likely add some sort of mini-plugin system to do that first, since I'm trying to keep this running as lean as possible.
@Crayder
This plugin does just that. Look at the sample configuration file under the Pages link above.
Can you set this up to be permission-based? I want a particular group to only earn $250 per day and a different group to earn $1000.
Is LoginPerks running with CraftBukkit 1.0.1-R1?
Would it be possible to add two things?
Consecutive days login: Only get a reward if you've logged in for x days in a row
And a rank increase perk? If you've logged in for x days, you get an automatic rank increase?
I'd like to set it up so that if somebody logs in for 7 days straight, they get to be a certain rank.
@d4rkwarriors
The Vault plugin provides the compatibility layer between the permissions/economy systems and LoginPerks. If there is a compatibility issue with PEX, the issue resides with Vault, not with LoginPerks.
tl;dr: It has worked fine with all my testing.
someone confirm that this is working with PEX?
@Inspector94
What version of Java are you running? I may have to compile future versions on an earlier JDK.
174 recipes 27 achievements 15:45:04 [INFO] Starting minecraft server version 1.0.1 15:45:04 [INFO] Loading properties 15:45:04 [INFO] Starting Minecraft server on *:25565 15:45:04 [INFO] This server is running Craftbukkit version git-Bukkit-1.0.1-R1-b 1597jnks (MC: 1.0.1) (Implementing API version 1.0.1-R1) 15:45:04 [SEVERE] Could not load 'plugins\LoginPerks.jar' in folder 'plugins': java.lang.UnsupportedClassVersionError: net/brianturchyn/LoginPerks/LoginPerks : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Unknown Source) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$000(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader. java:36) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader. java:24) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.j ava:170) at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager. java:215) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager .java:136) at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:151) at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:127) at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigur ationManager.java:52) at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:145) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:399) at net.minecraft.server.ThreadServerApplication.run(SourceFile:457) 15:45:04 [INFO] [Vault][Economy] iConomy 5 found: Waiting 15:45:04 [INFO] [Vault][Permission] SuperPermissions loaded as backup permission system. 15:45:04 [INFO] [Vault] Enabled Version 1.2.3-b000 15:45:04 [INFO] Preparing level "World" 15:45:04 [INFO] Default game type: 0 15:45:04 [INFO] Preparing start region for level 0 (Seed: -320178208) 15:45:05 [INFO] [iConomy] Logging enabled. 15:45:05 [INFO] [iConomy] v5.01 (Eruanna) loaded. 15:45:05 [INFO] [iConomy] Developed by: [Nijikokun] 15:45:05 [INFO] [Vault][Economy] iConomy 5 hooked. 15:45:05 [INFO] Server permissions file permissions.yml is empty, ignoring it 15:45:05 [INFO] Done (0.080s)! For help, type "help" or "?"
Thats the error im getting :(
@Th3Bra1n
Awesome, thanks for taking it into consideration.
My server promotes experience as having economic value, and thus persuaded me to suggest it as a reward option :3
@xXReVurbXx
Good idea. Added to the backlog.
@Th3Bra1n
May I request an option to distribute xp (as a configurable amount of levels) to players as a daily login reward?
@Th3Bra1n
All latest versions of Vault, PEX and iConomy 5 As for the config and data:
http://pastebin.com/dLf9Rv57
Also it never worked with the default plugin configs it generated.
@rebel24
Could you please send me a Pastebin of your config.yml, data.yml, and send me your Vault, PermissionsEX, and economy plugin versions? Without this information, I won't be able to debug the issue.
01:53:13 [INFO] [LoginPerks] Last online (according to me): java.util.GregorianCalendar[time=0,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="GMT",offset=0,dstSavings=0,useDaylight=false,transitions=0,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=1970,MONTH=0,WEEK_OF_YEAR=1,WEEK_OF_MONTH=1,DAY_OF_MONTH=1,DAY_OF_YEAR=1,DAY_OF_WEEK=5,DAY_OF_WEEK_IN_MONTH=1,AM_PM=0,HOUR=0,HOUR_OF_DAY=0,MINUTE=0,SECOND=0,MILLISECOND=0,ZONE_OFFSET=0,DST_OFFSET=0] 01:53:13 [INFO] [LoginPerks] We're on a per-day basis 01:53:13 [SEVERE] Could not pass event PLAYER_JOIN to LoginPerks java.lang.IncompatibleClassChangeError: Expected static method ru.tehkode.permissions.bukkit.PermissionsEx.has(Lorg/bukkit/entity/Player;Ljava/lang/String;)Z at net.milkbowl.vault.permission.plugins.Permission_PermissionsEx.playerHas(Permission_PermissionsEx.java:85) at net.milkbowl.vault.permission.plugins.Permission_PermissionsEx.has(Permission_PermissionsEx.java:80) at net.brianturchyn.LoginPerks.util.PermissionsHandler.checkPermission(PermissionsHandler.java:245) at net.brianturchyn.LoginPerks.util.PermissionsHandler.receivesItem(PermissionsHandler.java:87) at net.brianturchyn.LoginPerks.listeners.LoginListener.onPlayerJoin(LoginListener.java:68) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:268) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339) at net.minecraft.server.ServerConfigurationManager.c(ServerConfigurationManager.java:129) at net.minecraft.server.NetLoginHandler.b(NetLoginHandler.java:113) at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:39) at net.minecraft.server.NetworkListenThread.a(SourceFile:94) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425) at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
help!
@TeamAss
I released a fix to the plugin. Try that. Your config looks fine. I'll also be doing a test soon with PEX to confirm that it is fixed.
@TeamAss
I'll definitely take a look. I believe there is a bug in the current build. I'll keep you posted :)
Im having trouble with this plugin. Im using Pex. Can you help me check if it is made properly? Cause i dont receive anything ingame. http://pastebin.com/3TRp6FqX
@quickclay
Good idea. I'll add it to the backlog.