Complete.Org: Mailing Lists: Archives: freeciv-dev: August 2001:
[Freeciv-Dev] Re: 3 patches for use on public gameservers

[Freeciv-Dev] Re: 3 patches for use on public gameservers

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: jdorje@xxxxxxxxxxxxxxxxxxxxx
Cc: freeciv development list <freeciv-dev@xxxxxxxxxxx>
Subject: [Freeciv-Dev] Re: 3 patches for use on public gameservers
From: "Ross W. Wetmore" <rwetmore@xxxxxxxxxxxx>
Date: Thu, 30 Aug 2001 19:53:46 -0400

At 03:15 AM 01/08/30 -0400, Jason Dorje Short wrote:
>"Ross W. Wetmore" wrote:
>[snip special features while playing on "public" servers]
>> Release versions should always be compiled with NDEBUG. Don't even consider
>> doing it otherwise. That is what the flag is for, and having to invent
>> another one that is REALLY_REALLY_REALLY_DEBUG is a tad foolish.
>Not all public servers run the release version.  Many
> games run the CVS version (and should be compiled
>with debugging!).  Any why should any game that connects to the
>metaserver be required to be compiled with NDEBUG?

If you want to run the development test version on a public server, then 
run the development test version. People will be able to do the things
that test developers do like set timeout to -1.

These servers will die with core files for non-terminal conditions that
are being tested with asserts which is very user unfriendly.

A better way to use public servers in "test" mode is to set logging 
levels to catch conditions and report them, but allow the game to 
proceed or at least shut down gently. Taking out the assert code will
also make them more responsive.

>Also, making the minimum timeout 40 for a release version (binary) is
>also bad.  Many normal users might want to play around with low

This is a different question. If you want such user options, then this
should be part of the discussion about what a valid release timeout
would be, or how you want to control it other than through its default

>So, in summary another solution aside from tying the minimum timeout to
>NDEBUG is needed.  Several have been proposed.

No, there are two elements here. One is the hardcoded defaults, the other
seems to be the desire to override the defaults for various reasons and
with varying amounts of security.

The current default sets the development min_timeout to -1 and the release
to whateever value is deemed reasonable. If there are other controls 
desired for other ways to override the defaults that is fine and doesn't
need to be tied to the first. I assumed that public servers want this 
value to be set at 40 and are happy with this.

Lets just do this then and move on :-).



[Prev in Thread] Current Thread [Next in Thread]