diff -urN -Xfreeciv/diff_ignore freeciv/data/default/units.ruleset freeciv-work/data/default/units.ruleset --- freeciv/data/default/units.ruleset Tue Jul 23 21:01:17 2002 +++ freeciv-work/data/default/units.ruleset Mon Jul 29 18:43:22 2002 @@ -22,8 +22,8 @@ options="1.9" [units_adjust] -firepower_factor=1 ; Multiply firepower by this value. Set it - ; to zero to disable firepower altogether. +firepower_factor=1 ; Divide hitpoints by this value. It has to be + ; set higher than zero. ; Below: The individual units, one per section. ; diff -urN -Xfreeciv/diff_ignore freeciv/server/ruleset.c freeciv-work/server/ruleset.c --- freeciv/server/ruleset.c Tue Jul 23 21:01:18 2002 +++ freeciv-work/server/ruleset.c Mon Jul 29 20:54:49 2002 @@ -622,6 +622,12 @@ game.firepower_factor = secfile_lookup_int_default(file, 1, "units_adjust.firepower_factor"); + if (game.firepower_factor <= 0) { + freelog(LOG_FATAL, "In the [units_adjust] section of the %s file,\n" + "firepower_factor has been set to %d but has to be " + "higher than zero.", filename, game.firepower_factor); + exit(EXIT_FAILURE); + } sec = secfile_get_secnames_prefix(file, "unit_", &nval);