From: Hans Ronne <hronne@comhem.se>
To: Peter Garrone <pgarrone@acay.com.au>
Cc: xconq7@sources.redhat.com
Subject: Re: plan_transport
Date: Sun, 07 Dec 2003 08:26:00 -0000 [thread overview]
Message-ID: <l03130300bbf8346adb4c@[212.181.162.155]> (raw)
In-Reply-To: <20031206224329.GA473@leonardo>
> I thought I would review the current problems and proposed fixes.
> I originally planned on sending this only to some people, but I think
> others probably could provide some valuable feedback.
>
>The problems are:
To that I would add that AI-controlled occupants do not disembark when they
should. This was a problem also with the old code, but it seems worse now.
>Proposed solution.
> A solution to these problems (attribution to Hans here) would be as follows.
> - implement a PLAN_TRANSPORT for ferries, so they are permanently
> assigned to transportation duties, though of course offensive units
> will be transported by them.
> - implement a TRANSPORT_TASK as well, so that human players can asign a
> unit to ferrying, and units will move across islands and seas without
> all that bookkeeping. So a PLAN_TRANSPORT will activate a
> TRANSPORT_TASK.
A player-settable TRANSPORT_TASK might be a good idea. But it would work
only for one ferry round. It would be even better to be able to set a
PLAN_TRANSPORT and let ferries run on automatic. However, this would
require a semi-automatic mode where it is possible to set (and keep) plans
also for player-controlled units. I experimented with this two years ago,
and I think it was discussed on the list. It would also make it possible to
assign PLAN_OFFENSIVE or PLAN_DEFENSIVE to units and then have the AI run
them according to a set plan (right now, the AI will replan as soon as you
turn over a unit to it, so setting plans has no effect even if it can be
done). Something to consider post-7.5, I think.
> - Something needs to be added to the ai code so that it can distinguish
> a simple ferry from something offensive, like an aircraft carrier or
> bireme/trireme. This is asking a lot but perhaps some simple
> heuristic could fix this. So a bireme would not go onto
> PLAN_TRANSPORT, but instead grab an archer to help it in sea-battles.
This one is easy. We would just need to define a precomputed u_ferry_worth
that measures ferry capacity and weighs it into mplayer_decide_plan.
Similarly for the build code. There is already basic_transport_worth but it
is rather crude. I would like something better.
> - The pathfinding would need to be somewhat extended here. It need so
> consider going from A to B using ferry type C, extending the state
> space it explores for possible solutions from simple x,y position.
> - consideration could be given to implementing refueling behavior,
> a boring detail for the human player,
> while extending the pathfinding state space.
>
> This is my "wishlist". I will attempt to implement it in stages, so
> that a partial implementation may suffice for a 7.5 release, comments
> invited,
I agree with the other points on your list.
Hans
next prev parent reply other threads:[~2003-12-07 2:02 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-12-07 0:59 plan_transport Peter Garrone
2003-12-07 2:02 ` plan_transport Eric McDonald
2003-12-08 0:28 ` plan_transport Peter Garrone
2003-12-08 1:23 ` plan_transport Hans Ronne
2003-12-07 8:26 ` Hans Ronne [this message]
2003-12-08 0:50 ` plan_transport Peter Garrone
2003-12-08 3:26 ` plan_transport Hans Ronne
2003-12-08 3:55 ` plan_transport Hans Ronne
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='l03130300bbf8346adb4c@[212.181.162.155]' \
--to=hronne@comhem.se \
--cc=pgarrone@acay.com.au \
--cc=xconq7@sources.redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).