# Get started

{% hint style="info" %}
ColorCodes are always defined with a & character. A list of possible ColorColdes can be found [here](https://htmlcolorcodes.com/minecraft-color-codes/). Please use the CHAT CODE column from the displayed table and replace the § character with the & character.
{% endhint %}

If you have downloaded the CoinsAPI and started the server, a folder named *CoinsAPI* should now have been created in your plugins folder. Now open this folder and edit the `config.yml`.

## Enter license

Add your private license in the `config.yml`. If you don't have one yet, open a support ticket on my discord server.

{% hint style="info" %}
Why do I need a private license? The answer is [here](https://wiki-en.herrtechniker.eu/general/lizenz)
{% endhint %}

## Database

Set the database type in `config.yml`.

### MySQL

Set `database: "mysql"` to store your data in a `MySQL` database. You can access the data across servers. To connect to MySQL database open the file `mysql.yml` and enter your MySQL data.

{% code title="mysql.yml" lineNumbers="true" %}

```yaml
mysql:
  HOST: localhost
  PORT: '3306'
  DATABASE: database
  USER: root
  PASSWORD: password
```

{% endcode %}

### SQL

Set `database: "sql"` to save your data locally on the server. This data can then only be accessed by this one server. To do this, the plugin creates a folder called `database` in the plugins folder. The database file `database.db` is created in this folder.

## File System

There are 2 different file systems. These are explained below.

### single

The `single` file system simply means that all messages of all languages are contained in one file. Here is an example from the CoinsAPI:

## Default language

### With LanguageAPI

If you have my LanguageAPI for Spigot, you can omit the item `defaultLanguage: "english"`, as the language of the player is managed via this. Just make sure that you have set all messages in the languages that are set in the `config.yml` of the CoinsAPI.

#### single-filesystem

For example, if you support the languages German, English and Spanish, in this case you have to copy the messages to e.g. English and paste it at the end of the file and translate each individual language.

#### multi-filesystem

Just as with the single file system, you only need to copy the `english.yml` file, for example, and change it to the name of the language. In the example with the Spanish language in `español.yml`. (If you have set the language as *español* in the `config.yml` of the LanguageAPI)

{% hint style="info" %}
Otherwise take another look at the language setting in the LanguageAPI. [Click here](https://wiki-en.herrtechniker.eu/coinsapi/broken-reference)
{% endhint %}

### Without LanguageAPI

However, if you have not purchased my LanguageAPI, you can set the default language of the CoinsAPI under `defaultLanguage: "english"`. This means that every player will receive all messages from the plugin in this language.

## payCommand

If this setting is set to `true`, players can send each other their money.

## Prefix

The prefix is always set by the CoinsAPI before each message. You can change the prefix by changing the line `prefix: "&7[&fCoin&6System&7]&r"`.

## Currency

You can set the name of the currency on your server under the following points.

```yaml
singleCurrencyAmount: "coin"
multiCurrencyAmount: "coins"
```

## resetSize

Here you can set the value to which the player's money should be set when an admin resets it.

```yaml
resetSize: '0.00'
```

## coinsOnFirstJoin

Here you set how high the initial amount of a player should be when he joins your network for the first time.

```yaml
coinsOnFirstJoin: '0.00'
```

### Default configuration <a href="#standard-konfiguration" id="standard-konfiguration"></a>

{% code title="config.yml" lineNumbers="true" %}

```yaml
# Please insert here your private license.
# If you do not have a private license, please join my Discord-Server to get your own one (link: https://discord.herrtechniker.eu).
license: ""

# Insert "mysql" to use mysql (cross-server access) or insert "sql" to use local database (only local servers have access)
database: "mysql"

# if LanguageAPI NOT enabled, what is the default-Language for this system
defaultLanguage: "english"

# if set true, the user can pay each other the coins
payCommand: false

prefix: "&7[&fCoin&6System&7]&r"

# set the name of currency for your server.
# will replace in messages with placeholder %CURRENCY%
# Single is for singular (for example 1 coin)
# Multi is for plural (for example 2 coins)
singleCurrencyAmount: "coin"
multiCurrencyAmount: "coins"

# set the amount for the reset (when an admin reset the coins for a player)
resetSize: '0.00'
# if a player join the first time, the player gets ... coins
coinsOnFirstJoin: '0.00'
```

{% endcode %}

### Command <a href="#kommando" id="kommando"></a>

#### Syntax <a href="#syntax" id="syntax"></a>

| /coins                            | --/--             | See your account balance                                                           |
| --------------------------------- | ----------------- | ---------------------------------------------------------------------------------- |
| /coins help                       | --/--             | Show all possible commands                                                         |
| /coins see \<Spieler>             | coinsapi.seeother | See the account balance of another player                                          |
| /coins add \<player> \<amount>    | coinsapi.add      | Add a certain amount to a player's account                                         |
| /coins remove \<player> \<amount> | coinsapi.remove   | Remove a certain amount from a player's account                                    |
| /coins set \<player> \<amount>    | coinsapi.set      | Set a player's account balance to a certain amount                                 |
| /coins reset \<player>            | coinsapi.reset    | Reset a player's account balance (see [here](#resetsize))                          |
| /coins reset \<player> \<amount>  | coinsapi.reset    | Reset a player's account balance to a certain value                                |
| /pay \<player> \<amount>          | coinsapi.pay      | Send a player a certain amount (you can find more information [here](#paycommand)) |
| /coins pay \<player> \<amount>    | coinsapi.pay      | Send a player a certain amount (you can find more information [here](#paycommand)) |
