Skip to content

Conversation

@Fate-JH
Copy link
Contributor

@Fate-JH Fate-JH commented Dec 30, 2025

The commentary in #432 should explain this problem thoroughly but, to summarize, the game had four RelatedB (RB) packets for reporting between client and server the last-received bundled packet by slot and subslot indexes. The number of bundled packets are eight SlottedMetaPackets (SMP), from 0 to 7. The related logic mapped from SMP0 to RB0 to SMP3 to RB3, but then remained unresolved as to how to deal with the mapping for 4 through 7. It was hacked to wrap back around SMP4 to RB0 and like so, but that was never proven either. This should restore that logic, thus restoring the original quagmire of whether that's the correct thing to do.

This becomes an issue when exploding too many Boomers and the client send some kind of information as an SMP4 which is out of bounds for the resulting RB. Why it uses SMP4 for this information and what of anything is the difference between it and the more common SMP0 is unknown. That is just the connected issue in demonstration of this issue.

@Fate-JH Fate-JH modified the milestone: 432 Dec 30, 2025
@Fate-JH Fate-JH linked an issue Dec 30, 2025 that may be closed by this pull request
@Fate-JH
Copy link
Contributor Author

Fate-JH commented Dec 30, 2025

Also, see #1341.

@Dethdeath
Copy link
Contributor

Just spamming thumper jammers onto a field of friendly boomers, like in #1341

[�[1;31mERROR�[0;39m] n.p.actors.net.MiddlewareActor - Could not decode packet: stream: cannot acquire 3864 bits from a vector that contains 3672 bits
[�[31m WARN�[0;39m] n.p.a.session.support.SessionData - Unhandled GamePacket SquadWaypointEvent(Unknown3,18861,633031,One,None,None)
[�[1;31mERROR�[0;39m] n.p.actors.net.MiddlewareActor - Could not decode packet: stream: cannot acquire 3968 bits from a vector that contains 3672 bits
[�[31m WARN�[0;39m] n.p.a.session.support.SessionData - Unhandled GamePacket OffshoreVehicleMessage(ValidPlanetSideGUID(23145),ValidPlanetSideGUID(60021),0)

[�[1;31mERROR�[0;39m] n.p.actors.net.MiddlewareActor - Could not decode packet: stream: cannot acquire 3760 bits from a vector that contains 3672 bits
[�[1;31mERROR�[0;39m] n.p.actors.net.MiddlewareActor - Could not decode packet: Failed to parse game packet 0x04: server_name: cannot acquire 90096 bits from a vector that contains 64 bits

[�[1;31mERROR�[0;39m] n.p.actors.net.MiddlewareActor - Could not decode packet: stream: cannot acquire 3760 bits from a vector that contains 3672 bits
[�[31m WARN�[0;39m] n.p.a.session.support.SessionData - Unhandled GamePacket QuantityDeltaUpdateMessage(ValidPlanetSideGUID(18985),1073932929)

[�[1;31mERROR�[0;39m] n.p.actors.net.MiddlewareActor - Could not decode packet: stream: cannot acquire 4072 bits from a vector that contains 3672 bits
[�[31m WARN�[0;39m] n.p.a.session.support.SessionData - Unhandled GamePacket QuantityDeltaUpdateMessage(ValidPlanetSideGUID(18985),1073932929)

[�[1;31mERROR�[0;39m] n.p.actors.net.MiddlewareActor - Could not decode packet: stream: cannot acquire 3760 bits from a vector that contains 3672 bits
[�[1;31mERROR�[0;39m] n.p.actors.net.MiddlewareActor - Could not decode packet: Failed to parse game packet 0x05: welcome_message: cannot acquire 439840 bits from a vector that contains 64 bits

I don't know if the increase in errors is indicative of anything being worse now as this is kind of a bugged edge case.

Blowing up over 50 boomers gave no errors.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Exploding many boomers causes a PacketCoding slot error

2 participants