A first look at Arena

Home |Articles | Links | Guestbook| Chat | Bookmark|
Monitor page
for changes

   it's private   

by ChangeDetection

Playing a game

Note this is part II of a review on Arena .

You can just play a game normally by moving the pieces, and the first engine active will automatically respond to your moves. Those seeking a real challenge, can select "play a real game" and this will disenable our all options (including the thinking windows) to allow you to play a real game without cheating.

It is interesting to note that Arena allows a variety of time controls, besides Fischer times controls it also allows secondary time controls (up to 3 levels). For example, you can set time controls like 40 moves in 40 minutes followed by 40 moves in 20 minutes followed by 30 minutes for all remaining moves.This seems to be allowed for in the extended level command (experimental) of the Winboard protocol, but I'm not sure if this works for all engines. As far as i know though, you can't do this when running in Winboard.(I suppose you could try sending such commands with Alt 1)
[Some of the possible time controls in Arena]

It also features a number of other "time controls" like fixed depth, time per move,mate searching (supported by UCI only) and number of nodes /positions searched (supported by UCI engines only and Crafty or crafty style engines that support sn=x) . All this can be used to weaken the Chess engine to play at your level.

Other Bells and Whistles

It's undeniable that Arena is a really pretty interface. And besides strictly functional features, Martin has thrown in several features that are probably not important for the serious Chess engine tester, or Chessplayer but help make the GUI more attractive.

Firstly, following the lead of Chessbase GUI, each engine can be personalised and associated with a logo (100x50 bitmap) which will be displayed whenever the engine is active.While some engines come with default logos, you are not restricted to using those. Dozens of innovative and striking logos are freely available for download, if the default logo doesn't strike your fancy. Personally, I don't see much use of logos, but i must admit, associating logos seems to give the Engines more character, then just staring at the name of the engine.

Not satisfied with this piece of eye candy, Arena introduces a innovation, depending on the country of the origin of the engine, Arena can actually play the national anthem of the country of it's origin every time it loads. While this sure adds atmosphere (if you imagine each match as a sort of Olympics games i guess8 ), I suspect it will grow old fast. Thankfully you can turn this option off.


Arena has a nice professional look, but if you get tired of it's appearance you can easily change almost every aspect of it's appearance. Basically , anything and everything is what's for grabs to be customised.Firstly the board squares can be customised if you like by using bitmaps for the dark/light squares and/or background . Next , if you are tired of how your pieces look, you can change them into any of the 6 default piece sets. And even this 6 sets can be further expanded by the use of any true type Chess font that you might have. With some work, you can customise Arena with as many piece sets as you have chess fonts.You can also customise different text fonts for diverse items from the clock display,move list,Main line , Status window etc and various colors representing Principle variation, hash table info etc.
Selecting a new piece set

Many of the more creative users have managed to alter Arena to look like their favourite GUI. You can also find a growing number of available Arena sets for download at The Arena site for download made available by other users.

Various possibilities,click on image for full view

Flaws, concerns

I hope by now , I have impressed you with it's wide range of features. ironically, this may also be Arena's greatest weakness. Because of the thick nest of features, it becomes a lot harder for the user to find exactly what he is looking for. In Arena, I feel this is compounded by the fact that there is not much consistency of design, and this may prove confusing to beginners, and even experienced chess engine users, might be disorientated for a long while.

Note: One man's user-friendliness and idea of intuitiveness could be another man's example of confusion, so take the following as you may.

For example, take the setting up of Chess Engines. In the "install and dialog box" it's strange to see that "Ponder" a important global option for all chess engines is not contained in the "options" tab but rather in the pull down menu.(I suppose it could be a design decision based on the idea that people change the ponder option more often than others, but in reality, during the beta test i have seen many users wondering where the option to change pondering was.)

Also often you see pretty strange placements of tick boxes (eg "always from white point of view" is strangely off to the side in the options tab of the install dialog box), unnecessary tick boxes

Strange decisions like putting "check legality" and "operator time" under the appearances box (what does that have to do with appearance?) , "go" (probably means force move) under options pull down , I believe add to the confusion. Also, I wonder about the need to have separate pull down menus for Game/PGN and Position/EPD. In Arena, "game" appears to have to do with options that affect the game state (Hence i think "go" belongs here) but this is spoiled by the addition of options like "export pgn" and "copy from clipboard". Those fit better under the PGN pull down menu in my view. In short, I think the pull down menus need to be organised in a more logic manner, and perhaps better renamed.

There are also a couple of unclear icons and translations in english for example, it's not clear what the black icon next to the VCR controls does,or what demo, analysis or edit does.Neither is "preferred level" under the level pulldown clear.. In some cases, the tool tips if turned on (unfortunately,not on by default in Arena beta 3) are helpful.

Lastly I think Arena should add for feedback to the user,. In early versions, Arena didn't even grey out options (such as exiting) that were not possible, when an engine was running. ( A sensible precaution to prevent engines from running in the background without being unloaded first). This is greatly improved now, however, I think that besides showing that a option is not available, Arena might also sound a warning, for example, telling/reminding the user that he or she must stop the engine/engine match before exiting for example. Without such feedback it can be very frustrating for the user, who fails to understand why he can't quit. (This is compounded by the fact, that the help fails don't mention this fact, and the only visible way of stoping a engine and engine match is that small red stop icon which can be easily missed).

Still I may have being overly harsh on Arena. After all this is just a beta copy, and most of the work so far have focused on bugs and stability, and given that the beta testers are mostly experienced users, the concept of user friendliness probably took a back seat to features stability and bug hunting.

Talking about stability and bugs, Arena while still in beta is pretty stable at least on my machine (A Athlon Thunderbird 1.4 GHZ, 512MB RAM) after what little testing I have done , although, at times, it appears the Thinking line status window is slow in updating. There are other minor bugs, but none serious enough to mention.You can find a updated bug list at http://www.playwitharena.com

Other Technical matters or should you toss Winboard away?

As i mentioned at the start of the article probably not. Here's a list of reasons why not

I'll not belabour the first point, given that it was mentioned before.

In theory, all Winboard engines should run equally well in GUIs that have implemented the protocol and that there should be no difference whether they are run in Winboard or Arena or any other gui. In practice, we know that sometimes implementation of the protocol in gui is flawed.Even if they are not flawed, it's still possible that Winboard engines that are not strictly compliant can work (by a fluke or just patching) in Winboard but not in other GUI.

In short, unless the author has tested with it, you can't be a 100% sure it works because each engine has it owns quirks (the older SOS Winboard version, Francesa etc are well known for causing problems in other gui besides Winboard), and for a long time Winboard will be the engine of choice for testing and authors will always ensure that their creations are at least compliant there.With Arena being free, we can hope this will change in the future.

Currently though Arena works well with 130 known chess engine. There are some like Francesa which are not fully functional, but still this is a amazing accomplishment. Many commercial implementations of the Winboard protocol have a far greater failure rate. See Thomas Mayer's and my compatibility table on Winboard engines in other GUI.

The next two points can be combined together. The fact that no linux version of Arena exists and is unlikely for a while9 can hamper the efforts of chess programmers who work only on linux. In this area, Xboard definitely has the advantage.A related and perhaps lesser concern is the fact that Arena is not "free" in the GNU sense (for one thing the source is not going to be released10 compared to XBoard/Winboard.


Arena in my opinion is definitely worth a download, if you like matching Chess engines against each other. For others, Arena might be worth a look.

Addendum to Arena 0.79 beta 5 dated 23 June 2002

The following section, reflects changes made to Arena since the last review of beta 3 as well as comments by others about Arena that have come to my attention. The first part refers to doubts about Arena has a good test ground for Chess engines and the second is a brief comment on ICS support.

Reliability of Arena as a fair GUI for testing of Chess engines

There has being some concern of late that Arena is "not playing as fair" as a result of a couple of strange results posted.As some people have pointed out, some engines resign in winning positions while others resign or offer draws when they are not designed to do so.

As far as I can tell though many all a result of the tester using (or forgetting to turn off) some of the default features of Arena. Under the Engine- Engine Match dialog box, options tab , Arena is set to have a default maximum game length of 70. As a result, Arena will end the game and declare a draw, once 70 moves are played regardless of the board position. While this feature is useful (sometimes if you run matchs unobserved you might want to rule out 200 moves draws where basic chess engines without understanding of the fifty move rule, shuffle their pieces in obviously drawn positions to save time) , the default 70 moves set in Arena is just too short. I suggest that Arena either set a higher default value (say 150?) or better yet turn this off by default. (I set maximum game length to 999 which is effectively the same)

The second problem is also related. Arena resigns on the behalf of the Chess engine if certain criteria are met. Here's the relevant part quoted from Arena's online help

If you selected ‘Resign’, the game will be terminated if the respective value in centipawns is reached. Important: This works only, if both engines put out correct values under this threshold. If one engine gives the wrong value for some reason, this feature does not work. In addition, this value must fall below the threshold for 6 half moves. IF the maximum game length is exceeded, the game is judged a draw. The search statistics is only valid for opening stage and middle game, not for the endgame. A position is regarded as an endgame position if at most 6 pieces (not pawns, white and black together) are present on the board. The queen counts twice.

This feature is unpopular with many Chess engine authors who prefer that the chess engine make it's own decisions of when to resign.So testers should switch this off.

ICS Support in Arena beta 5

While the new Arena boasts a host of new features (DGT support,support for protover,drag and drop, move announcement etc) the most eagerly anticipated feature that was added is ICS support.

I haven't done much testing yet, but IMHO it seems that the current version is not really well suited for use for humans. If you want to connect it to FICS using Chess engines it's a god-send since you no longer need to grapple with zippy and Winboard. Just click internet button on the top right, enter password, tick "computer" and press the "connect" button and Arena does the rest! Simplicity at it's best.

Arena however in the current state it isn't as feature rich as say Thief for human use. Adding drag and drop (which wasn't available in prior versions) helps, but it still lacks essential features like premove, ability to customise right click options, hotlinking of html links etc. This is not a review of ICS clients so I'll stop here. Maybe I'll do a future piece on Arena as a interface and how it compares to the others much like the following piece.


8. Though of course in the Olympics the anthem are played only when the competitor wins! In the help file, there also appears to be plans to include the display of country flags!

9. I posed the question of porting Arena to other operating systems to Martin Blume (author of Arena) and he said "Arena is written in Delphi. There is no easy way to port this to an other operating system. Maybe I'll try Kylix some day. But I am no fan of Linux anyhow." - Private email communication with author 11/03/2002

10. Private email communication with author 11/03/2002