I am developing a Windows game engine that will let you create games styled like "Phoenix Wright: Ace Attorney". I have finished developing the data entry parts (evidence, profiles, animations, etc.), and now I am going to create the scene editor. With this editor, you can create courtroom scenes.
I am having a particular game-flow design problem with "choice branches", where the player can select an option from many, and something will happen depending on the choice. How should I design such thing? I have no problems creating a linear flow (action, action, action, etc.), but I am confused by things like cross-examination or chatting involve branching choices (action; if did something, do this; if did something else, do that; etc.).
What would be the most efficient mechanism to organize such branches for my design, in the simplest way for the user to understand? I don't want to make it too complex for the user to make a game with the engine.