---
# System prepended metadata

title: Nový systém zakázek + daily questů
tags: [Pixelnest]

---

---
tags: Pixelnest
---
# Nový systém zakázek + daily questů

## Jak tomuto systému budeme říkat?
Jednou z možnosti je zkrátka zůstat při zakázkách. Moc se mi to k tomu ale nehodí a chtělo by to najít jiný, výstižnější název.

## Jak to bude fungovat po teoretické stránce?
- Při progresování hlavní quest linkou se po splnění určitých questů hráči zpřístupní možnost daný quest plnit opakovaně ve formě těchto úkolů.
- V určitých stanovených časových intervalech (například vždy v celou hodinu) se vygeneruje quest pool.
    - V tomto quest poolu bude nejspíše 21 questů celkově (pro vyplnění celého menu).
    - Questy budou nějakým způsobem roztřízené podle obtížnosti a typu úkolů (zabít/přinést atd.) tak, aby vždy pool obsahoval questy z každé obtížnosti a z každého typu
    - Často mohou questy mít taky "multiple objective" = bude třeba vykopat bloky a ty pak odevzdat nebo zabít moby a odevzdat loot z nich.
- Každý hráč si z tohoto quest poolu v průběhu dané hodiny (nebo zkrátka než proběhne další generace) bude moci vybrat 5 (*Možná více?*) questů, které bude plnit.
    - Samozřejmě bude mít na výběr pouze z těch questů, ke kterým v rámci postupu quest linkou bude již mít přístup.
    - Questy, ke kterým přístup nemá, se hráči buď ani nezobrazí, nebo u nich zkrátka bude jako item nastavena Barrier a nebude možné je plnit (*Nějaké názory? Co bude podle vás lepší?*)
- Quest se nebude plnit, dokud jej hráč nepřijme kliknutím na něj.
    - Po kliknutí se už začnou počítat všechny vykopané bloky, zabití mobové atd. a bude možné odevzdat itemy, pokud jsou nějaké pro splnění třeba.
- Rozhodne-li se hráč, že přijatý quest plnit už nechce a chce zvolit jiný, bude mít možnost daný quest opustit a zpřístupní si tak pro danou hodinu nový "quest slot".
    - V takovém případě se vyresetují i jakékoliv nasbírané statistiky a pokud by se hráč ke questu znovu vrátil, bude muset začít odznova.

## Obtížnosti úkolů
### Very easy
- Kategorie, která bude zahrnovat především úkoly pro úplné začátečníky.
- Například vykopání/odevzdání Cobblestonu
- Nebude zde nejspíše příliš velká variace questů, takže bude zabírat pouze **1 quest slot**

### Easy
- O něco pokročilejší questy, ale stále jednoduché
- Může se zde vyskytnout úkol na zabití standardních hostile mobů (Zombie atd.)
- Může obsahovat úkoly spojené s farmařením
- Budou nejspíše zabírat **4 až 5 quest slotů**

### Medium
- Zde se budou nacházet questy plnitelné už při nějakém solidním postupu, kdy má hráč přístup ke zvířatům jako zdroj potravy a má nějaký přísun materiálů.
- Tyto questy budou zabírat nejspíše největší část quest poolu - **8 až 10 quest slotů**

### Hard
- Zde přijdou na řadu questy na zabíjení obtížnějších nepřátel (Endermani, Blazové atd.)

### Very hard
- Není jisté co zde přijde. Možná jednoho dne, pokud budeme mít něco jako dungeony, by se tato kategorie mohla vyplnit.

## Typy úkolů
Zde jsou typy objectivů pro jednotlivé questy, které máme či bychom po otestování mohli mít k dispozici. Neznamená to však, že všechny questy budou buď pouze o odevzdání itemů, nebo zabití mobů. Jednotlivé typy úkolů bude možné do jediného questu zkombinovat jako "multiple objective".

### Bring
- Nejzákladnější ze všech úkolů.
- Cílem je nasbírat určité množství itemů a odevzdat jej výměnou za odměnu. (v podstatě si quest giveři od hráčů koupí itemy).

### Kill
- Zabití určitého množství specifických mobů. Ať už friendly nebo hostile.

### Break
- Vykopání specifických bloků.

### Fish out
- Vylovení specifického itemu / jakéhokoliv itemu z vody.
- *Je třeba otestovat, zda tato funkce půjde zprovoznit.*

## Množství podmínek objectivu
- Aneb kolik mobů bude třeba pro splnění úkolu zabít, kolik bloků vykopat atd.
- Když se na to podíváme z hlediska reality, ne vždy potřebují lidé přesně to stejné množství stejného produktu. Množství, které budou po hráčích požadovat, se tedy bude dynamicky měnit podle intervalu zadaného v configu.
- Odměna se bude odvíjet od počtu zabitých mobů či jiného objectivu, který zrovna v daném questu bude vyžadován.

## Typy odměn
- Hlavní odměnou v téměř každém případě budou nejspíše Silvery (herní měna), za kterou si pak už hráč může koupit, co chce.
- Byla by ovšem i možnost odměňování například v podobě itemů.

## Množství odměn
Zde je uvedených několik možností, jak řešit odměňování za questy. Ve finále bude třeba vybrat jednu z nich, případně nějakou zcela jinou, pokud se objeví.

### a) Statické odměny
- Každý quest bude mít v configu předem jasně definované, kolik silveru, případně kolik itemů, hráč za splnění daného úkolu obdrží.
- Odměny by tak nicméně byly velmi jednotvárné a byl by mnohem zřetelnější rozdíl v tom, který quest se vyplatí víc a který ne, čímž by se taky vyskytly další problémy při balancování.

### b) Předem vygenerované dynamické odměny
**Náš favorit** - odměny nebudou příliš jednotvárné a nebude tak nutně existovat jediný nejvýhodnější quest
- V configu bude zadaný určitý interval, který udá, jaké bude minimum a maximum množství dané odměny.
- Při generaci quest poolu se pak ke každému questu vygeneruje v závislosti na objectivu (množství mobů k zabití / bloků k vykopání / itemů k odevzdání) odměna podle tohoto intervalu.
    - Všichni hráči budou mít tak odměnu stejnou.

### c) Při splnění vygenerované dynamické odměny
**Nejméně pravděpodobná možnost** - příliš velké zapojení individuálního štěstí
- V configu bude opět zadaný určitý interval, který udá, jaké bude minimum a maximum množství dané odměny.
- V závislosti na objectivu (množství mobů k zabití / bloků k vykopání / itemů k odevzdání) se ale odměna bude generovat až když hráč daný úkol splní.
    - Každý hráč tak bude mít odměnu odlišnou v závislosti na jeho štěstí.

## Možnost dlouhodobých odměn
- Za předpokladu, že budeme schopni přijít s nějakou grandioznější odměnou, je zde možnost odměňovat čilé plnitele questů i dodatečně.
- Například můžeme v průběhu celého týdne počítat, kolik questů z kategorie hard daný hráč celkově splnil a pokud dosáhne nějaké hranice, odměnit jej za to.
- Tuto funkci je třeba dále prodiskutovat.