Setup Guide
It's not hard to set BossShop up :)
First of all you should make sure that you have all needed plugins.
Needed Plugins..
.. if you want to work with Money
.. if you want to work with Permissions
.. if you want to work with Points
.. if you want to work with Timed Commands
.. if you want to be able to open Shops with clicking a specific Item
Configuration
Now you just need to edit the config files!
Useful website: http://yaml-online-parser.appspot.com/. It detects mistakes and allows to directly edit YAML files online.
The main settings look like this:
signs: enabled: true #If enabled you can open the shop via a sign MainShop: menu #Put in the name of your MAIN inventory/gui/shop
You will find a folder named "shops" in your plugin folder. Open this folder. There are different "Shops". Each file will create one GUI with unique Items and settings. All of this Files work the same way:
1. It contains Settings:
ShopName: BossShop #This is the name of the inventory signs: text: '[BossShop]' #This is the text which has to be at line 1 of a BossShop sign (You can put anything (for example a color) in front of this text) NeedPermissionToCreateSign: true #If disabled everybody is able to place/create BossShop signs
2. It contains many different ShopItems.
Every "Shop-Item" has the same structure:
<NameOfShopItem>: RewardType: <reward type> PriceType: <price type> Price: <price> Reward: <reward> MenuItem: <item data in a list> Message: <purchase message> InventoryLocation: <inventory location> ExtraPermission: <The permission you need to buy this "ShopItem> #You can leave this line empty
I'll explain everything step by step.
<Name of ShopItem>
First you need to define the name of the "ShopItem". Here you can put in everything you want. Use something which is easy to understand. This name is not displayed. It's just the virtual "name" or "id" of the "ShopItem".
- Let's pretend you want to sell a dirtblock. Then just name it dirt.
- Let's pretend you want to sell a heal-command executed by the console. Then just name your item "heal".
RewardType
RewardType defines the kind of reward the players will get when they purchase this item. Existing RewardTypes:
- Item (a list of items)
- Command (a list of commands)
- TimeCommand (a list of <time>:<command>. The commands are executed after <time in seconds>)
- Permission (a list of permissions)
- Money (a number)
- Points (a number)
- Shop (Name of a shop. This opens the named shop)
- PlayerCommand (a list of commands which will be executed by the Player)
- BungeeCordServer (Name of a server. Will send the player to the named server)
- So, you want to sell dirt, right? That means you want to sell an Item. Put "item" in this line.
- You want the console to execute the command "heal". What kind of "thing" is this? Right.. a command! Put "command" in this line.
PriceType
PriceType defines the kind of price the player has to pay to get this item. Existing PriceTypes:
- Money (A number)
- Points (A number)
- Exp (A number (meant is the Level))
- Item (A list of items)
- Free (Nothing. It's free!)
- What do you want the price of your dirt to be? What about 2 Exp Levels? That sounds good, doesn't it? Just write "exp" in this line.
- So you want to sell healing for money? Good idea! Write "money" in this line.
Price
Price defines the price of your item. It can be a number/a list of items. That depends. If you chose money/points/exp as PriceType, then you need to put a number in here. Else you need a list of items.
- You chose Exp as PriceType and you want the price to be 2 Levels. Just fill in "2" here.
- You chose money as PriceType. 1000 Money is a good price. Fill in "1000".
Reward
Reward defines the "thing" you get when you purchase this item. It can be a number/a list of permissions/a list of commands/a list of items etc. That depends.
- You want that players get dirt when they purchase this item. Just put "ItemData" in here.
- You want that the console executes the heal command when somebody purchases this item. Just write "heal %name%" in this line.
MenuItem
This is the item which is visible in the GUI/Menu. You can define it's name/lore/durability/enchantments etc. Just put in "ItemData"
- The basic ItemData of the dirt example would look like this:
MenuItem: - 'type: DIRT' - amount:1
You can also add a lore or edit it's name if you want to:
MenuItem: - 'type: DIRT' - amount:1 - name:&1Dirt - 'lore:&e1 Dirt #&cPrice: 2 Levels'
2. Hmm how shall the "MenuItem" of Healing look like? What about a golden block? That would look like this:
MenuItem: - 'type: GOLD_BLOCK' - amount:1 - name:&1Healing - 'lore:&e1 Heals yourself #&cPrice: 1000 Money'
Message
This is the message which is sent to the player after a successful purchase. If you don't want a message, just leave this empty.
Possible Message Tags:
- %player% - Name of the Player who buys the item
- %itemname% - Name of the ShopItem (v.1.5.5)
- %rewardtype% - The name of the RewardType
- %reward% - The reward of the ShopItem
- %pricetype% - The name of the PriceType
- %price% - The price of the ShopItem
- "&1You bought Dirt! &cYou have %left% Levels left!" would fit here. It tells the player that he bought dirt and displays the amount of Levels the player has left.
- The Heal-plugin already sends a message to the player... you should leave this empty!
InventoryLocation
InventoryLocation defines the location of your item in the "GUI"/Inventory. The first inventory slot is 1 and the last slot of the first row is 9.
- Dirt is important!!! This should be the first item in the shop! Write "1" in here.
- Not many players will buy healing... let's put it in slot "27" (The last slot of row 3)
ExtraPermission
Only players who have this permission are able to buy your item. Leave it empty if you don't want any additional permissions.
- Dirt is too good for normal players! Only donators should be able to buy it! Let's put for example "VIP.BuyDirt" in here. Now, if you want to allow donators to buy this, give them the "VIP.BuyDirt" permission.
- Everybody should be able to buy Healing! Leave this empty.
ServerPinging
Optional feature. Click this Link to get more information about ServerPinging.
Done!
If you followed this steps you should have your own "ShopItem" now :)
Here you can find more informations about "ItemData".
WHERE DO I DOUNLOAD THIS PLEASE HELP!
@fishcannon
http://dev.bukkit.org/bukkit-plugins/bossshop/
Hello,
I run a private server and am using BossShop and Pointshop co-currently.
I have created my own custom "PromoteShop" where members of my Zombie Arena Server Testing Grounds can promote themselves by buying their rank using points. Now, the issue I have come across is that they can "save" up their points for a higher rank by-passing the lower ones. I am asking for help to find a permission or some form of coding to format a way to force players to buy the lower rank first then have to have that rank in order to get a higher rank next.
Here is my code: PromoteShop
@zybranian
My Solution for your problem:
Add an ExtraPermission for each of those ranks.
'rank.thief' to buy the Killer Rank
'rank.killer' to buy the Assassin Rank 'rank.assassin' to buy the Warlord Rank
Then just go to your Permissions Config (or whatever) and add the permissions to the groups.
Thief Rank/Group gets the permission 'rank.thief'
Killer Rank/Group gets the permission 'rank.killer'
Assassin Rank/Group gets the permission 'rank.assassin'
By the way: I haven't tried this plugin myself yet, but I will later.
@blackixx Could you create a folder for boss shop to download? like the config files and stuff. Multicraft doesnt let me download folders. -.- Thanks!
anyone can shed any light on adding clickable voting links please direct me in the right direction
Hello first I love the plugin! Especially the GUI!!! I'm stuck on something though. I have SILOT2 and I wand to add the Lottery Tickets to the store....I am having no luck! Any help would be great! Thx!
Matt
added permission nodes for group price multipliers and copied those same permissions into PEX but they aren't working. Any idea why? Is there an example somewhere of multipliers in use?
I'm confused on how to setup the commands Someone Please Help!
Ok, this plugin is way too confusing with too little documentation on how to configure/use... I really do think it's great and want to use it for my server but with no help, that's next to impossible.
1. /bs always says 'that shop is not existing', but creating a sign works and opens the shop 2. what are 99% of the variables, they're not documented here. How can I show a players balance on an item? 3. My configuration and language files reset all the time, say I change the message and do /bs reload, it's fine. Then say I do /bs reload again, it resets to the old ones.
I have a complete donation system setup with this plugin. 100 yml files. And it only took me 2 days to do. Its not that confusing.
So how to do we get it so that when they buy a permission, it is only for so many uses, or for so long? The settings of "use" don't seem to work. Also, is there a way have the person 'buy' their way into a permissions group?