Russian tank destroyers are a pain to use

I’m referring to the SU-85 and the SU-100. If you give them an explicit attack order (i.e., right click on an enemy tank or vehicle), they charge in to point blank range and get blown up. If you have them on maneuver, they target enemy buildings that are under construction, charge in to point blank range and get blown up. The only way to use them is to have them on hold position and manually turn them in the general direction of a valid target (their guns do traverse side to side but only a little bit). This is a problem because it’s a lot of unnecessary micro and they don’t always shoot at the highest priority target.

Also, deployed russian light field guns are refusing to fire despite having full supplies.

I was testing svn rev 1552.

Hmm, that may be due to my fix for units firing for free (not using ammo) if they have never been supplied.

Will look into it tonight.

Fixed

AFAIK IIRC all turretless, limited-arc mobile weapons are victims of the same faulty unit behavioural mechanic. IIRC standard unit behaviour is that, if a unit can not fire on its target, it automatically assumes it is because the target is either out of range or blocked by intervening terrain/objects. Pathing control will then tell the unit to move towards the unit, constantly rechecking if it can fire yet, and if the target is in weapon range, will also randomly try and move sideways thinking there may be intervening terrain/objects in the way. Ontop of all that, if a unit is firing at its target but is not hitting it it will again assume it should start changing its position to get closer/move around obstacles in the way.

All of this shitty behaviour combines to really fuck with units that have limited firing arcs or slowly-rotating turrets; it is much less a hindrance to the standard TA mod as they generally have very fast turrets (which this behavioural flaw was designed for).

Without an engine rewrite to modify/select specific unit AI behaviours there’s not much we cna do other than try and make the symptoms less severe.

Wouldn’t hold position make it hold position?

It wouldn’t even attempt to turn if on hold pos. While that dows work if a unit is set to proper facing manually, it totally fails if a unit is on its own.

Yes, the problem with that is that it is a pain in the ass having to micro each individual turretless vehicle on-the-fly, as the only way to micro it is to give it a move order to the side and babysit it until its facing the right way and then get it to stop.

Awhile ago I asked for a command feature to be able to set the orientation of the things similar to the way deployable guns are able to be directed before they deploy. Only difference being the turretless vehicle wouldn’t deploy, it would just face the direction indiciated. This could be toggled by holding down a button which activates the direction-finding, or a better idea (IMO) is right-click-dragging when selecting turretless vehicles will toggle the direction pointer in the direction of the curser (so if you have multiple vehicles in different positions selected you can all have them point towards the same general location such as a chokepoint)

Hmm, I’d argue that a unit with turninplace=1 on hold position should rotate to point to enemies. If they don’t, I would consider it an engine bug.

I’ve attempted an engine fix for this. (Link)

Hopefully it doesn’t have unintended side effects; for me it does fix turning on hold pos for non-turreted units though.

EDIT: it doesn’t work good enough yet, may look a bit more at it in the weekend.

buildbot.eat-peet.net/spring/exe … ebfe03.zip

Test please!

Turretless units on hold pos should behave properly in this build, both when idling and when executing a fight or patrol order.