With the recent enhancements to the combat API, players in Illyriad have been able to code their own tools to use in game. Some players, like the one I am interviewing below, have used the API to make their own tournaments. These tournies can be based upon anyone who wishes to share their API key with the tournament organiser, so the Illy crew thought it would be a good idea to ask someone how they do it in case others would like to try it as well.
Fundamentally, anyone who shares a specific API key with anyone else is sharing their specific API key-related data with that person for whatever purpose has been collectively envisaged (and can be revoked at any time). It's a kind of "contract" between players to use the specific data provided (and there are many API keys for different purposes) for any purpose the data owner and the data recipient have pre-agreed.
This is a critical point to understand. The API key system is about freeing players (as individuals) to share their specifically-permitted dataset with other individuals for whatever purpose they collectively choose.
In other words:
If someone chose to only run a tournament with a single alliance, then this is their choice.
If they chose tomorrow to run a military tournament that was:
- open to all players ingame, who
- wished to share their combat API key, but
- only if they were Elves, with
- cities in Ragallon, whose
- characters are at least 1 yr old and have more than 10 cities, but
- started playing on a tuesday, and only
- counting tournament military activity, if it
- happens on a mountain square
- in a jungle biome
- only during night-time hours
- during the full moon
- where they kill NPC dogs rather than players
... then that's their prerogative. That'd be the tournament they chose to set up. Pretty cool, huh?
The above is only a small example of the full set that could be tournamented; all the background data we provide works in harmony with the API key system.
And now, here's a chat with one of our players, Ubluntu, who's been test-driving the API system from the perspective of a player-run tournament:
Illyriad: OK, first up: introduce yourself. Who are you and how long have you played Illy?
Ubluntu: I am Ubluntu! I am a code monkey by trade and an Illyriad fanatic by choice. I have been playing Illyriad for a little under 3 years and in my time here many have come to know me as extra nerdy.
So what have you been doing lately? The word is that you host your own tournaments in game.
I sure do! I love to tinker with code and wrote some for Hunting Tournaments that run themselves. As far as I know, all other player-ran tournaments have required every player to send each relevant in-game-message to the organizer in some way. The organizer then had to copy and aggregate that information.
You have been using Illyriad’s free combat API, but what does that mean? What is an API and how does someone use it?
API stands for Application Program Interface. It is a way for different software to interact. In the case of Hunting Tournaments, your Combat Report API Key grants me direct access to your combat data in a machine-readable way that does not require any additional interaction from you (after you have generated and submitted your API Key).
So, rather than having to care about every in-game-message regarding anything that counts, “points” are automatically assigned while the host does nothing but have fun playing the game.
What do you enjoy the most about running your own tournies?
Initially it was the increased activity among alliance members, but now it may be the gold! ;)
What else could be done to make self-hosted (player-hosted) tourneys better or easier?
I feel like being able to send in game mail to more than one player at a time and improvements to the Alliance Forums(HTML and edit/delete posts/threads/forums) would make it easier to organize and inform players.
If an Illy player wanted to get started with running their own tourneys, what should they do to get started? What sort of advice would you give them?
To get started, just pick your favorite programming and language (all APIs are XML over HTTPS) and database then have a look at the API announcement posts:
Combat Report API :
Notification API :
In Game Mail API :
My advice would be to pick tournament rules that are already enforced by the game itself and assign points according.
Thanks again to Ubluntu. He has been a great player for quite a long time, so we were eager to get him to explain how he has been hosting his own tournaments. If you have any specific questions, put them in the comments section. You can also email firstname.lastname@example.org with any questions and we'll see if we can get an answer for you.