На сколько правильно делать вложенность promise?
client.pop('games:wait')
client.hgetall('games:wait:' + token)
client.hgetall('account:' + player1)
Эти строки уже возвращают Promise, исходя из вашего примера.
Поэтому лучше писать так:client.pop('games:wait')
  .then((token) => client.hgetall('games:wait:' + token))
  .then(({gameInfo: player1}) => client.hgetall('account:' + player1)
  .then((accountInfo) => console.log(accountInfo))
  .catch((error) => console.error(error));
Такой код выглядит просто и чудесно. Иначе вы пишите стилем "collback hell", вкладывая промисы друг в друга, убивая весь их смысл. Он были как раз придуманы ради того, что бы сделать ваш код в вопросе, таким, который я привёл в примере.
Иногда надо, но вообще обычно достаточно вернуть новый промиз из then и продолжать цепочку как ни в чем ни бывало.