# Katalog obchodů

> Všechny obchody z Create Table Cloth na serveru v jednom seznamu s hledáním: co prodávají, za co, čí jsou a kde, s tlačítkem „ukázat na mapě“. Novinka v 0.3, ve výchozím stavu vypnuto.

Source: https://stygion.eu/cs/docs/keystone/market
Updated: 2026-10-25

Novinka v 0.3, modul `market`, ve výchozím stavu vypnutý. Keystone v načteném světě najde každý obchod, který hráči postavili z **Create Table Cloth s cenovkou**, a vypíše ho: co prodává, za co, kolik zbývá, čí je a kde. Nic se tu nekupuje; nakupuje se dál u ubrusu.

## Jak se obchody hledají

Každých `look-every` (výchozí 5 minut) se projdou blokové entity načtených chunků. Obchod zůstane v seznamu i po odnačtení chunku a zmizí, když se jeho chunk načte bez něj, nebo když ho nikdo neviděl `forget-after` (30 dní). Čtou se jen načtené chunky; kvůli katalogu se nic nenačítá.

## Pro hráče

- `/market [item]` vypíše nejbližší obchody do chatu (`listed`, výchozí 8) se vzdáleností a směrem.
- S klientskou částí Keystone otevře `/market` katalog: hledání, item vykreslený jako ve hře, cena, zásoba nebo vyprodáno, majitel, svět, souřadnice, vzdálenost a směr.
- **Ukázat na mapě** (`map`, výchozí `auto`): bod v JourneyMap, jinak ve FTB Chunks, přes jejich veřejné API, když hráč jednu z nich má (ani jedna není závislost), a vždy paprsek ve světě a šipka na HUD. `journeymap`, `ftbchunks`, `beam` nebo `off` vybere jen jedno.
- Oprávnění `keystone.market` (ve výchozím stavu má každý).

## Pro majitele serveru

- `/keystone market hide` / `show` v okruhu 8 bloků od obchodu ho z katalogu skryje nebo vrátí (`keystone.market.manage`).
- `GET /v1/market` (scope `players.read`, `?item=` část id itemu) dá stejný seznam webu, botovi na Discordu nebo webové mapě.
- `webhook`: https adresa, které se při změně pošle celý katalog jako JSON (POST), s `webhook-key` jako Bearer token. Prázdné nikam nic neposílá. Adresy uvnitř sítě se odmítnou, pokud majitel nezapne `allow-local`.
