Skip to content

Cross-platform sessions allow one player to join the same match with multiple accounts #4950

Description

@ahmetcemkaraca

Describe the bug

The same person can join one public match with multiple accounts by using openfront.io and the CrazyGames version at the same time.

I can join the same game with one account on openfront.io and a second account on CrazyGames without either account being blocked or penalized. I can also join with a third account by running another CrazyGames session.

This gives one player control of two or three starting positions and multiple sets of starting resources. Depending on the game mode, the extra accounts can transfer resources, protect the main account, or be deliberately absorbed to create an early advantage.

To Reproduce

  1. Open openfront.io and sign in with account A.
  2. Open OpenFront on CrazyGames and sign in with account B.
  3. Join the same public lobby from both sessions.
  4. Both accounts are admitted and can select separate spawn locations.
  5. Optionally, open another CrazyGames session with account C and join the same lobby again.
  6. Start the match and use the extra account or accounts to support the main account.

Expected behavior

A single person should not be able to control several active players in the same public match just by mixing openfront.io and CrazyGames sessions.

I do not know enough about the full production architecture to suggest one specific implementation. The solution should work across the supported sites, avoid punishing legitimate players on shared networks, and stay lightweight enough for the current game servers and peak lobby traffic.

I plan to work on this issue. I have reproduced the bypass in live games over the last two or three days, so the behavior is not based on a one-off test or an assumption.

Screenshots

I can add a recording showing both domains and all joined accounts if needed.

Desktop (please complete the following information):

  • OS: Windows
  • Browser: Chrome
  • Version: Current stable version

Smartphone (please complete the following information):

  • Device: Not tested
  • OS: Not tested
  • Browser: Not tested
  • Version: Not tested

Additional context

Related issues: #571 and #589.

There are already protections for same-origin tabs and duplicate sessions on the same account, but the cross-platform case with separate accounts is still possible.

I would like this issue to stay open to ideas from maintainers and contributors who know the server architecture better. Some questions worth discussing are:

  • Can this be handled mainly when players join a lobby, rather than adding continuous work during every game tick?
  • Which account, session, network, or match signals are reliable enough to use without depending on browser fingerprinting alone?
  • How can shared homes, schools, internet cafes, mobile carriers, and VPN users avoid false positives?
  • Would a hard block, a lower per-match limit, risk scoring, or moderation flags fit the current infrastructure best?
  • What limits should be placed on extra database calls, memory per lobby, network messages, and join latency?

I am happy to work on the implementation once the maintainers agree on an approach that the production servers can support.

Assignment

  • I'd like to be assigned to this issue and work on it myself

Metadata

Metadata

Assignees

No one assigned

    Labels

    StalePRs that haven't been touched for over two weeks.not-approvedThis issue has NOT been approved by the maintainers.

    Type

    No type

    Projects

    Status
    Triage

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions