[Freeciv-Dev] (PR#40607) City Health patch

2009-05-09 Thread guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40607 

 [cazf...@gmail.com - Mo 04. Mai. 2009, 09:53:10]:
 
 2009/1/7 Marko Lindqvist cazf...@gmail.com:
  2008/12/21 Yoav Luft:
 
  Hi, I think it's pretty much finished, at least the basic 
functionality.
  The attached .diff file adds the functionality of cities losing
  population when they grow too large due to diseases.
 
   I found additional comments in RT ticket that were not sent to
  mailing list. I looked latest version of the patch,
  40607-freeciv-svn15395-health.patch.diff.
 
  Is anybody working on this?
 

I did try to adapt the patch, especially the AI effect evaluation. But 
I did not understand how and why it is calculated ... After some time 
I moved on to the gold upkeep patch. I still observe this patch but at 
the moment my time to work on this is very limited and if I find some 
time it is the upkeep patch.

I attached my last version. Changes:

* reduced formula for the AI effect evaluation
* change calculation of trade illness
* save plague status for each city (never or turn x)
* ruleset updates

Matthias

PS: If it is possible I would like to get an email if a comment to 
this patch is added (matthias.pfaffer...@mapfa.de)

 
  - ML
 
 
 

diff -urN -X./freeciv-2.1.99svn15584/diff_ignore freeciv-2.1.99svn15584/ai/aicity.c freeciv-2.1.99svn15584.health/ai/aicity.c
--- freeciv-2.1.99svn15584/ai/aicity.c	2009-01-05 11:54:27.0 +0100
+++ freeciv-2.1.99svn15584.health/ai/aicity.c	2009-03-23 20:48:22.937206187 +0100
@@ -520,6 +520,11 @@
   case EFT_GROWTH_FOOD:
 v += c * 4 + (amount / 7) * pcity-surplus[O_FOOD];
 break;
+  case EFT_ILLNESS:
+/* old formula:
+ * v += c * 5 + (amount / 5) * pcity-illness + pcity-had_plague * 20; */
+v += c * 5 + (amount / 5) * pcity-illness;
+break;
   case EFT_AIRLIFT:
 /* FIXME: We need some smart algorithm here. The below is 
  * totally braindead. */
diff -urN -X./freeciv-2.1.99svn15584/diff_ignore freeciv-2.1.99svn15584/client/citydlg_common.c freeciv-2.1.99svn15584.health/client/citydlg_common.c
--- freeciv-2.1.99svn15584/client/citydlg_common.c	2009-01-10 20:17:51.0 +0100
+++ freeciv-2.1.99svn15584.health/client/citydlg_common.c	2009-03-23 20:48:22.941206067 +0100
@@ -490,6 +490,28 @@
 }
 
 /**
+  Return text describing the chance for a plague.
+**/
+void get_city_dialog_illness_text(const struct city *pcity,
+  char *buf, size_t bufsz)
+{
+  int illness, trade, effects, from_size;
+
+  illness = city_illness(pcity, trade, effects, from_size);
+  buf[0] = '\0';
+
+  cat_snprintf(buf, bufsz, %+2.1f : Risk from trade\n,
+   ((float)(trade) / 10.0));
+  cat_snprintf(buf, bufsz, %+2.1f : Risk from over crowdness\n,
+   ((float)(from_size) / 10.0));
+  cat_snprintf(buf, bufsz, %+2.1f : Effect of buildings\n,
+   ((float)(effects) / 10.0));
+  cat_snprintf(buf, bufsz,  : Adds up to\n);
+  cat_snprintf(buf, bufsz, %2.1f : Total chance for a plgue,
+   ((float)(illness) / 10.0));
+}
+
+/**
   Return text describing the pollution output.
 **/
 void get_city_dialog_pollution_text(const struct city *pcity,
diff -urN -X./freeciv-2.1.99svn15584/diff_ignore freeciv-2.1.99svn15584/client/citydlg_common.h freeciv-2.1.99svn15584.health/client/citydlg_common.h
--- freeciv-2.1.99svn15584/client/citydlg_common.h	2009-01-05 11:56:00.0 +0100
+++ freeciv-2.1.99svn15584.health/client/citydlg_common.h	2009-03-23 20:48:22.941206067 +0100
@@ -49,6 +49,8 @@
  char *buffer, size_t bufsz);
 void get_city_dialog_pollution_text(const struct city *pcity,
 char *buffer, size_t bufsz);
+void get_city_dialog_illness_text(const struct city *pcity,
+  char *buf, size_t bufsz);
 
 int get_city_citizen_types(struct city *pcity, enum citizen_feeling index,
 			   enum citizen_category *citizens);
diff -urN -X./freeciv-2.1.99svn15584/diff_ignore freeciv-2.1.99svn15584/client/gui-gtk-2.0/citydlg.c freeciv-2.1.99svn15584.health/client/gui-gtk-2.0/citydlg.c
--- freeciv-2.1.99svn15584/client/gui-gtk-2.0/citydlg.c	2009-02-01 19:26:51.0 +0100
+++ freeciv-2.1.99svn15584.health/client/gui-gtk-2.0/citydlg.c	2009-03-23 20:48:22.945205388 +0100
@@ -95,7 +95,7 @@
 enum info_style { NORMAL, ORANGE, RED, NUM_INFO_STYLES };
 
 #define NUM_CITIZENS_SHOWN 23
-#define NUM_INFO_FIELDS 11  /* number of fields in city_info */
+#define NUM_INFO_FIELDS 12  /* number of fields in city_info */
 #define NUM_PAGES 6 /* the number of pages in city dialog notebook 
  * (+1) if you change this, you must add an
 

[Freeciv-Dev] (PR#40759) [patch] calc_city_units_upkeep

2009-04-14 Thread guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40759 

 The upkeep information is now send to the client and the values are
 updated
 each turn and if
 
 * a unit is disbanded
 * a unit is bribed by a spy
 * a unit is disbanded and
 * a unit is updated

if the creation of a unit is added the function does not have to be 
called on each turn - or are there buildings / events which change the 
upkeep of units (government change?) ... I have to think about this.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40758) Bug with SVN Trunk rev 15609- disappearing grasslands shield

2009-04-13 Thread guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40758 


I've created and tested a rollback patch, which removes all update22*
references/code and revert back resource identifiers to the 2.1.x default.

Should you need the dictionary approach, I could come up with a patch
for that too.

- Stéphane Messerli

 But I am still wondering if it would not just be simpler for
 the identifiers to be changed back to what they were before,
 i.e. the values they have in the update22* fields. I will
 check this and perhaps make a patch later if nobody can
 figure out a good reason why not to do this.

Index: server/ruleset.c
===
--- server/ruleset.c	(revision 15611)
+++ server/ruleset.c	(working copy)
@@ -69,10 +69,6 @@
 #define UNIT_CLASS_SECTION_PREFIX unitclass_
 #define UNIT_SECTION_PREFIX unit_
 
-/* savegame conversion: resource identifiers */
-char *update22one = NULL;
-char *update22two = NULL;
-
 static const char name_too_long[] = Name \%s\ too long; truncating.;
 #define check_name(name) (check_strlen(name, MAX_LEN_NAME, name_too_long))
 #define name_strlcpy(dst, src) \
@@ -1622,16 +1618,6 @@
   }
   game.control.resource_count = nval;
 
-  if (update22one) {
-free(update22one);
-  }
-  update22one = fc_calloc(nval, sizeof(char));
-
-  if (update22two) {
-free(update22two);
-  }
-  update22two = fc_calloc(nval, sizeof(char));
-
   /* avoid re-reading files */
   if (resource_sections) {
 free(resource_sections);
@@ -1932,33 +1918,6 @@
   }
 }
 
-update22one[i]
-  = secfile_lookup_str_default(file, identifier,
-   %s.update22one, rsection)[0];
-if (RESOURCE_NULL_IDENTIFIER == update22one[i]) {
-  ruleset_error(LOG_ERROR, \%s\ [%s] update22one missing value.,
-filename, rsection);
-}
-if (RESOURCE_NONE_IDENTIFIER == update22one[i]) {
-  ruleset_error(LOG_ERROR,
-\%s\ [%s] cannot use '%c' as an identifier;
- it is reserved.,
-filename, rsection, update22one[i]);
-}
-
-update22two[i]
-  = secfile_lookup_str_default(file, identifier,
-   %s.update22two, rsection)[0];
-if (RESOURCE_NULL_IDENTIFIER == update22two[i]) {
-  ruleset_error(LOG_ERROR, \%s\ [%s] update22two missing value.,
-filename, rsection);
-}
-if (RESOURCE_NONE_IDENTIFIER == update22two[i]) {
-  ruleset_error(LOG_ERROR,
-\%s\ [%s] cannot use '%c' as an identifier;
- it is reserved.,
-filename, rsection, update22two[i]);
-}
   } resource_type_iterate_end;
 
   /* base details */
Index: server/ruleset.h
===
--- server/ruleset.h	(revision 15611)
+++ server/ruleset.h	(working copy)
@@ -15,10 +15,6 @@
 
 struct conn_list;
 
-/* savegame conversion: resource identifiers */
-extern char *update22one;
-extern char *update22two;
-
 /* functions */
 void load_rulesets(void);
 void send_rulesets(struct conn_list *dest);
Index: server/savegame.c
===
--- server/savegame.c	(revision 15611)
+++ server/savegame.c	(working copy)
@@ -914,28 +914,6 @@
 }
 
 /
-  Convert an older resource into the current value.
-/
-static struct resource *update22_resource(char c)
-{
-  /* Different rulesets had different resources. */
-  if (strcmp(game.rulesetdir, civ1) == 0) {
-resource_type_iterate(presource) {
-  if (update22one[resource_index(presource)] == c) {
-return presource;
-  }
-} resource_type_iterate_end;
-  } else {
-resource_type_iterate(presource) {
-  if (update22two[resource_index(presource)] == c) {
-return presource;
-  }
-} resource_type_iterate_end;
-  }
-  return NULL;
-}
-
-/
   Return the resource for the given identifier.
 /
 static struct resource *identifier_to_resource(char c)
@@ -945,9 +923,6 @@
|| c == RESOURCE_NONE_IDENTIFIER) {
 return NULL;
   }
-  if (20199  game.version) {
-return update22_resource(c);
-  }
   return find_resource_by_identifier(c);
 }
 
Index: data/default/terrain.ruleset
===
--- data/default/terrain.ruleset	(revision 15611)
+++ data/default/terrain.ruleset	(working copy)
@@ -674,8 +674,6 @@
 ; identifier   = single-character identifier used in savegames.  This
 ;must be unique for each resource, and changing it will
 ;break savegame compatibility.
-; 

[Freeciv-Dev] (PR#40767) Revert resource identifiers and remove update22* fields

2009-04-13 Thread guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40767 

 Also the terrain.ruleset files in the civ1 and civ2 ruleset
 directories need to be updated. I'll test it with recent
 and older savegames once these changes are made. Probably
 savegames already made in 2.1.99 will become incompatible,
 but that was to be expected. Hopefully this will be the
 only drawback.

I've fixed the civ1 and civ2 terrain.ruleset files too. Resource
identifiers have been rolled back to 2.1.x version.
New patch attached (contains all changes and not only the new civ1/civ2
changes).

 Thanks for doing this tedious work. :)

No problem :-)
- Stéphane Messerli

Index: server/ruleset.c
===
--- server/ruleset.c	(revision 15611)
+++ server/ruleset.c	(working copy)
@@ -69,10 +69,6 @@
 #define UNIT_CLASS_SECTION_PREFIX unitclass_
 #define UNIT_SECTION_PREFIX unit_
 
-/* savegame conversion: resource identifiers */
-char *update22one = NULL;
-char *update22two = NULL;
-
 static const char name_too_long[] = Name \%s\ too long; truncating.;
 #define check_name(name) (check_strlen(name, MAX_LEN_NAME, name_too_long))
 #define name_strlcpy(dst, src) \
@@ -1622,16 +1618,6 @@
   }
   game.control.resource_count = nval;
 
-  if (update22one) {
-free(update22one);
-  }
-  update22one = fc_calloc(nval, sizeof(char));
-
-  if (update22two) {
-free(update22two);
-  }
-  update22two = fc_calloc(nval, sizeof(char));
-
   /* avoid re-reading files */
   if (resource_sections) {
 free(resource_sections);
@@ -1932,33 +1918,6 @@
   }
 }
 
-update22one[i]
-  = secfile_lookup_str_default(file, identifier,
-   %s.update22one, rsection)[0];
-if (RESOURCE_NULL_IDENTIFIER == update22one[i]) {
-  ruleset_error(LOG_ERROR, \%s\ [%s] update22one missing value.,
-filename, rsection);
-}
-if (RESOURCE_NONE_IDENTIFIER == update22one[i]) {
-  ruleset_error(LOG_ERROR,
-\%s\ [%s] cannot use '%c' as an identifier;
- it is reserved.,
-filename, rsection, update22one[i]);
-}
-
-update22two[i]
-  = secfile_lookup_str_default(file, identifier,
-   %s.update22two, rsection)[0];
-if (RESOURCE_NULL_IDENTIFIER == update22two[i]) {
-  ruleset_error(LOG_ERROR, \%s\ [%s] update22two missing value.,
-filename, rsection);
-}
-if (RESOURCE_NONE_IDENTIFIER == update22two[i]) {
-  ruleset_error(LOG_ERROR,
-\%s\ [%s] cannot use '%c' as an identifier;
- it is reserved.,
-filename, rsection, update22two[i]);
-}
   } resource_type_iterate_end;
 
   /* base details */
Index: server/ruleset.h
===
--- server/ruleset.h	(revision 15611)
+++ server/ruleset.h	(working copy)
@@ -15,10 +15,6 @@
 
 struct conn_list;
 
-/* savegame conversion: resource identifiers */
-extern char *update22one;
-extern char *update22two;
-
 /* functions */
 void load_rulesets(void);
 void send_rulesets(struct conn_list *dest);
Index: server/savegame.c
===
--- server/savegame.c	(revision 15611)
+++ server/savegame.c	(working copy)
@@ -914,28 +914,6 @@
 }
 
 /
-  Convert an older resource into the current value.
-/
-static struct resource *update22_resource(char c)
-{
-  /* Different rulesets had different resources. */
-  if (strcmp(game.rulesetdir, civ1) == 0) {
-resource_type_iterate(presource) {
-  if (update22one[resource_index(presource)] == c) {
-return presource;
-  }
-} resource_type_iterate_end;
-  } else {
-resource_type_iterate(presource) {
-  if (update22two[resource_index(presource)] == c) {
-return presource;
-  }
-} resource_type_iterate_end;
-  }
-  return NULL;
-}
-
-/
   Return the resource for the given identifier.
 /
 static struct resource *identifier_to_resource(char c)
@@ -945,9 +923,6 @@
|| c == RESOURCE_NONE_IDENTIFIER) {
 return NULL;
   }
-  if (20199  game.version) {
-return update22_resource(c);
-  }
   return find_resource_by_identifier(c);
 }
 
Index: data/civ1/terrain.ruleset
===
--- data/civ1/terrain.ruleset	(revision 15611)
+++ data/civ1/terrain.ruleset	(working copy)
@@ -552,8 +552,6 @@
 ; identifier   = single-character identifier used in savegames.  This
 ;must be unique for each resource, and changing it will
 ;

[Freeciv-Dev] (PR#40759) [patch] calc_city_units_upkeep

2009-04-12 Thread guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40759 

  - Perhaps the values of the unit upkeep field should be
  sent in unit info packets so that they do not have to
  be recomputed at the client side.
  
 I will look into this.

Should this be something like in the attached file 
(unit_upkeep_packages.patch.diff)? Or are additional changes needed?
diff -ur freeciv-2.1.99svn15584.gold//common/packets.def freeciv-2.1.99svn15584.unit_upkeep//common/packets.def
--- freeciv-2.1.99svn15584.gold//common/packets.def	2009-03-23 20:47:57.0 +0100
+++ freeciv-2.1.99svn15584.unit_upkeep//common/packets.def	2009-04-12 11:57:22.082023611 +0200
@@ -747,6 +747,7 @@
   PLAYER owner;
   COORD x,y;
   CITY homecity;
+  UINT16 upkeep[O_MAX];
 
   UINT8 veteran;
   BOOL ai, paradropped;
diff -ur freeciv-2.1.99svn15584.gold//server/unittools.c freeciv-2.1.99svn15584.unit_upkeep//server/unittools.c
--- freeciv-2.1.99svn15584.gold//server/unittools.c	2009-03-23 20:47:57.0 +0100
+++ freeciv-2.1.99svn15584.unit_upkeep//server/unittools.c	2009-04-12 11:57:22.874025827 +0200
@@ -1827,6 +1827,7 @@
   packet-x = punit-tile-x;
   packet-y = punit-tile-y;
   packet-homecity = punit-homecity;
+  packet-upkeep = punit-upkeep;
   packet-veteran = punit-veteran;
   packet-type = utype_number(unit_type(punit));
   packet-movesleft = punit-moves_left;
___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40758) Bug with SVN Trunk rev 15609- disappearing grasslands shield

2009-04-11 Thread guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40758 


Indeed, loading a civ1/2 game with the default ruleset is kind of weird.

Perhaps a dictionary (in terrain.ruleset) could look like this:

  [resourceids_dictionary]
  game_version = 2.2
  gold = $
  iron = /
  game = A
  ...

  [resourceids_dictionary]
  game_version = 2.1
  gold = H
  iron = /
  game = e
  ...

That would allow to load saved games from previous versions without
messing up the resources.
What do you think?

- Stéphane Messerli

--

 I am not sure if the whole update22 system should kept. It
 appears terribly hackish with the hard-coded version numbers
 and ruleset names (why should the default ruleset ever care
 about savegames in the civ1 or civ2 rulesets?). I am thinking
 that perhaps the resource identifiers should be changed back
 to remove the need for the update22* fields, or the entire
 identifier system replaced by something more robust (e.g. a
 dictionary mapping identifiers to resource names included in
 the ruleset definition).
 


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40758) Bug with SVN Trunk rev 15609- disappearing grasslands shield

2009-04-11 Thread guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40758 


Indeed, loading a civ1/2 game with the default ruleset is kind of weird.

Perhaps a dictionary (in terrain.ruleset) could look like this:

  [resourceids_dictionary]
  game_version = 2.2
  gold = $
  iron = /
  game = A
  ...

  [resourceids_dictionary]
  game_version = 2.1
  gold = H
  iron = /
  game = e
  ...

That would allow to load saved games from previous versions without
messing up the resources.
What do you think?

- Stéphane Messerli

--

 I am not sure if the whole update22 system should kept. It
 appears terribly hackish with the hard-coded version numbers
 and ruleset names (why should the default ruleset ever care
 about savegames in the civ1 or civ2 rulesets?). I am thinking
 that perhaps the resource identifiers should be changed back
 to remove the need for the update22* fields, or the entire
 identifier system replaced by something more robust (e.g. a
 dictionary mapping identifiers to resource names included in
 the ruleset definition).
 


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40760) [patch] extended_gold_upkeep_style

2009-04-11 Thread guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40760 

 [matthias.pfaffer...@mapfa.de - Sa 11. Apr 2009, 23:45:40]:
 
 extend the gold upkeep system:
 
 0 - old system
 1 - cities pay for buildings; the nation pays for units
 2 - the nation pays for buildings and units
 
 depends on ticket 40619, 40759
 
 compile tested and also with a short game
 

the missing patch file ...
diff -ur freeciv-2.1.99svn15584.gold1//common/game.h freeciv-2.1.99svn15584.gold2//common/game.h
--- freeciv-2.1.99svn15584.gold1//common/game.h	2009-03-23 20:47:57.0 +0100
+++ freeciv-2.1.99svn15584.gold2//common/game.h	2009-04-11 18:40:24.790630188 +0200
@@ -185,7 +185,7 @@
 
 #define GAME_DEFAULT_GOLD_UPKEEP_STYLE 0
 #define GAME_MIN_GOLD_UPKEEP_STYLE 0
-#define GAME_MAX_GOLD_UPKEEP_STYLE 1
+#define GAME_MAX_GOLD_UPKEEP_STYLE 2
 
 #define GAME_DEFAULT_FOODBOX 100
 #define GAME_MIN_FOODBOX 1
diff -ur freeciv-2.1.99svn15584.gold1//data/default/game.ruleset freeciv-2.1.99svn15584.gold2//data/default/game.ruleset
--- freeciv-2.1.99svn15584.gold1//data/default/game.ruleset	2009-04-11 18:04:27.290128240 +0200
+++ freeciv-2.1.99svn15584.gold2//data/default/game.ruleset	2009-04-11 18:11:47.986126143 +0200
@@ -74,7 +74,13 @@
 ; is negative, random buildings in the city are sold off. If the gold
 ; is still negative, then supported units with gold upkeep are
 ; disbanded.
-; 1 - Gold upkeep for all buildings and units is paid in a lump sum after
+; 1 - In the first step, the player's total gold must be non-negative after
+; paying upkeep for all buildings within a city. If for any city the
+; player's gold is negative, random buildings in the city are sold off.
+; In the second step, gold upkeep for all units is paid in a lump sum.
+; If the player does not have enough gold, random units with gold upkeep
+; are disbanded.
+; 2 - Gold upkeep for all buildings and units is paid in a lump sum after
 ; all cities have been processed. If the player does not have enough
 ; gold, random buildings from random cities are sold. If still more
 ; gold is needed, then random units with gold upkeep are disbanded.
diff -ur freeciv-2.1.99svn15584.gold1//server/cityturn.c freeciv-2.1.99svn15584.gold2//server/cityturn.c
--- freeciv-2.1.99svn15584.gold1//server/cityturn.c	2009-04-12 00:48:34.806125540 +0200
+++ freeciv-2.1.99svn15584.gold2//server/cityturn.c	2009-04-12 01:12:40.0 +0200
@@ -109,8 +109,10 @@
   struct cityimpr_vector *imprs);
 static bool sell_random_units(struct player *pplayer,
   struct unitgold_vector *units);
-static void city_balance_treasury(struct city *pcity);
-static void player_balance_treasury(struct player *pplayer);
+static bool city_balance_treasury_buildings(struct city *pcity);
+static bool city_balance_treasury_units(struct city *pcity);
+static bool player_balance_treasury_buildings(struct player *pplayer);
+static bool player_balance_treasury_units(struct player *pplayer);
 
 static bool disband_city(struct city *pcity);
 
@@ -468,7 +470,9 @@
  * 'game.info.gold_upkeep_style':
  * 0 - Each city tries to balance its upkeep individually
  * (this is done in update_city_activity()).
- * 1 - The nation as a whole balances the treasury. */
+ * 1 - Each city tries to balance its upkeep for buildings individually;
+ * the upkeep for units is paid by the nation.
+ * 2 - The nation as a whole balances the treasury. */
 
 /* Iterate over cities in a random order. */
 while (i  0) {
@@ -477,8 +481,20 @@
   cities[r] = cities[--i];
 }
 
-if (game.info.gold_upkeep_style == 1  pplayer-economic.gold  0) {
-  player_balance_treasury(pplayer);
+if (pplayer-economic.gold  0  game.info.gold_upkeep_style  0) {
+  switch (game.info.gold_upkeep_style) {
+case 2:
+  /* nation pays for buildings and units */
+  player_balance_treasury_buildings(pplayer);
+  /* no break */
+case 1:
+  /* nation pays for units */
+  player_balance_treasury_units(pplayer);
+  break;
+default:
+  /* fallthru */
+  break;
+  }
 }
 
 /* Should not happen. */
@@ -1773,22 +1789,18 @@
 }
 
 /**
-  Balance the gold of a nation by selling some random buildings. If this
-  does not help, then disband some units which need gold upkeep.
+  Balance the gold of a nation by selling some random buildings.
 **/
-static void player_balance_treasury(struct player *pplayer)
+static bool player_balance_treasury_buildings(struct player *pplayer)
 {
   struct cityimpr_vector imprs;
   struct cityimpr ci;
-  struct unitgold_vector units;
-  struct unitgold ug;
 
   if (!pplayer) {
-return;
+return false;
   }
 
   

[Freeciv-Dev] (PR#40758) Bug with SVN Trunk rev 15609- disappearing grasslands shield

2009-04-10 Thread guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40758 

Hi,

The issue is caused by the server/savegame.c code considering the dev
version 2.1.99 to be a 2.1 instead of a 2.2.

Resource identifiers are then converted when loading a 2.1.99 game, but
they shouldn't be as they're already using 2.2 identifiers.

I've attached a patch. I've quickly checked Tundra/Furs, and the
resource now remains after loading a 2.1.99 game, while it disappeared
without the patch.

- Stéphane Messerli

--

 [book - Jeu. Avr. 09 23:54:45 2009]:
 
 Hi,
 
 I've experienced an extremely strange bug that I cannot track down the 
 cause of. Any game that is started, find a grasslands shield resource. 
 That shield resource will disappear if a savegame is loaded. I am not 
 sure what this is a bug in. No other resources disappear, only 
 grasslands shields. The square that previously claimed grassland
 (resource)2/1/0 will become just grassland 2/0/0. The two grasslands 
 squares near Tokyo are a good example, here today, gone tomorrow.
 
 This only happens after reloading a game, if a game is just continually 
 played through, no grassland squares disappear. I suspect the problem 
 is in either saving or loading the game.
 I also cannot log in to RT with guest/viceerf, so I hope someone will 
 give me a RT login when they fix the website problems.
 
 
 Aloha,
 RK.
 



freeciv-2.1.99-patch-issue-40758.patch
Description: Binary data
___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40316) enemy cities not shown in fogged tiles

2008-07-25 Thread Freeciv guest user

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40316 

 [EMAIL PROTECTED] - Fr 25. Jul 2008, 16:12:11]:

 It seems to me that problem has to be
 in server side sending such information in the first place. Something
 wrong with send_tile_info()?

Thanks for the hint. The same I did on the client side can also be done
in this function on the server, see the attached patch.
diff -Nur -X.diff_ignore trunk/server/maphand.c changed/server/maphand.c
--- trunk/server/maphand.c	2008-07-24 23:03:15.0 +0200
+++ changed/server/maphand.c	2008-07-25 23:50:56.0 +0200
@@ -412,7 +412,9 @@
   info.owner = (NULL != tile_owner(ptile))
? player_number(tile_owner(ptile))
: MAP_TILE_OWNER_NULL;
-  info.worked = IDENTITY_NUMBER_ZERO;
+  info.worked = (NULL != tile_city(ptile))
+? tile_worked(ptile)-id
+: IDENTITY_NUMBER_ZERO;
 
   info.terrain = (NULL != plrtile-terrain)
   ? terrain_number(plrtile-terrain)
___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40316) enemy cities not shown in fogged tiles

2008-07-25 Thread Freeciv guest user

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40316 

 [EMAIL PROTECTED] - Fr 25. Jul 2008, 16:12:11]:

 It seems to me that problem has to be
 in server side sending such information in the first place. Something
 wrong with send_tile_info()?

Thanks for the hint. The same I did on the client side can also be done
in this function on the server, see the attached patch.

Greetings,
Nico
diff -Nur -X.diff_ignore trunk/server/maphand.c changed/server/maphand.c
--- trunk/server/maphand.c	2008-07-24 23:03:15.0 +0200
+++ changed/server/maphand.c	2008-07-25 23:50:56.0 +0200
@@ -412,7 +412,9 @@
   info.owner = (NULL != tile_owner(ptile))
? player_number(tile_owner(ptile))
: MAP_TILE_OWNER_NULL;
-  info.worked = IDENTITY_NUMBER_ZERO;
+  info.worked = (NULL != tile_city(ptile))
+? tile_worked(ptile)-id
+: IDENTITY_NUMBER_ZERO;
 
   info.terrain = (NULL != plrtile-terrain)
   ? terrain_number(plrtile-terrain)
___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39864) helicopter goto overly cautious

2008-07-23 Thread Freeciv guest user

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39864 

 [book - Sat Jul 19 04:02:14 2008]:
 
 My opinion is that the current behaviour is excessively
 nannying and adds needless complications. The goto code
 should just make the unit go where you tell it to go,
 taking a safe route if one exists, and should not try
 to second guess your intentions and protect you from
 yourself.
 
 
 --
 皇帝陛下のために戦う神風が要るんだから。
 


Why is it that in previous versions of FreeCiv, I could send my aircraft
anywhere in the world that I wanted to, but in this last version (2.1.5)
it doesn't work like that?  I also agree that having to move aircraft
short distances at a time does not work very well.  Personally, for me,
it makes the game not worth the time to play.  In fact, even with using
waypoints, I still cannot move the aircraft very far at a time.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40316) enemy cities not shown in fogged tiles

2008-07-23 Thread Freeciv guest user

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40316 

[EMAIL PROTECTED]

Well I probably have the time for working on this but my experience
doesn't quite match yours with neither the C programming language nor
the freeciv source code, so I'm not all that confident that it would be
just a matter of a few weeks... ;)

I can see books point, all of which quite sensible, and understand that
the actual problem is quite somewhere else. It just isn't quite
reassuring  for me that an incredible complex and obscure code block I
believe could be the source of the problem is commented on top of it
with the words This was once very ugly In this tradition you could
maybe use my current patch as temporarily solution if you want to branch
S2_3 any time soon, as reverting back to the old S2_1 state would
probably mean killing off a lot of good work related to the border
algorithms (which seems to be the key change between versions that
screwed all this fogged stuff up).

Greetings,
Nico the n00b ;)

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40316) enemy cities not shown in fogged tiles

2008-07-23 Thread Freeciv guest user

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40316 

pcity-tile and ptile-city are both set to the correct values.
 In general ptile-city-tile == ptile and pcity-tile-city == pcity
 all the time (that would be a useful assertion to add somewhere - in
 fact client-side sanity checks might be a good thing in general, but
 that's off topic).

There is the catch: Between the versions the ptile-city member has been
replaced by ptile-worked which points to the city working on the tile,
so many tiles are pointing to the same city (in the city radius I
suppose). That is what the tile_city function is all about (in S2_1 it
didn't exist and the put_one_element function got just passed
ptile-city), as it checks whether the tile that is worked on (if at
all) is the center tile of the city itself or if not returns NULL
(meaning it is just a tile in the vicinity of the given city and worked
by it). This worked member is used quite extensively for calculating the
owners of the tiles and their surrounding borders, so it seems to be
working quite fine. Only problem is that somewhere on the client (or
more likely on the server) this member isn't updated correctly, maybe
because somebody thought that the client shouldn't be supposed to know
about what tiles are worked by other players if they can't see it (hich
sounds quite sensible at first glance).


 Question: if you disconnect and reconnect to the server, are the
 fogged cities shown then?  I cannot recall testing this.

Wow, that was a GREAT idea! I just tested it and noticed that the cities
are updated correctly (meaning they are visible when fogged) after
rejoining the game. I moved up to one visible fogged city with an
explorer and left again et voila: once the city got fogged again it
disappeared from the map. The problem seems to occur when the fogged
city becomes visible again or is fogged again.  So the problem with the
updating must be happening somewhere when the TILE_KNOWN_UNSEEN flag is
set for a formerly seen tile or vice versa when it is reset to the
TILE_KNOWN_SEEN.

I'll try to check through all the code blocks where these status flags
are checked and/or changed and compare them with the former code of
S2_1. Maybe I'll get lucky and find the needle in the haystack before
the few weeks pass by. ;)

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40213) No way to turn worker display from main map

2008-07-22 Thread Freeciv guest user

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40213 

 [book - So 20. Jul 2008, 22:29:40]:
 
  [EMAIL PROTECTED] - So 20. Jul 2008, 18:15:03]
 
  Since there hasn't been done anything here
  for a month I assumed that this would be an
  ideal training ground for newbies. ;)
 
 It was very low on my list of things to do, despite
 the always-drawn output being quite an eyesore.
 Great that you saved me the trouble of having to
 implement this myself.
 

Thank you book, I really appreciate your quick and helpfull responses.
I'm glad if I helped you to save some time for doing other more
important stuff with this.


  I tried to supply an option for the view menu
  in the same manner as all the other options
  have been coded before. However, I don't really
  understand the necessarity for the key_x_toggle()
  wrapper function, when you could just use
  directly the request_toggle_x() function in
  control.c. Yet I still used the same way arround
  for I may be too stupid to understand this. :D
 
 My guess is that one day keys will be configurable
 and the key_* functions correspond to bindable
 operations.
 

Well that doesn't really sound convincing to me (not that it would
matter to convince me ;) ). If you would make the key combos
configureable for the user, wouldn't it be all the same if you'd call
either key_*_toggle or request_toggle_* as both functions do the same
and are prototyped in the same header file anyways? 

  Also I used the key combo ctrl + t instead
  of only t, since all the other view options
  are also using the ctrl modifier.
 
  This patch only works for the GTK client, but
  should be addaptable for other clients.
 
 Not having found any problems with your patch,
 I'll commit it after the usual few day wait.
 

Well take all the time you like, no need to hurry for me. ;) 

Greetings,
Nico

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40334) save/load game to/from web

2008-06-28 Thread Freeciv guest user

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40334 

 I don't know how this is best implemented... maybe by a single dedicated 
 server (like del.icio.us http://del.icio.us ... obviously your games 
 would be associated with your login), or maybe by letting individual 
 players configure where their games will be stored.
 
 Maybe there's a free web storage service that could be used for the
purpose.

Checked out a few web storage possibilities. One that looks like a
perfect fit is box.net http://enabled.box.net. They specifically give
you an API, and give you a way to let users create an account easily.
There are already a number of free programs that use it, such as a
Firefox bookmark synchronizer. See http://enabled.box.net/docs

Sounds like you ned to create a box.net project, for which you create an
API key. Would be nice (according to the TOS) if this project could be
more general-purpose than just for freeciv; e.g. if it could apply to
saving/loading game files for multiple games.
To do that, I suppose it would need to be external to freeciv; maybe
just a separate folder-sync program (of which some already exist).
In that case no modification of freeciv would be necessary.

is already one sufficiently generic to handle this need, e.g. a general
saved-game-storage project.


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40337) Failing to load interstellar modpack maps

2008-06-28 Thread Freeciv guest user

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40337 

Should this savegame work? In reality, it doesn't if a client is started
using my own 'starplio' tileset, but does if a client is started using
amplio and then changed to starplio once the game has started.


interstellar80x40.sav
Description: Binary data
___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#34276) clients default to the wrong port

2008-04-11 Thread Freeciv guest user

URL: http://bugs.freeciv.org/Ticket/Display.html?id=34276 

 [EMAIL PROTECTED] - Mar. Sep. 04 12:00:48 2007]:
 
 On 04/09/07, Jordi Negrevernis i Font wrote:
 
  Marko Lindqvist wrote:
  
What Freeciv version and which client are you using?
  
  Freeciv 2.1.0 Beta6 compiled from source
 
  Can you try what 'grep DEFAULT_SOCK_PORT client/clinet.h'
 says about default port?
  I grepped all our sources for '' and found no instance where it
 could still get it as default.
 
 
  I also greeped the sources and it appears that opensuse installs a
default .rc with port .

  BTW, when i greeped the source for '' there were a lot of fuzzy
translated strings with the string ''.

  Thanks, and sorry for the bug report.



___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40171) bug in gtk client - select CMA none

2008-04-03 Thread Freeciv guest user

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40171 

i noticed that PR#40097 is very similar to this report.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#40171) bug in gtk client - select CMA none

2008-04-03 Thread Freeciv guest user

URL: http://bugs.freeciv.org/Ticket/Display.html?id=40171 

i noticed that PR#40097 is very similar to this report.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39464) metaserver's server list

2007-08-22 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39464 

Can be solve easy!

$row[host] and $row[port] variables are destroy by players list
query to database. Resquest sentences are build in same time in the
pacth. You can also, use differents variable names  than $row for
players/variables list query.

Regards



patch.diff.gz
Description: GNU Zip compressed data
___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#20395) two bugs in 2.1.0 Beta2

2007-08-14 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=20395 


2.  When using default rules, fighters can't engage other units
  except
when immediately adjacent to a city.
   
Aparently both fighters and bombers are completely useless.  They
  might
be able to defend, but they cannot attack a city - not even when
  on a
carrier immediately adjacent.
  
   I have no problem with it...you just move onto the unit/city and it
   attacks...
  
  in 2.0.8, it sure did.  Not in the beta I compiled.  And I tried with
  all flying types (well, I didn't bother with a stealth bomber or an
  a-bomb, and I didn't see awacs in that rule-set)  But I did try
  helicoptors, cruise missles, stealth fighters, regular fighters,
  bombers.
  
  Paratroopers still work.
  
  Is there a later snapshot I should try to compile?  I used the srpm
  from
  Mandriva Cooker for 2.0.8, removed a few patches, adjusted version
  numbers, stuck in the new tarball, and rpmbuild -ba 
  
   -jason
  

This appears to be fixed in 2.1.0 Beta 4
--
Daniel J McDonald, CCIE # 2495

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39477) svn version 13132 breaks tilesets?

2007-08-04 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39477 

 [wsimpson - Fri Aug 03 18:19:29 2007]:
 
 Guest wrote:
  [wsimpson - Tue Jul 31 06:51:16 2007]:
  Are you sure you installed correctly?
 
  I believe so, unless using svn update has become the incorrect way.
  ...
  
  []$ civclient -t amplio
  1: tilespec file appears incompatible:
  file: ./amplio.tilespec
  file options: +tilespec4.2007.Jul.13
  supported options: +tilespec4 duplicates_ok
  0: No usable default tileset found, aborting!
  
 What's obvious from the lines above, you are not running the new binary.
 The amplio.tilespec is not the problem, that binary is wrong!
 
 Apparently, there's something wrong with your installation process for
 ./civclient.  Try ./civ in your make directory.
 
 
 

I've now tried updating all my installation programs (automake, etc.)
and reinstalled again, and it's now working, so it looks like the
problem was definitely at my end. 

My apologies, and thanks for the assistance. 

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39477) svn version 13132 breaks tilesets?

2007-08-02 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39477 

 [wsimpson - Tue Jul 31 06:51:16 2007]:
 
 Michael Fay wrote:
  I am unable to get any tileset to work with the current svn version 
  (13132).
  
 All the included tilesets are working here
 
 
  With Amplio
  
 Including Amplio, at this very moment.
 
 
 1: tilespec file appears incompatible:
 file: ./amplio.tilespec
 file options: +tilespec4.2007.Jul.13
  
  If the options line is modified, then get:
  
 0: sectionfile ./amplio.tilespec doesn't contain a 'layer0.match_style' 
  entry
  
  If at line 100 and 104 I added
  match_style = BOOL
  
  then get
 1: No terrain types supported by tileset.
  
  Am now stuck.
  
 The trunk tilespec added new features again on Jul.31.  Please look at
 the copious messages on this list, included at the nice website.
 
 The amplio tilespec doesn't need any more modifications to run, all the
 changes have already been made, and are distributed from svn.
 
 Are you sure you installed correctly?
 
 
 

I believe so, unless using svn update has become the incorrect way.
I'd also note that I registered this bug on Mon Jul 30 19:01:30, so nice
new features uploaded on the 31st won't have caused it. 

I also renamed my original amplio tileset and went through the svn
update - the new amplio also didn't work. 

I have also downloaded today's snapshot (2nd August) into a separate
folder, and tried that separately. The tilesets here also do not work:

[]$ civclient -t amplio
1: tilespec file appears incompatible:
file: ./amplio.tilespec
file options: +tilespec4.2007.Jul.13
supported options: +tilespec4 duplicates_ok
0: No usable default tileset found, aborting!

I have also redone svn update, now at Updated to revision 13136. With
these nice, shiny new tileset updates, I get

[]$ civclient
0: No usable default tileset found, aborting!

Are you sure the necessary updates have been uploaded to svn? The latest
amplio.tilespec I have got from svn, having deleted the previous file
before doing svn update, still doesn't contain a 'layer0.match_style' entry.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39469) Desktop Focus with multiple Desktops

2007-07-26 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39469 

Indeed, with Wesnoth it´s the same. So you can take back the bug report.
I'll try to get some support in the Dexpot-Board.

Thank you for the help!

Greetz

Scheich Xodox

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39459) Segfault when founding a city

2007-07-18 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39459 

 [EMAIL PROTECTED] - Tue Jul 17 19:56:51 2007]:
 
 URL: http://bugs.freeciv.org/Ticket/Display.html?id=39459 
 
 Some debugging says that the faulty place is
 client/gui-gtk-2.0/wldlg.c
 function cell_render_func
 line 1008 (this might change because of commits to SVN):
 column = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(rend), 
column));
 column is set to -1 and this makes this code segfault:
 g_object_set(rend, text, row[column], NULL);
 It might be that my GTK2 is bad..  How to check?
 
 
 

gcc 4.x miscompiles gtk producing strange crashes that seem to originate
in libc (strlen). I don't know if there are some special compiler
switches one can use to make gcc 4 compile without this bug; the
problem goes away if you compile gtk (and glib, etc.) with gcc 3.x
(tested with gcc 3.4.6 gtk 2.10.13 glib 2.12.12). Hope that helps.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39389) BUG: technology/advance name translation

2007-06-14 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39389 

I don't think you understood very well what is LOG_NORMAL. All the
freelog() messages are displayed ONLY in the console if the current log
level = to the first argument. LOG_NORMAL messages are not displayed in
the chat window. Some messages are duplicated, then they could be
translated, but i don't think any freelog() message should be translated.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39129) 'Unassigned' bug

2007-06-10 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39129 

There is an other problem... When the pregame, when you cut someone, the
player is removed, so the players are renumbered. Then, the pplayer
pointer point to the next player. :/

I propose to set back:
pplayer = ptarget-player;

and replace:
if (pplayer)
by
if (pplayer  !pplayer-is_connected)

This problem is for 2.0 and 2.1

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#23744) bug in control.c (nuke)

2007-05-21 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=23744 

Bug fixed, see http://rt.freeciv.org/Ticket/Display.html?id=39126

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39126) Nuke bug

2007-05-08 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39126 

Apply the patch in reverse mode (i did a mistake with source and
destination with diff): patch -Rp1

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39358) vote in pregame

2007-04-25 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39358 

 [EMAIL PROTECTED] - Wed Apr 25 07:18:33 2007]:
 
 When there is a vote while the pregame, and a player leaves or is
 lost, the
 players are renumbered. But votes are based on player_no, so the vote
 are
 messed up.
 
 For exemple:
 * A (player 0), B (player 1), C (player 2) are connected on the same
 server
 * B ask for cut C.
 * A leaves. The players are renumbered: B (player 0), C (player 1).
 Vote are
 not changed so C voted yes, instead of B.
 * B can vote a second time, and cut this poor C user Sad. He can ask a
 second vote too, without canceling the first.
 
 I don't see any easy solution, just some hack... So i prefer don't
 give you
 bad code lines :)
 
 _
 Découvrez le Blog heroic Fantaisy d'Eragon!
 http://eragon-heroic-fantasy.spaces.live.com/
 
 
 
I wanted to clarify this cause I think I can fix it just need some more
information.  You are referring to a pregame vote only correct?  If this
is occuring during the game itself I will need some more information as
the server doesn't actually reorder the player list during a disconnect
if not in pregame.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39358) vote in pregame

2007-04-25 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39358 


 I wanted to clarify this cause I think I can fix it just need some more
 information.  You are referring to a pregame vote only correct?  If this
 is occuring during the game itself I will need some more information as
 the server doesn't actually reorder the player list during a disconnect
 if not in pregame.
 

The players are not renumbered while the other game state (like
running). While the pregame, players are removed when they leaves (or
lose connection). But if a player is removed while the game is running,
the player lose all his cities and units and he is marked as 'dead', but
he isn't removed completely of the game.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39349) Another bugwad (bribing, irrigation, goto, ships, tech, courthouse, peace)

2007-04-24 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39349 

 [per - Sat Apr 21 13:05:50 2007]:
 
 Please post each bug in a separate ticket. It is difficult to handle
 multi-bug reports.
 
Will do.
 
 Why are you playing the beta version?
Actually, these bugs are from 2.1.0.beta3.  Sorry, my bad.

  Unable to bribe units (says diplomat had failed move).

 This should have been fixed 2.0.8 - 2.0.9. Can you recheck in 2.0.9
I rechecked in 2.1.0.beta3.  It is actually a goto bug.  Using goto 
with a diplomat results in a bribe unit popup in which only cancel is 
clickable.  The message box says orders aborted because of failed move.
The pay gold box never appears.  If I move the diplomat with the keypad 
I can bribe the unit, pay the gold, and the unit is mine.

  In Civ II, Genetic Engineering had Chemistry and Corporation as its
  prerequisites.  The Freeciv tech tree shows the Medicine and
 Corporation as
  the prerequisites.
 
 Freeciv is not Civ2.
If the tech tree were completely different I would not have said 
anything, but with such a small difference it looked like someone was 
trying to copy the Civ2 tech tree but made a mistake.  Come to think of 
it, such differences might help Freeciv on copyright issues.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39331) 8 bugs (borders, trade menu, rivers, Sun Tzu, cease fire, attacking city, go to, city growth), plus AI suggestions

2007-04-24 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39331 

These bugs are actually for 2.1.0-beta3, not 2.0.9-beta3.  Sorry about 
any confusion.

In response to whoever made the comment about desalination plants:
I like the idea of more techs, more buildings, etc., especially in the 
modern era and the near (forseeable) future.  If you're going to add 
desalination tech, might as well go all out and add a bunch of others 
like internet and germ warfare.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39331) 8 bugs (borders, trade menu, rivers, Sun Tzu, cease fire, attacking city, go to, city growth), plus AI suggestions

2007-04-20 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39331 

 
 Are you dure you are playing on hard? I can never get the AI to 
exchange
 tech, even if I offer all my techs in exchange. The bug for me is that
 you can't get any reason for why the computer isn't accetping your 
deal.
 
Yes, the chat screen shows the AIs as hard when I load a game.

I'm assuming you established embassies with the AIs?  If you didn't, it 
will grey out their tech selecton at the negotiating table.  If you did
establish embassies but always got thumbs down, then you found a bug.

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#37321) Veteran status

2007-03-05 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=37321 

 [guest - Sun Mar 04 19:29:33 2007]:
 
  [EMAIL PROTECTED] - Sat Mar 03 22:22:13 2007]:
  
 
 well i see that some of you say that the status should be dropped at 
 one stage, but i will disagree here.
 
 assume you have a elite carvel crew, you assign them to a new galeon. 
 they are very experianced with those kind of ships. so they would 
 probably stay elite
 same with frigates-ironclads

I think that is the main inconsistency. If you are assigned a new 
technology it does not assume that you become automatically experienced 
with it. For instance, Pikemen are upgraded to Musketeers. Do you 
really believe that an elite pikeman will become immediately an elite 
musketeer? They are using quite different weapons, tactics, etc. The 
same is for other technologies, such as catapults and cannons.

People even need time and training to move from one programming 
language to another, not talking about being an expert :-)

Sincerely,
Alexander

 
 when it comes to catipults and cannons, they both rely on aim. when 
you 
 upgrade them, the status should remain
 
 right now if you upgrade with money, status remians. the 
 workshop upgrades them for free. 
 
 so i ask u guys to make an option before u make the game for the 
 upgrading system-which one you prefer to play in
 -flamehawk96
 (aka eadle)
 
 


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#37321) Veteran status

2007-03-04 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=37321 

 [EMAIL PROTECTED] - Sat Mar 03 22:22:13 2007]:
 

well i see that some of you say that the status should be dropped at 
one stage, but i will disagree here.

assume you have a elite carvel crew, you assign them to a new galeon. 
they are very experianced with those kind of ships. so they would 
probably stay elite
same with frigates-ironclads

when it comes to catipults and cannons, they both rely on aim. when you 
upgrade them, the status should remain

right now if you upgrade with money, status remians. the 
workshop upgrades them for free. 

so i ask u guys to make an option before u make the game for the 
upgrading system-which one you prefer to play in
-flamehawk96
(aka eadle)


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#37321) Veteran status

2007-03-03 Thread Guest

URL: http://bugs.freeciv.org/Ticket/Display.html?id=37321 

 [chrisk - Fri Mar 02 11:06:11 2007]:
 
 Alexander Sayenko wrote on Mar 01, 22:03 (-0800):
 
  There is a bug report based on several discussions in the Freeciv forum.
  The main inconsistency is that:
  
  * while upgrading a unit, the veteran status is preserved
  * while a unit is upgraded by Leonardo workshop, it cleared, i.e., a
unit
  becomes a novice
  
  Possible solutions:
  
  * keep the veteran status in all cases
 
 I'm for this. Dropping the veteran status makes upgrading quite
 worthless. BTW, there is a rather old bug report for this, and I
 *think* this is already fixed in the above way at least in 2.0.9 beta3
 
 Christian
 
  * clear the veteran status in all cases
  * clear the veteran status if a user upgrades a unit but keep it if
a unit
  is upgraded by the Leonardo workshop
  * keep the veteran status when a user upgrades a unit if he has the
  Leonardo Worshop; otherwise it is cleared
  
  * instead of clearing the veteran status in all the cases above, it
can be
  downgraded by one level
 

Personally, I prefer a case when the veteran status decreases by one
level during an upgrade (see my ideas concerning this issue on the
forum). However, since the Leonardo workshop is a wonder, both the
normal upgrade and the Leonardo upgrade should preserve the veteran
status, if a user has this wonder. 

In other words, the first stage is that you fix the Leonardo worskhop
behaviour. The second stage is that you decide what to do with the
normal upgrade when a player does not have this wonder.

Sincerely,
Alexander 

___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev