This guide explains how to use Softserve’s event API to create custom tournaments. This is not a requirement for the class, but it can help you develop and assess your AIs. For example, you can play different versions of your AI against itself, or play another group’s AI in an exhibition match.
The key endpoint for this is /event/create.
POST to it as documented, including a list of player names to include in
the tournament and the number of game pairs for each matchup to play.
You can also include an event name, or omit the name field to have a
generic name generated.
The request returns the event name (necessary for you to know the
name if you didn’t specify one) and a token for use with
/event/data. You should mostly be able to ignore the token,
because Softserver will also email a dashboard link (with the token) to
every event player’s address. Use that link to access the event
dashboard and follow game results.
random playerThe player random can be included in events. Its moves
are entirely random across the possible actions from a state. It is
useful to test against as a baseline sanity check that your AI is making
better-than-random moves.
If you work with many events, you may find it cumbersome to start new
clients for each event. If you pass an asterisk (*) to the
event field of /aivai/play-state, your client
will be given states from any event its player is part of. This will let
you leave a client running while you create events for it, e.g. having
your current-best version running while testing modified versions
against it.