better colors. player name fetching outside transaction to avoid fragmented transactions exploding