Hi FD.
Is it technically possible for you to implement the following:
Develop "Proxy Clients", to be hosted alongside existing servers
These would be capable of doing the same job as the regular player clients. As there is no "player" behind them, though, they just sit there...
...until an actual player in an instance fully disconnects from its N peer-to-peer environment.
At that point, the remaining clients would arrange handover of the various objects being controlled by the "lost" player client (as they presumably do now), but also handover of the "lost" player ship to an FD Proxy Client.
The Proxy Client would step in as a short-term owner of the disconnected player's ship. From the remaining players' perspectives, it would allow that ship to...
On successful FSD departure or ship destruction, close off any peer-to-peer instancing involvement, log the final state of the "recovered" player ship with the central servers, and go back to being dormant.
Client-side logic to manage handover
Clients would need changes to know where to find the Proxies, should they need them. They would need thresholds for non-responsive peers that avoid "hair-trigger" handover.
Anti-Script-Kiddie Stuff
Build a useful mechanism to help people, and the donkey squad will obviously try to break it.
A Proxy Client handover system would obviously want to record client sources of such handovers, to make sure smart alecs don't bump people out of instances as "funny jokes". Client interaction is presumably trackable on an account basis, so it's not like we're all anonymous in FD's eyes... so it should be quite manageable.
Awesomely clever Hand-Back Recovery?
Say my internet link dies and I get a "you have been disconnected from server" message... while I was sitting in an instance with three other players.
I log in again, hit Open Play, watch the spinny orange ship... and come back into the game in the same instance, with those three same players... who didn't even notice my disconnection. If the Proxy Client could simply hand BACK control to my real client once it came back, how cool would that be? My ship would have been run by AI for 30 seconds... then given back.
Anyway, just a few brain dump ideas.
Is it technically possible for you to implement the following:
Develop "Proxy Clients", to be hosted alongside existing servers
These would be capable of doing the same job as the regular player clients. As there is no "player" behind them, though, they just sit there...
...until an actual player in an instance fully disconnects from its N peer-to-peer environment.
At that point, the remaining clients would arrange handover of the various objects being controlled by the "lost" player client (as they presumably do now), but also handover of the "lost" player ship to an FD Proxy Client.
The Proxy Client would step in as a short-term owner of the disconnected player's ship. From the remaining players' perspectives, it would allow that ship to...
- Take evasive action w.r.t. incoming fire.
- Correctly receive and represent hits to shields and hull.
- Close any open hardpoints.
- Manage energy pips.
- Move asap beyond mass-lock or mass disruption range.
- Immediately spool up hyperspace to the nearest star (or, if range-limited, local frameshift), and make a jump out to safety.
- If docking permission was open at time of client loss, run the AI docking sequence... and bring the ship in to the pad.
On successful FSD departure or ship destruction, close off any peer-to-peer instancing involvement, log the final state of the "recovered" player ship with the central servers, and go back to being dormant.
Client-side logic to manage handover
Clients would need changes to know where to find the Proxies, should they need them. They would need thresholds for non-responsive peers that avoid "hair-trigger" handover.
Anti-Script-Kiddie Stuff
Build a useful mechanism to help people, and the donkey squad will obviously try to break it.
Awesomely clever Hand-Back Recovery?
Say my internet link dies and I get a "you have been disconnected from server" message... while I was sitting in an instance with three other players.
I log in again, hit Open Play, watch the spinny orange ship... and come back into the game in the same instance, with those three same players... who didn't even notice my disconnection. If the Proxy Client could simply hand BACK control to my real client once it came back, how cool would that be? My ship would have been run by AI for 30 seconds... then given back.
Anyway, just a few brain dump ideas.