Scoreboard DisplaySlots.BELOW_NAME Logic Help

Sponge API: 6.0.0-20170221.102918-45
Sponge Build: spongeforge-1.11.2-2227-6.0.0-BETA-2180
Forge Build: forge-1.11.2-13.20.0.2226-universal
Java Version: 1.8.0_121-b13

Hello everyone, so I’m working on a PVP plugin, but I ran into a scoreboard problem. So in the first image was screenshotted by a contestant, C88. The problem with this image is that SalvadorZXA (me) received a team scoreboard, but was not suppose to.

The second image was screenshotted by another contestant, X, in another team. In this image though, the non contestant, SalvadorZXA is seen with a different scoreboard than image 1. Still though, SalvadorZXA was not suppose to receive the scoreboard under it’s username.

Through SalvadorZXA’s perspective though, neither of the contestants can be seen with thier team names under their usernames.

Does anyone have any clue to how this is happening and know of a way to fix this? Thanks.

Can you post the relevant portions of your code (e.g. where you create and manipulate scores and objectives)?

This is the method that creates the team name scoreboards. I should also mention that I’m certain that SalvadorZXA is not in either of the List<Player> lists.

    public static void setUpTDMT(List<Player> teamContestants, Text teamName) {
	
    for (Player player : teamContestants) {
    	
    	//sets up a scoreboard

        Scoreboard scoreboard = Scoreboard.builder().build();
        
        //sets up team name tag below username display name
        
        Objective teamTagNameObjective = Objective.builder().name(teamName.toPlain()).displayName(Text.of(teamName)).criterion(Criteria.DUMMY).build();
        
        scoreboard.addObjective(teamTagNameObjective);
        
        scoreboard.updateDisplaySlot(teamTagNameObjective, DisplaySlots.BELOW_NAME);
        
        player.setScoreboard(scoreboard);
    }
}

Can I see the code you use to create and update scores?