-
Notifications
You must be signed in to change notification settings - Fork 0
Story engine Analysis
Story engine, aspoň tak, jak byl navrhován, má být v podstatě jen hezký strukturované úložiště proměnných. Stavy různých questů, postav, flagy uznačujicí co hráč už udělal nebo ne etc. Z hlediska UI by bylo rozhodně fajn, kdyby tyto proměnné šlo dělit podle kapitol, možná i podle lokací, kterých se týkají. Jen logicky, v designu, není asi úplně nutno, aby toto členění mělo i nějaký další efekt. Tedy například že by se proměnné jmenovali StoryEngine.Chapter1.Past.Mayor.BlueprintsExamined místo jen BlueprintsExamined. Na samotném designerovi bych nechal pojmenovávání tak, aby nekolidovalo, náš engine by měl jen hlásit, když ke kolizi dojde. A u těchto proměnných by mělo jít udělat i omezení, aby mohli představovat průběh hrou, více dále.
V návrhu bych se inspiroval materiál editorem. V hlavním poli by byl znázorněn průběh kapitoly. Čte se zleva doprava. Začne se v nějakém Entry Node, spojovací čáry pak naznačují podmínky. Tj. aby mohla být proměnná true, musí být splněny i všechny ostatní věci, ze kterých vede do daného prvku čára. To ještě neznamená, že se automaticky splní.

Navíc řekneme, že každou proměnnou lze nastavit pouze na true, nikdy ne na false. Tento graf má znázorňovat vše, co musí hráč udělat, aby dokončil kapitolu, nedává moc smysl, aby něco odudělal. Pokud by k něčemu takovému mělo dojít, použijí se proměnné mimo kapitolu.
Každý box je buď proměnná, kterou lze nastavit na true, nebo se jedná o podgraf, který půjde dvojklikem rozkliknout a dostaneme se do úplně stejného okna, jen v názvu (tam kde je teď NewMaterial) bude cesta k tomuto grafu (TimeLapsus/Chapter1/TranslatorObtained). Takovýto box je splněn pouze tehdy, pokud je splněn jeho podgraf.
V pravé části obrazovky, tam kde je teď Palette, bych dal stromový seznam všech grafů a proměnných ve hře, ve kterém půjde libovolně navigovat.
V levé části by měli být detaily k jednotlivému boxu a možnost jeho editování – v tuto chvíli mě napadá název proměnné a user friendly popis. Možná nás toho napadne víc.
Napadlo nás taky, že kapitoly nemusí být úplně explicitně popsané – místo toho může v top level grafu být jen nody Chapter 1 –> Chapter 2 -> Chapter 3 etc. Ne explicitně, jen v nějakém readme napsáno, že toto preferovaný způsob členění na kapitoly.
Pro každý podgraf by mělo být možné i definovat další proměnné. Zde by mi přišlo ideální kdyby šli definovat přímo v grafu. Tj. když mám vybraný podgraf a nemám vybraný žádný element, mohl bych přidávat proměnné stejným způsobem, jako můžu v blueprint editoru lokální proměnné. Což by ale možná mohlo být trochu moc hardcore. Kdyby to nešlo, tyto proměnné by také šli udělat jako prostě elementy v grafu, co nejsou s ničím přímo spojené. K těmto proměnným by měl jít přidělit i typ – bool, int, float, string určitě, pole by taky byla fajn. Každopádně i tyto proměnné by měly být vidět v okně napravo (v tuhle chvíli palette)
V horní liště, těžko říct… Nějaký save by asi mohl být fajn, ale nenapadá mě nic moc dalšího co by tam mohlo jít.
Speciální typ nodu – Sebral předmět, automaticky se nastaví, když hráč sebere určitý předmět.