Nothing entered.
[http://sourceforge.net/p/ufoai/bugs/2832 Item 2832] imported from sourceforge.net tracker on 2013-01-28 19:50:51
Even with my new RMA2 algo (which does a full tree search) this assembly doesn't work.
I attached an .odp file that illustrates the situation.
The first problem seems to be that only a dropship or the map border can be the left neighbour of both the +h1 and +arc tiles.
This leads to the constellation sketched in the odp is the ONLY possible solution to place those three required tiles (the harvester doesn't matter much here).
However, there should still be a solution to that constellation: direct the small paths to the border asap, then fill the gaps with fillers.
Argghh... not enough fillers. I increased fillers to 25, but still no success.
@kildor
:
- do you agree with my picture ?
- any idea what mgiht cause the impossibility to complete that map ?
- is it possible to 'fix' the dropship there ?
===== Comments Ported from Sourceforge =====
====== aduke1 (2011-03-18 22:28:45) ======
only possible tile placement
====== aduke1 (2011-03-21 22:10:12) ======
I overlooked that the +arc requires a fence to the south, so it's position in the sketch is not legal/possible.
So it comes down to placing both h1 and arc is not possible.
But setting those two tiles to "0 1" and fillers to "0 50" STILL doesn't work, ie. there must be at least one more logical bug in that assembly. Any idea ?
====== kildor (2011-03-22 04:47:43) ======
I need to look to this assembly, I don`t remember exact idea currently.
Also, it is possible that harvester tile must be remade for correct assembly process.
====== kildor (2011-03-22 08:27:54) ======
No, you have been incorrect in your diagram.
Here is 2 possible way to organise tiles, as I see it.
I`m tuning the map, assembly and tiles definition, may be it will helps.
btw, is it possible to show some more information about ERROR: SV_AddMapTiles: Impossible to assemble map 'japan' with assembly 'big'?
what tiles are used already for the assembly, and so on? Why is it impossible sometimes to assemble the same tilesets?
====== kildor (2011-03-22 08:30:13) ======
two possible tile placements )
====== aduke1 (2011-03-22 21:53:46) ======
I have to agree with your diagram. I overlooked that although h1 and arc require different path size, they can also be connected via their 'a'-property. Which makes things even more weird for me...
The 'impossible'-error indicates that we have run out of places to try the *first* tile. All other tiles have been removed again at that point in time. So there is not much info the error can pass.
The current/2010 RMA algo uses a 'by chance'-method. Sometimes it works out, sometimes it doesn't.
But does japan big ever assemble successully ??
Because my new RMA2 algo is designed to check every possible layout, it should find the solution if there is any.
So if the the old algo can assemble it at least sometimes, I have a problem...
====== kildor (2011-03-23 05:31:24) ======
I rebuild +japan big now, and my tests showed correctly assembled maps.
Currently I remove requirement for +arc and +h1, but as +craft_drop_firebird requires one (or both) of them, they are used in assembly. Also, I remade +craft_ufo_harvester, and add new path-connector tile to allow more variability of the map.
2011/03/23 11:25:18 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h3 +h1 +h5 +fill1 +fill4 +f4 +fill4 +f3 +f4 +p_br +p_v +fill4 +p_h +p_bl +p_h +p_v +fill4" "-40 -16 0 0 -8 0 0 -8 0 -40 8 0 -24 -8 0 -24 16 0 -16 16 0 -24 -16 0 -16 -16 0 -8 0 0 -8 8 0 -8 16 0 16 -16 0 0 16 0 8 -16 0 24 -16 0 32 -16 0 -8 -8 0 0 -16 0 -8 -16 0"
2011/03/23 11:25:19 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h3 +h1 +h4 +h5 +fill3 +fill1 +fill3 +f2 +p_tr +p_h +fill3 +fill3 +fill3 +w1" "-40 -16 0 0 -8 0 0 16 0 -40 8 0 -24 -8 0 -8 -16 0 -8 0 0 -8 8 0 -24 16 0 -24 -16 0 -16 -16 0 -16 16 0 -8 16 0 8 -16 0 16 -16 0 24 -16 0 32 -16 0"
2011/03/23 11:25:20 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h1 +h4 +p_tr +fill1 +p_h +f4 +h5 +fill4 +bridge +p_br +p_bl +p_bl +p_h +p_h +w1 +p_v +fill4" "-40 -16 0 0 -8 0 0 -8 0 -24 -8 0 -40 8 0 -24 16 0 -24 -16 0 -16 16 0 -16 -16 0 -8 8 0 -8 0 0 -8 16 0 16 -16 0 0 16 0 32 -16 0 24 -16 0 -8 -8 0 -8 -16 0 0 -16 0 8 -16 0"
2011/03/23 11:25:22 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h1 +h4 +h5 +f2 +p_tr +bridge +p_tl +f1 +fill1 +f2 +fill3 +fill3 +p_br +f4 +p_h +f3 +f1" "-40 -16 0 -8 -8 0 -8 16 0 -24 -8 0 -40 8 0 -24 -16 0 32 0 0 -24 16 0 -16 16 0 -8 -8 0 -16 -16 0 -8 -16 0 32 8 0 0 -16 0 8 -16 0 16 -16 0 32 16 0 24 -16 0 32 -8 0 32 -16 0"
2011/03/23 11:25:23 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h3 +h1 +h4 +h5 +f2 +fill1 +fill3 +fill3 +fill3 +fill3 +fill3 +fill3 +p_tr +p_h" "-40 -16 0 0 -8 0 0 16 0 -40 8 0 -24 -8 0 -8 -16 0 -8 0 0 -16 -16 0 -24 -16 0 -8 8 0 8 -16 0 16 -16 0 -24 16 0 24 -16 0 32 -16 0 -16 16 0 -8 16 0"
2011/03/23 11:25:24 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h3 +h4 +p_br +h1 +p_tr +f3 +fill4 +fill4 +fill4 +p_h +p_h +w1 +p_bl +p_h" "-40 -16 0 0 -8 0 0 16 0 -8 -16 0 -40 8 0 8 -16 0 -24 -8 0 -24 16 0 -16 -16 0 -8 0 0 -24 -16 0 -8 8 0 -16 16 0 -8 16 0 32 -16 0 24 -16 0 16 -16 0"
2011/03/23 11:25:25 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h4 +h1 +fill3 +fill1 +fill3 +fill3 +f3 +h5 +f2 +p_br +p_v +p_tl +fill3 +p_br +p_h +p_h +p_h" "-40 -16 0 -8 -8 0 32 -16 0 -40 8 0 -24 -8 0 32 16 0 32 8 0 -24 -16 0 -24 16 0 -16 16 0 -8 16 0 -16 -16 0 32 0 0 32 -8 0 -8 -8 0 -8 -16 0 0 -16 0 8 -16 0 16 -16 0 24 -16 0"
2011/03/23 11:25:27 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h1 +h3 +bridge +p_tr +w1 +h5 +fill1 +fill3 +p_tl +f2 +fill3 +p_br +p_br +p_h +p_bl +fill3 +p_v" "-40 -16 0 -8 -8 0 -8 16 0 -24 -8 0 -40 8 0 -16 16 0 -24 16 0 -24 -16 0 32 16 0 32 8 0 32 0 0 -8 -8 0 -16 -16 0 -8 -16 0 0 -16 0 32 -8 0 8 -16 0 16 -16 0 24 -16 0 32 -16 0"
2011/03/23 11:25:28 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h3 +fill1 +h5 +h1 +fill3 +p_tr +fill3 +p_tr +fill3 +f2 +fill3 +p_h +fill3 +p_v +p_h +p_tl +p_v" "-40 -16 0 0 -16 0 0 16 0 -40 8 0 -8 0 0 -8 -8 0 -24 -8 0 -24 16 0 -16 16 0 8 16 0 16 16 0 -24 -16 0 -16 -16 0 -8 -16 0 -8 16 0 -8 8 0 0 8 0 24 16 0 32 16 0 0 -16 0"
2011/03/23 11:25:32 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h6 +h1 +h5 +f2 +p_tr +f3 +p_br +p_bl +p_h +fill1 +p_h +fill3 +fill3 +p_v +p_v +f1 +p_h" "-40 -16 0 0 -8 0 0 -8 0 -40 8 0 -24 -8 0 -24 -16 0 -16 -16 0 -24 16 0 -8 8 0 16 -16 0 32 -16 0 24 -16 0 -8 0 0 -8 -8 0 -8 -16 0 8 -16 0 0 -16 0 0 16 0 -8 16 0 -16 16 0"
2011/03/23 11:25:33 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +bridge +p_h +f3 +p_br +h5 +f1 +h6 +fill1 +fill2 +arc +f4 +fill2 +fill2 +f1 +p_h +fill2 +p_tr +p_h +p_v +fill2 +p_v" "-40 -8 0 0 -16 0 0 16 0 -40 16 0 -32 16 0 8 16 0 -40 -16 0 16 16 0 -24 16 0 -16 -16 0 24 16 0 32 16 0 -24 0 0 -24 -8 0 -16 0 0 -8 0 0 -24 -16 0 -32 -16 0 -16 8 0 -16 16 0 -8 16 0 0 -16 0 -8 8 0 0 8 0"
2011/03/23 11:25:35 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h4 +h1 +w1 +p_tr +f4 +h5 +fill1 +p_h +bridge +p_bl +fill4 +fill4 +p_v +fill4 +p_h +fill4 +fill4" "-40 -16 0 0 -8 0 0 -8 0 -40 8 0 -24 -8 0 -24 -16 0 -24 16 0 -16 -16 0 -8 8 0 -8 0 0 -16 16 0 -8 16 0 0 16 0 -8 -16 0 32 -16 0 0 -16 0 8 -16 0 -8 -8 0 16 -16 0 24 -16 0"
2011/03/23 11:25:36 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h3 +h1 +h5 +p_h +fill1 +fill2 +f2 +fill2 +fill2 +f3 +fill2 +p_br +p_h +p_v +p_v +fill2 +fill2" "-40 -16 0 0 -8 0 0 -8 0 -40 8 0 -24 -8 0 -24 16 0 32 -16 0 -24 -16 0 -16 16 0 -16 -16 0 -8 0 0 -8 8 0 -8 16 0 -8 -16 0 24 -16 0 -8 -8 0 0 16 0 0 -16 0 8 -16 0 16 -16 0"
2011/03/23 11:25:38 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h3 +h1 +p_tl +p_v +p_tr +h5 +p_v +f4 +p_h +p_bl +fill1 +fill3 +p_br +p_v +p_h +p_h +p_v" "-40 -16 0 -8 -8 0 32 -16 0 -40 8 0 -24 -8 0 -8 -8 0 32 16 0 -24 16 0 -24 -16 0 32 -8 0 -16 -16 0 -16 16 0 -8 16 0 -8 -16 0 0 -16 0 8 -16 0 32 0 0 16 -16 0 24 -16 0 32 8 0"
2011/03/23 11:25:39 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h6 +h1 +h5 +bridge +f1 +fill1 +p_tr +fill4 +w1 +fill4 +fill4 +fill4 +fill4 +p_tl +p_br +fill4 +p_h" "-40 -16 0 -8 -8 0 -8 16 0 -40 8 0 -24 -8 0 -24 -16 0 -16 16 0 -16 -16 0 32 16 0 -24 16 0 32 8 0 -8 -16 0 0 -16 0 8 -16 0 32 0 0 16 -16 0 -8 -8 0 24 -16 0 32 -8 0 32 -16 0"
2011/03/23 11:25:41 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h1 +h3 +fill1 +h5 +f3 +p_v +f2 +fill2 +p_br +p_v +p_v +fill2 +p_v +fill2 +fill2 +w1 +p_v" "-40 -16 0 -8 -8 0 -8 -8 0 -24 -8 0 -40 8 0 -24 -16 0 -24 16 0 -16 16 0 32 0 0 -16 -16 0 32 16 0 32 8 0 -8 16 0 -8 -16 0 0 -16 0 32 -8 0 8 -16 0 16 -16 0 24 -16 0 32 -16 0"
2011/03/23 11:25:42 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h1 +h3 +h5 +fill1 +fill4 +fill4 +f2 +p_tr +fill4 +p_h +fill4 +fill4 +fill4 +p_tl +p_br +p_bl +p_h" "-40 -16 0 -8 -8 0 -8 16 0 -24 -8 0 -40 8 0 32 0 0 32 8 0 32 16 0 -24 -16 0 -16 -16 0 -24 16 0 32 -8 0 -16 16 0 -8 -16 0 0 -16 0 8 -16 0 -8 -8 0 16 -16 0 32 -16 0 24 -16 0"
2011/03/23 11:25:44 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h1 +arc +h4 +f3 +h5 +fill1 +fill4 +f2 +p_v +p_br +w1 +p_v +p_h +p_bl +f1 +f1" "-32 -16 0 0 -8 0 0 -8 0 -16 -8 0 -40 -8 0 -32 8 0 -40 -16 0 -16 -16 0 -16 16 0 -8 16 0 -8 -16 0 0 16 0 16 -16 0 8 -16 0 0 -16 0 24 -16 0 32 -16 0 -40 16 0 -40 8 0"
2011/03/23 11:25:45 CM_LoadMap: "-japan/ja_ +craft_drop_firebird +craft_ufo_harvester +p_btl +h6 +fill1 +h5 +arc +fill3 +w1 +f3 +fill3 +f2 +fill3 +fill3 +fill3 +f2 +fill3 +p_v +f4 +f3 +p_v +fill3 +p_br +p_h" "-40 0 0 -8 -8 0 -8 -16 0 -40 -16 0 0 -16 0 8 -16 0 -24 8 0 -16 8 0 16 -16 0 32 0 0 32 -8 0 -24 0 0 -16 0 0 24 -16 0 32 -16 0 32 8 0 -16 16 0 -8 16 0 32 16 0 -24 -8 0 -8 -8 0 -16 -8 0 -24 -16 0 -16 -16 0"
Here is 19 attempts to assemble the map. There was no ERRORS.
====== aduke1 (2011-04-07 21:29:15) ======
Kildor, you tuning of the map did a great job :) But it still can fail. Running seeds 0 through 200, it fails at seed 60. That's because of the 'by chance' part of the 2010 RMA algo: bad luck. Although this is just a 0.5 percent chance of failure, it would still cause bug reports.
I had a hard time figuring out why the RMA2 algo always failed. It turned out to be a very interesting problem, so I'll explain it here.
Let's look at the first of the working assemblies you provided in your post below.
We have the firebird at 0/0, h1 at 2/1 and a fillx at 2/0. The crucial position is 2/2.
The firebird is placed first. It allows only a 'g' at 2/2. If we try to place the fillx now, it does NOT fit because it didn't allow a 'g' to it's north, leaving a gap with NO option at 2/2.
If we instead place the h1 after the firebird, things are different. h1 covers 2/2 with a solid tile of 'ag'. If we now place fillx, it can connect to 2/2 via the 'a'-property.
Tricky, isn't it ?
I added the 'g' to the fillx tiles 2 days ago. RMA2 is committed but disabled. There are two tasks left:
1. find a place in our wiki were the above explanation can be found by a mapper
2. find all occurrences of similar situations on all maps and fix them.
I'd like to leave #1 to you. Ok ? I have no clue yet how to do #2...
====== aduke1 (2011-04-07 21:52:42) ======
Ooops, correction:
The crucial pos is 3/2.
====== kildor (2011-04-12 06:04:14) ======
It looks like you are correct, but can you give me a diagramm with this tiles?
2/1 is x/y? And it starts from bottom-left corner (first quarter)?
====== aduke1 (2011-10-20 21:46:08) ======
I don't know what it was, but it is fixed as of now :)
At least japan compiles nicely on the buildbot.