Consider the graph where each vertex is a person and a edge means the two respective players have already played in oposite teams. At each game 16 edges are added so 16|n(n-1)/2. But at each game each vertex does not change the parity of it's numbers of edges (it either does not change or 4 is added). So 2|(n-1). So it is only possible if n=32k+1.
If n=33 the tournament consist of 33 games. Number the players as 1,2,...,33 and consider the 33 games:
(i,i+1,i+2,i+3) X (i+4,i+8,i+12,i+16), where the index are modulo 33. It is a possible tournament.
Now induction: If it is possible for 32k+1 it is for 32(k+1)+1:
Consider 32(k+1)+1 people and now choose one to be the leader. Choose 32k more people to play a complete tournament (with 32k+1 people) with the leader. Now the 32 people left and the leader play a complete tournament (with 33 people).
Now divide the 32k first people into 8k teams of 4 people, let these be the kind A teams. Now the 32 last people are divided into 8 teams of 4 people, let these be the kind B teams. Now all kind A teams play with all kind B teams and the tournament is complete.
So the answer is 32k+1 for k>0.