Morabaraba

  • : Function split() is deprecated in /var/www/oellermann.com/modules/filter.module on line 1066.
  • : Function split() is deprecated in /var/www/oellermann.com/modules/filter.module on line 1066.
  • warning: Parameter 1 to theme_acidfree_print_thumb_photo() expected to be a reference, value given in /var/www/oellermann.com/includes/theme.inc on line 166.
  • warning: Parameter 1 to theme_acidfree_print_thumb_photo() expected to be a reference, value given in /var/www/oellermann.com/includes/theme.inc on line 166.

FIMS 0.1 Released, Online

| | |

The first release of the Free Internet Morabaraba Server (FIMS) has been completed. You can connect to the server by using:

telnet fims.morabaraba.org 5000 

Details on how to use it, as well as the source code, are available from the FIMS web site.

My next priority is to get a graphical client working for Windows and Linux, after which I can start making improvements to the server.


First Game Played on FIMS

| | |

The first Morabaraba game has been played on FIMS, the Free Internet Morabaraba Server! It was a pretty poor game, with me playing against myself (I lost...), and so I haven't recorded the game (well, FIMS has it in the database but I'll be cleaning out the database pretty soon. There is a bit of testing and tying off of loose ends to be done, but the server is up and running and should be launched very soon! Of course, not many people will be comfortable with the Telnet interface, so it will probably only be when a client is available that things really take off. I hope to have a (Windows|Linux) client released not too long after the server's first release.

FIMS will provide a place where players from all around the world can find an opponent and play a game. The server also provides rudimentary chat facilities, which will be expanded in future versions. By design, it should scale to very large groups of users (although that hasn't been tested), so I hope to see it become the definitive place for online Morabaraba (which currently has no online place).

If you're interested in beta testing or contributing to the project (it's in C# on Mono, runs happily on Windows and Linux) please contact me . If you just want to play, keep checking out http://www.morabaraba.org , where details will be posted when it goes live.


FIMS Approaching Release

| | |

The first release of the Free Internet Morabaraba Server is nearing completion. The telnet server has been running continuously on a server for a few days without problems, so the network code seems to be stable. A lot more functionality is in, too, including online registration with email based confirmation. The code which understands Morabaraba positions and validates moves for legality is finished and tested (I've written a small test suite to exercise the code, though there may still be lurking bugs). The actual gameplay mechanisms are next, followed by a little bit of documentation and packaging for GPL v3 release!

I haven't done any scalability testing, but the design of the code and supporting database should scale to (at least) thousands of users on reasonably modest hardware.

Anyway, after the first server release, I aim to follow up quickly with a GUI client as well as an interface to allow my Morabaraba-playing program to join the fray (that way a willing opponent will always be online). After that, a number of "nice-to-have" features (ideas borrowed mostly from FICS) will be added to the server. The server design is such that it could be genericised relatively easily, allowing one server to support Morabaraba, SesothoMorabaraba and many other turn-oriented board games (draughts? mancala games? anything else?)

If you're a programmer (preferably C#) with an interest in Morabaraba, and you'd like to help work on FIMS, now is a good time to contact me (adam@oellermann.com) and get involved!


Free Internet Morabaraba Server

| | | |

I've spent some time today moving the Free Internet Morabaraba Server forward. I have abandoned the PHP-based telnet server (though it was cute), and implemented a .NET based server. I'm doing the development in C# using MonoDevelop on Linux, which I haven't touched for ages. I'm very impressed with how it's come along - MonoDevelop is stable and capable, and Mono is much, much easier to set up than it used to be (it was a doddle on Ubuntu).

Anyway, I have the basic telnet handler set up, backed by a MySQL database for user registrations and so forth. Simple communications between logged in users are done, and the next step is to automate registration and implement the gameplay features. The protocol is inspired by FICS, though much, much simpler - but in time I should be able to add ratings etc. The server design should be quite scalable, and, because it's Mono-based, it will be cross-platform. Another day or two's work would probably see a first version in place, although unfortunately I suspect it may be another week or two before I get to do said other day or two of work!

After that, I will need to create a client - but given the Lazarus GUI stuff I already have for Morabaraba, I may just do the first version quickly in Lazarus.


Morabaraba Opening Book

| | |

It's been another long hiatus since the last release of my Morabaraba program, but at last there's a new version in the pipeline.


Morabaraba Board Control Nearly Done

|

In spite of the weekend having a late start (flooding "down South" severely disrupted train and road travel, meaning it took a loooong time to get home from London), I've managed to complete most of the work on the new Morabaraba control. Here's what it has:


Some New Morabaraba Development

|

New AHEM Board: New default theme for AHEMNew AHEM Board: New default theme for AHEM

It's been a while since I made any progress on my Morabaraba software suite. The last release was made on 14 April, and I haven't done much work on it since then. The reason is partly due to the fact that I have been stupefyingly busy, and partly because I've reached a point where I have a few Big Ideas which need quite a lot of work to come to fruition - enough to put me off.


AHEM: What Next?

| |

With the 0.6 release out the door, AHEM is now a very capable Morabaraba engine, and is also reasonably usable. I now need to consider what to do next. There are three categories of endeavour:

Engine Enhancements

Improve the playing strength - there are still lots of possibilities to consider:

  • Fine-tune evaluation weightings (which are a bit arbitrary at the moment) - would require some kind of automatic playoff tool to verify improvements
  • Build an opening book using drop-out expansion - I think this would probably improve the quality of the first few moves significantly, given a few months' calculation
  • Enhance the search using something like PVS
  • Knowledge improvements would probably help significantly, but I really need some input from expert players

GUI Enhancements


AHEM v0.6 Shaping Up

| |

Over the Easter weekend, I've had some more time to put into AHEM (Adam's Happy Electronic Morabaraba), and it's shaping up nicely. I've made some serious improvements to the engine, including:

  • improved quiescence
  • transposition tables
  • killer heuristic
  • null-move proving
  • knowledge enhancements
  • Used the Intel C Compiler to build the DLL which ships with the GUI - this on its own brings a significant speed boost

Also a key bugfix which was impairing the search in key positions. All in all, the current unreleased code makes AHEM 0.5 look like a beginner, performing deeper, faster and smarter searches. I was planning on adding a bunch of UI features for release 0.6 but I'm tempted to just bundle up these engine enhancements and ship it - the engine is really beginning to look strong, like something that might actually not be embarrassed by competition!


AHEM 0.5 Prerelease

| |

Excited by progress on the new Lazarus-based GUI, I've decided to make a prerelease of AHEM version 0.5 so that all of those who've been waiting for the new GUI can take a peek. You can download the Windows prerelease here - just unzip the files and run ahemgui.exe. The following items still remain before 0.5 is officially released:

  • Implementation of the "machine gunning" rule
  • Visual representation of cows in hand during first phase (slightly irritating in the prerelease)
  • Selection of skill levels in the GUI
  • Engine shared library and GUI binaries for Linux

The prerelease already contains the best Morabaraba engine I've ever released. This version can also be compiled (without any source code changes) by GCC, MSVC and the Intel C Compiler, increasing performance and removing the Cygwin dependency.


Syndicate content