#[repr(u32)]
pub enum DisconnectNotify {
Show 15 variants UnknownServerError, WrongGameVersion(u32), WrongServerVersion(u32), ConnectionOnInvalidPort, DuplicateLogin, ServerShutdown, UnableToLoadMap, InvalidSessionKey, AccountNotInPendingList, CharacterNotFound, CharacterCorruption, Kick, SaveFailure, FreeTrialExpired, PlayScheduleTimeUp,
}
Expand description

Notifies the client when it was actively disconnected by the server.

Trigger

Being disconnected by the server, the exact trigger depends on the variant.

Handling

Display a message to the user.

Response

None. Expect the connection to be closed shortly after, so a response won’t even be possible.

Notes

You can be disconnected without receiving this packet, for example when your connection is lost. The server is also not obligated to send this packet and may disconnect you without doing so.

Variants

UnknownServerError

Unspecified disconnect reason.

WrongGameVersion(u32)

The client’s network_version did not match the server’s network_version. The message contains the server network version number.

WrongServerVersion(u32)

Unused for client-server.

ConnectionOnInvalidPort

Connection attempt on invalid port, server emulators probably won’t send this as they usually won’t have server-server communication using LU’s protocol.

DuplicateLogin

There was another login with your account and your session has been closed in favor of the new login.

ServerShutdown

The server is shutting down.

UnableToLoadMap

No server hosting this map is available.

InvalidSessionKey

The provided ClientValidation::session_key is incorrect.

AccountNotInPendingList

Server did not expect a ClientValidation at this time.

CharacterNotFound

The provided CharacterLoginRequest::char_id was not a valid character ID of this account.

CharacterCorruption

The character seems to be corrupted in the database.

Kick

You were kicked from the server.

SaveFailure

Error saving or loading progress.

FreeTrialExpired

The account’s time-limited free trial expired, unused.

PlayScheduleTimeUp

The parental controls for this account prevent it from further play.

Trait Implementations

Formats the value using the given formatter. Read more
Deserializes the type by reading from the reader.
Converts to this type from the input type.
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more
Serializes the type by writing to the writer.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.