Why you keep game id field as Option[Int] in 'GamesList' case class? Every game must have uniqe id.
If 'GamesList' had regular Int type for id field then this map instruction would look much better:

q.list map { GamesList.tupled(_) }