About VIP Tokens
Monetize and fund your server!
This plugin will allow players to purchase a token that represents a current group on your server, such as VIP, which can be traded/sold/gifted to other players in-game.
It is functionally similar to bonds in Runescape, Plex in Eve Online and WOW tokens in WOW.
The main benefit of this plugin is that it will allow your more generous donators to purchase tokens and sell them in game for items/resources etc to players who otherwise would not financially support the server.
The RP server I run has been a shining success for this, increasing our VIP count by almost 50%.
Features:
- Customizable tokens to suit most servers monetary requirements.
- Scalable quantities of VIP perks.
- A GUI to manage the show the players token balance, perks that each token provides, and end date of their subscription, all of which is configurable.
- Supports automatic payments via platforms such as Tebex, allowing for complete automation of purchasing.
- Automatically adds and removes the player from the designated oxide group. Days are completely configurable via the config file.
- Fail safes to prevent abuse, restrict the amount of VIP time for each token (configurable), and prevent overlapping of existing group access (configurable).
- Can optionally run a console command in addition to/instead of adding a player to an oxide group.
Update (not mentioned in the video):
- Added the ability to run a command in addition to/instead of adding a player to a VIP group.
- Added the option to trigger a hook when a token is consumed (for developers).
You will need to delete your old config and load the new config in order to use these new features.
Chat commands
Command: givetoken
Arguments: <token id> <optional: quantity>
Example: /givetoken vip 10 -this would give you 10x tokens called "vip"
Permissions: viptoken.admin
Command: removevip
Arguments: <player name/id> <token id>
Example: /removevip "new guy" vip - would remove the vip token from a player matching the name "new guy". Use quotation marks when inputting names with spaces, otherwise they aren't required.
Permissions: viptoken.admin
Command: tokenmenu
Arguments: none
Example: /tokenmenu
Permissions: none
Watch the video for more information on the plugin, how it works and how to set it up on a platform such as Tebex.
Token links from my video:
- Thumbs up - https://steamcommunity.com/sharedfiles/filedetails/?id=2544603563
- Recycler token - https://steamcommunity.com/sharedfiles/filedetails/?id=2544601457
- VIP T1 - https://steamcommunity.com/sharedfiles/filedetails/?id=2529344523
- VIP T2 - https://steamcommunity.com/sharedfiles/filedetails/?id=2529343385
- VIP T3 - https://steamcommunity.com/sharedfiles/filedetails/?id=2529344741
- Bitcoin - https://steamcommunity.com/sharedfiles/filedetails/?id=2530111676
The skin ID is the numbers at the end of each URL.
Command syntax for your payment platform:
addtoken <password> <steam ID> <tier>
An example of a basic vip setup for tebex would be:
API
This function can be triggered if the configuration has hook = true. It will fire when the token is successfully consumed.
void OnTokenConsumed(BasePlayer player, string tokenKey) { Puts($"{player.displayName} consumed a {tokenKey} token"); }