Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: only parse time & seeking from TagPackets for Hide&Seek or Sardines #59

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

Istador
Copy link
Contributor

@Istador Istador commented Oct 13, 2024

Freeze-Tag uses the same UpdateType flags for some of its TagPackets as H&S and Sardines do.
But Freeze-Tag has another packet data structure that isn't matching IsIt, Seconds and Minutes.
Therefore the server wrongly interprets Freeze-Tag packets and updates its "seeking" and "time" metadata wrongly.
(These metadata fields are used to resend the TagPacket to later joining clients.)

This PR does the following changes:

  • 479e37a
    • update: external actions in .github/workflows/ to the newest versions
  • 189ac2d
    • fix: Dockerfile to avoid 3 warning messages
  • 765af57
    • add: game mode detection in the first 4 bit of the TagPacket.UpdateType
    • change: parse the TagPacket for the metadata iff it is clearly for H&S or Sardines
    • change: only resend TagPacket to new clients for H&S or Sardines

WARN: FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 4)
WARN: FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 37)
WARN: FromPlatformFlagConstDisallowed: FROM --platform flag should not use constant value "linux/amd64" (line 4)
Freeze-Tag uses the same `UpdateType` flags for some of its `TagPacket`s as H&S and Sardines do.
But Freeze-Tag has another packet data structure that isn't matching IsIt, Seconds and Minutes.
Therefore the server wrongly interprets Freeze-Tag packets and updates its "seeking" and "time" metadata wrongly.
(These metadata fields are used to resend the `TagPacket` to later joining clients.)

This commit does the following changes:
- add: game mode detection in the first 4 bit of the `TagPacket.UpdateType`
- change: parse the `TagPacket` for the metadata iff it is clearly for H&S or Sardines
- change: only resend `TagPacket` to new clients for H&S or Sardines
@Istador
Copy link
Contributor Author

Istador commented Oct 20, 2024

Added a setting and commands to ban unwanted gamemodes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant