How to play guide for BoxBot

This page will serve as a basic how to play guide for BoxBot.

## Setup

BoxBot can be invited to a server by members who have the *Manage Server* permission using this invite link.

When first adding the bot to your server, you should ensure that it has all of these permissions enabled. These permissions should be enabled for BoxBot's role. Please avoid disabling these permissions for channels - even ones you wish to disable BoxBot's commands in.

* Read Messages
* Send Messages
* Manage Messages
* Read Message History
* Attach Files
* Add Reactions
* Use External Emojis
* Embed Links

If you wish to disable BoxBot's commands in a particular channel, server admins can use the `b#togglecommands` server command to toggle commands on/off in that channel.

## Gameplay

All actions are done via commands. All commands (with the exception of BoxBot staff commands and server admin commands) will be used with the bot's default prefix: `b!` (although the default alternative prefix can also be used: `b1`)

### How to get boxes

* One rare\_box can be claimed every day via the `b!daily` command.
	+ There's also a 7% chance that you will receive two *rare\_box* instead of one!
* One ultra rare box can be claimed every 7 days via the `b!weekly` command.
* One rare box can be claimed every 12 hours by voting for the bot on discordbots.org. The link can also be found via the `b!claim` command.
* You have the chance to win a variety of boxes (and money) from the `b!trivia` command. This command will ask you a multiple-choice question where you can then choose one of the four answers by selecting one of the emoji reactions added to the message by the bot.
* One common\_box can be received and automatically opened every hour via the `b!unbox` command.

All of the above commands have cooldowns. Your cooldowns can be checked via the `b!cooldowns` command.

### How to open boxes

You can open a box with the `b!use` command. Simply type the command and enter the name of the box afterwards, for example: `b!use common_box` will open a common box.
Don't worry about typing the item name exactly - the bot can autocorrect item names, and even commands!

Opening a box will give you a random item of that tier or higher.

#### Drop Rates

**common\_box**

* Common: 64%
* Uncommon: 22%
* Rare: 8.5%
* Ultra Rare: 5%
* Epic: 0.5%

**uncommon\_box**

* Uncommon: 75%
* Rare: 16%
* Ultra Rare: 8%
* Epic: 1%

**rare\_box**

* Rare: 70%
* Ultra Rare: 28%
* Epic: 2%

**ultra\_rare\_box**

* Ultra Rare: 95%
* Epic: 5%

### Opting

In order to use certain items in certain servers, you must be opted into that server. To opt into a server, use the `b!optin` command.
While opted in you can attack and steal from other users. But be careful, while opted in you can also be attacked and stolen from!

If you no longer wish to participate in a server, you can opt out with the `b!optout` command.

### Item Usage

Items can be used via the `b!use` command. Different types of items will do different things.

#### Item Types

There are currently **eight** different item types. Those are:

* Melee weapon
	+ Used to directly attack other players. Are weaker than guns but have a lower cooldown time.
	+ Note that 'throwable' weapons (such as shurikens) presently fall under this category.
* Guns
	+ Used to attack other players. Requires ammunition in order to use. The ammunition is consumed but the gun is kept.
	+ Note that any weapons that use ammunition fall under this category. This includes *wooden\_bow* (which uses *wooden\_arrow* as ammunition).
* Healing items
	+ Used to heal yourself for an amount within a certain range (the range is different for each healing item).
* EXP items
	+ Used to increase your experience points.
* Boxes
	+ Gives the user a random item upon use.
* Money items
	+ Gives the user an amount of money within a certain range (the range is different for each money item).
* Shields
	+ Adds an extra layer of HP, however shield HP cannot be recovered.
* Magnets
	+ Used to steal money from a random player in the server - a random amount from 1% to 10% of their currency will be stolen.
	+ Note that there is currently only one magnet in the game.

For items which have a range of values, those values can be viewed with the `b!item` command.

#### Attacking

the order to attack, the server you are attacking in must have at least three users who meet the following requirements:

* Must have at least $9,000.00 in cash and/or at least $9,000.00 worth of items in their inventory.
* Must be opted in.
* Must not have their death shield active.

When attacking with a gun or melee weapon, the bot will give you the choice between 3 random users in the server. You will then have twenty seconds to choose the player you wish to attack; if you take too long to select a user, the bot will pick a random user for you.
After deciding which user you wish to attack, the bot will generate a random amount of damage (within your weapon's range) which will then be inflicted on your target. If your target's HP drops below 0, that will kill the user and begin the looting process.

Once the looting process has begun, you will steal 70% of that user's money and the bot will begin cycling through your target's inventory 3 items at a time - from highest tier to lowest tier. You will have the choice to select one of these items which will then be stolen from that player.
If all 3 of the items it would display to you are the same, the bot will automatically pick one of the items and move on to the next three.

### Other Commands

* `b!help` - Displays an interface that allows users to view commands, items, and rules.
* `b!coinflip <amount>` - Flips a virtual coin with a 50/50 chance of losing or doubling the amount of money bet. The max amount a player can bet is $250,000.
* `b!trade <@player name>` - Opens a trading interface where two users can add items or money to trade with each other.
* `b!notify` - Toggles whether or not the bot will DM you when you get attacked or have money stolen from you.
* `b!inventory` - View your inventory (includes items, money, health, and whether or not you have a shield active).
* `b!sell <item name> x1` - Sell 1 of <item name>.
* `b!buy <item name> x1` - Buy 1 of <item name>.

For a list of all commands, use the `b!commands` command or check out the Commands page on this wiki.