Jump to content

Proper Multi-Stage Loading Sequences


2 replies to this topic

#1 Major_Crash

    Member

  • PipPip
  • 30 posts

Posted 17 December 2012 - 06:00 AM

Preface
Stuff described here is very simple and obvious, it might have been posted in one form or another already. I think RnD team understands it, has it in backlog, but has not enough resources or has different priorities. My goal here is to document and express the wish for the feature to be implemented sooner rather than later.


Issues
Current loading and match-making sequence is very primitive and luck/timeout based. The following issues are observered:
    - uneven teams composition after loading (7vs8, 6vs7) since players fail to be found and/or load in allocated time frame. It is very frustrating to play in the under-manned team
    - disconnects/crashes are not dealt with which results in uneven teams
    - sometimes the match fails to be found after timeout

Suggestion
Implement proper multi-stage loading sequence and not rely on timeouts only. It can be done the following way:

  • Stage 0 - Initial. Player is in the mechbay.

  • Stage 1 - Queue. Player enters queue for the match.
      - there is queue indicator in the UI, showing the time passed, the estimated time for the queue to end (optional)
      - player has ability to exit queue and is back to stage 0
      - map is not loaded untill all players are found
      - stage ends when proper equal teams are found and all players are ready to load

  • Stage 2 - Loading.
      - all players load the map selected
      - there is a timeout for this process, e.g. 2 minutes
      - if at least one player fails to load due to disconnect/crash, all selected players are back to stage 1
      - if timeout is reached and at least one player is still loading, all players are back to stage 1
      - (optional) players can chat in the lobby
      - when all players are loaded, all are moved to stage 3

  • Stage 3 - Pre-game, optional/lower priority.
      - Players can chat, can setup keys/groups, can see map, can move, can discuss tactics
      - Ready/not ready sequence may be implemented or just timeout (45-60 seconds?)
      - Players disconnecting in this stage may force the game to be back to stage 1, but it may be abused, so it is optional

  • Stage 4 - Game. After countdown players play the game regularly. Disconnects at this stage has no effect. After the game is complete all are moved to stage 5.

  • Stage 5 - Post-game.
      - Score is displayed.
      - Players can discuss the game in a lobby
      - After timeout or by choice the players are back to stage 0 or 1

Ability to reconnect at stages 2-4 is highly desirable, and in this case there should be a timeout when it is safe to leave.


Examples
Dota 2 implemented near-perfect multi-stage loading and gaming sequences, can be regarded as a standard.

Thank you

#2 Satan n stuff

    Member

  • PipPipPipPipPipPipPipPipPip
  • Urban Commando
  • Urban Commando
  • 3,508 posts
  • LocationLooking right at you, lining up my shot.

Posted 17 December 2012 - 09:20 AM

You seem awfully fond of dropping both teams back in the queue. Wouldn't it be easier to just find a different player so the 15 players who didn't ctd can actually shoot something once in a while? If they do it your way I predict 15 minutes of entering/leaving queue before any match.

#3 Major_Crash

    Member

  • PipPip
  • 30 posts

Posted 17 December 2012 - 02:37 PM

View Post***** n stuff, on 17 December 2012 - 09:20 AM, said:

You seem awfully fond of dropping both teams back in the queue. Wouldn't it be easier to just find a different player so the 15 players who didn't ctd can actually shoot something once in a while? If they do it your way I predict 15 minutes of entering/leaving queue before any match.

I am fine either way actually. I just propose the simpliest scheme possible while fixing issues described. My points follow:
    - what to do with queued group when one of the players in the group drops, in most cases group wants to wait for his friend to restart the game or replace him with other player. Adding the last missing player from the queue instead and launching the game is not what group wants in most cases. Returing them to stage 0-1 is better, they can cancel the queue. This is questionable of course, but the choice is better than no choice.
    - yes, it is possible to load the map first and wait for players, but what you would rather want - staring into the locked map or just wait in mechbay where you have access to other mechs and what not. Introducing two flows - waiting in mechbay and waiting in the loaded map - is too complex and redundant.
    - Dota 2 returns you to the queue in such scenario, I took it as example






1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users