PlayerVIP
PlayerVIP
PlayerVIP is a new VIP-Plugin to promote Members to VIPs (or Premiums). The Difference to all other VIP-Plugins: The VIP code allows your players for a certain time to be VIP. If the time expires, the players returned to the Member Rank. You can also create with this Plugin an instant Payment System for your Server to sell VIP-Codes. But notice: Every VIP-Code can used only one time.
Requirements
- LordLib
- Java 7
- Vault (optional but recommend)
Installation
- Download the Plugin
- Download LordLib
- Put both jar Files into your plugins Folder
- Start your Server (at First Startup there will be an Error. This is normal, because you dont already configured this Plugin)
- Configure PlayerVIP
- (Optional) Configure LordLib
- restart or reload PlayerVIP or the Server
- Its ready to use
Development Builds
Development builds of this project can be acquired at the provided continuous integration server.
These builds have not been approved by the BukkitDev staff. Use them at your own risk.
There are no support, if you are using Development Builds. They can not work correctly or can crash your PlayerVIP-Plugin and/or the used Database
Supported Languages
- English (en)
- German (de)
- Spanish (es) - Thanks to Airos18
You created a language File for another language? You can send it to me and i will implement it into my Plugin with credits to you
ErrorLogger
The ErrorLogger is a new Feature since PlayerVIP 3.0.0-b57. This will log all your Activities with this Plugin (only with this Plugin) for a short time.
If there will be thrown an Error: The ErrorLogger will notice this in the most case and write the informations into the plugins/PlayerVIP/error.log.
You can disable the ErrorLogger in your config.yml File. Also you can allow the ErrorLogger to auto upload the error.log file to my Server (lordsill.de) to allow me to fix these errors (Auto Upload is disabled by default. This can be enabled in plugins/LordLib/config.yml)
To help me to fix errors, its recommend to send me the error.log file (you can do this also manually by copy the content and paste it into the Ticket Section)
Updater
This Plugin can connect to curseforge.com to check for newer Versions. This Plugin can only check for a newer Version and its not able to auto-download them. You can enable/disable this feature in the config.yml (EnableFeatures -> Updater: true (enable) or false (disable)).
YouTube
Tutorial - Creating PlayerVIP Addons (English) by LordPlays
Tutorial - PlayerVIP Addons erstellen (German) by LordPlays
German by LordPlays (Version: 3.0.1-b67)
English by LordPlays (Version: 3.0.1-b64)
Spanish by Yan Francisco Perez (Version: 2.2.2)
German by LordDead24 (Version: 2.1.0)
Thai by ShakeStudio (Version: 1.5.1)
Payment Implementation
Paypal German by LordPlays
Update
Version 3.2.0 (Release-Date: Unknown)
- Fast VIPSync (sync in less than 1 second of all your servers, less ressources than SyncType 1)
- Better /vip list (search for special Groups)
- Option to change from UUID to internal PlayerID (this will cause no problems with onlinemode=false)
- Fix problem with CheckType=1, PlayerJoinCheck for multiple groups
- Command to start a VIP-Check
Unknown Versions:
- Update Payment Page - Add support for Paysafecard (not sure currently)
- Website to handle VIP (grant, purge, show Status of VIP from all Players) [Optional, you dont need to join your server to set VIP]
Metrics
This plugin utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:
- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- The plugin's version
- The server's version
- The OS version/name and architecture
- The core count for the CPU
- The number of players online
- The Metrics version
Opting out of this service can be done by editing plugins/PluginMetrics/config.yml and changing opt-out to true.
@JeikHardy
Yes can be included in PlayerVIP 2.0
@jeracom
ist auch möglich, aber nicht mit dem Source, den ich für euch bereitgestellt habe.
@jeracom
bei PayPal Script werden einige Bedingungen geprüft, z.b. dass der Käufer ein verifiziertes Konto benötigt etc.
Ansonsten prüfe einfach, ob Einträge in die Datenbank geschrieben wurden, nachdem der Kauf abgeschlossen ist (wenn nicht, wird einer der Prüfungen negativ ausgefallen sein) Sollte die Prüfung negativ sein, kannst du auch die Prüfungen per Hand entfernen (kann aber dann zu Betrug etc. kommen)
Habe jetzt auf der Webseite 4 Ordner und 4 Datenbanken angelegt. Scheint so zu gehen.
Oder gibt es andere Möglichkeiten?
Das Paypal-Plugin haut irgendwie nicht hin bei mir. Ich bekomme zwar Nachricht das bezahlt ist und der Empfänger auch.
Aber der Code wird nicht verschickt. Ich dachte erst, das liegt an php, aber ich habe ein php Mailer (Formular) benutzt die funktionieren.
Das Plugin ist klasse, habe es mit Groupmanager am Laufen.
Paypal Testacc bekomme nicht hin die richtige bezahlung scheint aber zu klappen.
Meine Frage, da ich nicht so fit in PHP bin, was muss ich machen, um mehrere Varianten der Ränge anzubieten. In der PHP Datei wird der letzte Rang genommen, nicht den ich auswähle, um mit paypal zu bezahlen.
Beispiel:
Er nimmt nur den letzten, Get Elite 6 Monate 25.-
Für Hilfe wäre ich Dankbar
one more suggestion, can yo add this pls??
/vip purgevip <player> - cancel the Vip membership from a Vip player
Great Plugin and thanks again :)
@lordsill
No, for that the code is not used;)
This command was useful to store that uses the RCON command. Well that was a player had a choice of where to use the code or on the web or in the game.
Using this command code can not be included because of the Web rcon.
@JeikHardy
its possible. and i will include this in PlayerVIP 2.0
Hi Can you add this Command if be Possible for admins?
/vip list <page> - see all the Vips members and their "Expire Date" and "Expire in" Time in Order
Ex:
================Vip List 1/1
Cuz /vip status <player> for every admin in the game isnt enough.
Great Plugin and Thanks :)
@Villain79
in the current version this is also possible:
this has the same function like an implemention of "vip code <Code> <Player>"
HI. A worthwhile option, Use code via console eg. vip code <CODE> <PLAYER>
Very please add this option in the future, Because I have the script Web Store. The player has the choice of whether to use the code in the game or on the website
Uploaded 1.8.1 (Fixed some Bugs only)
I hope, this will fixxed all Bugs :)
-1.8.1 wurde hochgeladen (Nur ein paar Bugs gefixxt)
Hoffe, dass damit jetzt alle Bugs beseitigt sind
hi lordi :D
hab jetzt auch mal auf 1.8 updatet... läuft bei mir alles bestens. ich überlege mittlerweile auch das mit paypal einzubinden... mal schauen.
eine sache... gibt es bereits eine language-datei auf deutsch?
Gruß Dave
@lordsill
okay danke schon mal, kann man auch mehrere commands einsetzen?
z.b.: Command: Set: manuadd {PLAYER} {GROUP} welt 1 Set: manuadd {PLAYER} {GROUP} welt 2
und
Command: Enable: true Commands: manuadd {PLAYER} {GROUP} welt1 Comannds: manuadd {PLAYER} {GROUP} welt2?
Hey lordsill
I tested with my players and i founded 2 problems: 1- When a player put the code, the plugin change the group correctly, but it doesn't reset when the time's out. Even if he log out and reconnect. 2- The group change only works if I set up the VaultGroupManage to false. 3- When I type /vip info, nothing happens.
Here is the log of my console when the playervip show it:
------------------ 20.06 16:50:36 [Server] INFO at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53) 20.06 16:50:36 [Server] INFO at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftTask.run(CraftTask.java:53) 20.06 16:50:36 [Server] INFO at de.lordsill.playervip.playervip$1.run(playervip.java:1416) 20.06 16:50:36 [Server] INFO at de.lordsill.playervip.playervip.CheckVIP(playervip.java:1430) 20.06 16:50:36 [Server] INFO at de.lordsill.playervip.playervip.CheckVIP_MYSQL(playervip.java:1646) 20.06 16:50:36 [Server] INFO at net.milkbowl.vault.permission.Permission.playerInGroup(Permission.java:486) 20.06 16:50:36 [Server] INFO at net.milkbowl.vault.permission.plugins.Permission_PermissionsBukkit.playerInGroup(Permission_PermissionsBukkit.java:161) 20.06 16:50:36 [Server] INFO Caused by: java.lang.NullPointerException 20.06 16:50:36 [Server] INFO at java.lang.Thread.run(Thread.java:722) 20.06 16:50:36 [Server] INFO at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 20.06 16:50:36 [Server] INFO at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 20.06 16:50:36 [Server] INFO at org.bukkit.craftbukkit.v1_5_R3.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:56) 20.06 16:50:36 [Server] SEVERE org.apache.commons.lang.UnhandledException: Plugin PlayerVIP v1.8.0 generated an exception while executing task 27 20.06 16:50:36 [Server] SEVERE Exception in thread "pool-1-thread-1205"---------- This is my config.yml:----------ConfigFileVersion: 3 GlobalOptions: Interval: 60 WebURL: localhost/buyvip/ Language: en EnableFeatures: MySQL: true SQLite: false Log: true Metrics: true PlayerJoinCheck: true Updater: true VIPEconomy: true VIP: Group: Groups: 3 Reset: default Group1: VIP Group2: ProVIP Group3: PremiumVIP Command: Enable: true Commands: '' EConomy: BuyPrice: 100.0 ReceiveMoney: 30000.0 Features: Ganhe 30.000,00 minegolds; Tapete magico para voar no servidor; guarde XP em garrafas; teleporte adicional com o /work e /setwork; ganhe um kit VIP de itens com o comando /kit vip MySQL: Host: localhost Username: 'mc_1056' Password: 'yWKZUJQfjxKDmEQq' Database: 'mc_1056' Port: 3306 Vault: VaultGroupManage: false Command: Set: permissions player setgroup {PLAYER} {GROUP} Reset: permissions player setgroup {PLAYER} {GROUP}
@EvilImperator
Diese Commands sind Zusatzbefehle, die ausgeführt werden sollen...
Falls du kein Vault verwendest oder nicht willst, dass PlayerVIP Vault verwendet, unten in der config.yml VaultGroupManage: false setzen, und darunter dann die Befehle für das Setzen und dem entziehen des Ranges definieren, also so etwa:
@xCnB
In diesem Fall bringt mir die Fehlermeldung wenig, besser wäre es, wenn du mir noch sagst, wie der Code generiert wurde? Weil laut Fehlermeldung wurde wohl keine Gruppe gespeichert, die dem Code zugeordnet werden kann
Wie kann ich den User, der einen code eingegeben hat, in eine Gruppe setzen und da auch selbstständig vom Programm aus?
Command: Enable: true Commands: manuadd {PLAYER} {GROUP}
Dies steht so bei mir drin, dennoch will er diesen befehl nciht eingeben
Danke, gestern war das bei mir noch nicht angezeigt. Mit dem Timestamp Feld habe ich wohl irgendwo einen Fehler gemacht, sorry ;)
Leider bekomme ich beim Ausführen von /VIP code <code> immernoch folgenden Fehler:
@xCnB
1.8 ist bereits released... (und wurde auch gestern freigeschaltet)
Und es verwendet den normalen timestamp (jedoch in der Datenbank als VARCHAR eingetragen). Der Timestamp selbst wird vom Plugin generiert...
Wie ist das Expire-Feld in der Datenbank formatiert und warum wird nicht der Feld-Typ timestamp benutzt? Und wann kann man mit dem Update rechnen? Habe die selben Probleme wie der Poster vor mir.
@TheAcastus
Error will be fixxed in next Update.
/vip code <code> has no permission, because all member have normally the permission, to get vip (if they have a code), and so i does not created a permission for this.
Where is permission for /vip code <code> ? or you forget the permission?
Is the permission: playervip.code ?
And I have a problem, there is a server log: http://pastebin.com/QE5GMJ9e
Can you help me?
I using SQLite and ingame i get this error: "An internal error occured while attempting to perform this command" and I am OP, where is the problem?