Alcugs Development did not stand still at all recently, and I think it's finally time to call the current state a "stable release" again.
Here are the most important changes since the last release from two years ago (as usual, check the changelog for more details):
- Offline KI (at least version 3.6.1) is required for the server to work properly - using Alcugs without it is possible, but unsupported
- Switched to CMake build system (see below)
- Multi-threading: The netcore runs in a different thread than message processing, to avoid server halt during larger backend work
- basic UU and public age list support
- The age states are now saved in the directory specified by game.agestates
- Congestion control is now actually working and Alcugs can achieve a fairly good bandwidth (concidering how broken the protocol is)
- In case of exceptions or crashes, the server prints a readable backtrace (demangled function names, decoded file names and line numbers)
- Removed legacy unet2 and unet3 protocol support (migration from old servers is still possible though)
- age and sdl files can now also be plain text
- Both age and sdl files can now just be copied into the appropriate folders - no need to reload or even restart any server anymore
- Add support for kSubAgeBook links
- The authserver can now use a CGAS gateway as backend for the accounts (using a different protocol than Cyan though, since that one was completely broken)
- Many bugfixes
The source code is available at gitorious and the installation instructions in the Wiki explain how to get it.