mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-10-31 00:47:14 +00:00
fix(wire): write SetStatusImmunity flags in the client's order
WIRE FIX. The 1.10.64 client writes and reads the immunity flags in alphabetical order after the u32 state (GameMessage::SetStatusImmunity:: Serialize @ 0x00d8f140; the field offsets are named by the Flash export at 0x00d8f410): BasicAttack, DOT, ImaginationGain, ImaginationLoss, Interrupt, Knockback, PullToPoint, QuickbuildInterrupt, Speed. DLU wrote them in declaration order, so e.g. a knockback immunity reached the client as an imagination-gain immunity. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -173,8 +173,9 @@ namespace GameMessages {
|
||||
};
|
||||
|
||||
// Server -> client.
|
||||
// NOTE: DLU writes the flags in this order; the client reads them in alphabetical order
|
||||
// (GameMessage::SetStatusImmunity::Serialize @ 00d8f140 in 1.10.64). Kept as DLU sent it in this conversion.
|
||||
// WIRE FIX: the flags go on the wire in alphabetical order, as the client's Serialize writes them
|
||||
// (GameMessage::SetStatusImmunity::Serialize @ 00d8f140 in 1.10.64; field offsets named by its Flash export
|
||||
// @ 00d8f410). DLU used to write them in the declaration order below.
|
||||
struct SetStatusImmunity : public NetGameMsg {
|
||||
SetStatusImmunity() : NetGameMsg(MessageType::Game::SET_STATUS_IMMUNITY) {}
|
||||
void Serialize(RakNet::BitStream& bitStream) const override;
|
||||
|
||||
Reference in New Issue
Block a user