Diskuze o textových hrách

Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Témata - Kroužící orel

Stran: 1
1
TADS / TADS 3 Language Server
« kdy: 30. Srpen 2021 - 10:12 »
Pro všechny příznivce jazyka TADS3 mám skvělou zprávu, kterou jsem nakousnul již u svého posledního příspěvku u Orla dvojky, Tomas Öberg vytvořil rozšíření, které nám linuxákům konečně pomůže zcela se zbavit starého Workbenche, kterého musíme spouštět ve Wine:

https://intfiction.org/t/vscode-tads3tools-extension-alpha-release-0-1-0/52188

Rozšíření pro VSCode je určitě krok správným směrem, je parádní, že se nyní cítím jako v Javě nebo v Pythonu, skutečně použitelná autokompletace a provázání s nápovědou nemá chybu. S testováním rozšíření aktivně pomáhám a reportuji chyby, přesně tohle je další důvod, proč TADS stále využívat.

Tomáši, budeš-li mít čas, prosím o aktualizaci webu tads.cz, přidal bych tam odkaz na Language Server a krátký popis tohoto rozšíření (rád pomohu). Aktualizoval bych i sekci Interpretry, např. Gargoyle už umí s TADSem přímo pracovat nebo QTADS má třetí verzi, ať je vidět, že i u nás TADS stále žije. Já už zase budu mít čas na tvorbu a s novými zkušenostmi (které opravdu sbírám roky, programátorské začátky jsou holt krušné stejně jako ty koňské) se budu moci hnout dále.

2
Na vývoj už mám mnohem více času, takže vesele pokračuji, rozhovory nejsou tak jednoduché, ale s využitím podobných technik jako u Borise nebo kapitána ze Základny jsou stále jasnější.

Z VSCode jsem se vrátil ke QT Creatoru, ten mě jako C++ editor u TADS zlobil neustálým (a pochopitelným) podtrhováním chyb, nakonec jsem tuto nepříjemnost odstranil pomocí:

Nástroje - Volby - Textový editor - Fonts and Colors --- v Color scheme až dole položka Error. Kliknu na kopírovat pro zálohu aktuálního tématu, poté kliknu na Error a vpravo skroluji dolů, v poslední sekci Underline vyberu No Underline.

Příjemná nebyla ani varování typu Semantic, Parse a Lexical Issues, ty jsem odstranil pomocí dočasného zakázání CLang pluginu.

Teď mám parádní IDE s možnostmi, které popisoval Gaspoda, kompilace, testování a spouštění je velmi pohodlné a také skladba projektu velmi přehledná. Automatické doplňování zde sice nefunguje, u VSCode se však jednalo pouze o předem vytvořené znaky, které editor později nabídnul, v tomto ohledu asi nic lepšího není (doplňování mi nefunguje ani u Windowsího Workbenche). Každopádně díky pluginům a podpoře LSP se jedná kromě C, C++, QT a TADSu i o skvělý editor pro Python a potěší i částečná podpora Javy i Ady. Takže super, ještě jednou díky Gaspodovi za jeho doporučení, třeba se jednou TADS3 Language server objeví a budu-li moci, rád pomohu.


V Javě, C++ i Pythonu využívám možnost generování HTML nebo TeXí dokumentace přímo z komentářů ve zdrojových kódech (a třeba službu Read the Docs využívají mé oblíbené QT aplikace, toto skloubit by byla paráda). Pro TADS jsem nic podobného nenalezl, i když referenční příručka je generovaná z komentářů v knihovně (snad pomocí nějakého skriptu). Hledal jsem něco jako javadoc, doxygen nebo Sphinx, ale bez úspěchu, jediná možnost, kterou vidím, je stará implementace od Eveho zde:

https://github.com/EricEve/docgen

Nemá někdo zkušenosti s něčím, co bude fungovat u TADSu? Když se brouzdám Library Reference Manual, tříd je požehnaně, tato dokumentace by mi (společně s UML, které pro TADS také asi nikdo neřešil, mimochodem QT Creator má bezva UML modelář, díky němuž jsem odinstaloval Gaphor, Modelio i Umbrello) moc pomohla ve vývoji. Při programování kromě LRM hodně využívám zdrojáky Základny, vytvořit si takovou dokumentaci a následně UML diagramy by rozhodně zpřehlednilo budoucí vývoj.

3
TADS / Zeal TADS3 Docset
« kdy: 16. Září 2020 - 13:01 »
Rád vyvíjím i bez připojení k internetu a zalíbil se mi offline prohlížeč programátorské dokumentace s názvem Zeal. Upravil jsem si TADS3 Library Reference:

https://www.tads.org/t3doc/doc/libref/index.html

právě pro něj, zatím nefunguje fulltextové vyhledávání (na to se pokusím přijít časem, např. študiem úpravy Javovské dokumentace, která je pro Zeal k dispozici v různých verzích), pro mé potřeby však plně dostačuje. K mání na Githubu:

https://github.com/krouziciorel/Krorel2/tree/master/zeal_docset

archiv stačí v Linuxu rozbalit do /home/vaseJmeno/local/share/Zeal/Zeal/docsets .

4
Pokud máte u nových desítkových překladačů GCC nebo Clang stejně jako já potíže s překladem verze 1.2.4 (tohle se holt někdy v Archu stává, naštěstí řada 9 je OK), doporučuji ruční překlad z githubu:

https://github.com/realnc/frobtads

Bonusem bude opětovná možnost překladu Základny bez chyby Segmentation fault a příprava na debugger (už se těším).


S většími zkušenostmi při využití QT Creatoru a Emacsu se stále častěji setkávám s Language server protokolem, někdo jej haní a někdo chválí, každopádně jeho možnosti stojí za to a pokud jej IDE podporuje, jeho závislost na jazycích pomalu mizí. Napadlo mě, zda by byl někdo ochotný takový server vytvořit i pro TADS, zde se o tom mluvilo:

https://github.com/realnc/frobtads/issues/6

Já zatím takové zkušenosti nemám, díky této vychytávce je ale např. v QT Creatoru možné plnohodnotně pracovat s Javou nebo Pythonem, LSP by vše elegantně vyřešil a společně s novým debuggerem by znamenal kompletní nahrazení starého dobrého Workbenche pro Windows.

5
TADS / Kroužící orel 2
« kdy: 18. Prosinec 2019 - 09:26 »
Po delší době zdravím všechny textovkáře,

moc se omlouvám za odmlku, v poslední době jsem se věnoval klasickému programování nakonec v Javě, kde mě oslovily knihy pana Pecinovského a rozhodně nelituji, je opravdu fuk, čím člověk začne, ale styl výkladu holt hraje prim. Doslova před pár dny jsem si přečetl Holynovu recenzi na Orla I. a slíbil jsem, že před Otěžemi zimní noci, textovek z ruské občanské války a jiných zajímavých témat nejprve dokončím indiánskou trilogii.

Orla dvojku již tvořím sám kompletně v TADSu, hra má cca 40 místností (ve dne i v noci, viz níže), spoustu postav a věcí k prozkoumání, hádanky samozřejmě budou, nejvíce jsem se však zaměřil na příběh a rozhovory, což mě u textovek vždy bavilo. S Exoterem jsem se dosloval plácal, protože OOP rozhodně není sranda, teď už jsem doufám jinde a hru dokončím s nabitými zkušenostmi. Už nebude jeden ne zrovna přehledný zdrojový soubor, inšpiroval jsem se svým programováním v Javě a samozřejmě Základnou, čímž jsem kód mnohem více zpřehlednil, více souborů a využití Makefile je pro už přeci jen mírně větší projekt to pravé. Právě nyní dokončuji Akce a hraji si s PreCondition, poté se vrhnu na konverzační témata (ta v Exoteru vůbec nebyla, model TADSu je ale parádní) a nakonec neodolám, indiánská vesnice ve dne je nádherná, v noci ale o nic méně zajímavá. K naprogramování denní a noční lokace jsem nenašel žádnou dokumentaci, takže krom klasických třídy Room vytvořím ještě nové objekty DarkRoom včetně všech změn, to ale nevadí.

Pány jistě potěší ženské postavy, se kterými lze konzervovat a možná i něco navíc (spíš určitě), ctěný zájemce ať si sám vybere, hrajeme konverzační hry a právě na rozhovory jsem se zaměřil asi nejvíc.

TADS je opravdu famózní, už asi po dvacáté čtu skvělý Gaspodův manuál (který mi vždy připadal nekonečný a v poslední době příliš stručný, ach jo) a ještě více se hrabu ve zdrojácích Základny, teď s vědomostmi z Javy konečně vidím tu šílenou práci, kterou si s ním autor dal, takže jí prostě nemohu nevyužít. Hra bezvadně funguje od Win XP po Win 10 a na všech hlavních linuxech, připravím aktuální info o dnešních interpreterech (např. poslední verze Gargoyle už TADS zvládne také). Bezva nápady na textovku v Javě jsem našel zde:

https://java.vse.cz/4it101/ZadaniAdventury

a ano, přesně toto a mnohem, mnohem více TADS řeší. Škoda, že není k dispozici moderní IDE, když se např. rozhodnu, že název mistostTipiOrla potřebuji všude přejmenovat na mistostTypiOrla, nejde to tak jednoduše jako např. v Netbeansech nebo v Idee, ale alespoň o to více si budu vážit kvalitních prostředí, která opravdu pomáhají. A pokud bych v budoucnu TADS z jakéhokoliv důvodu nemohl využít (přeci jen se už nevyvíjí, naštěstí fórum stále funguje), vypadá to, že mohu klidně textovkařit v Javě a drobet upravit ty skvělé předpřipravené třídy (to ale alespoň zatím nehrozí, starý dobrý Workbenech jede všude a frobtads také, Fabularium na Androidu také odvádí skvělou práci no a nakonec možnost webového hraní, kde jsem se na fóru dozvěděl o využití moderního javascriptu např. u automapingu). Mimochodem, pro mapování využívám právě JS aplikaci Trizbort:

https://github.com/henck/trizbort

která pro TADS i jiné systémy umí z mapy vygenerovat názvy místností a propojení mezi nimi (ne vždy přesně, ale rozhodně pomůže).


Kdy hra vyjde? Do konce roku nemám šanci, i když teď na ní makám téměř denně. Vidím to na leden, maximálně únor, není totiž od věci, když si všechno, co jeden den připravím, druhý den přečtu ještě jednou. Jakmile vydám hru, počkám cca měsíc na uveřejnění zdrojáků. Postupně budu informovat o pokračování ve vývoji, netušil jsem, že seznamování se s vývojařinou bude trvat takhle dlouho, ach jo, už chápu, proč vznikla Adv3lite (tam ale chybí skvělý Gaspodův český překlad, takže jedu klasiku).

6
TADS / Otěžemi zimní noci v TADS3
« kdy: 15. Únor 2018 - 07:59 »
Pro dotazy a zkušenosti s novou hrou zakládám nové téma, předchozí už mi přijde drobet přeplněné.

EIZO je od úterka doma, zatím vesele testuji, ten mód pro čtení papíru se zatím zdá být pro vývojařinu v kombinaci s RedShiftem ideální. Parádně se pracuje v GUI i v konzoli, tam se mi zatím nepodařilo obraz roztáhnout na plnou šíři, to se ale určitě časem poddá. Ovládací menu je jednoduché a plně funkční, žádný další software opravdu není třeba, vychytal jsem si 3 módy, které budu používat a ručně přepínat. Únava očí opravdu zmizela a to je super, takže další tvorba bude mnohem příjemnější.

Právě jsem s obrovskou pomocí dohrál druhou verzi Syrečků, těžké, ale skvělé a teď se dám zase do práce. Osnovu hry už mám rozdělanou a pro lepší zážitek jsem si našel vše potřebné k interiéru hradu, kláštera a možná i něčeho navíc, už se těším.

První dotaz bych měl k objektu třídy Vaporous, s jeho pomocí jsem vytvořil měsíční svit na louce, samotný měsíc jsem definoval jako Distant:

+ mesic : Distant 'měsíc' 'měsíc' *2
    "Krásně svítí nad ztemnělou krajinou. "   

    gcName = 'měsíce, měsíci, měsíc, měsíci, měsícem'
    gcVocab = 'měsíce/měsíci/měsícem'
;

+ mesicni_svetlo : Vaporous 'měsíční světlo' 'měsíční světlo' *4
    "Bledý svit měsíce ozařuje jinak zcela temnou noc. "   

    gcName = 'světla, světlu, světlo, světlu, světlem'
    gcVocab = 'světla/světlu/světlem'
;

Prozkoumání je OK, při pokusu o sebrání dostanu hlášku "To s tebou nemůžeš udělat." - podobně to dopadne při hraní Heidi, pokud se pokusím sebrat kouř, viz její zdroják řádek 763. Tady bych očekával spíše zápornou zprávu ohledně sebrání, můžeš se prosím juknout na překlad?

Jdu si vyhrát s těmi vlky a uvidím, co mi TADS nabídne nebo spíše co z něj dokážu použít já, už se těším.

7
Konečně po všech perepetiích člověka jen málo políbeného vejvojařinou mohu představit předělávku staré známé textovky do systému TADS. Nakonec se mi jí podařilo dokončit podle představ a je maximálně věrná původní verzi. Díky TADSu je zde však mnohem zajímavější a bohatší parser, který mě tak okouzlil u Základny.

V příloze zasílám zdrojový soubor Exoter.t, který můžete prozkoumat a klidně využít při vlastní tvorbě, doplnil jsem komentáře ke všem akcím, které nejsou zrovna triviální. K případným úpravám a kompilaci doporučuji fórum zde:

http://textovky.panprase.cz/index.php?topic=226.0

a stránky:

http://tads.cz/cs/preklad-tads-3-do-ceskeho-jazyka

Chcete-li si rovnou zahrát, jsou zde 3 možnosti:

1. ve Windows stačí spustit instalátor Exoter.exe, výsledek vypadá na pohled velmi pěkně a s příjemným ovládáním.
2. dle mého názoru asi ideální pro Windows, Linux či BSD představuje QTADS:

http://qtads.sourceforge.net/

který má velmi příjemné rozhraní, můžete si nastavit barvy podle svých představ a vesele hrát. Ukládání pozic je u obou možností samozřejmostí.

3. trochu archaická možnost v příkazové řádce Linuxu nebo BSD je instalace balíčku frobtads a spuštění pomocí:
frob Exoter.t3
- zde však v rozhraní ncurses není funkční čeština

frob -i plain -k utf8 Exoter.t3
- zde se jedná o klasický řádkový režim s plně funkční češtinou, pokud Vám jí správně zobrazuje klasická konzole, velmi doporučuji, člověk se opravdu cítí jako za prehistorickým terminálem, kde místo úpravy konfiguráků mastí textovku

Každého zájemce prosím o zaslání zkušeností s hrou, měla by být plně dohratelná, pokud se však objeví jakékoliv chyby, sem s nimi. Ideální pro testování je při spuštěné hře zapnout ukládání hráčových příkazů pomocí volby:

Zapni zápis

vše, co hráč zadá, se bude ukládat do zvoleného textového souboru. Pokud zde potřebujete zaslat nějaký komentář, lze tak učinit pomocí znaku * a psaní svého komentáře, toto pomůže pro zpětnou vazbu, ladění chyb i popsání průběhu hry.


A až Vás omrzí Exoter, můžete se těšit na úplně novou hru velmi lehce inspirovanou mým oblíbeným Bad Nightem:

http://www.textovky.cz/navody/bad-night-recenze-a-navod-na-textovou-hru-od-palase/

jmenuje se Otěžemi zimní noci a s využitím všech nabraných zkušeností na ní právě teď pracuji. Nápady mám a chuť tvořit také, takže není co řešit, chci si zde vyzkoušet ty parádní pokročilé konstrukce, které jsem si užíval u Základny. Nebude to jen klasická textovka z hradu, i když i ten se zde určitě objeví, rád bych využil i venkovní lokace divoké severské noční zimní přírody, nechte se překvapit. Pro nedočkavce zde zveřejňuji úvod do příběhu, ten se samozřejmě ještě může změnit:

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Vítej, hráči, v textové konverzační hře Otěžemi zimní noci.

Temná ranně březnová noc. Večer štiplavý mráz a ve dne čvachtající břečka pod nohama, ne, to jistě není dobrý čas na cestování. Ale co naplat, myšlenky Ti letí hlavou jako hvízdající vítr a uklidnit jejich dravý tok je nemožné. Jenomže měl jsi na výběr? Chudý rytíř Česlav z Krašova patřící do malého bezvýznamného rodu žijící v ne zrovna výstavné tvrzi se může spolehnout možná na svůj úsudek a meč, ale jinak na máloco jiného. Takový člověk opravdu může být skromný a bez ambicí, ovšem chyba lávky, jiní a mocnější právě toto chování mohou pochopit špatně a poté se dějí věci nevídané. Jen matně si vzpomínáš na začátek dnešní noci, se svojí milovanou Kaškou jste šli spát brzy s tím, že si uprostřed noci dáte svojí oblíbenou číši rudého vína pod svitem měsíce, ale ouha, vypili jste jí opravdu nebo to byl jen sen? "Odcházím směrem půlnočním..." točí se Ti stále v hlavě, zdála se Ti tak slova nebo ne? Probudil Tě právě jejich šepot nebo spíše otevřené okno noční jizby? Co se vůbec stalo? Úplně omámen jsi popadl jen to nejnutnější, žena na tvrdé zmrzlé zemi pod oknem naštěstí nebyla... a hnal se jako vítr naznačeným směrem, bez koně, pořádné výbavy, ale vlastně kam? Noční chlad Tě trochu uklidnil, ale zároveň si uvědomuješ, že Ti začíná být opravdu zima a k tomu se stále více a častěji ozývá vytí vlků. Pchá, to, že žerou lidi, jsou jen povídačky pro malé děti a hlupáky... ale najednou si uvědomuješ, že v takovém nečase, venku a především pod studeným svitem měsíce může být na těch hloupostech třeba i špetka pravdy...
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Moc děkuji Gaspodovi za jeho nekonečnou trpělivost u mých nekonečných otázek, začít s OOP pomocí TADSu bylo pro mě sice těžké, ale nesmírně zábavné.

Takže vesele testujte, po Otěžích notně předělám první díl Kroužícího orla a připravím další dva, poté bych rád nějaký příběh z aztéckého, mongolského a sibiřského prostředí, určitě nebude chybět ani něco z válek, třeba ta ruská občanská mě opravdu láká, není kam spěchat, textovky nestárnou a díky takovým bezva systémům, mezi něž určitě patří i TADS, je bude možno tvořit vždy.

8
Nové textové hry / Kroužící orel 2
« kdy: 10. Květen 2016 - 09:11 »
Zdravím všechny nadšence to textovek,

vypadá to, že naše fórum nějak uvadá a protože venku už začala sezóna, situace se asi moc měnit nebude. Mám hotový scénář na pokračování Orla, jen si zatím netroufám na programování v TADSu nebo jiném enginu plus teď na jaře a hlavně přes léto budu mít spoustu práce kolem koní, zároveň to vypadá, že ani Pedro nebude mít čas na realizaci.

Pokud někdo máte chuť a čas dvojku naprogramovat, rád scénář zašlu, rozhodně by byla škoda, kdyby nakonec zůstal jen na papíře.

Stran: 1