.NET Unreal Tournament Bots allows you to create AI players for Unreal Tournament (Classic) in C# or whichever .NET lanaguage you want. This project is free for all to download and contribute to it consists of the UT mutator (based on GameBots
) which runs on the server and the C# code which connects to the server and provides an easy to use API for people who want to build a bot.
How It Works
The code is split up into a variety of different projects as it has been developed by a number of different of people each with their own approach these projects can be looked at as either server side, that is UT Script, and client side. All the projects are
on CodePlex are client side and all are written in C# for .NET 2.0.
The Client (Client Side)
These two projects represent they bulk of the client side, they don't create any bots or do anything. Instead they are designed to be class libraries from which users can extend to create bots that play the game. Basically they take the messages from the
server and parse them into a game state they also take methods calls from the client and parse them to messages for the server.
The Tools (Client Side)
As building and debugging a bot can be difficult there needs to some tools that can make it easier. One of those is the Visualsier which was released along with the GameBots implementation and as such is mainly written by others (No one seems exactly who but
we tried to add some comments for who we think created it) the version on CodePlex has been ported too .NET 2.0 and has been slightly refactored, but needs a major overhaul to make it truly thread safe (Volunteers?).
The Sample Project (Client Side)
These two projects are just examples of how someone should extend the bot and how they could create their own, basically this is what you get if you downloaded one of the Starter Kits.
The Server (Server Side)
As previously mentioned the server is in UT Script and is largely the same as the GameBot released with some
(Read: Null Ref) exceptions cleaned up. As it was released by the folks over at GameBots as a GPL we can't upload it up here. If anyone is interested drop a note on the forum and we'll gladly share.
This project originally started life as a coding competition at the University of Hull, using the GameBots mutator and a new C# client, students set about creating bots to duke it out. As cool as it was, it was never intended to be a big thing so the code isn't
that well documented and could probably stand a lot of refactoring. It's also a combination of a lot of peoples work, some of which we have lost the credit for, our apologies, as such when we say GameBots we may also refer to the nice people over at RIT.