androidiosnode.jssocket.iomatchmaking

Realtime Matchmaking Learning Path


I want to implement a real-time multiplayer game, like a word game in my mobile app. I'm sorry if the question is too broad, but I want to set a learning path to myself to achieve my goal.

The idea roughly goes like:

First of all, I want to ask if this approach is correct?

Secondly, during the game-play, after getting assigned to the rooms, I want:

During rounds, users should be able to real-time chat.


To achieve this scenario, what kind of learning path should I set to myself?

Is Node.js, Socket.io and Redis good for achieving what I want to achieve? What do you suggest me as a learning path?

Lastly, I did reading and I came across Google Play Games allow this matchmaking, but requires users to login with Google+ accounts, however I am doing my login with OAuth2, and I don't want to change that. I want to achieve this on my own instead.


Solution

  • Node.js and socket.io will work just fine, I suggest you learn concept of rooms in socket.io for players to be in the game round. I don't see real need to use redis, it is key-value storage, but mondodb (or any kind of *sql db) could be useful for some data to be stored, like scores, leaderboards, etc.