This is the mail archive of the xconq7@sources.redhat.com mailing list for the Xconq project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Overrun actions (was: Consumption-per-fire?)


> Ideally, the unit should try the attack mode that has the highest
> probability of success first, and then use the other mode as backup,
> if necessary.

What if some materials are more precious than others?  Or one attack
does more damage than the other?  It seems better to let the
player choose, rather than guess which one they might want. 

> The other way to fix this bug is to eliminate the possibility of doing
> overruns by fire.

This makes more sense to me.

Since there will be cases in which either attack or fire is possible,
it seems like the user interface is clearer if the player (or AI) has
to explicitly say which one (the "a" and "f" keys being the most
explicit way, with overrun meaning attack-and-move-if-possible, rather
than attack-or-maybe-fire-and-move-if-possible).

> I think this was also how the overrun code originally worked, as
> revealed by check_overrun_action. The firing code in do_overrun_action
> was probably added at a later point.

Well, for what it is worth, it was added by:

Tue Jun  1 18:41:59 1999  Hans Ronne  <ronne@bmc.uu.se>

	* combat.c (do_overrun_action): Make ovverun after fire possible.
	(check_overrun_action): Make overrun after fire & into empty cell
 	possible.
	(do_fire_at_action): Use SideMask code to handle fire display.
	(do_fire_at_action): Permit attempt to capture after fire from
 	adjacent cell.
	(do_fire_into_action): Use SideMask code to handle fire display.
	(maybe_hit_unit): Support uu_cellwide_protection_against.
	(maybe_hit_unit): Support uu_cellwide_protection_for.
	(maybe_hit_unit): Use SideMask code to handle hit display.
	(maybe_hit_unit): Fix occupant recursion bug.
	(attempt_to_capture_unit): Support uu_cellwide_protection_against.
	(attempt_to_capture_unit): Support uu_cellwide_protection_for.
	(detonate_on_cell): Use for_all_stack_with_occs instead of
 	for_all_stack.
	(can_capture_directly): New function.
	(type_can_capture_directly): New function.
	(type_can_carry): New function.
	(occ_can_defend_transport): New function.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]