Yes, it is a design choice. However describing the current design and saying it "would not work" is plain silly. Technically it is being done in many games. Since I got to play around with the editor yesterday and create my first level: it uses trigger points, like I suspected. So events are scripted, as usual. This makes it much more easier to split savefiles into game status and character status. I think they were just short on programmers/money.(Just like the levels were only designed to be viewed from one angle. That saves a lot of time when creating maps.)
What happens to the character the host has been playing when this new person joins? They just lose them forever? If they come back when the friend leaves, what about all the plot choices the friend made? Have they permanently changed the host's version of those characters?
Well, I don't see any problem. You do realize that we are merely talking about values/strings. Saving them into seperate files and transfering them to host/peer is no problem on today's computers.
You would not overwrite the file storing the characters created by the host. When a player leaves you could just have the engine reload the old character. Players joining would upload their character (again, its just a few kb, not even noticable with current loading times) to host in a temp directory and it will be deleted as soon as the player leaves.
Sorry, but technically it is really not that big of a deal, if they had implemented it from the beginning. Now they are storing character and level status in one file. No problem seperating them, but it would also need a menu for creation and a menu for selection when joining. Like I said, level cap is easy to implement, just have a checkbox say "same level+-1 as host", "any". Let the players decide!
To the point:But I see this design choice as flawed. The fact that you are forced to play what a host created does not say Role Playing in any way. At least that is not the way the genre is defined. It is defined by players creating their own characters and then playing them.
It comes down to this:
- either you are forced to keep sending savefiles (like we are currently doing it) over, so the other person can play while the other one is working, so nobody loses their progress (provided you both started the campaing together)
- you are forced to play whatever a host created - countering the part of role playing, as you are forced to play what you have not created
- starting a new campaign/mod with lvl 1 with another person so you can play what you would like to play. Putting giant rocks in the way of cooperative gameplay. Again:
cooperative should not mean "you MUST ALWAYS play with the same person", it should mean "you can always play with another person". Regards,
Chris