Deixando mais amplo o que o Liger disse, para cada ação/consequência que impacte o futuro do jogo tu pode ter uma variável ou switch (eu recomendo mais switch a menos que a ação tenha mais de duas ramificações). A partir daí, para cada coisa que for impactada no jogo tu tem de criá-la para obedecer às diferentes situações da variável ou switch.
Por exemplo, um senhor me pede para pegar 4 frutas. Dentre as disponíveis eu tenho maçãs e laranja. Posso ter uma resposta diferente do senhor para quando eu entregar as frutas, ou seja, ele pode dizer uma coisa se eu entregar 4 maçãs, dizer outra se eu entregar 4 laranjas, uma terceira coisa se eu entregar mais maçãs do que laranjas, uma quarta coisa se eu entregar mais laranjas do que maças e ainda uma última se eu entregar duas de cada frutas.
Percebe-se portanto que o trabalho cresce exponencialmente ao adicionar ramificações do enredo, então minha dica é usar com extrema moderação e manter tudo isso bem escrito, pra tu ter controle sobe o desenvolvimento. É uma função muitíssimo legal, incrementa muito no jogo, mas também pesa muito no trabalho, então implante isso conscientemente para não virar problema pra tu.