# CalcBot

## Welcome!

You have arrived at the CalcBot documentation repository, where you can learn about CalcBot's features, or try and troubleshoot issues you are having with CalcBot.

Get started by selecting one of the topics below, or scroll down a bit more to see the quick start guide. Feel free to contact me on Discord (POOLED#9848) or join my **very** chill support server [here](https://discord.com/invite/3m7dK92).

* **CalcBot**
  * [Commands](/calcbot/reference/commands.md)
  * [Settings](/calcbot/settings.md)
  * [Glossary](/calcbot/reference/glossary.md)
* **Commands**
  * [Calculate](/calcbot/commands/calculate.md)
    * [Reference](/calcbot/reference/calculate.md)
  * [Formula](/calcbot/commands/formula.md)
  * [Graph](/calcbot/commands/graph.md)
  * Vector2
    * [Reference](/calcbot/reference/vector2.md)
  * Vector3
    * [Reference](/calcbot/reference/vector3.md)
* **CalcBot development preview**
  * [Introduction](https://github.com/ElectrifyPro/calcbot-docs/blob/main/preview/introduction.md)

You may view our Privacy Policy [here](/calcbot/privacy.md).

## Quick start

### Default prefix

The bot's default prefix is **`c-`**. You can change it by running `c-admin setprefix <prefix>`.

### Basic calculator usage

The most commonly used CalcBot command is `c-calculate`, which you can also run with the shorter alias, `c-c`. Simply type `c-calculate` followed by an expression, like `1+1`, to get the result, for example:

```
> c-calculate 1+1
2

> c-calculate 3*4
12

> c-calculate (11-4)*2
14
```

CalcBot's calculate command supports even more features like variable defining, complex numbers, and a large library of functions. You can find a full list of these features at [this](/calcbot/commands/calculate.md) page.

### Required permissions

Here is a list of permissions CalcBot needs to operate properly:

* **Read messages**
* **Send messages**
* **Attach files** - CalcBot generates and attaches images when using `c-graph` and `c-regression`. Disallowing this permission will break those commands.
* **Read message history**
* **View channel** - This permission is used to view voice channels. This is not needed by CalcBot at all, however it is automatically enabled when allowing the **Read messages** permission.

Enabling these permissions will enhance CalcBot's functionality, however they are **not** required:

* **Manage messages** - This allows CalcBot to delete user messages as they provide input while using the `c-formula` command to save space.

## Does something confuse you or not work the way you expect?

Please use the `c-report` / `c-anonreport` command, or come let me know at my [support server](https://discord.com/invite/3m7dK92)! It's incredibly easy and takes less than 10 seconds to let me know of problems. However, very few users generally make reports, leading me to believe CalcBot is flawless, which definitely isn't true (yet).

Please also be as detailed as you can in your request / report, since I unfortunately don't possess mind-reading abilities (yet). One of my old requests came from a user not in my support server and it simply read "make the graphs interactive". As you can imagine, this request remains unfulfilled.

Here are some other questions some users have had:

### CalcBot doesn't respond to a given command.

That isn't a question, but a lot of things could've gone wrong if this happens. One of the most common issues is that the resulting message was too long (over 2000 characters); in this case, Discord will not allow the message to be sent, and CalcBot will not respond to your command. Another possible issue could simply be there was an error during the computation of the command, but there was no reply to let you know of the error. In either case, this should be reported using the feature request commands.

### CalcBot gives an incorrect answer for a command.

That also isn't a question, but what?? Report it with `c-report / c-anonreport`, fast!

### Do you actually implement users' feature requests?

I've implemented and fixed many feature requests and reports by users! All feature requests are shown in the #feature-request channel in my [support server](https://discord.com/invite/3m7dK92), and requests that I've completed are marked with a checkmark emoji.

### Add inequalities to graphing.

I already did


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://chillant.gitbook.io/calcbot/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
