Posted by & filed under Code, Project.


During the Beta for Hawken, the developers turned off the server browser to maximize the usage of their matchmaking (in order to perfect it). This made those who wanted to setup an organized scrim very painful. I checked out how Hawken retrived the list and put together a simple interactive table using jQuery and Datatables. To actually fetch the data, I had to create a simple library in python 2.x for Hawken’s services as Javascript by itself would fail (due to some overhead required in XHRs). I then used it in combination with Flask as a proxy in order to filter and combine multiple requests together. The result would show the users on the server, the map, and the ip address + port the server is running on.

This project is the first one I hosted on Heroku. It’s a very good service if you don’t need to a database.

I then rewrote the entire thing from scratch and used Bootstrap as a base for the client side to make things look nicer.

2 Responses to “Hawken Server List”

  1. Reply Houruck

    Is this project currently running somewhere?
    Would you share your source code or can I embed a filtered query to a website?

    • Reply Shade

      I had it running on a heroku box. ADH/Meteor has since updated their backend since then however, making my current implementation is broken. Fixing it has been on my todo list for awhile.

      As for the source code, I haven’t exactly asked permission to use their APIs (though someone on the team does/did know about it). ADH hasn’t publicly released a proper API (that can be throttled per application), so I’m hesitant to release it. I had to monitor the games activity to find out enough to make the server list.

      If I get around to updating the server list. I’ll send an email to you about using my site (since it already has a few json endpoints like that) as a pseudo API.

Leave a Reply


To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    Markdown is turned off in code blocks:
     [This is not a link](

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see