win...@genial.ms wrote:
> >   BR#2839 Chossing to land one colonist lands both
> >   ...  
> Did you retest after my latest reply? It is only happening when the dialog
> show on the provided image is clicked.  

Sorry, I am not sure what you mean by the above.  Can you give me a
detailed description of how you trigger the bug?  I have not deliberately
been testing this, but I do use the disembark dialog fairly often in
normal testing and have seen nothing lately.  However IIRC I have only
ever seen this problem happen twice (and in both cases I was not sure that
it had happened), so its likely a Java-instance-sensitive race.

> >   BR#2836 TileInfoPanel glitched
> >     Another one I would like to assign to wintertime as the now offical
> >     GUI expert:-).
> >   
> I was under the impression this is stalled on someone providing a better
> image for the panel skin  

Fair enough.

> or you unifying the messages with the other panel, to make more space?  

OK, I looked at that and was not convinced there was a big win to be had
there, but I will check again.

> I recently saw there is only one of the fish resource
> infos shown in the message for one tile, have there been changes?  

Nothing deliberate:-).  The message clean up touched so much code that it
is entirely possible a lurking bug got swept away.

> Only remaining part, which could be fixed sooner, would be the missing goods
> icons for mountains/oceans, where I did not find out why that was before
> writing the issue.  

OK, sounds like we have artwork blockages.  I will see what else can be
done, but BR#2836 is definitely not a release blocker.
 
> >   BR#2820 Alt-Enter empty panel glitch
> >     Another one I can not reproduce.  Any updates?
> >   
> Just the reply I had added to the report recently.
> I dont know how to fix it and its blocked from happening with your change.  

Good to know that the mitigation worked.

> Fullscreen mode is too annoying to use anyway, cause of the unsupported use
> of JDialog causing problems (sometimes behind the window, sometimes the
> main window minimizing, depending on Java version or phase of moon).  

I should probably switch to using full screen then:-).  Java seems to be a
lot better maintained under linux than our other targets.  OTOH, it has
had a lot of problems...

> >   BR#2806 Information on corner stopped showing
> >     Still unclear when this occurs.
> >   
> I think thats low priority as its happening only rarely. I would just wait
> for people reporting additional sightings and more info.  

Agreed.

> I remember looking through most PF and thinking near everything is
> blocked on Col1 info, other things I dont know enough about the code or the
> gameplay of Col1, few remaining things are useless busywork like #2.  

PF#2 is somewhat legitimate from a compatibility viewpoint, which is why
no one has closed it, but equally, so far no developer has shown any
interest.  I do not intend to work on it, and do not regard it as a
FreeCol 1.0 release blocker.

You are correct that a lot of PFs are blocked needing Col1-info, and these
should have "open-{WWC1D,need-info}" status.  There are still quite a
few that are merely "open", which should be unblocked.  I admit some of
these are hard though.  Some are both (e.g. PF#9) but I may yet at least
make a trial implementation.
 
> >[America_large]  
> IIRC there had been settlements contained inside the America map, but
> for some reason (bug-circumvention???) the info was deleted from it.  

I forget the details.  There was a fail at one point when either the
map format changed or a bunch of fixes to the map were made.  I was
probably the offender.  However the old settlement positions were not
brilliant either --- there were settlements on 1-tile islands and the
number of settlements was quite low.  I suspect we decided at the time
that dropping the fixed settlements was the lesser fail, as FreeCol was
by then auto-generating them decently.  No one has noticed and/or
complained so it looks like we made a reasonable call.

> I guess it woud be easier to check out that old FreeCol version,
> then transplant the interesting xml tags manually into the current map.  

Alas no.  The format has changed, and you have to remap id numbers so it
is not just a simple cut and paste.  I have found some notes I made last
time I looked at this --- apparently git.12e5780 should have settlements
in America_large.  I extracted their positions and info as you suggest and
wrote a hack to put them back into a map (attached[1]), but was
dissatisfied with the result and dropped the project.  Anyone interested
is welcome to use the attached hack, but even if it can be made to work,
expect to still have to spend time in the map editor cleaning up the
result... and if the number of settlements is a concern to you as I think
it should be, it is probably easier to work from a current well-populated
game/map.

Cheers,
Mike Pope

[1] The code looks like it should work, but there are confusing references
to its previous version where it was used to add Lost City Rumours to
America_large.
/**
 *  Copyright (C) 2002-2013   The FreeCol Team
 *
 *  This file is part of FreeCol.
 *
 *  FreeCol is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  FreeCol is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with FreeCol.  If not, see <http://www.gnu.org/licenses/>.
 */

package net.sf.freecol.tools;

import java.io.File;
import java.util.HashMap;

import net.sf.freecol.server.generator.FreeColMapLoader;
import net.sf.freecol.common.io.FreeColSavegameFile;
import net.sf.freecol.common.io.FreeColTcFile;
import net.sf.freecol.common.model.Game;
import net.sf.freecol.common.model.IndianSettlement;
import net.sf.freecol.common.model.GoodsType;
import net.sf.freecol.common.model.LostCityRumour;
import net.sf.freecol.common.model.Map;
import net.sf.freecol.common.model.Map.Layer;
import net.sf.freecol.common.model.Nation;
import net.sf.freecol.common.model.Player;
import net.sf.freecol.common.model.Region;
import net.sf.freecol.common.model.Resource;
import net.sf.freecol.common.model.ResourceType;
import net.sf.freecol.common.model.Specification;
import net.sf.freecol.common.model.Tile;
import net.sf.freecol.common.model.TileItemContainer;
import net.sf.freecol.common.model.TileType;
import net.sf.freecol.common.model.UnitType;
import net.sf.freecol.server.FreeColServer;
import net.sf.freecol.server.model.ServerGame;
import net.sf.freecol.server.model.ServerIndianSettlement;
import net.sf.freecol.server.model.ServerPlayer;
import net.sf.freecol.server.model.ServerRegion;


public class MapFix {

    // java -cp FreeCol.jar net.sf.freecol.tools.MapFix /tmp/resources.fsg 
    // resulting /tmp/foo.fsg has LCRs in it.

    private static void add(Specification spec, Map map, int x, int y) {
        Tile t = map.getTile(x, y);
        t.addLostCityRumour(new LostCityRumour(map.getGame(), t));
    }

    private static void gripe(String a, Tile t) {
        t.dumpObject();
        gripe(a);
    }

    private static void gripe(String a) {
        System.err.println(a);
        System.exit(1);
    }

    private static void add(Specification spec, Map map, int x, int y,
        boolean isCapital, String skillId, String name, String nationId,
        String w0, String w1, String w2) {
        Game game = map.getGame();
        Tile tile = map.getTile(x, y);
        if (tile == null) gripe("Bad tile " + x + "," + y);
        if (!tile.isLand()) gripe("Not land " + x + "," + y);
        Player owner = game.getPlayer(nationId);
        if (owner == null) gripe("Bad nation " + nationId);
        UnitType skill = spec.getUnitType(skillId);
        if (skill == null) gripe("Bad skill " + skillId);
        IndianSettlement is = new ServerIndianSettlement(map.getGame(),
            owner, name, tile, isCapital, skill, null);
        GoodsType g0 = spec.getGoodsType(w0);
        if (g0 == null) gripe("Bad g0 " + w0);
        GoodsType g1 = spec.getGoodsType(w1);
        if (g1 == null) gripe("Bad g1 " + w1);
        GoodsType g2 = spec.getGoodsType(w2);
        if (g2 == null) gripe("Bad g2 " + w2);
        is.setWantedGoods(0, g0);
        is.setWantedGoods(1, g1);
        is.setWantedGoods(2, g2);
        is.placeSettlement(true);
        if (tile.getIndianSettlement() != is) gripe("Placement failed ", tile);
        if (tile.getOwner() != owner) gripe("Owner failed ", tile);
        if (tile.getOwningSettlement() != is) gripe("Owning failed ", tile);
        System.err.println("Added " + is.getName());
    }

    public static void main(String[] args) throws Exception {
        Specification spec = new FreeColTcFile("freecol").getSpecification();
        spec.applyDifficultyLevel("model.difficulty.medium");
        FreeColServer server;

        for (String arg : args) {
            server = new FreeColServer(new FreeColSavegameFile(new File(arg)),
                spec, 0, "fix");
            Game game = server.getGame();
            Map map = game.getMap();

            // This restores the original settlements from the America_large
            // map as of just before:
            // "git.12e5780 Improved America map by js.thedude."
            // however, they are crappy (capitals in weird places, Incas
            // in Virginia).  What we want is for someone to edit America
            // and add sensibly placed settlements.
            for (Nation n : spec.getIndianNations()) {
                System.err.println("Added " + n.getId());
                // Fake routine, basically "players.add(p)".
                Player p = new ServerPlayer(game, false, n, null, null);
                p.setAI(true);
                game.addPlayer(p);
            }
add(spec, map, 13, 13, false, "model.unit.expertFurTrapper", "Sunkawakan", "model.nation.sioux", "model.goods.rum", "model.goods.cigars", "model.goods.cloth");
add(spec, map, 24, 13, false, "model.unit.expertFarmer", "Kanehstà:ke", "model.nation.iroquois", "model.goods.rum", "model.goods.cigars", "model.goods.tradeGoods");
add(spec, map, 34, 25, false, "model.unit.expertFurTrapper", "Detgahnegaha'gó:wah", "model.nation.iroquois", "model.goods.rum", "model.goods.cigars", "model.goods.tradeGoods");
add(spec, map, 14, 26, false, "model.unit.expertFarmer", "Tiawenro:ten", "model.nation.iroquois", "model.goods.rum", "model.goods.cigars", "model.goods.coats");
add(spec, map, 9, 30, false, "model.unit.expertFurTrapper", "NiN Ubdhadha", "model.nation.sioux", "model.goods.rum", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 13, 34, false, "model.unit.masterTobaccoPlanter", "OnuNwa", "model.nation.sioux", "model.goods.cigars", "model.goods.tradeGoods", "model.goods.tools");
add(spec, map, 25, 35, false, "model.unit.expertFarmer", "Uwaga'hi", "model.nation.cherokee", "model.goods.rum", "model.goods.cigars", "model.goods.coats");
add(spec, map, 30, 35, true, "model.unit.expertFurTrapper", "Onondaga", "model.nation.iroquois", "model.goods.rum", "model.goods.tradeGoods", "model.goods.tools");
add(spec, map, 44, 35, true, "model.unit.expertFisherman", "Itsa'ti", "model.nation.cherokee", "model.goods.rum", "model.goods.cigars", "model.goods.tradeGoods");
add(spec, map, 38, 41, false, "model.unit.expertFisherman", "Iau'nigu", "model.nation.cherokee", "model.goods.rum", "model.goods.cigars", "model.goods.tradeGoods");
add(spec, map, 13, 45, true, "model.unit.expertFarmer", "Tetonwan", "model.nation.sioux", "model.goods.rum", "model.goods.cigars", "model.goods.coats");
add(spec, map, 35, 45, false, "model.unit.expertFisherman", "Tgagwë:tro'", "model.nation.iroquois", "model.goods.rum", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 33, 52, false, "model.unit.masterCottonPlanter", "Elawa diyi", "model.nation.cherokee", "model.goods.rum", "model.goods.tradeGoods", "model.goods.cigars");
add(spec, map, 29, 66, false, "model.unit.expertFarmer", "Cava", "model.nation.inca", "model.goods.rum", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 12, 77, false, "model.unit.expertFarmer", "Mnis&lt;os&lt;e", "model.nation.sioux", "model.goods.rum", "model.goods.cigars", "model.goods.coats");
add(spec, map, 14, 86, false, "model.unit.expertFarmer", "Awp", "model.nation.apache", "model.goods.rum", "model.goods.cigars", "model.goods.coats");
add(spec, map, 20, 88, false, "model.unit.masterCottonPlanter", "Tsézhiné", "model.nation.apache", "model.goods.rum", "model.goods.tradeGoods", "model.goods.tools");
add(spec, map, 25, 89, false, "model.unit.expertFisherman", "Ocotlan", "model.nation.aztec", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 16, 93, false, "model.unit.expertFarmer", "Thah-a-i-nin'", "model.nation.apache", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 22, 96, false, "model.unit.expertFisherman", "Chictlan", "model.nation.aztec", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
//add(spec, map, 30, 97, false, "model.unit.expertFisherman", "Ani'-Ku'sa", "model.nation.cherokee", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
//add(spec, map, 34, 98, false, "model.unit.expertFisherman", "Camotlan", "model.nation.aztec", "model.goods.tradeGoods", "model.goods.cloth", "model.goods.cigars");
add(spec, map, 26, 101, false, "model.unit.masterSugarPlanter", "Yopico", "model.nation.aztec", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
//add(spec, map, 40, 105, false, "model.unit.masterSugarPlanter", "Wa'omoni", "model.nation.arawak", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 25, 106, false, "model.unit.expertFarmer", "Acaltepec", "model.nation.aztec", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 26, 111, false, "model.unit.expertSilverMiner", "Acatlan", "model.nation.aztec", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 40, 111, false, "model.unit.masterCottonPlanter", "Ha-makabamitc", "model.nation.apache", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 29, 120, true, "model.unit.expertFarmer", "Mescalero", "model.nation.apache", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 45, 124, true, "model.unit.expertFisherman", "Xaymaca", "model.nation.arawak", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 24, 135, true, "model.unit.expertOreMiner", "Teocuitlatlan", "model.nation.aztec", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 48, 149, false, "model.unit.masterSugarPlanter", "Caonabo", "model.nation.arawak", "model.goods.cigars", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 31, 152, false, "model.unit.expertSilverMiner", "Kon", "model.nation.inca", "model.goods.rum", "model.goods.cloth", "model.goods.tradeGoods");
add(spec, map, 49, 153, false, "model.unit.masterSugarPlanter", "Camagüey", "model.nation.arawak", "model.goods.cigars", "model.goods.tradeGoods", "model.goods.tools");
add(spec, map, 32, 165, false, "model.unit.expertFisherman", "Llankira", "model.nation.inca", "model.goods.rum", "model.goods.cigars", "model.goods.tradeGoods");
add(spec, map, 35, 173, false, "model.unit.expertFisherman", "Supay", "model.nation.inca", "model.goods.rum", "model.goods.cigars", "model.goods.tradeGoods");
add(spec, map, 35, 189, false, "model.unit.expertSilverMiner", "Kurki", "model.nation.inca", "model.goods.rum", "model.goods.cigars", "model.goods.tradeGoods");
add(spec, map, 35, 202, true, "model.unit.expertSilverMiner", "Qosqo", "model.nation.inca", "model.goods.rum", "model.goods.cigars", "model.goods.tradeGoods");
add(spec, map, 33, 226, true, "model.unit.masterCottonPlanter", "Iguaçu", "model.nation.tupi", "model.goods.rum", "model.goods.cigars", "model.goods.tradeGoods");
add(spec, map, 33, 237, false, "model.unit.expertSilverMiner", "Risawariru", "model.nation.inca", "model.goods.rum", "model.goods.cigars", "model.goods.tradeGoods");
add(spec, map, 36, 239, false, "model.unit.masterTobaccoPlanter", "Aché", "model.nation.tupi", "model.goods.rum", "model.goods.tradeGoods", "model.goods.cloth");
add(spec, map, 33, 245, false, "model.unit.masterCottonPlanter", "Umuarama", "model.nation.tupi", "model.goods.rum", "model.goods.cigars", "model.goods.cloth");
add(spec, map, 36, 247, false, "model.unit.seasonedScout", "Pororoca", "model.nation.tupi", "model.goods.rum", "model.goods.cigars", "model.goods.cloth");
map.setLayer(Layer.NATIVES);

//add(spec, map, 12,0);
//add(spec, map, 25,0);
//add(spec, map, 23,2);
//add(spec, map, 2,3);
//add(spec, map, 7,3);
//add(spec, map, 32,3);
//add(spec, map, 13,4);
//add(spec, map, 49,6);
//add(spec, map, 18,7);
//add(spec, map, 0,9);
//add(spec, map, 9,9);
//add(spec, map, 11,9);
//add(spec, map, 5,10);
//add(spec, map, 36,12);
//add(spec, map, 4,16);
//add(spec, map, 16,16);
//add(spec, map, 6,18);
//add(spec, map, 41,19);
//add(spec, map, 6,20);
//add(spec, map, 25,20);
//add(spec, map, 17,21);
//add(spec, map, 14,22);
//add(spec, map, 29,23);
//add(spec, map, 9,26);
//add(spec, map, 24,26);
//add(spec, map, 40,26);
//add(spec, map, 43,26);
//add(spec, map, 10,28);
//add(spec, map, 33,29);
//add(spec, map, 20,30);
//add(spec, map, 19,31);
//add(spec, map, 37,31);
//add(spec, map, 14,33);
//add(spec, map, 32,35);
//add(spec, map, 34,35);
//add(spec, map, 7,37);
//add(spec, map, 19,37);
//add(spec, map, 16,38);
//add(spec, map, 26,38);
//add(spec, map, 13,39);
//add(spec, map, 17,39);
//add(spec, map, 31,39);
//add(spec, map, 25,40);
//add(spec, map, 35,41);
//add(spec, map, 9,42);
//add(spec, map, 18,44);
//add(spec, map, 26,44);
//add(spec, map, 19,46);
//add(spec, map, 7,47);
//add(spec, map, 11,50);
//add(spec, map, 27,50);
//add(spec, map, 29,50);
//add(spec, map, 7,51);
//add(spec, map, 13,51);
//add(spec, map, 23,51);
//add(spec, map, 33,52);
//add(spec, map, 15,55);
//add(spec, map, 25,55);
//add(spec, map, 31,55);
//add(spec, map, 12,56);
//add(spec, map, 21,56);
//add(spec, map, 30,56);
//add(spec, map, 10,57);
//add(spec, map, 22,60);
//add(spec, map, 24,60);
//add(spec, map, 16,62);
//add(spec, map, 23,63);
//add(spec, map, 28,63);
//add(spec, map, 13,66);
//add(spec, map, 14,68);
//add(spec, map, 26,68);
//add(spec, map, 16,70);
//add(spec, map, 11,71);
//add(spec, map, 24,71);
//add(spec, map, 28,73);
//add(spec, map, 15,76);
//add(spec, map, 19,79);
//add(spec, map, 14,87);
//add(spec, map, 27,87);
//add(spec, map, 24,89);
//add(spec, map, 31,90);
//add(spec, map, 25,92);
//add(spec, map, 19,93);
//add(spec, map, 17,94);
//add(spec, map, 20,94);
//add(spec, map, 22,96);
//add(spec, map, 23,101);
//add(spec, map, 25,103);
//add(spec, map, 27,112);
//add(spec, map, 33,112);
//add(spec, map, 40,112);
//add(spec, map, 37,119);
//add(spec, map, 34,120);
//add(spec, map, 41,124);
//add(spec, map, 34,128);
//add(spec, map, 40,130);
//add(spec, map, 31,135);
//add(spec, map, 36,135);
//add(spec, map, 45,135);
//add(spec, map, 30,138);
//add(spec, map, 49,140);
//add(spec, map, 51,141);
//add(spec, map, 32,142);
//add(spec, map, 41,142);
//add(spec, map, 30,144);
//add(spec, map, 31,149);
//add(spec, map, 47,150);
//add(spec, map, 54,150);
//add(spec, map, 31,152);
//add(spec, map, 37,152);
//add(spec, map, 34,153);
//add(spec, map, 32,155);
//add(spec, map, 47,155);
//add(spec, map, 52,155);
//add(spec, map, 43,156);
//add(spec, map, 53,156);
//add(spec, map, 47,157);
//add(spec, map, 34,158);
//add(spec, map, 32,160);
//add(spec, map, 35,160);
//add(spec, map, 33,161);
//add(spec, map, 35,164);
//add(spec, map, 51,164);
//add(spec, map, 32,165);
//add(spec, map, 37,166);
//add(spec, map, 48,166);
//add(spec, map, 34,167);
//add(spec, map, 39,168);
//add(spec, map, 36,169);
//add(spec, map, 41,169);
//add(spec, map, 35,170);
//add(spec, map, 37,172);
//add(spec, map, 38,172);
//add(spec, map, 47,172);
//add(spec, map, 50,175);
//add(spec, map, 36,176);
//add(spec, map, 37,177);
//add(spec, map, 39,177);
//add(spec, map, 49,183);
//add(spec, map, 38,184);
//add(spec, map, 35,185);
//add(spec, map, 42,186);
//add(spec, map, 46,186);
//add(spec, map, 37,189);
//add(spec, map, 40,190);
//add(spec, map, 11,192);
//add(spec, map, 43,194);
//add(spec, map, 36,195);
//add(spec, map, 40,195);
//add(spec, map, 41,199);
//add(spec, map, 44,199);
//add(spec, map, 36,200);
//add(spec, map, 45,202);
//add(spec, map, 39,203);
//add(spec, map, 37,204);
//add(spec, map, 40,208);
//add(spec, map, 42,210);
//add(spec, map, 35,217);
//add(spec, map, 39,218);
//add(spec, map, 34,222);
//add(spec, map, 37,235);
//add(spec, map, 34,246);
            //map.setLayer(Layer.RESOURCES);
            /*
            for (Tile t : map.getAllTiles()) {
                System.err.println("At " + t + " with " + t.getOwningSettlement());
                if (t.getOwningSettlement() != null) {
                    Player own = t.getOwningSettlement().getOwner();
                    if (t.getOwner() == null) {
                        t.setOwner(own);
                        System.err.println("Set Owner at " + t + " to " + own);
                    }
                }
            }
            */
            server.saveGame(new File("/tmp/foo.fsg"), null);
        }
        System.exit(0);
    }
}

Attachment: pgpT0zz_wZGPC.pgp
Description: OpenPGP digital signature

------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Freecol-developers mailing list
Freecol-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freecol-developers

Reply via email to