Skip to content

Configuration

ItsNotSkyeZ edited this page Jul 18, 2026 · 13 revisions

Configuration · MD

Configuration

EndlessCoinflip uses two config files found in plugins/EndlessCoinflip/:

  • config.yml — Settings, GUI, sounds, gameplay and feature toggles
  • messages.yml — All player-facing chat messages Run /cf reload after making changes — no restart needed. New keys added in updates are automatically merged into your existing files without overwriting anything you've set.

config.yml

Features
```yaml features: bot-battles: true # Enable/disable bot battles join-confirmation: true # Enable/disable the join confirmation screen private-matches: true # Enable/disable private matches entirely ```
Storage
```yaml storage: type: FILE # FILE, SQLITE, or MYSQL

sqlite: file: playerdata.db

mysql: host: localhost port: 3306 database: coinflip username: root password: "" use-ssl: false

 
See the [Database Setup](https://github.com/ItsNotSkyeZ/EndlessCoinflip/wiki/Database-Setup) page for full details.
 
</details>
<details>
<summary><b>Wagers</b></summary>
<br>
```yaml
settings:
  min-wager: 100
  max-wager: 1000000
  max-active-matches: 6
  server-tax-percent: 10  # Percentage cut from pot before paying winner (0 = disabled)
 
# Per-permission max-wager overrides.
# Highest matching value wins; falls back to settings.max-wager if no match.
wager-limits:
  # endlesscoinflip.vip: 5000000
  # endlesscoinflip.mvp: 10000000
Cooldowns & Match Expiry
```yaml cooldowns: enabled: true seconds: 5

match-expiry: enabled: true minutes: 10 check-interval-seconds: 30 # Requires a restart to take effect

 
</details>
<details>
<summary><b>Big Win Broadcasts</b></summary>
<br>
```yaml
broadcast:
  big-win:
    enabled: false
    threshold: 1000000
    message: "&6&l⭐ &e{winner} &6just won &f{amount} &6off &f{loser} &6in a coinflip!"
Sounds
Sound names must match a valid [Bukkit Sound](https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Sound.html) enum value.
sounds:
  win:
    sound: UI_TOAST_CHALLENGE_COMPLETE
    volume: 1.0
    pitch: 1.5
  lose:
    sound: UI_TOAST_CHALLENGE_COMPLETE
    volume: 1.0
    pitch: 1.0
  countdown:
    sound: BLOCK_NOTE_BLOCK_HAT
    volume: 1.0
    pitch: 0.8
    pitch-step: 0.1
  roll:
    sound: UI_BUTTON_CLICK
    volume: 0.5
    pitch: 0.8
    pitch-step: 0.06
GUI
All values support `&` colour codes.
gui:
  main-title: "&0Coinflip"
  color-picker-title: "&0Choose Your Colour"
  match-title: "&0Coinflip &8— &f{wager}"
  # ... see config.yml for the full list of GUI keys
Match History
`gui-size` must be a multiple of 9 (9-54). The bottom row is reserved for navigation.
history:
  max-stored: 200
  gui-size: 54
  title: "&0Coinflip History &8({page}/{pages})"
  date-format: "dd/MM/yyyy HH:mm"
  win-material: LIME_STAINED_GLASS_PANE
  lose-material: RED_STAINED_GLASS_PANE
  previous-slot: 45
  next-slot: 53
Leaderboard
```yaml leaderboard: enabled: true sort-by: total-won # wins, losses, total-wagered, total-won, biggest-win, biggest-loss gui: false # true = GUI leaderboard, false = chat leaderboard entries-per-page: 10 ```
Join Confirmation
```yaml join-confirm: title: "&0Confirm Join" confirm-slot: 3 confirm-material: LIME_STAINED_GLASS_PANE confirm-name: "&a&lConfirm" cancel-slot: 5 cancel-material: RED_STAINED_GLASS_PANE cancel-name: "&c&lCancel" ```
---

messages.yml

All chat messages support & colour codes.

Placeholders

Placeholder Description
{wager} The wager amount
{opponent} The opponent's name, or "Coinflip Bot"
{amount} A generic amount (e.g. pending payout)
{min} Minimum wager
{max} Maximum wager
{time} Cooldown seconds remaining
{wins} Player's win count
{losses} Player's loss count
{wagered} Total amount wagered
{won} Total amount won
{win} Biggest single win
{loss} Biggest single loss
{winner} Winner's name (big-win broadcast only)
{loser} Loser's name (big-win broadcast only)
{host} The match host's name
{target} The invited player's name
{color} A wool colour's chat colour code
{colorName} A wool colour's display name
{count} Countdown number (5-1)
{ratio} A player's win:loss ratio
{page} Current page number
{pages} Total page count
{rank} Leaderboard position
{value} Leaderboard sorted stat value
{type} "Player" or "Coinflip Bot" (history only)
{date} Formatted date (history only)
{biggestWin} Biggest win (leaderboard lore only)
{biggestLoss} Biggest loss (leaderboard lore only)

Multi-line Messages

The help and stats keys support multi-line lists:

help:
  - "&b&lEndlessCoinflip &8— &7Commands"
  - "  &b/cf &8— &7Open the coinflip lobby"
 
stats:
  - "  &7Wins&8: &f{wins}"
  - "  &7Losses&8: &f{losses}"

Colour Codes

Code Colour
&a Green
&b Aqua
&c Red
&e Yellow
&f White
&7 Gray
&8 Dark Gray
&l Bold
&m Strikethrough

Clone this wiki locally