Conza said:
Your first point I left for last because that sounds cool, but also quite impossible.
Do you mean to say, that instead of a fixed story, you're just in a world or some sort? Could you elaborate on this a bit more? I think I get what you're saying, but if I do, that doesn't seem possible.
Here's an example. Let's say you're making a military FPS and you're scripting something where when you approach the terrorist base with helicopter support. A terrorist comes out with an RPG and shoots the helicopter and spins and crashes into a building. First you'd have to figure out how to make sure the helicopter is in the right spot when the player hits the invisible trigger, so maybe the helicopter flies in front of you to hover at a designated waiting position. You hit the trigger and the scripted animation starts. The terrorist walks out. Now you have to either make the terrorist temporarily invincible or tie the player's hands somehow (maybe the player's still riding in a humvee or something). Then you have to script the shot from the RPG to the helicopter's designated hovering point, animate the smoking and spinning helicopter, animate the deformation as it hits the building, animate the debris from the building, etc. It's a lot of work to make that one thing happen, and probably more work to make sure that the player stands in the right spot and has a good view of it.
Now, if the game has more advanced AI and physics, then all you need to do is set up the situation and it'll naturally happen, probably slightly differently for every player of the game. Just tell the helicopter pilot AI to circle around the terrorist base, and give the terrorist AI a high-priority objective to take down the helicopter. Then it's no longer a scripted linear sequence, just a situation in which there's a very high probability of a cool helicopter crash happening.
Maybe one player approaches the situation, and the helicopter's flying just over the humvee that he's riding in when the RPG hits in. That guy has to get out of the humvee and run like hell.
Another player approaches the same situation. And this time the NPC helicopter pilot reacts quick enough to dodge the RPG shot, but in its evasive maneuver clips a building, and it's too out of control to avoid the next RPG shot. The helicopter is jolted back towards the building, its blades all get clipped off by the building wall. The blades fly out everywhere and the helicopter drops like a stone.
Yet another player approaches the same situation, sees the guy with the RPG and manages to take the shot. Another terrorist runs in and picks up the RPG, and manages to hit the helicopter, which is closer to the base this time and ends up crashing into a ammunition cache. BOOM! Whoa, hey, there's a new entrance to the base now!
That's the kind of thing I'm talking about - instead of forcing the player through linear sequences, developers can just set up situations where something awesome is just waiting to happen, and trusting the engine to work its magic.
Although, I suppose any sequences involving recorded dialogue by voice actors will have to remain about the same as this generation.