RiotSharp 2.1 released

September 30, 2014 - RiotSharp, release

A quick post to announce the the next iteration of RiotSharp, our C# wrapper for the Riot Games API. As usual, I will list the changes for this new version and what we are planning for the 2.2.

Modifications to the Match and MatchHistory endpoints

There were a few additions to the match and matchHistory endpoints, most notably, you will be able to retrieve runes and masteries for a particular participant of a match (here the first participant in the last match of the summoner having 123456 as ID):

var api = RiotApi.GetInstance("yourApiKey");

var history = api.GetMatchHistory(Region.euw, 123456);

var runes = history[0].Participants[0].Runes;
var masteries = history[0].Participants[0].Runes;

New status endpoint

Riot introduced a new status endpoint to check on the statuses of the servers. Since server statuses are not linked to the usual api, we chose to build a new entry point: the StatusRiotApi.

You will be able to use the new entry point like so:

var statusApi = StatusRiotApi.GetInstance();

var shards = statusApi.GetShards();

var shardStatus = statusApi.GetShardStatus(Region.euw);

The GetShards() method returns the list of shards which represents a group of server, one group for each region.

The GetShardStatus() methods gives back status information about a particular shard given the region it is handling. For example, you can have access to the latest incidents of the first service whatever it may be (forums, store, website, etc) for the EU West shard as follows:

var incidents = shardStatus.Services[0].Incidents;

RiotSharp 2.2

There are a few things planned for 2.2: the most important of which are that we willl switch back to https to make requests instead of plain http, we will also implement rate limits per region instead of globally.

What the latter means is that, instead of being limited to 10 requests per 10 seconds no matter which endpoint you are using, you will be able to make 10 requests per 10 seconds to each regional endpoint.

For example, you will be able to do:

var api = RiotApi.GetInstance("yourApiKey");

List<Summoner> euwSummoners = new List<Summoner>();
List<Summoner> naSummoners = new List<Summoner>();

for (int i = 0; i < 10; i++)
{
    euwSummoners.Add(api.GetSummoner(Region.euw, i * 100);
}

for (int i = 0; i < 10; i++)
{
    naSummoners.Add(api.GetSummoner(Region.na, i * 100);
}

without having to wait 10 seconds between the two for loops. Note that it’s not the greatest of examples because there is the GetSummoners() method, but I think it gets the point across nonetheless.

Support and download

As usual, RiotSharp is available through nuget:

PM> Install-Package RiotSharp

If you encounter issues working with the wrapper or if you would like to see a feature implemented, log an issue on GitHub.