1. 커넥션 연결

1-1. 게임 서버로 소켓 연결 요청

1-2. 커넥션 연결 성공 메시지 전송

{
  "type": "game",
  "subtype": "connection_established",
  "mode": "online",
  "message": "You are now connected!"
}

2. 게임 초기 정보 전송

2-1. 클라이언트로 게임 초기 정보 전송

{
  "type": "game",
  "subtype": "match_init_setting",
  "mode": "online",
  "message": "",
  "match_id": 123,
  "data": {
    "battle_mode": 1,
    "color": {
      "paddle": "#FFFFFF",
      "background": "#FFFFFF",
      "ball": "#FFFFFF"
    },
    "ball": {
      "status": "in",
      "x": 0.0, 
      "y": 0.0,
      "radius": 0.04
    },
    "paddle1": {
      "x": -2.8, 
      "y": 0.0,
      "width": 0.1,
      "height": 0.5
    },
    "paddle2": {
      "x": 2.8, 
      "y": 0.0,
      "width": 0.1,
      "height": 0.5
    },
    "nickname": {
      "player1": "wonyang",
      "player2": "jeongmin"
    }   
  }
}

3. 게임(매치) 진행

3-1. 게임 서버로 매치 시작 요청 전송

{
  "type": "game",
  "subtype": "match_start",
  "message": "go!",
  "match_id": 123,
  "data": {}
}

3-2. 클라이언트로 게임 매치 데이터 전송 (1초 당 60번)

{
  "type": "game",
  "subtype": "match_run"
  "message": "",
  **"match_id": 123,**
  "data": {
	  "battle_mode": 1,
	  "ball": {
	    **"status": "in",**
	    "x": 0.0, 
	    "y": 0.0,
	  },
	  "paddle1": {
	    "x": -2.8, 
	    "y": 0.0,
	  },
	  "paddle2": {
	    "x": 2.8, 
	    "y": 0.0,
	  },
	  "score": {
			"player1": 0,
			"player2": 0,
	  },
  },
}

3-3. 게임 서버로 키 입력 정보 전송