In deze handleiding leer je hoe je in een spel via de OpenAI API een missie als voltooid kunt markeren. Het is belangrijk dat de client, dus de browser van de speler, de volgende informatie ontvangt: De missie is succesvol voltooid. Hierdoor krijgt de speler de mogelijkheid om met Dr. Owen te praten en zo dichter bij het doel van het spel te komen. Laten we de details bekijken!

Belangrijkste inzichten

  • De missie wordt gemarkeerd via de property completedQuest in het responsobject.
  • Deze informatie wordt naar de client verzonden zodat de status van de missie kan worden bijgewerkt.
  • Als de missie als voltooid is gemarkeerd, kan de speler met Dr. Owen interageren.

Stap-voor-stap handleiding

Begin met de setup door ervoor te zorgen dat je basisapplicatie correct is voorbereid. In dit voorbeeld gebruiken we een responsbericht om de status van de missie bij te werken.

OpenAI API: Zo markeer je een quest als voltooid

We voegen een nieuwe property genaamd completedQuest toe aan het responsbericht. Deze property stelt ons in staat om de huidige status van de missie in verband met de drank die Dr. Owen heeft gegeven, op te slaan.

In onze code stellen we completedQuest in op by Dr. Owen Drink. Dit betekent dat de missie als voltooid wordt beschouwd zodra de functie wordt aangeroepen.

Vervolgens voegen we de naam van deze missie toe aan de property. Dit geeft ons de flexibiliteit om meerdere missies te beheren.

Nadat de definitie van de completedQuest-property is voltooid, verzenden we dit responsobject naar de client. Het is belangrijk dat we niet alleen de tekst van het antwoord verzenden, maar ook deze aanvullende informatie.

OpenAI API: Zo markeer je een quest als voltooid

Vervolgens ontvangen we dit antwoord in de client en verwerken het antwoordobject. Hierbij moeten we ervoor zorgen dat we toegang hebben tot de juiste property.

OpenAI API: Zo markeer je een zoektocht als voltooid

Wanneer de completedQuest-property niet undefined is, kunnen we op zoek gaan naar het overeenkomstige missie-ID. Deze ID stelt ons in staat om de specifieke missie te vinden die moet worden voltooid.

OpenAI API: Zo markeer je een quest als voltooid

Zodra de missie-ID beschikbaar is, stellen we het completed-eigendom in op true, waardoor we de missie daadwerkelijk als voltooid markeren.

OpenAI API: Zo markeer je een opdracht als voltooid

We gebruiken een query om ervoor te zorgen dat het ID overeenkomt met het completedQuest-ID en de juiste missie wordt gevonden.

OpenAI API: Zo markeer je een taak als voltooid

We doorzoeken de Game Runtime-gegevens die alle missies bevatten. Aanvankelijk is de status van elke missie ingesteld op false. Wanneer de missie nu als voltooid wordt gemarkeerd, passen we deze status aan naar true.

OpenAI API: Zo markeer je een taak als voltooid

Voor het gemak geven we de Game Runtime-gegevens door als prop aan onze Chat-component. Hierdoor kunnen we de missies op de juiste plaats in de code beheren en gebruiken.

OpenAI API: Zo markeer je een missie als voltooid

In de Chat-component gebruiken we deze gegevens om de missies op te halen. We zorgen ervoor dat we de juiste ID hebben om de correct voltooide missie te vinden.

OpenAI API: Zo markeer je een taak als voltooid

Zodra we de doelmissie hebben gevonden, stellen we de status in op true. Dit actualiseert ook de visuele status in het spel.

OpenAI API: Zo markeer je een quest als voltooid

Om het gedrag te testen, gaan we naar de bar en interageren met de barman. Hierbij geven we opnieuw het bevel om drankjes te kopen voor Dr. Owen.

OpenAI API: Zo markeer je een quest als voltooid

We sturen het bericht: "Koop alsjeblieft een drankje voor Dr.". Op dit punt zou de quest als voltooid moeten worden weergegeven.

OpenAI API: Zo markeer je een quest als voltooid

Als alles correct geïmplementeerd is, zal Dr. Owen in de gebruikersinterface verschijnen en zal de status dienovereenkomstig worden bijgewerkt.

Nu moet worden gegarandeerd dat, als de quest niet volledig is voltooid, de speler niet met Dr. Owen kan interageren.

OpenAI API: Zo markeer je een quest als voltooid

Zodra de queststatus op true is ingesteld, kun je interageren met Dr. Owen toestaan. Dit verbetert de spelervaring en laat de quest zinvol lijken.

Om de interactie verder te verfijnen, moet je in de volgende stappen een dropdown-menu toevoegen waarin meerdere gesprekspartners kunnen worden geselecteerd. Spelers moeten met verschillende karakters in het spel kunnen communiceren.

Samenvatting

In deze handleiding heb je geleerd hoe je een quest in het spel als voltooid kunt markeren en welke stappen daarvoor nodig zijn. Het correct beheren van de quest-status stelt je in staat om de interactiviteit in het spel te verhogen en de ervaring voor de spelers spannender te maken.

Veelgestelde vragen

Wat is een "voltooide Quest"?Een "voltooide Quest" is een missie of taak die de speler succesvol heeft voltooid.

Hoe wordt de quest-status bijgewerkt?De quest-status wordt bijgewerkt via de completedQuest-eigenschap in het antwoordbericht.

Kan ik meerdere quests tegelijk beheren?Ja, je kunt meerdere quests beheren door verschillende quest-ID's te gebruiken en hun status individueel bij te werken.

Waarvoor dient de eigenschap voltooideQuest?De eigenschap voltooideQuest geeft aan dat een bepaalde quest in het spel is voltooid, zodat de client dienovereenkomstig kan reageren.

Wat moet ik doen voordat ik met Dr. Owen kan praten?Je moet ervoor zorgen dat de status van de betreffende quest op true is ingesteld voordat de speler met Dr. Owen kan interageren.