Complete.Org: Mailing Lists: Archives: freeciv-dev: July 2002:
[Freeciv-Dev] Re: Maximum map size (was: Re: win32 client compiling tro
Home

[Freeciv-Dev] Re: Maximum map size (was: Re: win32 client compiling tro

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Per I Mathisen <per@xxxxxxxxxxx>
Cc: <freeciv-dev@xxxxxxxxxxx>
Subject: [Freeciv-Dev] Re: Maximum map size (was: Re: win32 client compiling troubles)
From: "Ross W. Wetmore" <rwetmore@xxxxxxxxxxxx>
Date: Sat, 06 Jul 2002 13:21:56 -0400

At 08:26 PM 02/07/02 +0200, Per I Mathisen wrote:
>On Tue, 2 Jul 2002, Andreas Kemnade wrote:
>> That seems not to be a win32 problem.
>> from common/map.h:
>> #define MAP_DEFAULT_WIDTH        80
>> #define MAP_MIN_WIDTH            40
>> #define MAP_MAX_WIDTH            200
>>
>> #define MAP_DEFAULT_HEIGHT       50
>> #define MAP_MIN_HEIGHT           25
>> #define MAP_MAX_HEIGHT           100
>>
>> I don't know this part of the code very well.
>> IMHO the network protocol cannot handle such large maps (I got the
>> info by grepping through the source) so changing the maximum map size
can lead
>> to problems.
>
>Changing these defaults may have unforseen consequences in other parts of
>the code. As you mention, the network protocol is a likely problem area.
>However, such big maps also swamp up enormous amounts of memory, and the
>minimap in the client swallows up a lot of real estate from the map when
>it gets too wide (someone should fix this).

I suspect you could get a 254-5 maximum in each direction without doing 
any serious damage. There is likely some uchar_t limitation on a single
coordinate direction, and -1 tends to be a reserved value.

But there may be subtle impacts on parameters like range THRESHOLD or 
move_costs that assume SINGLE_MOVE (== 3) * MAXIMUM < MAX_COST (== 255) 
whenever you go beyond 84 in any direction.

>The latter begs the question, why is the X maximum bigger than the Y
>maximum, when most clients have plenty real estate available in the Y
>direction but not in the X direction?

Standard screens and map representations are almost always wider than 
long. If you are building in overall resource limitations (x*y) then this 
is what you want to do.

>Yours
>Per

Cheers,
RossW
=====




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