diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/common/city.c freeciv/common/city.c --- FreecivCVS/common/city.c Sun Jan 21 23:57:27 2001 +++ freeciv/common/city.c Sat Feb 10 10:52:06 2001 @@ -744,7 +744,10 @@ int bonus=0; if (pc2 && pc1) { - bonus=(pc1->tile_trade+pc2->tile_trade+4)/8; + bonus=pc1->tile_trade+pc2->tile_trade+4; + bonus*=2; /* fudge factor to more closely approximate Civ2 behavior + (Civ2 is really very different -- this just fakes it a little better) */ + bonus/=8; if (map_get_continent(pc1->x, pc1->y) == map_get_continent(pc2->x, pc2->y)) bonus/=2; diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/server/cityhand.c freeciv/server/cityhand.c --- FreecivCVS/server/cityhand.c Sat Jan 20 08:10:33 2001 +++ freeciv/server/cityhand.c Sat Feb 10 10:54:16 2001 @@ -82,9 +82,9 @@ tb=(map_distance(pc1->x, pc1->y, pc2->x, pc2->y)+10); /* should this be real_map_distance? Leaving for now -- Syela */ + tb*=3; /* fudge factor to more closely approximate Civ2 behavior + (Civ2 is really very different -- this just fakes it a little better) */ tb=(tb*(pc1->trade_prod+pc2->trade_prod))/24; - if (map_get_continent(pc1->x, pc1->y) == map_get_continent(pc2->x, pc2->y)) - tb/=2; if (pc1->owner==pc2->owner) tb/=2;