Being Linear vs Feeling Linear
Final Fantasy XIII has a problem, it feels extremely linear. For the first hour of the game the player is literally on rails (a train track) which only goes one direction. After the literal rails go away the player is still on rails throughout the game. No one wants to feel like they have no say in where they are going.
Once I started thinking about it, I realized that almost all the Final Fantasy games are on rails. That isn't the problem. The problem is the player realizing how structured the path in front of them really is. There is most definitely a difference between a game being linear and a game feeling linear.
If you take a look at the older Final Fantasy games a few things stick out that make the world feel open. The most important in my mind is having an overworld. The overworld lets a player roam freely, even if they only have one destination they are aiming for. Even in Final Fantasy X there are large areas to roam, although there is no classic overworld to speak of. These areas give the feeling of openness, which is paramount.
On top of the overworld there are also optional side-quests that require treks across the world. Not only does this add replayability to areas (since the player must travel back to them) but it also lets the player decide when and if they are going to complete a quest. Even that little amount of player control makes a world of difference. It is the difference between having a say in the story and having the story be completely out of your hands.
When a player begins to feel that they have no say in the story they get frustrated and immersion is lost. This is especially true in a game like FFXIII where there are so many non-interactive cutscenes. Many times I felt that I might as well be watching FFXIII the movie since I was barely having any input in what was happening on-screen.
Developers need to be very careful when designing a game in such a linear style, otherwise they risk losing players who feel like they have no control of the game they are playing.