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: Major bug and what to do about it (long)


Hans Ronne wrote:
On Mon, 16 Aug 2004, Hans Ronne wrote:


Now the ball returns to the AI, who should find something else for our unit
to do. However, the AI still sees the same unit view and doesn't know that
the task failed, so it sets the same hit_unit task again.

If the action check failed because the unit view doesn't not correspond to an actual unit at the given position, then the task logic should make a callback to the AI or UI to remove the unit view, IMO. This would break the cycle.


Yes, I thought about that. However, since failed tasks do not consume acps,
this would provide a cost-free way to probe the terrain for real vs. bogus
enemy units.

No. Tasks don't consume ACP or anything else. Actions do. And, I don't see a problem if a failed action consumes ACP or materials. If an attack or a fire misses an actual unit, ACP is consumed in spite of the fact that it was a miss. How is attacking a ghost unit any different than a miss?


A better solution is therefore to use do_fire_into_action
instead,

This depends a lot on whether the firing results in spread (surface) destruction or point destruction (to use the terms that Bruno Boettcher (?) used in a thread last year). In cases of point destruction, the action should be treated like a firing that missed. IMSO.


However, the unit should be penalized (in terms of ACP,
material expenditure, etc...) for attempting the action on a
"ghost" unit. I believe I have mentioned this before, either in
private email or on the list. In that case, what motivated me to
mention it was the fire-at-ghost-unit / fire-into cell case. I
believe this was shortly after I made a fix so that one could not
probe from cell to cell using the fire command to discover where
hidden enemy units were.

Letting the failed task consume acps might work in this specific case,

I don't think that tasks should consume ACP or anything else. They are too high level. We should restrict consumption to actions (as I beleive the case is now).


but
it would go against how Xconq works in all other situations. For example,
if you click where your unit cannot move, you don't spend any acps.

In the case of movement this makes sense. But, consider that a melee attack actually does imply movement (as we agreed upon in an earlier thread), and thus, even if the attack is unsuccessful, the unit should be penalized for the implied movement (preferably through the normal attack costs).


Eric


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