# Mcast-Campfire

**Campfire** je maly Paper plugin pro pojmenovana mista u ohne.

Admin nebo hrac s opravnenim muze vytvorit pojmenovany ohen primo ve svete. Kazdy ohen se uklada jako vlastni YAML soubor a muze mit vlastni casovani, cooldown, chatovou zpravu, potion efekty, zvuky a scenu.

Ohen se tak muze stat odpocinkovym mistem, prokletym ohnem, RPG lokaci nebo pribehem v mape, aniz by ovlivnoval ostatni ohne na serveru.

## Hlavni vlastnosti

* Pojmenovane ohne ulozene jako samostatne YAML soubory.
* Podpora bloku CAMPFIRE, SOUL_CAMPFIRE, FIRE a SOUL_FIRE.
* Individualni cooldown a aktivacni nastaveni pro kazdy ohen.
* Volitelna aktivace pouze v noci s moznosti prepsani pro konkretni ohen.
* Originalni vestavene sceny **Good** a **Dark**.
* Konfigurovatelne chatove zpravy, zvuky, castice a potion efekty.
* Originalni hudebni motivy ulozene samostatne v YAML souborech.
* Limity poctu ohnu podle opravneni hrace.
* Vicejazycna podpora vcetne cestiny a anglictiny.

## Typicke pouziti

Mcast-Campfire se hodi pro:

* vesnice,
* RPG servery,
* odpocinkova mista,
* dobrodruzne mapy,
* pribehova mista,
* tematicke eventy.

## Prikazy

/campfire help
/campfire reload
/campfire create <jmeno>
/campfire cancel
/campfire list
/campfire show <jmeno>
/campfire remove <jmeno>
/campfire refuse <ohen> add <hraci...>
/campfire refuse <ohen> clear

Hrac s limitem 2 nebo 4 muze ke svemu ohni postupne pridavat hrace, ktere ohen odmitne. Admin muze tento seznam spravovat u vsech ohnu.

## Opravneni

* mcast.campfire.limit.1 - 1 ohen
* mcast.campfire.limit.2 - 2 ohne
* mcast.campfire.limit.4 - 4 ohne
* mcast.campfire.admin - neomezena sprava

Pokud ma hrac vice limitnich opravneni, pouzije se nejvyssi limit.

## Kontrola vlastnictvi pres Pristav

Volitelna kontrola pri startu odesle Pristavu skutecny seznam vlastnenych ohnu. Pristav vrati aktualni limity vlastniku. Campfire zachova nejstarsi ohne do limitu a uplne odregistruje pouze novejsi ohne nad limit. Pocitaji se i vypnute vlastnene ohne; sablona a definice bez vlastnika se nepocitaji.

Kontrola se zapina pomoci `audit.enabled`; dale se nastavi `audit.endpoint` a `audit.token`. Na hostingu musi endpoint pouzivat HTTPS; HTTP je povoleno pouze pro localhost. Identita backendu a jeho runtime kontext se ctou z jiz beziciho pluginu Octopus. Campfire se nikdy nepripojuje do databaze Octopusu a Octopus nijak nemeni.

Existujici ohne dostanou stabilni poradi vytvoreni bezpecnou jednorazovou lokalni migraci. Pri chybe migrace, kontextu, HTTP, odpovedi nebo overeni seznamu se zadny ohen automaticky nemaze. OP a aktivni Campfire admini se hlasi jako vyjmuti z limitu.

## Konfigurace

Ve vychozim nastaveni se ohne aktivuji pouze v noci.

night:
  start-tick: 13000
  end-tick: 23000

Kazdy konkretni ohen to muze prepsat pomoci `activation.night-only`.

Vychozi cooldown je **240 sekund**. Po jeho uplynuti musi hrac u ohne znovu chvili zustat, nez se dalsi scena spusti.

## Sceny

K dispozici jsou dva vestavene scenicke programy:

* good
* dark

Scena **Good** vytvari teplou atmosferu taboraku s originalnim country/folk-rockovym motivem, basou, rytmem, kytarou a banjem.

Scena **Dark** vytvari chladnejsi atmosferu s originalnim syrovejsim country/bluesovym motivem.

Sceny jsou osobni a prehravaji se pouze hraci, ktery konkretni ohen aktivoval. Plugin zamerne nepouziva Minecraft title ani subtitle.

## Hudba

Melodie scen jsou ulozene samostatne:

songs/good.yml
songs/dark.yml

Tyto soubory obsahuji originalni kratke hudebni motivy vytvorene primo pro tento plugin.

## Potion efekty

Potion efekty pouzivaji standardni Minecraft/Paper nazvy a musi byt zaroven uvedene v `allowed-effects` v souboru `config.yml`.

Kdyz scena zacne, vybrany potion efekt zustane aktivni minimalne po celou dobu sceny.

Typicke kladne efekty:

* REGENERATION
* SATURATION
* ABSORPTION
* SPEED
* RESISTANCE

Typicke zaporne efekty:

* SLOWNESS
* WEAKNESS
* DARKNESS
* GLOWING

## Poznamky

* Hraci mohou uhasit pouze vlastni ohne.
* Admin muze spravovat vsechny ohne.
* Ohen musi opravdu horet, aby se aktivoval.
* Odchod a navrat do aktivacni oblasti neradi zadne dalsi sceny do fronty.

## Technicke informace

* Paper **1.21.11**
* Kompatibilni s celou radou **Minecraft 1.21.x**
* Server-side plugin
* YAML konfigurace
* Lehky provoz a nizke naroky na vykon

**Autor:** Mcast
