--- common/game.h.orig Wed Aug 16 22:18:15 2000 +++ common/game.h Wed Aug 16 22:19:12 2000 @@ -113,7 +113,7 @@ int fogofwar; int fogofwar_old; /* as the fog_of_war bit get changed by setting the server we need to remember the old setting */ - + int killstack; int num_unit_types; int num_tech_types; /* including A_NONE */ @@ -258,6 +258,10 @@ #define GAME_DEFAULT_FOGOFWAR 1 #define GAME_MIN_FOGOFWAR 0 #define GAME_MAX_FOGOFWAR 1 + +#define GAME_DEFAULT_KILLSTACK 1 +#define GAME_MIN_KILLSTACK 0 +#define GAME_MAX_KILLSTACK 1 #define GAME_DEFAULT_DIPLCHANCE 80 #define GAME_MIN_DIPLCHANCE 1 --- common/game.c.orig Wed Aug 16 22:20:41 2000 +++ common/game.c Wed Aug 16 22:21:39 2000 @@ -757,6 +757,7 @@ game.spacerace = GAME_DEFAULT_SPACERACE; game.fogofwar = GAME_DEFAULT_FOGOFWAR; game.fogofwar_old= game.fogofwar; + game.killstack = GAME_DEFAULT_KILLSTACK; game.auto_ai_toggle = GAME_DEFAULT_AUTO_AI_TOGGLE; game.barbarianrate = GAME_DEFAULT_BARBARIANRATE; game.onsetbarbarian = GAME_DEFAULT_ONSETBARBARIAN; --- server/unitfunc.c.orig Wed Aug 16 22:25:18 2000 +++ server/unitfunc.c Wed Aug 16 22:34:18 2000 @@ -2879,7 +2879,7 @@ if( (incity) || (map_get_special(punit->x, punit->y)&S_FORTRESS) || (map_get_special(punit->x, punit->y)&S_AIRBASE) || - unitcount == 1) { + unitcount == 1 || !game.killstack) { notify_player_ex(pplayer, punit->x, punit->y, E_UNIT_LOST, _("Game: You lost a%s %s under an attack from %s's %s%s."), n_if_vowel(get_unit_type(punit->type)->name[0]), --- server/stdinhand.c.orig Wed Aug 16 22:07:11 2000 +++ server/stdinhand.c Wed Aug 16 22:16:30 2000 @@ -536,7 +536,14 @@ N_("If this is set to 1, only those units and cities within the sightrange " "of your own units and cities will be revealed to you. You will not see " "new cities or terrain changes in squares not observed.") }, - + { "killstack", &game.killstack, + SSET_RULES_FLEXIBLE, SSET_TO_CLIENT, + GAME_MIN_KILLSTACK, GAME_MAX_KILLSTACK, GAME_DEFAULT_KILLSTACK, + N_("Whether to enable kill units stack"), + N_("If this is set to 1, all units in the same tile of a killed unit will" + " be killed (unless they are on a fortress, airbase or city); this is the" + " default. If this options is set to 0, units are killed one by one," + " except by nuclear weapons, of course.") }, { "diplchance", &game.diplchance, SSET_RULES_FLEXIBLE, SSET_TO_CLIENT, GAME_MIN_DIPLCHANCE, GAME_MAX_DIPLCHANCE, GAME_DEFAULT_DIPLCHANCE,