Announcing Lithium

After couple of months of development, I feel like my new project (code named Lithium — yeah, you can see the pattern), is ready to be mentioned here.

I’m trying to develop some kind of game for two years now. The first attempt ended up by me acknowledging it is too ambitious to be ever finished, so I decided to scale down the scope, change the genre completely and do something small and simple. Now, 7 months after initial commit I’m thinking, that even the smaller game is probably too large for those 3 to 5 hours I’m able to invest in it during the usual week.

But I do not give up. I’ll finish this, because, well, I always wanted to develop a game.

So, what is this thing supposed to be? Well, to do something extraordinarily original, I decided to go with down scrolling platformer, without, yes, without puzzles or the twist. Li will be game about falling down and avoiding simple enemies, perhaps to be played in short sessions on your phone. While there will be a story, and some decision making, the main part of the game will consist of… falling down. Let’s see how much fun will be that.

Anyway: You can try latest development snapshot here.

Eintopf

Plánoval jsem bilanční post už někdy od října. O tom, jak jsem zase začal psát, a jak je to príma (a že pracuji na další interaktivní fikci, která je ambicioznější než ta první, bohužel však časově koliduje s mou snahou naprogramovat hru), a že jsem někdy v polovině roku zjistil, že jsem v práci krapánek vyhořel (a jak je to zvláštní, protože jsem vlastně začal dělat to, co jsem chtěl dělat poslední dva roky, ale ukázalo se, že technologie jsou irelevantní, přesně jak jsem to už delší dobu tvrdil, ale tak nějak jsem tomu nevěřil) a našel si jiné zaměstnání (v polovodivém průmyslu — i když tentokrát u jiné společnosti než posledně — a zatím jsem zcela spokojen) a že jsem rámci toho procesu odmítl místo v Seznamu, protože se ke mně jejich personalistka chovala jako k idiotovi (a já jsem, jak jinak, superhvězda), a že jsem od února do října zhubnul o nějakých dvacet kilo a zatím to vypadá, že mi to vydrží (a zjistil jsem, že opravdu platí ono poněkud neoblíbené nepřežírat a hýbat), a že se mi snad už opravdu podařilo přestat kouřit (až na vzácné výjimky spojené s konzumací většího množství piva tak jednou za čtyři měsíce), a že na mě malinko leze krize středního věku (teď, co jsem v polovině progressbaru).

Ale řeknu vám upřímně, že čím víc jsem o tom přemýšlel, tím víc mi to přijde, že tyhle year in review posty jsou jako páteční karbanátky ve školní jídelně. Moje manželka ví co dělám, a všem ostatním jsem já v zrcadle času dost u zádě a asi si nechcete kazit žaludek neuspořádanou směsí samolibého poplácávání po rameni, jaký jsem to byl letos zase pašák.

A chvíli jsem si říkal, že bych tedy review nahradil preview, a napsal pár jakoby předsevzetí, nicméně to je snad ještě zhovadilejší útvar. Navíc jediné na čem záleží (na tomto místě) je, jestli se mi podaří začít psát víc kratších blogísků, tak jak to mám v úmyslu už dobré dva roky. Takže asi tak.

Rozhodně bych si ale přál, abychom se všichni měli minimálně stejně dobře jako loni, pokud možno o něco málo lépe. Ale ne o moc, abychom si toho zlepšení vážili, protože mám pořád silnější pocit, že jsme my Evropani banda zpovykaných rozežraných harantů, které nic není dost dobré.

Takže asi tak.

A abych nezapomněl: hodně štěstí!

Perspektiva

Nejprve obrázek:

A dál: Přemýšlel jsem v poslední době hodně o tvorbě a konzumu. Něco v tom smyslu, že bych chtěl tvořit, ale místo toho konzumuji. Mám rozpracovaných několik interaktivních povídek, asi dvě nebo tři hry, textový editor a tak dále a tak podobně. A co dělám místo toho, abych na nich pracoval, abych tvořil? Konzumuji. Ne že bych se snad snažil dohnat všechny díly Breaking Bad, nebo něco podobného. Ne, ne. Konzumuji zodpovědně.

Loni jsem značně protřídil zdroje, které sleduji skrze RSS, letos jsem vyfázoval ty poslední dva seriály, na které jsem se ještě díval (a nabral jen Doctor Who jako studijní materiál), do konce jsem dohrál jen dvě hry (Spec Ops: The Line a The Walking Dead a to především proto, že jsou zajímavé tím o čem a jak vyprávějí), jinak většinou hraji první hodinu dvě, abych se poučil jak fungují různé herní mechaniky pro svou vlastní tvorbu, která, tak nějak, nepřichází.

Nepřichází, protože mám stále plnou frontu článků k přečtení, v Kindlu i na policích plno knih, které chci přečíst a hry ve Steamu přibývají rychleji než je stačím stahovat. A snažím se nějak vyrovnat se s těmito pomníky osobního selhání, místo abych dopsal asi nejlepší fikci, kterou jsem zatím vymyslel, nebo konečně doprogramoval hru kterou programuji mnohem pomaleji, než bych chtěl.

Přemýšlím čím to je, že se nedokážu soustředit na tvoření a místo toho se věnuji konzumaci. Určitě bych to mohl svádět na práci, a vymlouvat se, že si přece potřebuji odpočinout, a že samá práce dělá z lidí blbce, ale objektivně vidím, že vyvážení práce/soukromí mám v tuto chvíli dobré (pracuji intenzivně, ale v rozumném rozsahu), myslím, že ani nejsem vyhořelý, nebo něco v tom smyslu. Problém, je prostě v tom, že se nějak nedokážu přinutit tvořit.

A co je nejdepresivnější: všechno to čtení článků z internetu mě neuspokojuje. Jistě, jsou plné velkých a důležitých pravd… (Hmmm, ne, ne. Co takhle:) velkých a důležitých pravd… (Ani to není ono. Co tohle:) VELKÝCH A DŮLEŽITÝCH PRAVD (Ano, to je ono!), ale připadám si jako v dozvukové komoře, kde někdo řeže na cirkulárce. Jsou to pořád ty samé… řeči. Všechno jsem to už někde slyšel, se vším souhlasím. Tak proč tím, proboha, zabíjím čas? Ano, občas najdu něco, co mě vyvádí z konceptu, co je mi proti srsti (např. Jonathan Blow a jeho twitter), nebo obsahuje věci, které jsou pro mě nové i obsahem a ne jen formou (Leigh Alexander, například, občas píše zajímavé osobní texty), ale jinak —

Ach, ano, vím co si myslíte, ale ten problém není tak jednoduchý, že bych byl prvoplánový idiot. Já bych se rád obohatil o něco nového, něco, s čím jsem ještě nepřišel do styku, ale bohužel jsem nabyl pocit, že většina vjemů, myšlenek a zážitků je jaksi archetypálních. Mají několik základních podob, které se neustále opakují, jen s různými obměnami. Jsou různé varianty sociálních interakcí nebo důsledků jejich absence, různé formy nespravedlnosti, útlaku a bezpráví, se kterými je tak zatraceně těžké něco udělat, existují různými prostředky vyvolané emoce a fyzické zážitky, které ovšem nakonec opět konvergují k nějaké základní paletě, jen s různými stupni síly.

A tenhle pocit, že ve skutečnosti jen stále dokola opakujeme to samé, a jen sami sebe přesvědčujeme, že nová forma přináší nový obsah, je to co, způsobuje, že se cítím… podvedený?

Ano. Teď je to zřejmé, že? A velmi, velmi terapeutické.

Přiznávám: netvořím, protože mám strach, že jediné, čeho dosáhnu bude, že přihodím další lopatu trusu na už tak dost rozsáhlé hnojiště. A čeho se opravdu děsím je, že kousky toho zázraku se ujmou a někoho, kdo by potřeboval vykolejit, utvrdí v jeho vlastních přesvědčeních. Protože nepochybuji o tom, že jsem ve své konzumentské zaslepenosti, promiňte, vyhraněnosti, až nechutně statisticky průměrný.

Žijeme v děsivém světě, kde služba jako Google Play Music umí po pár dnech sestavit playlist, na kterém hrají jen samé písničky, které se mi líbí a kde mi Twitter nabízí ke sledování jen lidi, s jejichž názory souhlasím (a musím někoho z nich začíst sledovat, protože asi není normální sledovat méně než sedm lidí). Nevím jestli chci být součástí té mašinérie jen proto, abych uspokojil své kreativní ambice, jestli chci promazávat tak zhoubně samožerný stroj, nebo mu dodávat zdání legitimity a diverzity tím, že jej budu kritizovat (například tím, že budu záměrně psát dlouhé texty, abych šel proti proudu instantizace).

Takže jsem z toho malinko vykolejený, protože před pár lety jsem sice neznal své místo ve světě, ale měl svou svobodou tvořit. Teď jsem zděšený, protože se zdá, že mé místo je někde na hranici mezi téměř úplnou svobodou a téměř úplným vazalstvím, a že to místo je plné lidí jako jsem já.

Bylo mi letos 37 let. Podle Českého statistického úřadu mám před sebou kolem 37 let života, plus mínus nějaký rok. Jak jsem řekl hned na začátku:

Using Twine/twee without Python installation

Because it seems, that I’ll be writing another Twine/twee interactive fiction in not so distant future, I realized, that there is one thing I’m bothered about twee: I don’t like the act of installing Python and twee. While I have my scripts, this kind of integration of twee and Naracea is still sort of cumbersome. Thus I decided to do something about it.

And because twee is just couple of Python scripts, and I have IronPython integrated in Naracea already, I decided to try how these two things work together. And it seems they work just fine. What twee needs is Python standard library, which I didn’t include into my Python scripting plugin before, but adding support for it was matter of one or two hours.

And after couple tests, I’ve found out that twee indeed works with IronPython, and my test story is built properly.

Thus I took my scripts and converted them into plugin, which can be just unzipped to Naracea installation directory, and you get twee support nicely integrated directly into the editor without need to install either Python or twee itself.

Installed plugin adds two buttons to ribbon Document tab:

Build builds the story (and opens result in default browser), Tweenify sets up the document so it better fits twee coding needs (it mainly sets syntax highlighting and spellchecking based on current branch settings).

At this point the plugin is kind of rough, because I’m not sure whether someone else would find it useful, and for my needs it is good enough. However if you have any improvements requests or suggestions, let me know via Naracea issue tracker.

So if this sounds interesting, you can find the plugin and short installation instructions at Naracea’s plugin page (if you are using .zip package, see also PyScript section of the page for details on Python standard library installation).

Muži, kteří nerozumí ženám

Anita Sarkeesianová je jednou z osob, které Internet opravdu a upřímně nenávidí. A má k tomu důvod: Sarkeesianová opakovaně a vytrvale poukazuje na projevy skrytého i otevřeného, nevědomého i vědomého mužského šovinismu a stereotypního užívání žen/ženských postav ve stále ještě především maskulinními zvyklostmi ovládané společnosti.

Každý, kdo má doma dvě děti rozdílného pohlaví musí souhlasně přikyvovat nad její dvoudílnou minisérií The LEGO Boys Club (část první a druhá) a každý kdo se alespoň elementárně zajímá o videohry by měl vidět sérii Damsel in Distress (část první, druhá a třetí) a strávit několik soustředěných minut nad analýzou jejích pozorování.

Na Sarkeesianové feminismu se mi líbí, že je v podstatě umírněný, ne agresivně militantní a poměrně dobře podložený pozorováními a příklady. Je zjevné, že Sarkeesianová ví, že jedno sarkastické ušklíbnutí vydá za celé minuty fanatického dštění ohně a síry na zvrácená openisená monstra. Protože šovinismus, stejně jako rasismus, lze častěji vysvětlit nevědomostí až hloupostí, než skutečně zlým úmyslem.

Takže, co jsem chtěl v této souvislosti poznamenat, je že jsem si před časem uvědomil, jak téměř výhradně mužská vždy byla (a možná ještě bude) má, ehm, narativní tvorba. Pokud jsem kdy použil ženskou postavu, byla spíše kulisou, doplňkem k dějotvorným mužským figurám (pokud tedy nebyla přímo damsel in distress, tak jak to Sarkeesianová popisuje ve své sérii).

A nestálo to moc přemýšlení uvědomit si proč tomu tak je.

Můj problém (a obávám se, že ho sdílím s mnoha muži) je ten, že ženám nerozumím. Tedy: vypozoroval jsem určité behaviorální vzory, které mají ženy společné a dokážu se většinou ve stavovém prostoru interakcí se ženami pohybovat tak, abych se vyhnul vyloženým nášlapným minám (např. “logicky” argumentovat ve chvíli kdy mám poskytovat bezvýhradnou podporu), nebo neschytal smích (který si překvapivě velké procentu mužů plete s oceněním toho, co považují za vlastní vtipnost). Ale pořád nerozumím tomu proč ženy slyší to co slyší a reagují tak jak reagují.

A jediné logické vysvětlení toho proč ke kterému jsem schopen dojít je to, že naše společnost se opravdu pohybuje v zajetých stereotypech, že muži se ve skutečnosti nikdy nesnaží pochopit ženy a že v rámci stejných stereotypů jsou ženy smířeny s tím, že jim muži nerozumí a tak nějak jim nedokáží vysvětlit (nebo spíš natlouct do hlav?) co se právě děje. (Všimněte si, že předchozí věta dělá přesně to co kritizuje — staví muže do role obětí ženské konspirace/lenosti/nechopnosti; a opravdu neumím to, co chci říct, formulovat tak, aby vina na nekompatibilitě byla spravedlivě rozložena.)

Takže: jak chcete psát postavy, jejichž vnitřnímu světu ani elementárně nerozumíte? Vyjdete ze stereotypů které znáte, použijete to, v čem jste vyrostli, uchýlíte se k všeobecně známým pravdám. A kladná zpětná vazba se uzavírá.

Tak. Problém je pojmenován. Teď už jen zbývá pokusit se to nějak změnit.

Post mortem: Hrdina

Ach, Hrdina.

Co říct? První povídka, kterou jsem napsal po patnácti letech, protože mě tak neuvěřitelně oslovilo Twine a to, jak snadno se v něm tvoří interaktivní texty. Přitom jsem se ovšem tak nějak nedokázal oprostit od dědictví pasivních textů, takže fragmenty jsou dlouhé, interaktivity je málo a kromě několika málo míst kde lze zvolit mezi různými alternativami postupu příběhu a možnosti zvolit konec, který nejlépe odpovídá čtenářovu naturelu, jsem vlastně Twine využil jen k tomu, abych kvantoval text podle svých představ. Což ale samo o sobě je neuvěřitelně silný nástroj, který klasický text postrádá (tedy v granularitě kterou nabízí hypertext určitě).

Pravdou je, že hypertext jako forma literatury začal dávat smysl opravdu až v posledních letech, kdy se objevily tablety a mobilní telefony s dostatečně velkými displeji. Protože číst cokoliv delšího na monitoru počítače je z mnoha důvodů utrpení. Navíc se hypertextová interaktivní fikce naprosto přesně mapuje na dotykové ovládání tabletů, takže tok textu není ničím narušován (například nutností zadávat příkazy do parseru hry přes dotykovou klávesnici). Hypertext a dotyková zařízení jsou stvořeni jeden pro druhého.

Co dál? Možná by stálo za to poznamenat, že Hrdina, je prequel ke hře The Coward, která nikdy nevznikne, protože během jejího prototypování jsem zjistil, že napsat (ale hlavně nameshovat, natexturovat, narigovat, naanimovat a naskriptovat) něco alespoň zhruba odpovídajícího mé představě, je daleko za hranicemi toho, co může dokázat jediný člověk v čase, který mám k dispozici. Navíc proto, že Hrdina v podstatě zodpověděl všechny otázky kterými se měl zabývat The Coward, je příběh uzavřen a nemá cenu jej dále pitvat.

Nebo bych mohl dodat, že opravdu považuji jakoukoliv interaktivní fikci založenou na parseru za anachronismus, a měl jsem takový druh interakce za špatný nápad už před deseti lety, kdy jsem koketoval s psaním interaktivní fikce poprvé (ano, Singularita stále žije v mých myšlenkách, a je docela dobře možné, že se mi podaří ji napsat ještě dřív, než přijde rok, ve kterém se má odehrávat). Možná ještě tak v angličtině to může fungovat, ale čeština není jazyk stvořený k interakci s počítačem. Navíc parserové IF mají tendenci sklouzávat k puzzle-festům, které považuji za zhovadilé. Což samozřejmě souvisí s tím, že mě zajímají příběhy a ne variace na opotřebované hlavolamy.

A dále bych mohl pohovořit o tom, jak ve mně Hrdina probudil zapomenutý plamen a tak dále, a jaké mám plány s procedurálně generovanou IF, autonomními agenty atp. Ale neudělám to, protože další projekt kterým se budu zabývat je jednoduchá hra pro PC a mobilní telefony (napsaná v Unity3D), která mi zabere nejméně rok, takže by bylo předčasné předjímat, kam se má interaktivní tvorba bude ubírat v budoucnosti.

Hmm. Ale to je asi tak všechno, řekl bych. Pokud jste Hrdinu ještě nečetli, zkuste to. Třeba vás zaujme.

A pokud pak pocítíte potřebu, diskutujte níže.

Writing Twee code with Naracea

Recently I’ve written short interactive story (in Czech, of course) using twee (while I like idea of Twine’s user interface, I’m text/code person, so I prefer to use twee). I used my own text editor Naracea, because, obviously, it fits all of my needs, and it integrates with twee quite nicely (as I will show below).

Naracea supports branching, which can be used either to branch text to different versions inside of single file, or it can base multiple branches on initial state of the first branch and thus create multiple “notebooks” inside of one document. When writing story, I was experimenting with this for a while, and after couple of passages I realized, that keeping everything in single branch (or single text file), leads to horrible mess which I’m not able to manage.

So I’ve split whole story to multiple branches (around sixty when it was done) with most branches having only one passage in it.

That was nice and all, but there were two problems. One is necessity to setup each branch manually when it was created. I didn’t foresee this as a problem when I was using the editor for usual things like writing blog posts etc., but here it quickly became a major pain point. Fortunately all settings in Naracea are hierarchical, so when branch doesn’t define e.g. spell checker language, it will look in document’s settings (and then in global application settings).

Recently I added plugin model and possibility to script Naracea with IronPython, so it was quite easy to write little script to handle the problem:

import clr
# Get some types we need to use
clr.AddReference("Common")
clr.AddReference("Core")
from Naracea.Common import ( Settings )
from Naracea.Core.Spellcheck import ( DictionaryDescriptor )
from System import ( Exception )  

# Check whether a document is open and active.
document = PluginHost.Application.ActiveDocument  
if document == None:
	raise Exception("No document")

# Get spellcheck language from current branch. This way we don't need to import any further types.
# Just set spelling language on one branch from app UI.
currentSpellingLanguage = document.ActiveBranch.Settings.Get[DictionaryDescriptor](Settings.SpellcheckLanguage)
print currentSpellingLanguage.DictionaryName

# Now apply settings on document level.
# Since settings are hierarchical, when nothing is set on branch, document value is used.
# We set spellchecker, export format + extension and syntax highlighter.
document.Settings.Set(Settings.SpellcheckLanguage, currentSpellingLanguage)
document.Settings.Set(Settings.BranchAutoExportFormat, "TXT")
document.Settings.Set(Settings.BranchAutoExportExtension, ".tw")
document.Settings.Set(Settings.ViewTextEditorSyntaxHighlighting, "Twee")

# If there are existing branches in document, setup their exporting.
for branch in document.Branches:
	branch.Settings.Set(Settings.BranchAutoExportFormat, "TXT");
	branch.Settings.Set(Settings.BranchAutoExportExtension, ".tw");
	branch.Editor.Settings.Set(Settings.ViewTextEditorSyntaxHighlighting, "Twee");

Now I just setup one branch and run the script propagate settings to document (and all existing branches). (Also remember to close and open document again to see the changes, because I wasn’t planning things like this when I was writing those parts of Naracea — I’ll fix this in some future release.)

Nice.

The second problem was, that when all source text was kept in single branch, I was able to setup autoexport for a branch and get whole twee file (and then run the twee from command line to process it into HTML), now I have tens of branches which need to be merged.

So I created another script to fix this issue:

# CLR is needed
import clr   
# Some references to assemblies
clr.AddReference("Plugin")
clr.AddReference("System.Threading")

# Import classes we are going to use
from System.Threading import ( AutoResetEvent )
from System.Diagnostics import ( Process, ProcessStartInfo )   
from System.IO import ( Path )   
from System import ( Exception )    
from Naracea.Plugin.Messages import ( BranchShiftingFinished )

# No document? Report error
if PluginHost.Application.ActiveDocument == None:  
     raise Exception("No document open.")

# Here will be the merged story text
mergedText = ""

# We need to iteratre over all branches, get their text and add it to the mergedText variable.
# However some branches might not be activated yet (Naracea lazy loads branches to save 
# memory and improve file opening times), so we need to ensure they are all active before 
# getting text out of them.
document = PluginHost.Application.ActiveDocument  
activeBranch = document.ActiveBranch
# We will sync on this event
waitEvent = AutoResetEvent(False)
# Subscribe for message signalling branch was successfully initialized
PluginHost.Bus.Subscribe[BranchShiftingFinished](lambda msg: waitEvent.Set());
# Iterate all branches
for branch in document.Branches:
	if not branch.IsActivated:
		# Branch is not active, we need to activate it by setting it as active branch
		document.ActiveBranch = branch
		# And now we need to wait till branch is initialized
		waitEvent.WaitOne();
	
	# It is safe to get text now
	mergedText += branch.Editor.Text + "\n\n"

# Restore last active branch
document.ActiveBranch = activeBranch

# Log merged text to console if you need it
# print mergedText

# Now we prepare save path
# File might not be saved yet, and we will use temp path in such case
sourcePath = PluginHost.Application.ActiveDocument.Filename  
if sourcePath != None:  
     sourcePath = Path.GetDirectoryName(sourcePath)       
else:  
     sourcePath = Path.GetTempPath()  
       
# Exported file name building happens here
branchExportFilename = "tweenExport.tw"  
sourceFile = Path.Combine(sourcePath, branchExportFilename)
print sourceFile

# Open file and save text as UTF8
outFile = open(sourceFile, "w")
outFile.write(mergedText.encode('utf8'))
outFile.close()

# Now generate target filename 
targetFile = Path.Combine(sourcePath, Path.GetFileNameWithoutExtension(sourceFile)) + ".html"   
print targetFile   
  
# Following calls twee and executes conversion
compiler = Process()   
compiler.StartInfo.FileName = "cmd"   
compiler.StartInfo.WorkingDirectory = sourcePath   
compiler.StartInfo.Arguments = "/c c:\\devtools\\python27\\python.exe c:\\devtools\\twee\\twee -t sugarcane \"{0}\" > \"{1}\"".format(sourceFile, targetFile)   
compiler.StartInfo.UseShellExecute = False   
compiler.StartInfo.CreateNoWindow = True  
compiler.StartInfo.RedirectStandardOutput = True 
compiler.Start()   
output = compiler.StandardOutput.ReadToEnd()   
compiler.WaitForExit()   
print output 

# Open converted HTML file in default browser
Process.Start(ProcessStartInfo(targetFile))   

This will merge all branches in one text, save it to disk, call twee to generate HTML and open exported file in default web browser.

I guess this makes Naracea nice alternative for developing Twine/twee stories on Windows:

Twee code

Interaktivní fikce?

Tak tedy. Po všech těch letech jsem zase začal tak trochu psát.

Uvědomil jsem si, že když už jsem naprogramoval textový editor který používám jen já sám, měl bych jej použít alespoň k něčemu pořádnému.

A protože všude ve (anglicky hovořícím) světě, právě vrcholí cosi, čemu se říká Twine revoluce (a všímají si toho i mainstreamová média), rozhodl jsem se, že místo abych objevoval kolo, použiji tentokrát už hotový nástroj (ale protože jsem ještě pořád dost programátor, místo graficky orientovaného Twine používám příkazově řádkované twee a nějaké vlastní skripty v Pythonu).

V rámci své vlastní osvěty jsem se snažil dohledat nějaké české interaktivní fikce psané v Twine (nebo podobných nástrojích, jako je třeba Inklewriter nebo Undum) a… neuspěl jsem. Existuje vlastně jen jeden pokus o interaktivní fikci nového střihu který jsem našel — jmenuje se Díra a je to… hmmm… postkatastrofický příběh z Prahy po atomové válce, nebo něco v tom stylu (eh, pamatuji si, jak jsem na konci devadesátých let napsal postkatastrofický příběh z Prahy po atomové válce a už tehdy to asi nebyl úplně nejlepší nápad). Technologicky Díra vypadá jako produkt Inklewriteru, což není špatné, ale můj pokus o čtení záhy skončil, protože to prostě nebyl můj šálek kávy. Což je naprosto v pořádku, proto jsou všechny ty volně dostupné nástroje pro tvorbu IF tak důležité: každý může tvořit pro svou niché a všichni jsou spokojeni.

Nicméně mě zarazilo, že když existuje tolik nástrojů, zrovna v českém prostředí, které je rozhodně minoritní a úzce specializované, se neprojevuje více autorů, kteří by ty nástroje využili. Když se v Česku hovoří o narativních formách založených na textu s různým stupněm interaktivity, končí diskuse u vzpomínek na staré zlaté časy na Spektru, bla, bla, bla textovky. A to je podle mě dost depresivní. Dokonce jsem kdesi narazil na blog post z letošního roku (2013), který zcela vážně pojednával o tvoření engine pro parserovou textovou hru. Uh.

Tak tedy: Kde jsi, moderní česká interaktivní fikce? Kde jsou autoři z minorit, kteří by chtěli sdílet s ostatními své problémy, svůj pohled na svět? A nemusí to být zrovna příběhy o hormonální terapii transgenderových jedinců. Může to být něco docela banálního. Co já vím… třeba nějaká krátká SF nebo fantasy povídka, u které by bylo škoda neprozkoumat všechny možné konce. Nebo něco, bez stupidních inventářových puzzlů, co by se dalo přečíst/zahrát na tabletu nebo na telefonu jen prostým tapáním na hypertextové odkazy.

Och, ne že bych zrovna já chtěl být nějakým evangelizátorem, chraň Bůh. Já jsem jen člověk, který nedokáže odolat volání technologie, a přemýšlí co by s ní mohl udělat. A tak trochu mě zarazilo, že nemůžu najít nikoho jiného, kdo by se pohyboval ve stejné části právě tohoto dlouhého chvostu. Pokud nějaká česká komunita interaktivních fikcařů existuje, je dobře utajená (někde za druhou stránkou výsledků vyhledávání výrazu “interaktivní fikce” na Google) a možná je to škoda.

Tak, tak.

Chci říct: to psaní mě i po těch letech docela baví, i když jsou v celém tom procesu dvě místa, která mně dost vadí: za prvé revidování a editování. Už jsem zapomněl, jak pracné je pilovat i jen relativně krátkou povídku do podoby, kdy jsem s ní spokojen. Ta aktuální mě stála řekněme šest, sedm čtení a souvisejících úprav a nejspíš by snesla ještě další tři, ale chci se už věnovat něčemu jinému, takže… i když možná časem budou další verze, rozhodně ne brzy. Alespoň myslím.

A za druhé, je tu celá ta věc publikováním. Sice jsem se na rozdíl od většiny twinařů, nedopustil nějaké hluboké intimní zpovědi, ale stejně… I po těch letech, je to pořád stejně těžké.

Nicméně. Pokud máte jednu nebo dvě hodiny času, můžete je třeba zkusit strávit s tímhle.

Poslední přesun

Ach. Tak tedy opět. Ale snad už naposledy.

Ukázalo se, že udržovat více než dvě instalace WordPressu je pro mě neúnosné, a proto jsem se rozhodl konsolidovat své internetové impérium do jediného URL, kde bude všechno. Tedy ne že bych měl těch aktivit tolik, ale je to nesmírně obtěžující muset obejít i těch několik málo webů které mám a nebo bych časem chtěl mít. Tak proto tedy přesun.

Původně jsem se snažil vymyslet nějaké opravdu nápadité jméno pro doménu, kde bych se uhnízdil, ale ukázalo se, že na to už je pozdě. Proto tedy jménopříjmení.com. Časem bych rád publikoval nějaké krátké texty i v… angličtině — ano, dá se to tak nazvat — proto ne .cz. Navíc: nic vám nepřinese víc komentářového spamu a marných pokusů o přihlášení do administrace WordPressu jako doména .com.

Tak tedy: směle do toho.

PS: Původně jsem sem přenesl většinu starších postů z festivalu a nulové obtížnosti. Nicméně se ukázalo, že mé psaní nestárne úplně nejlépe, a především: vytáhnout posty z jejich původního kontextu způsobí, že se z nich ztratí dost z původního smyslu. Takže jsem je zase všechny smazal.