> For the complete documentation index, see [llms.txt](https://obey.gitbook.io/wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://obey.gitbook.io/wiki/coinflips/configuration.md).

# Configuration

Default config.yml file for CrownCoinFlips and option explanations.

## Default config.yml

```yaml
#
# Thank you for purchasing CrownCoinFlips!
# If you have any questions, suggestions or need help, please do not hesitate and
# join our discord: https://dsc.gg/crownplugins to ask for help!
# We are there to assist you.
#

# you can obtain your license in our discord! https://dsc.gg/crownplugins
# paste your license key in here
license: paste-here

# enable this to send various messages to console
debug-mode: false

# data storage settings
storage:
  method: h2 # you can choose between h2 and mysql and mariadb
  data:
    host: crownhost
    database: crowndatabase
    username: crownuser
    password: "crownpassword"

    # sets the maximum size of the MySQL connection pool.
    #   https://github.com/brettwooldridge/HikariCP/wiki/About-Pool-Sizing
    pool-settings:
      maximum-pool-size: 10
      minimum-idle: 10
      maximum-lifetime: 1800000
      keepalive-time: 0
      connection-timeout: 5000

coinflip:
  # the amount the plugin takes of from the final winning amount
  # note that this is taken from the final amount, so if a coinflip is 5.000, the final amount will be 10.000, so at 20% it will take 2.000 away
  tax-percentages:
    default: 20
    permissions: []

  confirm-join: true # this will prompt the user to confirm joining a coinflip

  sign-input: # this will use a sign instead of chat for bet input
    enable: false
    type: CHERRY_SIGN
    color: BLACK

  min-spins: 20 # the min amount of spins a coinflip will do
  random-spins: 24 # a random amount of spins ranging from 1 - x will be added on top
  min-amount: 500 # the min amount needed to create a coinflip
  max-amount: 1000000 # the max amount a coinflip can be
  broadcast-messages: false # set this to true if you want the coinflip messages to be broadcasted

custom-currency: # this allows you to use external currency systems without vault
  enable: false
  raw-placeholder: "%your_placeholder%"
  command:
    add: "custom-currency add %player% %amount%"
    remove: "custom-currency remove %player% amount"
```

## What these values mean

### license

* `license`: Your CrownPlugins license key. Can be generated in our Discord using `/license`.

### debug-mode

* `debug-mode`: Toggles verbose console logs for debugging purposes.

### storage

* `storage.method`: Choice of database storage (`h2`, `mysql`, or `mariadb`).
* `storage.data`: Connection details for external MySQL/MariaDB databases, including Hikari connection pool options.

### coinflip

* `coinflip.tax-percentages.default`: The standard house tax percentage taken from the final winnings.
* `coinflip.tax-percentages.permissions`: Define permission-based tax rates. The lowest tax rate a player has permission for is applied when calculating winnings.
* `coinflip.confirm-join`: Toggles whether players see a confirmation GUI (Green/Red) before joining a coinflip.
* `coinflip.sign-input.enable`: If true, opens a virtual sign editor to enter wager amounts instead of prompt messages in chat.
* `coinflip.sign-input.type`: The Material type of the virtual sign (e.g., `DARK_OAK_SIGN`, `OAK_SIGN`).
* `coinflip.sign-input.color`: The DyeColor of the text displayed on the virtual sign.
* `coinflip.min-spins`: The base number of shifts in the GUI animation.
* `coinflip.random-spins`: An additional random number of shifts added to the spin animation.
* `coinflip.min-amount`: The minimum wager amount a player must bet to create a coinflip.
* `coinflip.max-amount`: The maximum wager amount allowed.
* `coinflip.broadcast-messages`: Toggles server-wide broadcast messages when games start or end.

### custom-currency

* `custom-currency.enable`: Toggles whether the plugin uses a custom currency instead of Vault economy.
* `custom-currency.raw-placeholder`: The PlaceholderAPI placeholder that returns the player's custom balance.
* `custom-currency.command.add` / `remove`: Server console commands executed to give or take the custom currency.
