Feature

Player Profile Social Icons

In the version 3.16 update, we introduced the ability to filter social icons in player profiles. Social icons are the linkable icons that appear in the screenshot below:

Steam icon available after snippet.

By default, Tournamatch supports Facebook, Homepage, Twitch, Twitter, and YouTube. These social icon fields appear as configurable options to your users when he or she edits their player profile:

You may modify the social icons available to your users by adding extending Tournamatch with custom code which filters the default list. Filtering this list is easy, and you should read how to extend a plugin in WordPress if you have never done so before.

A social icon in Tournamatch requires three fields: display_name, icon, and input_type. The display_name is the pretty name displayed to the user when editing his or her profile, the icon field is the name of the FontAwesome icon which will be displayed linkable in the public profile, and the input_type is text. You can look up any applicable social media icon on this page under the brand section.

In the screenshot below, the sample code adds the social media icons Instagram and Steam to the default list. Pay special attention to the function array_merge. Using this adds your icons to the list of defaults already given.

Custom Player Profile Social Icons Code

Add a filter for ‘trn_player_social_icon_fields’ to modify the social icons displayed to the user.

Ladder Rung-Up Ranking

Tournamatch comes with three different algorithms for ranking competitors on a ladder. The points and ELO ranking are common and straight-forward to understand. The third algorithm is proprietary to Tournamatch and offers you a unique ranking method. It’s also quite easy to understand. Unlike Points and ELO, a competitor is never penalized for losing a match. At the end of a match, if the winner is ranked lower than the loser, the winner will move up closer in ranking to the person that lost. Checkout these examples below:

No change in ranking

Player2 defeated Player7. The winner of the match is ranked higher than the loser, so logically we expected this outcome. No positions change as a result of this match.

Winner moves up

Player8 defeated Player3. The winner of the match is ranked lower than the loser, so this competitor moves up.

The exact number of positions the winner moves up is dependent on the difference between the two rankings, rounded down. So in our second example above, the winner moved up to spot 5 ((3 + 8) / 2 = 5.5, so 5).

The reason we don’t penalize the winner by dropping him in ranking is because we want to encourage play. One of the biggest challenges to hosting your own league is activity. If you get traction and a lot of matches, the last thing you want is for ranked competitors to sit idle to maintain their position (main issue with ELO rating). The only way a competitor can lose his position is by inactivity – somebody else in an unrelated match will leapfrog him.

Similar to ELO, this method has the advantage that the bigger the challenge (competing against a higher player), the bigger the jump up.The main disadvantage to this method is dodging matches. The best solution to dodging matches is to enable blind challenges. Competitors won’t get to see who they play until a challenge is accepted.

Ladder Standings Widget

Today, we’re going to talk about widgets. What is a widget? A widget is additional content or feature-specific code you can add to your sidebar. If you don’t know how to install a widget, you can learn more here.

Tournamatch ships with a Ladder Top X widget which allows you to display the top X number of competitors (players or teams) competing in a given ladder. It accepts two parameters. The first parameter is the number id of the ladder to display. The second parameter is the number of competitors to display. In the screenshot below, we’ve configured our widget to display the top 3 players for the ladder “” which has an id 1.

How to configure leader board widget.

How to configure leader board widget.

And here is what that looks like on the main page:

Ladder Top 5 Widget

Ladder Top 5 Widget displayed on the homepage.

To get the id of a ladder, simply visit the ladder standings page and look for the id in the URL address bar.

You can also use a widget more than once configuring it differently each time. For example, we’ve set up two instances of the Ladder Top X widget and we’re displaying the top 5 in one ladder and the top 6 in another:

Using multiple widgets.

Using multiple widgets.

Individual Team Record

There is no “I” in team. You’ve probably heard that cliché so many times you’re preparing to strike that back button if this turns into another retina-detaching eye-rolling message. This is not one of those messages. No, there is no “I” in team, but there is an “I” in Individuals Team Record. The version 2.18 release added a new feature that permits you to track the career and team records separately for individuals.

Before this update, an individual’s record was solely determined by his or her player’s performance. When enabled, you may record the individuals who participated in a team match. The player’s overall record is displayed separate his single’s ladder record on his profile:

Player profile showing singles and overall win-loss record.

Player profile showing singles and overall win-loss record.

Over on the team profile page, you can also view the records of members on the roster. Note that this will display the player’s record relevant to that team’s competition only:

Team roster displaying individual's team record.

Team roster displaying individual’s team record.

This setting is useful for communities where you permit a team to have “extras” on their roster and encourage competitors to reuse existing teams. You can enable or disable this feature in the Ladder Settings section in Tournamatch Admin > General Settings:

team_individual_records_03

The setting is disabled by default.

Blind Challenge Mode

In version 2.16, we added support for a new kind of challenge labeled “Blind” challenge. In a regular challenge, one competitor on a ladder chooses another competitor on a ladder, a time for the match, and then clicks send. In a Blind challenge, the challenger doesn’t directly choose anyone specifically to challenge. He or she just chooses a time to play a match and creates the challenge. The challenge list and challenge details will hide the challenger from users until the match has been accepted.

Hidden challenge information

Competitor data for blind challenges remain hidden until accepted.

You enable this feature when you create the ladder by selecting “Enable” from the “Blind Challenge” drop down. You may also edit an existing ladder to enable this feature.

Ladder Challenge Settings

Enable or Disable blind and direct challenges from the ladder admin page.

Once the challenge has been accepted, the challenger’s identity is revealed and an email notification is sent out. A future update may likely toggle the hidden nature of the challenge, but there is currently no timetable for this. Hit me up @Tournamatch or the comments section below and let me know your thoughts! We’re interested to know how we can further tweak this feature.

Ladder Ranking Modes

Tournamatch comes out of the box with three different methods to rank players or teams on a leaderboard. Two common methods available are points and ELO rating, and a unique third method is what I call “Rung-Up”. At this time, only one method may be used at a time, but expect a future update to permit having support for a combination of each with a default sort preference.

The points rating method is the most straight forward. When you setup a ladder in the administration panel, you may enter a number of points for wins, losses, and ties. Depending on the result of a match, each player or team gets points accordingly. While you can enter 0 points for a loss, I recommend using a value greater than 0 and less than ties. Competitors will always be rewarded for their activity and quickly rank higher than inactive participants.

ELO rating uses a complicated formula similar to chess or other club play. In general, the better player you defeat, the more points you will be rewarded. Defeating a player with a lower ELO than you rewards fewer points. Similarly, losing to a high ranked (relative to your ranking) results in very minor point loss and losing to someone ranked relatively lower to you causes you to lose the most points. Using rating is advantageous because competitors are not rewarded equally for wins. With points, each win is worth the same. In reality, a win over a novice should be less difficult and should also reward fewer points. ELO is great for encouraging competitors to compete against similarly rated individuals. The biggest criticism of ELO is rating inflation/deflation and inactivity of highly ranked players attempting to protect their rating.

The third rating method, which is unique to Tournamatch, is Rung-Up. Rung-Up is a system for ranking players which encourages competition by not penalizing a player for playing in a match. It doesn’t penalize players for competing because you can never lose rank by a loss. If a lower ranked opponent defeats a higher ranked opponent, he moves up. How much he advanced on the ladder depends on the matchup – we’ll share specific examples in another post. Any other outcome results in no change to either player. Even if the higher ranked opponent loses to the lower ranked opponent, the [higher ranked] loser does not lose ranking. It sounds odd at first; but, the reason we don’t want to penalize the loser is because we want to encourage activity. Using this ranking mode, there is zero penalty for a loss. Similar to ELO, the drawback to Rung-up is inactivity of players at the top attempting to protect his or her ranking.

New Admin Support

The way you authorize administrative users in Tournamatch changed in the version 2.7 release. Before this version, any admin that existed in your main Content Management System (CMS) also had administrative privileges in Tournamatch. PHP-Nuke required a user be a super user and phpBB granted access to anyone with elevated privileges. Neither of these behaviors are always desirable. Leverage existing access control systems to provide granular privileges per user and action for each supported CMS is no small task; so, we decided scrap that idea in favor of a much simpler solution constrained to Tournamatch’s administrative system.

Administrative users are now assigned using the Tournamatch admin. There is currently only two roles that may be assigned: (1) Super admin and (2) Regular admin. Both may manage everythign associated with Tournamatch, but only Super Admin’s may manage other admins. Adding more granular admin control is something high on our to-do list. The user installing Tournamatch is automatically set to be the Super admin.