Crossfire Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: CF: Disconnects and Saves




I think the best way of handling disconnects and saves would be to
first simply freeze the player in place.  If there isn't another player
on the map then also freeze everything on the map.  The map would
stay frozen for a several minutes to allow for a quick reconnect.
If player doesn't reconnect within the timeout then save this map
along with the player into a tmp directory with a random extension
and modifying the exits to return to home instead of the adjacent
map.  So when player logins later then they still have the same
map in front of them, but as soon as they exit this map then they
are returned home and this tmp map expires as it cannot be reentered.

This would handle the dropped objects case, the accidental disconnect
and quick reconnect, and provide some handling of the disconnect before
dying since usually if you can make it to another map then you are
able to rest and recover.  While there are cases which this isn't
perfect and intentionally disconnecting could still be advantageous,
this would seem to make things work pretty darn well.

							sdw

-
[you can put yourself on the announcement list only or unsubscribe altogether
by sending an email stating your wishes to crossfire-request@ifi.uio.no]