Changes between Initial Version and Version 1 of Ticket #6422


Ignore:
Timestamp:
Jan 22, 2022, 12:47:00 PM (2 years ago)
Author:
Langbart
Comment:

add a new solution and input from elexis

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #6422 – Description

    initial v1  
    2222* The problem also occurs in A23b.
    2323
    24 ==== solution
     24==== solution (1)
    2525A simple solution would be to adjust the map creation for 2 players `|| numPlayers == 2` so that there is always a lake in between.
    2626[[Image(unknown_passes_lake.jpg, 600px, center)]]
     
    4141        }
    4242}}}
     43
     44==== input from elexis (22/Jan/22)
     45{{{
     46[08:52:57] Langbart Hello, do you think the solution is good enough for https://trac.wildfiregames.com/ticket/6422 ?
     47[...]
     48[10:34:17] elexis making a lake is certainly a possibility but it changes the map gameplay a lot
     49[...]
     50[10:44:32] elexis so I guess either the placer isnt returning an area or the painter isnt doing something to it
     51[10:45:24] elexis same with the "Fill area between the paths" part, also Im not sure why that one paints clWater there when there isnt any water, probably to have nothing else placed there, but thats often asking for bugs like fish on land
     52[10:45:57] elexis better would be to add a specific class clPassage and have all the remaining statements make sure not to place on clPassage (water and land alike), but (probably) unrelated
     53[...]
     54[10:49:12] elexis could also be that the passage is too small on the given mapsize or something
     55[10:49:27] elexis yeah that looks like it
     56[...]
     57[10:55:53] elexis but its probably a wrong parameter in the mapscript rather than a rmgen library bug, judging by the screenshot
     58}}}
     59
     60==== solution (2)
     61Replace `diskArea(fractionToTiles(0.05))` with `0`.
     62[https://github.com/0ad/0ad/blob/4f7d3f1f4dcef5d9b0f40dafd073857b8d30afb2/binaries/data/mods/public/maps/random/unknown.js#L666 Line 666] in Unknown.js
     63
     64{{{
     65#!js lineno=666
     66        else
     67        {
     68                g_Map.log("Fill area between the paths");
     69                createArea(
     70                        new ClumpPlacer(*0*, 0.7, 0.1, Infinity, mapCenter),
     71                        [
     72                                new SmoothElevationPainter(ELEVATION_SET, heightMountain, 4),
     73                                new TileClassPainter(clWater)
     74                        ]);
     75        }
     76}}}
     77
     78[[Image(diskArea.jpg, 600px, center)]]