Otter (game server) 1.0.0 released
I have just released Otter 1.0.0.
Recap: what is Otter
Otter is my game server for arbitrary board games. Unlike most online game systems. It does not know (nor does it need to know) the rules of the game you are playing. Instead, it lets you and your friends play with common tabletop/boardgame elements such as hands of cards, boards, and so on. So it’s something like a “tabletop simulator” (but it does not have any 3D, or a physics engine, or anything like that).
There are provided game materials and templates for Penultima, Mao, and card games in general.
Otter also supports uploadable game bundles, which allows users to add support for additional games - and this can be done without programming.
For more information, see the online documentation. There are a longer intro and some screenshots in my 2021 introductory blog post about Otter
Releasing 1.0.0
I’m calling this release 1.0.0 because I think I can now say that its quality, reliability and stability is suitable for general use. In particular, Otter now builds on Stable Rust, which makes it a lot easier to install and maintain.
Switching web framework, and async Rust
I switched Otter from the Rocket web framework to Actix. There are things to prefer about both systems, and I still have a soft spot for Rocket. But ultimately I needed a framework which was fully released and supported for use with Stable Rust.
There are few if any Rust web frameworks that are not async
. This is rather a shame. Async Rust is a considerably more awkward programming environment than ordinary non-async Rust. I don’t want to digress into a litany of complaints, but suffice it to say that while I really love Rust, my views on async Rust are considerably more mixed.
Future plans
In the near future I plan to add a couple of features to better support some particular games: currency-like resources, and a better UI for dice-like randomness.
In the longer term, Otter’s, installation and account management arrangements are rather unsophisticated and un-webby. There is not currently any publicly available instance for you to try it out without installing it on a machine of your own. There’s not even any provided binaries: you must built Otter yourself. I hope to be able to improve this situation but it involves dealing with cloud CI and containers and so-on, which can all be rather unpleasant.
Users on chiark will find an instance of Otter there.