Page 1 of 1

Askin explanation about the order "holding fire"

Posted: Sun Feb 20, 2011 4:55 pm
by adrianoku
Ok let's do an example:
I hide my sherman behind a building, waiting that damned king tiger passing me in order to hit it back ..., I rdered my stupid sherman "DO NOT FIRE" okay? ... and ... when in the german turn that tiger passes me my STUPID sherman fires at it ! Why if I order "do not fire" my unit fires ???

Posted: Mon Feb 21, 2011 10:10 am
by IainMcNeil
Hold fire only works for units that are not visible. A tank can only really hold fire when on a hill behind a crest. If you are holding fire you willnto shoot at someone who cannot see you. If you are firing it is because the enemy unit can see you so no reason not too shoot!

Posted: Mon Feb 21, 2011 12:20 pm
by adrianoku
iainmcneil wrote:Hold fire only works for units that are not visible. A tank can only really hold fire when on a hill behind a crest. If you are holding fire you willnto shoot at someone who cannot see you. If you are firing it is because the enemy unit can see you so no reason not too shoot!
Mhh... my tank is on a hill, in the tutorial is told that if a unit is on a hill is not visible from the units on the plain until it fires ...
Now I've not time, but later I try to post a screenshot of the situation.
Thank for your answer anyway!

Posted: Mon Feb 21, 2011 12:28 pm
by PirateJock_Wargamer
Using gatto's example, does the Tiger automatically see the Sherman independant of the Tiger's facing? For example, if the Tiger moved and the Sherman was in his rear field of view arc would the Tiger definitely see the Sherman, or is there a modifier as with the reactive fire?

Posted: Mon Feb 21, 2011 1:15 pm
by adrianoku
PirateJock wrote:Using gatto's example, does the Tiger automatically see the Sherman independant of the Tiger's facing? For example, if the Tiger moved and the Sherman was in his rear field of view arc would the Tiger definitely see the Sherman, or is there a modifier as with the reactive fire?
Good question!
This is the situation:
Image

Uploaded with ImageShack.us[/img]

Posted: Mon Feb 21, 2011 1:24 pm
by IainMcNeil
LOS and reaction are different.

A unit may be in LOS and seen but not reacted to. E.g. A Tiger has a 100% reaction chance in its forward arc. To the flanks it is about 20% (I forget the number). This does not effect LOS. So a Sherman advancing on the flank of a Tiger will be visible to the German side but the Tiger will probably not react to it. If the Sherman fires this forces the Tiger to react. In the German turn the Tiger will be able to react as its side can see the Sherman.

Make sense?

Posted: Mon Feb 21, 2011 3:16 pm
by PirateJock_Wargamer
Yep makes sense. So this means ...

1 - LOS is not affected by unit facing
2 - Reactive Fire overrides Hold Fire

So in this example, as soon as the Tiger moves into the Sherman's LOS the Reactive Fire script is activated, even though the Sherman is on Hold Fire. This does make sense. If the Sherman can see the Tiger then the Tiger can see the Sherman! You'd want the Sherman to get the first shot in as it's his best chance ... go for the Tiger's side or possibly rear armour.

In your screenshot gatto, if you had the Sherman in the tile behind it's current position I don't think the Tiger would have moved into your LOS and on your next move you could have popped out and got in the first shot, assuming the Tiger had not turned to face the buildings at the end of his move :wink: So I reckon you have him in the best position where he is.

I'd work on Hold Fire being very useful for units in cover, i.e. infantry & ATGs, or armour on hills.

Cheers

Posted: Tue Feb 22, 2011 5:49 pm
by Merr
Hmmm .... I think Gatto's original problem (firing whilst holding fire) might actually be happening ... Pip or Ian ???

Look at the Fire_AP.BSF .... Function React_Unit_FireAP(me,unit) ....

First conditional ....

Code: Select all

	// only react fire if hold fire is false and not suppressed, or if it is adjacent
	if ( ( ( GetAttrib(me, "HoldFire") == 0) || ( GetTileLOS(x,y,side) ==1 ) ) && ( IsUnitSuppressedArmourReaction(me,1) == 0 ) )
Now, look at the OR (||) ... I think this is incorrect ... It's saying "HoldFire off OR within LOS" ... So, if HoldFire was true (1), and within LOS, it will still fire ????

Shouldn't this read (according to the comment) ...

Code: Select all

	if ( ( ( GetAttrib(me, "HoldFire") == 0) || ( GetDistanceBetween(unit, me) ==1 ) ) && ( IsUnitSuppressedArmourReaction(me,1) == 0 ) )
:?: :? :?:

Posted: Tue Feb 22, 2011 5:57 pm
by IainMcNeil
I'm not looking at the code but the intention is that if a unit is visible to the enemy the hold fire order does not apply. It is not related to distance. If you are visible then holding fire doesnt not achieve anything!

Posted: Tue Feb 22, 2011 6:01 pm
by Merr
Ahh ... I see ... I misread the GetTileLos ... That's the check to see if the enemy can see ME, not vice-versa ... Gotcha.

Hence, being Hidden (your original reply) is the key.

Thanks for the clarification ... and quick reply too!

Posted: Tue Feb 22, 2011 6:25 pm
by adrianoku
iainmcneil wrote:LOS and reaction are different.

A unit may be in LOS and seen but not reacted to. E.g. A Tiger has a 100% reaction chance in its forward arc. To the flanks it is about 20% (I forget the number). This does not effect LOS. So a Sherman advancing on the flank of a Tiger will be visible to the German side but the Tiger will probably not react to it. If the Sherman fires this forces the Tiger to react. In the German turn the Tiger will be able to react as its side can see the Sherman.

Make sense?
Ok thanks, it makes sense, if my unit can be seen by the enemy my unit fires! Sometimes it could be useful and sometimes not.

Posted: Tue Feb 22, 2011 6:34 pm
by adrianoku
PirateJock wrote:Yep makes sense. So this means ...

In your screenshot gatto, if you had the Sherman in the tile behind it's current position I don't think the Tiger would have moved into your LOS and on your next move you could have popped out and got in the first shot, assuming the Tiger had not turned to face the buildings at the end of his move :wink: So I reckon you have him in the best position where he is.

I'd work on Hold Fire being very useful for units in cover, i.e. infantry & ATGs, or armour on hills.

Cheers
I tried three times, three times the tiger passed, my sherman fired , no damage to the german, the tiger reacts and destroyed me :twisted: , next time I'll hide in the tile behind ... :roll: This scenery is a good test for my patience :lol: I didn' t find the way to success , tonight will be a long night of blood and death :shock:
Thank for your suggestions!

Posted: Tue Feb 22, 2011 7:41 pm
by hidde
gatto wrote: Ok thanks, it makes sense, if my unit can be seen by the enemy my unit fires! Sometimes it could be useful and sometimes not.
One thing puzzels me...when I look at the picture I see a slope in front of the Sherman. If it's on top of a hill it's hidden and can not be seen by the Tiger!?
By the way, doesn't it get a rear or flank shot at the Tiger? One would assume it would be able to blow up the Tiger at least one in three...try some more :D

Posted: Tue Feb 22, 2011 8:47 pm
by adrianoku
iainmcneil wrote:LOS and reaction are different.

A unit may be in LOS and seen but not reacted to. E.g. A Tiger has a 100% reaction chance in its forward arc. To the flanks it is about 20% (I forget the number). This does not effect LOS. So a Sherman advancing on the flank of a Tiger will be visible to the German side but the Tiger will probably not react to it. If the Sherman fires this forces the Tiger to react. In the German turn the Tiger will be able to react as its side can see the Sherman.

Make sense?
Only another doubt... my sherman is on top of a hill, why when the tiger passes he could see me? (causing my fire)? I thought that my sherman would be hidden because it's on top of the hill ...

Posted: Tue Feb 22, 2011 8:47 pm
by Merr
I wonder if gatto's tank fired because "technically", at the time, he was not hidden.

I think that if your tank was "seen" on the turn you move a tank to a hilltop, it won't become hidden until the beginning of your next turn.

So, in the screenshot .... If his Sherman (on the hill) fired at the "Tiger" (looks like a PzIvg :P actually), it was because he moved the tank on the hill on his turn, so it's not hidden as far as the enemies turn is concerned.

So, since it's not hidden on the enemies turn, the enemy can see him, hence the reason why it fired.

If this is indeed the case, then perhaps we need an ACTION_BUTTON called "Move to Hull Down" or "Hide me" ... You know, you can spend some action pioints in your tile to hide yourself, or shall I say ... conceal.

A kind of "Dig-in" thing .... We all played "Hide and Seek" as children ... just because you saw me go behind the house doesn't mean I'm there ... I could be hiding under the plastic inverted kiddee pool :wink:

Posted: Tue Feb 22, 2011 10:04 pm
by adrianoku
Merr wrote:I wonder if gatto's tank fired because "technically", at the time, he was not hidden.

I think that if your tank was "seen" on the turn you move a tank to a hilltop, it won't become hidden until the beginning of your next turn.

So, in the screenshot .... If his Sherman (on the hill) fired at the "Tiger" (looks like a PzIvg :P actually), it was because he moved the tank on the hill on his turn, so it's not hidden as far as the enemies turn is concerned.

So, since it's not hidden on the enemies turn, the enemy can see him, hence the reason why it fired.

If this is indeed the case, then perhaps we need an ACTION_BUTTON called "Move to Hull Down" or "Hide me" ... You know, you can spend some action pioints in your tile to hide yourself, or shall I say ... conceal.

A kind of "Dig-in" thing .... We all played "Hide and Seek" as children ... just because you saw me go behind the house doesn't mean I'm there ... I could be hiding under the plastic inverted kiddee pool :wink:
This is not the case, my sherman was hiding on the hill before the german tanks appeared, and .. yep it's not a a tiger sorry :oops:

Posted: Wed Feb 23, 2011 9:28 am
by IainMcNeil
We're not planning to add that kind of complexity but it is very easy to do in a mod. Without seeing exactly what happened its hard to know why the Sherman fired but it all seems to be workingas expected here.