public inbox for xconq7@sourceware.org
 help / color / mirror / Atom feed
* occupant combat in standard game
@ 2004-01-27 13:28 Peter Garrone
  2004-01-28  5:57 ` Jim Kingdon
  0 siblings, 1 reply; 13+ messages in thread
From: Peter Garrone @ 2004-01-27 13:28 UTC (permalink / raw)
  To: xconq7

Hi,
 I am testing a hit/capture unit development so that if a unit is in a transport
and it fights better out of it, then it seeks to dismount before
attacking the target.

Unfortunately with the standard game the infantry seems to like to
attack cities straight out of the Dakotas. It seems very mobile and
dynamic but is probably better if the combat-occupant is set less than
the default of 100 for infantry in bombers, and infantry and armor in
troopships. Then the pathfinding returns a path where they land on clear
ground before attacking. e.g.

(table occupant-combat
    ; Default: 100
    (infantry bomber 50)
    (infantry t 50)
    (armor t 50)
)

Peter

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-01-27 13:28 occupant combat in standard game Peter Garrone
@ 2004-01-28  5:57 ` Jim Kingdon
  2004-01-28  7:54   ` Peter Garrone
  2004-01-28 16:58   ` Eric McDonald
  0 siblings, 2 replies; 13+ messages in thread
From: Jim Kingdon @ 2004-01-28  5:57 UTC (permalink / raw)
  To: pgarrone; +Cc: xconq7

> Unfortunately with the standard game the infantry seems to like to
> attack cities straight out of the Dakotas. It seems very mobile and
> dynamic but is probably better if the combat-occupant is set less than
> the default of 100 for infantry in bombers, and infantry and armor in
> troopships.

That might be a good change.  Right now the bomber-infantry
combination is quite powerful (probably too much so), and this might
help rebalance things.

Of course, if the AI got better at using fighters to shoot down the
bombers, that might also rebalance things in an AI vs human game.

Troopships aren't as much of an imbalance, because it is relatively
easy to just sink the whole troopship (and it is hard for the
troopship to get out of the way).

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-01-28  5:57 ` Jim Kingdon
@ 2004-01-28  7:54   ` Peter Garrone
  2004-01-28  9:42     ` Skeezics Boondoggle
  2004-01-28 16:58   ` Eric McDonald
  1 sibling, 1 reply; 13+ messages in thread
From: Peter Garrone @ 2004-01-28  7:54 UTC (permalink / raw)
  To: Jim Kingdon; +Cc: xconq7

On Wed, Jan 28, 2004 at 12:57:03AM -0500, Jim Kingdon wrote:
> > Unfortunately with the standard game the infantry seems to like to
> > attack cities straight out of the Dakotas. It seems very mobile and
> > dynamic but is probably better if the combat-occupant is set less than
> > the default of 100 for infantry in bombers, and infantry and armor in
> > troopships.
> 
> That might be a good change.  Right now the bomber-infantry
> combination is quite powerful (probably too much so), and this might
> help rebalance things.
> 
> Of course, if the AI got better at using fighters to shoot down the
> bombers, that might also rebalance things in an AI vs human game.
> 
> Troopships aren't as much of an imbalance, because it is relatively
> easy to just sink the whole troopship (and it is hard for the
> troopship to get out of the way).

If there is any sense of realism at all infantry and armor should have
virtually zero combat capability in transports. I dont recall many
boarding incidents in ww2. In the roman game, sure.

It is also possible to have unusual transport combinations. For example,
it is possible for infantry to exit a bomber and enter a troopship in
the middle of the ocean. It looked quite cool actually. The ai did it
when the infantry was tasked to beyond the range of the bomber, and
there was a troopship within the range of the bomber. I dont
know how to make this illegal though.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-01-28  7:54   ` Peter Garrone
@ 2004-01-28  9:42     ` Skeezics Boondoggle
  2004-01-28 16:45       ` Jim Kingdon
  0 siblings, 1 reply; 13+ messages in thread
From: Skeezics Boondoggle @ 2004-01-28  9:42 UTC (permalink / raw)
  To: xconq7

On Wed, 28 Jan 2004, Peter Garrone wrote:

> It is also possible to have unusual transport combinations. For example,
> it is possible for infantry to exit a bomber and enter a troopship in
> the middle of the ocean. It looked quite cool actually. The ai did it
> when the infantry was tasked to beyond the range of the bomber, and
> there was a troopship within the range of the bomber. I dont
> know how to make this illegal though.

Why make it illegal?  "They could have been out for a pleasure jump, at
night, to be scooped up into a passing transport out of eel-infested
waters..."

:-)

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-01-28  9:42     ` Skeezics Boondoggle
@ 2004-01-28 16:45       ` Jim Kingdon
  2004-01-28 17:26         ` Eric McDonald
  0 siblings, 1 reply; 13+ messages in thread
From: Jim Kingdon @ 2004-01-28 16:45 UTC (permalink / raw)
  To: skeezics; +Cc: xconq7

> Why make it illegal?  "They could have been out for a pleasure jump, at
> night, to be scooped up into a passing transport out of eel-infested
> waters..."

And how do you explain the reverse move (from the troopship to the
bomber) :-)?

Seriously though, I think this is a case where simplicity should trump
realism.  It isn't as if moving an infantry from one bomber/troopship
to another is a particularly powerful move (I use bomber->bomber from
time to time, often as part of fuel management, but it rarely makes or
breaks much of anything).

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-01-28  5:57 ` Jim Kingdon
  2004-01-28  7:54   ` Peter Garrone
@ 2004-01-28 16:58   ` Eric McDonald
  2004-01-28 17:11     ` Jim Kingdon
  1 sibling, 1 reply; 13+ messages in thread
From: Eric McDonald @ 2004-01-28 16:58 UTC (permalink / raw)
  To: Jim Kingdon; +Cc: pgarrone, xconq7

Hi Jim, others,

On Wed, 28 Jan 2004, Jim Kingdon wrote:

> That might be a good change.  Right now the bomber-infantry
> combination is quite powerful (probably too much so), and this might
> help rebalance things.

I felt the same way, and that is why I tried to limit such 
possibilities in the game I am working on.

> Of course, if the AI got better at using fighters to shoot down the
> bombers, that might also rebalance things in an AI vs human game.

Are you seeing behavior where given a choice between a bomber and 
another unit, the fighter is choosing the other unit? And if so, 
what are the relative merits of the two targets (ability to 
transport, fighter's hit chance against it, ability to build, 
etc...)?

Or are we talking about a fighter's ability to track a bomber that 
has moved (either through retreating movement or through player 
control)?

Eric

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-01-28 16:58   ` Eric McDonald
@ 2004-01-28 17:11     ` Jim Kingdon
  2004-02-02 11:00       ` Peter Garrone
  0 siblings, 1 reply; 13+ messages in thread
From: Jim Kingdon @ 2004-01-28 17:11 UTC (permalink / raw)
  To: mcdonald; +Cc: pgarrone, xconq7

> Are you seeing behavior where given a choice between a bomber and 
> another unit, the fighter is choosing the other unit?

No, if the AI has fighters in the vicinity of my bombers, it does an
OK job.

The problem is more a case of if I make a surprise attack, the AI
doesn't divert any fighters to where my bombers are.  The AI's
fighters either (a) didn't get built in sufficient quantity, or (b)
are still off near my home territory, or somewhere other than where I
am actually attacking.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-01-28 16:45       ` Jim Kingdon
@ 2004-01-28 17:26         ` Eric McDonald
  0 siblings, 0 replies; 13+ messages in thread
From: Eric McDonald @ 2004-01-28 17:26 UTC (permalink / raw)
  To: Jim Kingdon; +Cc: skeezics, xconq7

On Wed, 28 Jan 2004, Jim Kingdon wrote:

> > Why make it illegal?  "They could have been out for a pleasure jump, at
> > night, to be scooped up into a passing transport out of eel-infested
> > waters..."
> 
> And how do you explain the reverse move (from the troopship to the
> bomber) :-)?

Oh, that's the easy one. :-)
"They disemabark the troopship to go fishing in motorized 
inflatable boats. However they discover that the only fish around 
are sharks. A wing of bombers, which happen to be cargo-planes 
with water skis, "lands" and loads them to safety through the rear 
cargo doors."

Eric

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-01-28 17:11     ` Jim Kingdon
@ 2004-02-02 11:00       ` Peter Garrone
  2004-02-02 19:33         ` Eric McDonald
  0 siblings, 1 reply; 13+ messages in thread
From: Peter Garrone @ 2004-02-02 11:00 UTC (permalink / raw)
  To: Jim Kingdon; +Cc: xconq7

On Wed, Jan 28, 2004 at 12:11:20PM -0500, Jim Kingdon wrote:
> > Are you seeing behavior where given a choice between a bomber and 
> > another unit, the fighter is choosing the other unit?
> 
> No, if the AI has fighters in the vicinity of my bombers, it does an
> OK job.
> 
> The problem is more a case of if I make a surprise attack, the AI
> doesn't divert any fighters to where my bombers are.  The AI's
> fighters either (a) didn't get built in sufficient quantity, or (b)
> are still off near my home territory, or somewhere other than where I
> am actually attacking.

This comes from the "compute_damage_ratio" function in plan.c, for the
standard game. The fighters dont attack the bombers because they have 2
hp. I have addressed this in my development by factoring in construction
points as well.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-02-02 11:00       ` Peter Garrone
@ 2004-02-02 19:33         ` Eric McDonald
  2004-02-03  0:05           ` Hans Ronne
  0 siblings, 1 reply; 13+ messages in thread
From: Eric McDonald @ 2004-02-02 19:33 UTC (permalink / raw)
  To: Peter Garrone; +Cc: Jim Kingdon, xconq7

On Mon, 2 Feb 2004, Peter Garrone wrote:

> On Wed, Jan 28, 2004 at 12:11:20PM -0500, Jim Kingdon wrote:
> > The problem is more a case of if I make a surprise attack, the AI
> > doesn't divert any fighters to where my bombers are.  The AI's
> > fighters either (a) didn't get built in sufficient quantity, or (b)
> > are still off near my home territory, or somewhere other than where I
> > am actually attacking.
> 
> This comes from the "compute_damage_ratio" function in plan.c, for the
> standard game. The fighters dont attack the bombers because they have 2
> hp. I have addressed this in my development by factoring in construction
> points as well.

I superceded compute_damage_ratio with 
ai_compute_damage_ratio_vs_type several weeks ago. Furthermore, 
the victim finder has been heavily restructured in the past month, 
and rating of victims is done in a separate set of functions. The 
victim rating takes into account the construction point ratios 
between the victim seeker and potential victim.

You might wish to carefully merge the past month's development 
into your branch, so that we don't have redundant or competing 
code.

But, wrt what Jim is seeing, I believe that this is a 
strategic/planning level issue and not a tactical issue. If a unit 
has an offensive plan, it will generally continue to run the 
victim seeker (and so not the larger picture). What probably needs 
to happen is that plan_offense and plan_defense need to have some 
heuristic which will summarily examine the balances in the 
different theaters, and then force a replan (and new goal) for 
some (higher mobility?) units. I have been thinking about this 
some, but have not yet determined a good way to go about it.

Eric

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-02-02 19:33         ` Eric McDonald
@ 2004-02-03  0:05           ` Hans Ronne
  2004-02-03  3:58             ` Eric McDonald
  0 siblings, 1 reply; 13+ messages in thread
From: Hans Ronne @ 2004-02-03  0:05 UTC (permalink / raw)
  To: Eric McDonald; +Cc: xconq7

>But, wrt what Jim is seeing, I believe that this is a
>strategic/planning level issue and not a tactical issue. If a unit
>has an offensive plan, it will generally continue to run the
>victim seeker (and so not the larger picture). What probably needs
>to happen is that plan_offense and plan_defense need to have some
>heuristic which will summarily examine the balances in the
>different theaters, and then force a replan (and new goal) for
>some (higher mobility?) units. I have been thinking about this
>some, but have not yet determined a good way to go about it.

An easy way to improve the ability of fighters to intercept should be to
increase the default setting for u_ai_tactical_range. The current value of
4 is really too low. I picked it in order to be on the safe side with
respect to ai performance, but it could probably be boosted to 12 or so
without too much of a slowdown.

The theater reassignment code you ask for does exist (review_theaters and
mplayer_review_units). It is run at the start of each turn, which should be
sufficient. The code cares more about area control than about attacking
specific units, though. This is the way the mplayer works, however, for
better or for worse.

Hans


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-02-03  0:05           ` Hans Ronne
@ 2004-02-03  3:58             ` Eric McDonald
  2004-02-03  4:43               ` Hans Ronne
  0 siblings, 1 reply; 13+ messages in thread
From: Eric McDonald @ 2004-02-03  3:58 UTC (permalink / raw)
  To: Hans Ronne; +Cc: xconq7

Hi Hans, others,

On Tue, 3 Feb 2004, Hans Ronne wrote:

> An easy way to improve the ability of fighters to intercept should be to
> increase the default setting for u_ai_tactical_range. The current value of
> 4 is really too low. I picked it in order to be on the safe side with
> respect to ai performance, but it could probably be boosted to 12 or so
> without too much of a slowdown.

Yeah, 12 might be OK. Probably would be perfectly fine once the  
path-caching / network desync stuff is properly addressed.

I'm planning on doing a significant overhaul of Bellum, where the 
aircraft tactical ranges are probably set too high, and will 
probably reduce those ranges some, because of the computational 
burden.

> The theater reassignment code you ask for does exist (review_theaters and
> mplayer_review_units). It is run at the start of each turn, which should be
> sufficient. The code cares more about area control than about attacking
> specific units, though. This is the way the mplayer works, however, for
> better or for worse.

Well, I haven't actually traced through these functions yet (since 
I haven't switched focus to AI strategy), but it seems that 
mplayer_review_units would not mess with PLAN_OFFENSIVE units 
which don't have goals. It does some rebalancing in the case of 
exploratory and defensive plans, but apparently not offensive 
ones. If this is the case, then plan_offense is going to be 
re-executed and call the tactical function, ai_go_after_victim, 
quite a bit. (And this seems to be what I actually see when I 
watch mplayers....)

Eric

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: occupant combat in standard game
  2004-02-03  3:58             ` Eric McDonald
@ 2004-02-03  4:43               ` Hans Ronne
  0 siblings, 0 replies; 13+ messages in thread
From: Hans Ronne @ 2004-02-03  4:43 UTC (permalink / raw)
  To: Eric McDonald; +Cc: xconq7

>> The theater reassignment code you ask for does exist (review_theaters and
>> mplayer_review_units). It is run at the start of each turn, which should be
>> sufficient. The code cares more about area control than about attacking
>> specific units, though. This is the way the mplayer works, however, for
>> better or for worse.
>
>Well, I haven't actually traced through these functions yet (since
>I haven't switched focus to AI strategy), but it seems that
>mplayer_review_units would not mess with PLAN_OFFENSIVE units
>which don't have goals. It does some rebalancing in the case of
>exploratory and defensive plans, but apparently not offensive
>ones. If this is the case, then plan_offense is going to be
>re-executed and call the tactical function, ai_go_after_victim,
>quite a bit. (And this seems to be what I actually see when I
>watch mplayers....)

All units with PLAN_OFFENSIVE will have a goal of type GOAL_VICINITY_HELD
if they are run by the mplayer. Therefore, when this goal is true (no enemy
units left in the theater) the unit will replan. This does eventually
happen, though stray enemy units can delay further offensives
unnecessarily. We discussed this on the list last year:

http://sources.redhat.com/ml/xconq7/2003/msg00047.html

I think it might be a good idea to loosen up the requirement for
GOAL_VICINITY_HELD being true so that an overwhelming superiority is enough.

Now, if the unit is run by the iplayer, there is no strategy code at all
and hence no theaters, and assign_to_offense will therefore set a plan
without a goal. This may cause a unit to get trapped in PLAN_OFFENSIVE, as
you pointed out. The best fix for this is probably to modify
assign_to_offense so that a GOAL_VICINITY_HELD is created also in that
case, using the vicinity of the unit itself. You do not really need
theaters to define such a goal.

Hans


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2004-02-03  4:43 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-01-27 13:28 occupant combat in standard game Peter Garrone
2004-01-28  5:57 ` Jim Kingdon
2004-01-28  7:54   ` Peter Garrone
2004-01-28  9:42     ` Skeezics Boondoggle
2004-01-28 16:45       ` Jim Kingdon
2004-01-28 17:26         ` Eric McDonald
2004-01-28 16:58   ` Eric McDonald
2004-01-28 17:11     ` Jim Kingdon
2004-02-02 11:00       ` Peter Garrone
2004-02-02 19:33         ` Eric McDonald
2004-02-03  0:05           ` Hans Ronne
2004-02-03  3:58             ` Eric McDonald
2004-02-03  4:43               ` Hans Ronne

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).