Zależy dokładnie od tego, jak jest złożony twój system. Jeśli to proste rozgałęzienie, wystarczy potraktować je jako liniową historię z kilkoma flagami, aby dokładnie powiedzieć, na której ścieżce się znajdujesz (lub jeśli wolisz wizualizować w ten sposób, binarną strukturę drzewa, w której każdy węzeł jest punktem wyboru historii i bieżącym miejsce w opowieści jest wskaźnikiem do jednego z węzłów). Nieco bardziej wciągająca historia z wieloma ścieżkami, które mogą się przecinać, może być modelowana jako ukierunkowany wykres acykliczny przy użyciu tej samej techniki.
Co jeśli masz wiele łuków historii toczących się jednocześnie, jak typowy system zadań „otwarty świat”, w którym gracz może mieć kilka zadań jednocześnie? Jeśli misje nie wchodzą ze sobą w interakcje, możesz traktować każde z nich jako osobne mini-drzewo liniowe lub rozgałęzione. Co jeśli się nawzajem zmodyfikują? Oto moja preferowana opcja:
Zmodyfikowany ukierunkowany wykres, w którym każdy węzeł reprezentuje zadanie. Oto dwa podstawowe rodzaje strzałek między węzłami: „aktywuj” i „dezaktywuj”. W ten sposób ukończenie zadania może otworzyć nowe zadania, a także unieważnić stare zadania, które nie mają już sensu (na przykład, jeśli otrzymujesz zestaw zadań, z których każdy ma pomóc innej stronie w walce frakcje, ukończenie jednego zadania może automatycznie ukryć inne, jeśli chcesz zmusić gracza do wybrania jednej strony i trzymania się jej). Będziesz także chciał zapisać w każdym węźle jego aktualny status: aktywny (aktualnie widoczny dla gracza), nieaktywny (nigdy nie był widoczny dla gracza), ukończony (gracz zakończył misję), nieudany (gracz widział misję ale został później dezaktywowany, na przykład poprzez ukończenie oddzielnej, konkurencyjnej misji).
Zabawna uwaga dodatkowa: każdy system, który działa dla zadania / fabuły, działa również dla pojedynczego drzewa konwersacji z NPC i odwrotnie. Jeśli więc znajdziesz odpowiedni system konwersacji dla swojej gry, zadaj sobie pytanie, czy warto go zmodyfikować również w systemie fabularnym.