From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29636 invoked by alias); 16 Aug 2004 22:14:01 -0000 Mailing-List: contact xconq7-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: xconq7-owner@sources.redhat.com Received: (qmail 29627 invoked from network); 16 Aug 2004 22:14:00 -0000 Received: from unknown (HELO av13-2-sn4.m-sp.skanova.net) (81.228.10.103) by sourceware.org with SMTP; 16 Aug 2004 22:14:00 -0000 Received: by av13-2-sn4.m-sp.skanova.net (Postfix, from userid 502) id 7FBD137E44; Tue, 17 Aug 2004 00:14:00 +0200 (CEST) Received: from smtp4-2-sn4.m-sp.skanova.net (smtp4-2-sn4.m-sp.skanova.net [81.228.10.180]) by av13-2-sn4.m-sp.skanova.net (Postfix) with ESMTP id 6F95137E42; Tue, 17 Aug 2004 00:14:00 +0200 (CEST) Received: from [212.181.162.155] (h155n1fls24o1048.bredband.comhem.se [212.181.162.155]) by smtp4-2-sn4.m-sp.skanova.net (Postfix) with ESMTP id A797A37E45; Tue, 17 Aug 2004 00:13:59 +0200 (CEST) X-Sender: u22611592@m1.226.comhem.se Message-Id: In-Reply-To: References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Mon, 16 Aug 2004 22:43:00 -0000 To: Eric McDonald From: Hans Ronne Subject: Re: Major bug and what to do about it (long) Cc: xconq7@sources.redhat.com X-SW-Source: 2004/txt/msg00903.txt.bz2 >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. A better solution is therefore to use do_fire_into_action instead, which will not fail because of the intended target being a bogus unit, and clear the stale unit view if nothing is hit. It was this line of thought that made me think that we perhaps should do away with do_fire_at_action altogether, and, by analogy, also do_attack_action. >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, 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. Plans and tasks are supposed to be only brainchilds of the AI, so it makes sense to consume acps and materials only when it actually does someting, i.e. performs an action. Hans