As far as I can understand html games structure, true branching or non-linearity of story can be very problematic, because the amount of work needed basically growths exponentially as the story progresses.
It is why various lifesim html games here and around are at most a collections of linear stories that do not branch out much within itself and just allow players to choose in what order they complete these stories.
So to keep stuff manageable you need to fold the 'branches' of the story back into main 'trunk' on the regular basis.
Uh-huh. I don't know what this story structure is called by real game designers, so I'll describe it in my own words. It's bubbles with variations (choices), connected by narrow passageways, like a bottleneck that a player must inevitably enter for the story to stay under control and be able to move forward.
Many RPGs are built on a similar structure. For example, the Mass Effect series. Let's take the second part for illustration. Shepard wakes up after resurrection, goes through the starting mission, talks to Illusive Man, and gets Normandy. It's
that bottleneck. You can then fly around and complete missions at will. This is
that choice bubble. Then, invariably, the mission with the Normandy crew kidnapping happens. That's the narrow bottleneck again. Then we go back into a new bubble of choices until the final suicide mission, which is... yes, the final bottleneck in this game's part.
So when I read complaints, about Selene being obligated to join the troupe and it being, like, railroaded... Well, that was about as adequate as demanding that Shepard, say upon meeting the Illusive Man something like:
"Hey, thanks for the ship, but fuck you and humanity. I'm out." Then he/she renamed the Normandy to Crushandy and started traveling across the galaxy as a space courtesan because that's what he/she always wanted to do.