[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


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

2007-03-03 Thread Daniil Ivanov

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

I agree with Christian. If status is dropped it will be always better
to disband unit
and build a new one in a city with barracks.

Thanks, Daniil.



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


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

2007-03-03 Thread Per I. Mathisen

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

On Sat, 3 Mar 2007, Marko Lindqvist wrote:
 I definitely want veteran status to remain in my games.

Same here. It is the option that seems the most fun, and that is the whole 
point, isn't it?

So, anyone care to make a patch? ;-)

   - Per



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


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

2007-03-03 Thread Marko Lindqvist

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

On 3/3/07, Per I. Mathisen [EMAIL PROTECTED] wrote:
 So, anyone care to make a patch? ;-)

 Untested.

 Normal upgrade already kept veteran levels and autoupgrade had
ruleset option. This patch simply adds ruleset option for normal
upgrade also.


 - ML

diff -Nurd -X.diff_ignore freeciv/common/packets.def freeciv/common/packets.def
--- freeciv/common/packets.def	2007-03-03 23:02:08.0 +0200
+++ freeciv/common/packets.def	2007-03-04 00:10:49.0 +0200
@@ -438,6 +438,7 @@
   UINT8 tech_leakage;
   YEAR tech_cost_double_year;
   BOOL killstack;
+  UINT8 upgrade_veteran_loss;
   UINT8 autoupgrade_veteran_loss;
   UINT16 incite_improvement_factor;
   UINT16 incite_unit_factor;
diff -Nurd -X.diff_ignore freeciv/data/civ1/game.ruleset freeciv/data/civ1/game.ruleset
--- freeciv/data/civ1/game.ruleset	2006-07-17 23:56:23.0 +0300
+++ freeciv/data/civ1/game.ruleset	2007-03-04 00:14:11.0 +0200
@@ -23,6 +23,8 @@
 min_city_center_shield	= 0
 min_city_center_trade	= 0
 
+; Number of veteran levels lost when upgrading a unit
+upgrade_veteran_loss = 255
 ; Number of veteran levels lost when auto-upgrading a unit
 autoupgrade_veteran_loss = 255
 
diff -Nurd -X.diff_ignore freeciv/data/civ2/game.ruleset freeciv/data/civ2/game.ruleset
--- freeciv/data/civ2/game.ruleset	2006-07-17 23:56:23.0 +0300
+++ freeciv/data/civ2/game.ruleset	2007-03-04 00:14:28.0 +0200
@@ -23,6 +23,8 @@
 min_city_center_shield	= 1
 min_city_center_trade	= 0
 
+; Number of veteran levels lost when upgrading a unit
+upgrade_veteran_loss = 255
 ; Number of veteran levels lost when auto-upgrading a unit
 autoupgrade_veteran_loss = 255
 
diff -Nurd -X.diff_ignore freeciv/data/default/game.ruleset freeciv/data/default/game.ruleset
--- freeciv/data/default/game.ruleset	2006-07-17 23:56:23.0 +0300
+++ freeciv/data/default/game.ruleset	2007-03-04 00:11:56.0 +0200
@@ -42,6 +42,8 @@
 min_city_center_shield	= 1
 min_city_center_trade	= 0
 
+; Number of veteran levels lost when upgrading a unit
+upgrade_veteran_loss = 0
 ; Number of veteran levels lost when auto-upgrading a unit
 autoupgrade_veteran_loss = 0
 
diff -Nurd -X.diff_ignore freeciv/server/ruleset.c freeciv/server/ruleset.c
--- freeciv/server/ruleset.c	2007-03-03 23:02:08.0 +0200
+++ freeciv/server/ruleset.c	2007-03-04 00:11:43.0 +0200
@@ -2724,6 +2724,9 @@
   game.info.tech_cost_double_year = 
   secfile_lookup_int_default(file, 1, civstyle.tech_cost_double_year);
 
+  game.info.upgrade_veteran_loss
+= secfile_lookup_int(file, civstyle.upgrade_veteran_loss);
+
   game.info.autoupgrade_veteran_loss
 = secfile_lookup_int(file, civstyle.autoupgrade_veteran_loss);
 
diff -Nurd -X.diff_ignore freeciv/server/unittools.c freeciv/server/unittools.c
--- freeciv/server/unittools.c	2007-02-28 23:02:37.0 +0200
+++ freeciv/server/unittools.c	2007-03-04 00:09:36.0 +0200
@@ -259,17 +259,6 @@
 		  unit_type(punit)-name,
 		  upgrade_type-name,
 		  get_location_str_in(pplayer, punit-tile));
-
-/* For historical reasons some veteran status may be lost while
- * upgrading.  Note that the upgraded unit may have the NoVeteran
- * flag set. */
-if (unit_type_flag(upgrade_type, F_NO_VETERAN)) {
-  punit-veteran = 0;
-} else {
-  punit-veteran = MAX(punit-veteran
-			   - game.info.autoupgrade_veteran_loss, 0);
-}
-assert(test_unit_upgrade(punit, TRUE) == UR_OK);
 upgrade_unit(punit, upgrade_type, TRUE);
 unit_list_unlink(candidates, punit);
 upgrades--;
@@ -1267,6 +1256,16 @@
   punit-hp = MAX(punit-hp * unit_type(punit)-hp / old_hp, 1);
   punit-moves_left = punit-moves_left * unit_move_rate(punit) / old_mr;
 
+  if (unit_type_flag(to_unit, F_NO_VETERAN)) {
+punit-veteran = 0;
+  } else if (is_free) {
+punit-veteran = MAX(punit-veteran
+ - game.info.autoupgrade_veteran_loss, 0);
+  } else {
+punit-veteran = MAX(punit-veteran
+ - game.info.upgrade_veteran_loss, 0);
+  }
+
   conn_list_do_buffer(pplayer-connections);
 
   unit_refresh_vision(punit);
diff -Nurd -X.diff_ignore freeciv/version.in freeciv/version.in
--- freeciv/version.in	2007-03-03 23:02:09.0 +0200
+++ freeciv/version.in	2007-03-04 00:11:04.0 +0200
@@ -24,4 +24,4 @@
 #   - Avoid adding a new manditory capbility to the development branch for
 # as long as possible.  We want to maintain network compatibility with
 # the stable branch for as long as possible.
-FREECIV_NETWORK_CAPSTRING(+Freeciv.Devel.2007.Mar.03)
+FREECIV_NETWORK_CAPSTRING(+Freeciv.Devel.2007.Mar.04)
___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


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

2007-03-02 Thread Christian Knoke

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

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

-- 
Christian Knoke* * *http://cknoke.de
* * * * * * * * *  Ceterum censeo Microsoft esse dividendum.



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