[Freeciv-Dev] Re: 'bug' in mapgen.c (missing forests)
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
I don't much use CVS mapgen.c and consider it outdated and brain-damaged
when is it slated to be replaced :-?.
But mapgenerator1 should not ever use make_island() these are only used by
the island generators 2-4. initworld() calls make_island(0,0,pstate) which
resets all the values below in this case (but of course is not used by gen1).
So I don't think this is the problem.
If you can, check the struct map parameters like forestsize to see if the
known breakage in adjust_terrain_params() is at fault. You should be able
to replace this routine with the version fixed in the corecleanups if so.
Next time I build a CVS version with civworld, I'll poke around myself,
but the above hints might be something quick to try while you are waiting.
Cheers,
RossW
=====
At 10:57 PM 02/09/21 -0500, Mike Kaufman wrote:
>This is mainly for Ross or Karen or others who play around in mapgen.c:
>
>There is a 'bug' in generator1 that manifests itself in civworld.
>To see it, fire up civworld, generate a map (using the defaults) then
>generate another map. If you take a look, there are no forests on the
>entire map.
>
>A cursory glance of mapgen.c reveals:
>
>**************************************************************************/
>static void make_island(int islemass, int starters,
> struct gen234_state *pstate)
>{
> static long int tilefactor, balance, lastplaced;/* int may be only 2
byte ! */
> static long int riverbuck, mountbuck, desertbuck, forestbuck, swampbuck;
>
>which is ok for normal games (where you generate a map once) but not ok
>for civworld.
>
>Could someone confirm this diagnosis, and better yet get me a patch to fix
>this issue?
>
>-mike
>
>
|
|