Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Qt Remote Objects vs MQTT



  • Hi, dear readers!
    I am considering a solution to use in my project: multiplayer game with 10000+ users simultaneous connections.
    The game runs on mobile devices and requires the highest latency rating.
    Task is to sync game world state among every user.
    Which solution is better for this task?

    • MQTT
    • Qt Remote Objects (I did not find the performance tests and specification)
    • Other

  • Lifetime Qt Champion

    Hi

    MQTT
    "optimized for high-latency or unreliable networks"
    But we kinda want huge performance.

    Qt Remote Objects
    Its IPC and more suited for other use cases than
    syncing a game world with 10K clients.
    Not it could not work but im not sure performance is there.

    Other
    Google around to find something already made for gaming.
    I suspect something based on UDP will provide the best performance as
    most existing games seems to use it.

    https://github.com/MFatihMAR/Awesome-Game-Networking

    ENet - Simple and robust reliable UDP networking library.
    GameNetworkingSockets - Valve's internal (Steam) network transport layer for games.
    RakNet - Full-featured and mature reliable UDP networking engine.
    yojimbo - Reliable UDP networking library for client/server games with dedicated servers.


  • Lifetime Qt Champion

    Hi,

    There's a pretty interesting Ars Technica article about netcode in fighting games. Worth a read.