Metlivi-blog

Hoe je spelers de weg laat vinden in tekstgames met vrije invoer

Als een game getypte opdrachten accepteert, kan een leeg invoerveld de indruk wekken dat bijna alles werkt. Spelers moeten ruimte krijgen om hun eigen woorden te proberen, maar ook aanwijzingen krijgen over wat de game begrijpt en wat er na elke poging is veranderd. Het praktische doel is niet om elke zin te voorspellen. Het is om betekenisvolle opties zichtbaar te maken, enkele representatieve opdrachtpatronen te tonen en onduidelijke invoer te beantwoorden met nuttige vervolgstappen.

30 september 20268 minuten leestijdDoor Metlivi Editorial Team
Sectie 1

Waarom een open tekstvak de volgende zet onduidelijk kan maken

Invoer in vrije vorm biedt een breed gevoel van mogelijkheden, maar het wereldmodel en de parser van de game bepalen nog steeds welke acties mogelijk zijn. Een speler weet misschien niet zeker of een opdracht mislukte omdat het werkwoord niet wordt herkend, het object ontbreekt, de formulering onvolledig is of de beschreven actie simpelweg geen effect heeft in de game. Emily Short wijst erop dat alleen een onbekend woord aanwijzen de speler niet per se vertelt wat die dan moet proberen; een duidelijk doel en een korte, zichtbare reeks nuttige werkwoorden helpen de speler op weg (“Parser Discussion, Redux”).

Dat onderscheid is belangrijk omdat getypte invoer een gesprek met de regels van de game is, zelfs wanneer de game het presenteert als gewone taal. De vrijheid van de speler is betekenisvol wanneer diens acties invloed kunnen hebben op de weergegeven wereld. Proberen elke denkbare zin te accepteren zonder bijpassende reactie van de wereld kan juist verwachtingen wekken waaraan de game niet kan voldoen. In Shorts ontwerpnotities wordt de taak van de parser beschreven als spelers sturen naar formuleringen die de gamewereld op betekenisvolle wijze veranderen, en hun tegelijk leren welke soorten interactie de wereld ondersteunt (“Action and Interaction”).

Sectie 2

Bied enkele zichtbare opties zonder ze als beperking te presenteren

Laat het invoerveld open, maar plaats ernaast een klein aantal suggesties die aansluiten bij de situatie. Maak ze concreet en koppel ze aan de huidige scène: “bekijk het briefje”, “vraag Mara naar de veerboot” of “probeer het hek”. Deze voorbeelden laten zien welke vorm invoer kan hebben en wijzen op mogelijkheden in de omgeving. Presenteer ze als uitgangspunten, niet als de enige toegestane opdrachten.

Een behulpzame aanwijzing kan ook een doel en enkele kernwerkwoorden noemen: “Ontdek waarom de werkplaats op slot zit. Je kunt dingen bekijken, met mensen praten of voorwerpen op de deur uitproberen.” Zo weet de speler wat de scène vooruit kan helpen, zonder een bepaalde oplossing op te leggen. Short beschrijft twee brede manieren om parsergames toegankelijk te maken: een breed scala aan invoer ondersteunen met hulp en suggesties, of de beschikbare actieset klein houden en die duidelijk aangeven. In beide gevallen moeten getoonde werkwoorden een betekenisvolle reactie opleveren (“Writing Novice-friendly Parser Games”).

De juiste balans hangt af van de situatie en kan worden aangepast. Als er veel aannemelijke acties zijn, kan een contextuele aanwijzing zoals “Wat kan ik hier proberen?” een kort menu bieden. Als één doel duidelijk is, volstaan misschien een paar voorbeelden. Als een actie nog ontdekt moet worden, verklap de oplossing dan niet in de lijst met hints; geef in plaats daarvan aan welke soorten interactie op dat punt beschikbaar zijn. Het doel is de woordenschat en mogelijkheden van de game zichtbaar te maken zonder elk gevolg uit te spellen.

Sectie 3

Leer opdrachtpatronen aan met voorbeelden

Voorbeelden zijn het nuttigst wanneer ze herbruikbare patronen laten zien in plaats van elke geaccepteerde zin op te sommen. Een game kan bijvoorbeeld “bekijk [voorwerp]”, “praat met [persoon] over [onderwerp]” en “gebruik [voorwerp] op [object]” tonen. Daarna kan de game er een of twee concreet maken: “bekijk de koperen sleutel” of “vraag Mara naar de veerboot”. Consistente formuleringen leren spelers hoe ze acties en doelen kunnen combineren. Neem een vorm alleen op als de game die daadwerkelijk ondersteunt.

Noem belangrijke zelfstandige naamwoorden zowel in het verhaal als in aanwijzingen. Als de scène een koperen sleutel beschrijft, moet de speler reden hebben om “bekijk de sleutel” of “pak de sleutel” te proberen; stilzwijgend een andere, verborgen naam vereisen leidt tot giswerk. Wanneer nuttige acties per object verschillen, kan een korte interactieaanwijzing helpen: “De grendel zit los genoeg om op te tillen” of “Op beide kanten van het briefje staat tekst.” Short raadt aan bruikbare zelfstandige naamwoorden te markeren en suggesties te geven, zodat spelers kunnen ontdekken waarop ze actie kunnen ondernemen (“Writing Novice-friendly Parser Games”).

Overlaad niet elke scène met een volledige catalogus aan opdrachten. Te veel suggesties concurreren met het verhaal, en een opvallend werkwoord noemen kan er onbedoeld een puzzelhint van maken. Geef liever een kleine, scènespecifieke selectie, met een hulpopdracht of uitklapbare naslag voor bredere uitleg. De gids van IFComp voor interactieve fictie met een parser vermeldt dat sommige games optionele tutorialaanwijzingen gebruiken, zodat spelers ondersteuning kunnen raadplegen terwijl ze het verhaal blijven volgen (“About IF”).

Sectie 4

Maak van onduidelijke invoer een korte verduidelijkingsvraag, geen doodlopende weg

Wanneer de game de actie begrijpt maar niet weet welk doel de speler bedoelt, stel dan een gerichte vraag. Als de speler “open het boek” typt en er twee boeken zichtbaar zijn, antwoord dan: “Welk boek: het rode boek op het bureau of het blauwe boek op de plank?” Een nuttige verduidelijkingsvraag noemt de opties op een manier waarop de speler ze kan onderscheiden. Als een vereist detail ontbreekt en er geen redelijke standaardkeuze is, vraag dan naar dat detail: “Wat wil je openen?”

Technische parserdocumentatie geeft een concreet voorbeeld van deze interactie: TADS beschrijft hoe je de speler laat kiezen tussen boeken op basis van hun zichtbare kleuren, en hoe je afzonderlijk om een object vraagt wanneer een opdracht als “open” geen doel heeft (TADS Parser: The Parsing Sequence). De bredere ontwerpregel is om de oorspronkelijke bedoeling waar mogelijk te behouden. Vraag alleen naar het ontbrekende onderdeel in plaats van de opdracht weg te gooien en de speler opnieuw te laten beginnen.

Als de game veilig een standaardkeuze kan maken, vertel de speler dan wat er is gekozen: “Je gebruikt de koperen sleutel op de tuindeur.” Als twee keuzes verschillende gevolgen kunnen hebben, vraag het dan. Emily Short raadt aan om een vraag te stellen wanneer een opdracht onvolledig is en er geen redelijke standaardkeuze kan worden afgeleid, en duidelijk te maken waarin dubbelzinnige objecten van elkaar verschillen (“Action and Interaction”).

Sectie 5

Reageer respectvol en richtinggevend op onverwachte vragen

Spelers proberen speelse, nieuwsgierige of niet-gerelateerde opdrachten uit. Behandel dat experimenteren als gewone deelname. Vermijd antwoorden die de speler berispen, bespotten of suggereren dat die de regels al had moeten kennen. Laat het antwoord in plaats daarvan waar mogelijk erkennen wat de speler bedoelde, en richt de aandacht daarna weer op de scène.

Als de speler bijvoorbeeld aan de werkplaatsklok vraagt of die weet hoe laat het is, zou een antwoord kunnen luiden: “De klok blijft tikken, maar geeft geen antwoord. Op het briefje ernaast staan allemaal cijfers.” Dit geeft een kleine reactie binnen de wereld en vestigt tegelijk de aandacht op een zichtbare aanwijzing. Als de game de invoer niet kan interpreteren, zeg dat dan duidelijk en stel een verwante ondersteunde actie voor: “Ik begrijp die actie hier niet. Je kunt het briefje bekijken of Mara naar de werkplaats vragen.” Doe niet alsof de game een zin heeft begrepen die niet in het model is opgenomen; een onterechte herkenning maakt latere uitkomsten moeilijk te begrijpen.

Maak onderscheid tussen invoerproblemen en uitkomsten in de wereld. “Ik herken die opdracht niet” duidt op een probleem met de formulering of woordenschat. “Het hek zit op slot” betekent dat de actie is begrepen, maar dat de toestand van de wereld haar verhindert. “Het hek beweegt niet” betekent dat de actie is geprobeerd, maar geen effect heeft. Als deze berichten verschillende betekenissen hebben, kan de speler bepalen of die de opdracht anders moet formuleren, informatie moet verzamelen of iets anders moet proberen. Shorts bespreking van parserfeedback benadrukt dat een algemene afwijzing spelers in onzekerheid kan laten over de vraag of een werkwoord niet wordt ondersteund of dat de actie buiten de wereld van de game valt (“Parser Discussion, Redux”).

Sectie 6

Laat zien dat een actie is geregistreerd en wat er is veranderd

Beschrijf na een begrepen opdracht het resultaat zo dat de speler opnieuw kan handelen. Als de speler de kast opent, vertel dan wat er nu te zien is. Als een vraag het antwoord van een personage verandert, geef dan een concreet signaal of vertel welke nieuwe informatie de speler heeft geleerd. Als de actie geen direct effect heeft, leg dan de relevante reden uit wanneer het personage die redelijkerwijs kan kennen.

Dit is de andere helft van de oriëntatie: spelers moeten bewijs krijgen dat hun actie bij de game is aangekomen, niet alleen een aanwijzing voor de volgende actie. Short stelt dat uitvoer informatie moet onthullen die nodig is om met de wereld te interageren, en dat geslaagde veranderingen zichtbaar moeten zijn, ook indirecte veranderingen wanneer daar een nuttig signaal voor is (“Action and Interaction”). Houd de feedback in verhouding: beschrijf een veranderd slot, een nieuw opgemerkt detail of een zichtbare reactie van een personage, in plaats van na elke opdracht een ongerelateerde uitleg toe te voegen.

Sectie 7

Een praktische werkwijze voor het ontwerpen van elke reactie

Maak voor elke scène een lijst van de belangrijke acties en stem vervolgens de aanwijzingen en reacties daarop af. Zo wordt de brede vraag “Hoeveel kunnen spelers typen?” een beheersbare ontwerptaak: “Kan een speler zien wat de scène ondersteunt, een onverwacht idee proberen, het antwoord begrijpen en een volgende stap kiezen?”

Bepaal welke voorwerpen, mensen en directe doelen in de scène actie mogelijk maken. Gebruik alleen details die daadwerkelijk zijn gemodelleerd of waarover je betekenisvol kunt vertellen.

Kies enkele representatieve acties en formuleer die als voorbeelden. Houd vrije invoer beschikbaar en zorg dat alle voorgestelde werkwoorden doen wat ze beloven.

Deel waarschijnlijke onduidelijke invoer in categorieën in: onbekende actie, onbekend doel, ontbrekend detail, meerdere mogelijke doelen of een begrepen actie die in de huidige toestand niet kan slagen.

Schrijf voor elk geval een aparte reactie. Een verduidelijkingsvraag moet herkenbare opties bieden; een onmogelijke actie moet het relevante obstakel uitleggen; een niet-ondersteunde actie moet een verwante mogelijkheid suggereren.

Controleer of het resultaat van een geslaagde actie zichtbaar is en of eerder onthulde informatie opnieuw kan worden geraadpleegd wanneer de speler die weer nodig heeft. Short raadt manieren aan om eerder geleerde informatie terug te vinden, wat vooral nuttig is wanneer plotdetails of gesprekken latere keuzes beïnvloeden (“Action and Interaction”).

Probeer de scène uit met letterlijke, onvolledige, anders geformuleerde en speelse opdrachten. Herzie elke reactie waardoor de tester niet kan bepalen of de game de actie verkeerd begreep, weigerde of accepteerde.

De nuttige maatstaf is niet hoeveel zinnen de game accepteert. Het gaat erom of spelers de relatie begrijpen tussen hun woorden, de acties die de game ondersteunt en de toestand die ze daarna zien. Enkele zichtbare opties, voorbeelden die patronen aanleren en duidelijke, niet-veroordelende feedback laten ruimte om te experimenteren, terwijl spelers genoeg informatie krijgen om verder te kunnen.

Gerelateerde artikelen

Blijf dit onderwerp verkennen