New this time:
Code: Select all
- Fixed oversized message bug, including large files producing tons of errors no longer
crashes the server
- Added IP and key bans.
- Added special OWNER key in admin accounts to make it easier for steam users
to reserve their own nickname.
- NAT piercing really works now.
- Added extended logging options
- Added MaxIdleRunTime and MinRunTime for better run loop customization
- Added CPU player support.
- Fixed private chat filter, some stuff got logged while it shouldn't.
- Fixed huge performance bug caused by wrong arguments to select().
- Added ServerKeyFile setting.
- Fixed a game start misprediction bug, turns out all players unready themselves
even when a spectator leaves.
kapo: a loop.sh script is included in this one.
shinygerbil: the other problem is that the only two things that can be done with the player that is knocked out is to replace him with a CPU or to ignore all future commands from him. The server can't even reliably (assuming there are modified clients out there that send illegal commands, which is easy enough to do) predict the IDs the various objects are getting, so it can't, for example, tell the silos to auto-destruct each other.
Dazor: I'm using Code::blocks which uses some version of MINGW GCC, and it looks like it is unable to produce x86-64 code. At least, when told to do so, it produces something that runs fine on my machine. Since this isn't really the kind of program where a 64 bit version is of advantage, I'd like to go the WOW64 route as long as it is not clear it will not work. No, nothing fancy like inline asm going on. Bits of pointer arithmetics, of course, but all of the legal kind. The new build has debug symbols included, so if you could test it, and if the crash repeats (one fix of something may have fixed the crash), send a callstack?