WMTale 0.4 Update


WMTale Verze 0.4

Po několika desítkách hodínách práce konečně vydávám WMTale 0.4. Jak jsem už i předtím řekl, tenhle update bude poslední "WMTale" update a příště se tahle hra bude jmenovat LeafCross. Technicky tenhle update nemá zas tak moc nového contentu, avšak přidal jsem několik menších věcí, který zpevní základy projektu.

Změny

  • Jedna z největších změn je Save Menu. Poté co uložíte poprvé hru a spustíte hru podruhé objeví se Save Menu. Zde můžete:
    • Načíst soubor
    • Smazat soubor
    • Vytvoř nový soubor
    • Zkopírovat soubor
    • Vidět playtime, jméno hráče a momentální lokaci ve hře
  • Změny textového systému
    • Textový systém byl přepracován a rozdělen do několika různých skriptů
    • Předtím byl text uložen v JSON souboru, ale nyní je uložen souboru TSV pro jednoduché upravování textu ve více jazycích v tabulce
    • Textbox nyní zabírá méně obrazovky (vertikálně) a více horizontálně, aby se tam vešel character portrait
    • Textbox má nyní animaci když se objeví (pohyb, změna velikosti)
    • Wait leaf (list který má na sobě napsáno ENTER Z), což informuje hráči že může zmáčknout tyto klávesy aby pokračoval s dialogem má také animaci
    • Character portraits byly přidány
      • Momentálně mají animaci na objevení a zavření se (pomocí shaderu)
      • Dá se zmenit mluvící postava a jejich emoce, podle tohle se změní jaký zvuk se přehraje při tisknutí textu (poznámka: emoce nemají momentálně podporu na změnění vlastností zvuku, jako je třeba pitch a volume
    • Byly upraveny a přidány nové příkazy do textového systému (tohle je hodně technické)
      • Nyní se dá reprezetovat barva buď podle hex kódu (jako předtím), jména (blue) nebo speciálního označení (tree_green je specifický odstín zelené)
      • Kvůli novému systému textových posloupností (text sequences) dají se reprezetoval choicery (možnosti) jako text
        • Choicery následují tento syntax {? "LEFT": left, "RIGHT": right}
        • ? označuje že tento příkaz je Choicer
        • "LEFT": left vytvoří novou dvojici možnosti a přípony (čárka odděluje tyto dvojice)
        • Dá se také zkrátit klasické možnosti ANO-NE, jako {?}
      • Preset systém nyní podporuje variace (kopie, presetu jen trochu jiný), existují také nové vlastnosti
        • Outline (jestli text je více zvírazněn než normálně)
        • Initial Color (výchozí barva textu)
        • EndAutomatically (text se ukončí automaticky bez vstupu uživatele)
        • EndExternally (text se musí ukončit speciálně pomocí metody, nikoli vstupy hráče, nutné pro specifické texty v cutscénách)
      • V textových posloupnostích (třeba cutscéna), když textový systém narazí na choicer, dynamicky změní momentální příponu na příponu vybranou hráčem v choiceru. Tohle zaručuje lepší DX, protože nyní větvící se logika cutscén se může uložit přímo v textu a ne v kódu.
      • Byl přidán "suffix" (příponový) statement {|}, který změní momentální posloupnostní příponu. Tohle je důležité, když by si hráč vybral možnost, aby se text v cutscénách mohl zpět konvergovat do jedné přípony. Příponový systém se také dá využít v podmínkách.
      • Do textového systému byly přídány podmínky. Existují 3 různé "conditional statements":
        • {if condition}TEXT -> pokud, vytiskne text jen pokud podmínka je pravdivá
        • {if condition}TRUE{else}FALSE -> jinak, pokud podmínka v IF není pravdivá vytiskne se text v ELSE
        • {if condition}TRUE{else}FALSE{endcf} REGARDLESS  -> endcf (skončení kontrolního toku -> skončení buď IF nebo ELSE), endcf není nutné při ukončení IF nebo ELSE, ale pokud chce spisovatel, aby se objevil nějaký text nebo příkaz za podmínkou musí použít endcf
      • Conditional statements podporují nesting
        • {if cond1}{if cond2}TRUE TRUE{else}TRUE FALSE{endcf}{else}{if cond2}FALSE TRUE{else}FALSE FALSE. Zde se {endcf} využít musí použít. Conditional statements momentálně nepodporují žádné logické operátory.
      • V praxi by se conditional statement mohli použít například takhle:
        • The door is locked.{if has_key}{p} But you've got the key{|GotKey}{else}{|NoKey}
      • Příkaz {p} je zkratka pro {0.5}, což znamená text se nebude psát dalších 0.5 sekund
      • Character portraits mají následující syntaxi (nelze použít více než 1 character portrait příkaz za textový klíč):
        • {$} resetuje character portrait zpět na vypravěče (bez postavy)
        • {$Nixie} změní momentálně mluvící postavu a nastaví emoci na jejich výchozí emoci
        • {/Mysterious} změní momentální emoci
        • {/} resetuje emoci na výchozí emoci
        • {$Nixie/Mysterious} kombinovaný syntax
  • (Použité) Změny v overworld mapě
    • Miniaturní změny v první a druhé roomce hry
    • Byl opraven bug, který mohl teleportovat hráče do špatné roomky a zaseknout jej do zdi
    • Do roomky "Weird_TeleportRoom" byl přidán modrý oheň jako dekorační prvek
    • Byla přidána roomka Weird_SaveIntroRoom, která seznámí hráče s ukládání hry
      • Zde je také první Nixie cutscnéna, ale není hotová, a tak softlockne hráče
  • Byl naprogramován MovingNPC systém
    • Dokáže pohybovat hráče bez vstupu na krátké vzdálenosti (hráč bez vstupu může chodit i pozadu)
    • Dokáže vytvořit NPC postavy, které se dokáží pohybovat pro cutscény s možnostmi
      • Zahrát animaci
      • Skákat
      • Zobrazit "damage label"
      • Využít shader
    • (momentálně nepoužito) Pokud si hráč upraví jejich save file je možné aby jej následovali postavy které si hráč nevybral (tohle má zabugované chování, protože tento systém nebyl pořádně aktulizován)
  • Další změny nejsou normálně přístupné proto použijte klávesy + - na to, aby jste se teleportovali do jiné roomky (pomocí debug módu)
  • Přidán Leaf Mode, zde můžete dostávat damage a využít stamina systém
  • Přidány lekníny
    • Když hráč stoupne na leknín, začne se rychle hýbat, než kompletně zmizí
    • Pokud hráč je v řece a na ničem nestojí potopí se
    • Lekníny se mohou regenerovat a znovu se vrátit
    • Když se hráč potopí dostane damage a vrátí se zpět na začátek leknínů (jejich stav je také resetován)
  • Přidány mochumůrky:
    • Mochůrky jsou překážky pro hráče, které mohou hráči buď uškodit nebo pomoci
    • Momentálně existuje 7 typů hub:
      • Červená houba, základní houba, statický damage
      • Zelená houba, dá hráči status efekt jed
      • Hnědá houba, exploduje a dá hráči damage podle toho jak daleko houba je od hráče
      • Černá houba, dá hráči blindness efekt
      • Růžová houba, vyhealuje hráče (max 3 použití)
      • Žlutá houba, zbaví hráče o všechny momentálně aktivní efekty
      • Šedá (hořící) houba, nemá kolizi, když hráč půjde přes houbu dostane fire efekt
        • Poznámka k fire efektu -> efekt může být skončen nejen časem nebo žlutou houbou, ale i když hráč jde do vody
    • Při vývoji hub byla implementována hnědá houba originálně, tak že dala hráči Confusion effect
      • Ten by otočil kameru o 90 stupňů -> ovšem ve finále jsem si řekl, že to není tak zábavná mechanika, a tak to bylo zaměněno za explozivní houbu
  • Byl také přidán game over screen.
    • Speciální dialog když hráč umře poprvé
    • Jinak si hra vybere náhodnou game over posloupnost a vytiskne jí
  • V tomto updatu bylo přidáno 6 nových roomek:
    • Z toho jedna je normálně přístupná s normálním gameplayem
    • Tři jsou určené k testování kódu (houby, vrstvy, textové posloupnosti)
    • Dvě jsou hotové, ale přistupné jen s Debug módem
      • "Weird_LilypadRoom" obsahuje leknínovou mechaniku
      • "Weird_CemetaryGate" obsahuje bránu k hřbitovu a cutscénu využívající kamerové funkce

Files

WMTale 0.4.zip 16 MB
57 days ago

Leave a comment

Log in with itch.io to leave a comment.