Railroading players by forcing them to do what the DM wants is a bad thing. However, there is a “railroad” that runs through sandbox style play that should be acceptable and welcomed.
The timeline.
What I mean is, the DM comes up with plots, situations, rumors, etc. and puts certain things on the campaign calendar, things that WILL happen – barring intervention by the PC’s or others.
For example, the sun comes up every day, unless something changes that.
The DM comes up with a situation and puts it on the calendar/timeline of the campaign. That “something major” event will happen unless something stops it. This major event could be good or bad.
An example of a good event is a diplomatic marriage that will end decades of tragic war. This event will happen barring outside intervention. A powerful wizard may like that this war keeps these two nations too busy to stop her consolidation of power among groups of humanoids. The end of hostilities means that she will have to use her time and other resources to stop their meddling instead of putting it towards her own goals. Thus it makes sense that this major NPC would hire an assassin to keep her own involvement in the background. Perhaps the PC’s have not discovered the existence of this “big bad.”
The DM assigns a chance that the assassination will succeed or fail. The DM determines through a roll or through choice that the assassination will succeed unless someone finds out about it.
It is up to the DM whether or not the PC’s ever find evidence of any plot. If the evidence is put into the campaign, what if the PC’s NEVER find it? This is NOT a problem. If the PC’s don’t know about something, they can’t do anything about it. The assassination goes through and then the PC’s are tasked with getting to the bottom of it. If the assassin gets away without leaving a trail, what do they do? If they would rather go fight giants, or seek out a dragon, let them.
If the PC’s happen to have done something that merits their presence at the wedding, maybe then they get wind of something, and have a chance to change the course of the timeline. However, it should not be a requirement that the PC’s even know about this. If the “big bad” has the resources to hire the best assassin, how likely is this person to make a mistake? There is a chance, and the DM should decide if there is a chance of failure, or how exactly they want to play it.
If the PC’s are nowhere near the scene, i.e. they are across the world, or in a dungeon, or otherwise unavailable for the event, it goes down as pre-determined.
In my mind, this is the only thing that some might consider a “railroad” that is permitted.
However, it is still possible that through the actions of the PC’s the original assassin might be met in another situation before then. If they take out this assassin, then the next best assassin must be assigned to the task, and their chance of success or failure is likewise determined.
Perhaps, the PC’s decide to go investigate something that leads them to discover the big bad and interrupt her plot.
I have played in many games and GM’d several with all kinds of options presented to players. The players ALWAYS manage to find some significance where the GM may not have intended it to be. This is OK. The players sense that something is important and it opens up a whole new something to be explored, be it a plot, dungeon, monster, etc.
The calendar or timeline for the campaign is the schedule and not the railroad. Just as something can delay a train, tracks out, accidents, fuel shortage, robbery, etc., many things can delay or redirect the events of the campaign timeline. In some places, the train never runs on the times stated on the schedule.
For my campaign, I determine a year or two worth of events. I like the idea in the AD&D Oriental Adventures for determining the event for each year and for each month in the year. Some events, like a flood or earthquake may be nearly impossible for the PC’s to stop. Other events, like an invasion, might be something that can be stopped or delayed, or prepared for, if the players find out about it and can get word to the right people.
Having a campaign timeline with nearly inevitable events planned is not a railroad. A railroad would be forcing the players to do something about them. What if the players don’t see their involvement as required or important? What if they see some other plot or action in the world as more important?
An example from my campaign is a wedding between the ruler of the town that is the home base for the players, and the king’s niece. The players had just found a magic sword and shield that I expected them to use. Instead, they had their own plans. They want to get in good with the powers that be for their own ambitions. So they make a present of this sword and shield to the Baron, and because there is some well-known lore associated with them, they get invited to the wedding and later reception/party, where they get to meet the princess, the king, and several other powerful people.
My plan was that the wedding happened and they might get a glimpse of the king and retinue when they came into town and for the procession to and from the temple for the wedding, and perhaps again when they left. How many players just give up a magic weapon and armor, KNOWING that they are magical?
I never saw their actions coming, so I had to improvise a wedding ceremony and party and have other NPCs generated on the fly.
The players were much more excited to have met the king and queen, and gotten in the good graces of the baron, who is now married to the king’s niece. Yes, the magic items were cool, but the roleplaying and the player driven goals were so much more fun and interesting than I could ever come up with on my own.
It is like the twist ending of a book or movie that is handled so well that you don’t see it coming and are rewarded by getting the full effect due to the finesse with which it was presented. If you have ever seen a movie, or read a book with a big twist at the end that is predictable and not well presented, it leaves one feeling uneasy and disappointed. A railroad that forces the players to go where, when, and how the DM wants them to go is like the poorly executed twist, totally unsatisfying.
A timeline or calendar is not a railroad, just a schedule of possible future events in the course of the game. The players don’t know about this schedule, and only learn of events as they happen, or if they happen to be in the right place at the right time to learn of them before they happen. Even if players know that something is up, they have the power to decide if that something is important enough to figure out what it is, and if they should do anything about it.
For example, suppose the players learn of an assassination plot to disrupt the wedding? What if they just get word to the appropriate authorities about this, and the location or timing of the wedding changes? That alone might be all that it takes to foil the plot. Or it might force the big bad to come out of hiding and get involved personally to make things go her way.
As I have said elsewhere, if the DM/GM has a story to tell, they should write the story, instead of forcing the players to do something in-game that does not interest them.