Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Bug: Issues with Sniper Artillery against aerospace.
#1
EDIT: Just realized I was using the latest stable release rather than the dev release. I will test again and confirm if it still occurs.

So I was running a test run with the Pollux ADA Tank against a flight of aeros, and found several issues with using the Sniper Artillery.

Firstly, the 'anti-air targeting' quirk (from the "StratOps Quirks" option) was not affecting the Sniper Artillery when used as a flak weapon against aircraft. This seems like a bug to me, as it was affecting every other weapon system.

Secondly, it seems the rules for Flak Artillery are using a hodgepodge of the rules from The Battletech Compendium and TacOps. The rules from TacOps, pg.185 for Flak are as follows:
"Apply a +3 to-hit modifier; the only other modifiers applied are for the firing unit’s movement and current damage, as well as woods/jungle, if any are
intervening. Additionally, if firing at an airborne aerospace unit on a Low-Altitude Map, apply a +1 modifier for each 3 altitudes above the first 3; i.e. 1-3 altitudes provide no modifiers, 4-6 altitudes provide a +1 modifier, 5-9 altitudes provide a +2 modifier and Altitude 10 provides a +3 modifier." It seems to be giving the straight 9 base to hit from Compendium, in addition to the altitude rules from TacOps, leading to unreasonably hard to-hit numbers.

StratOps: Advanced Anti-Aircraft is on. Pic here: http://imgur.com/b0ks5y0

Hopefully this can be fixed. Fighting aeros with ground units is a pain in the butt.
Reply
#2
This would be better off getting posted on the bug tracker.  Ultimately, it will end up forgotten about on the forums.  Here's a link to the bug tracker: https://sourceforge.net/p/megamek/bugs/?source=navbar
Reply
#3
Thanks for pointing this out. I'm going to fix this for my server. We use Aero frequently.
Reply
#4
I fixed it and am sharing the patched WeaponAttackAction.java file in ZIP form. Lost my PW and can't recover it for Sourceforge / report a Bug:

https://www.dropbox.com/s/8jwzhefehj8usv...n.zip?dl=0

Code:
        } else if (isArtilleryFLAK) {
            toHit = new ToHitData(ae.getCrew().getGunnery(), "gunnery skill");
            if (te.isAirborne()) {
                if (te.getAltitude() > 3) {
                    if (te.getAltitude() > 9) {
                        toHit.addModifier(TargetRoll.IMPOSSIBLE,
                                "airborne aerospace at altitude > 10");
                    } else if (te.getAltitude() > 6) {
                        toHit.addModifier(5,
                                "airborne aerospace at altitude 7-9");
                    } else if (te.getAltitude() > 3) {
                        toHit.addModifier(4,
                                "airborne aerospace at altitude 4-6.");
                    } else if (te.getAltitude() > 1) {
                        toHit.addModifier(3,
                                "airborne aerospace at altitude 1-3.");
Reply
#5
Thank you! Hopefully this can get fixed in the next patch.
Reply
#6
Thanks for posting the fix TigerShark Smile

I've made it up as a diff file and posted the patch on the trackers.  I'm sure the fix is good but I don't know enough about the code to confirm that the fix is all that is needed.  I'll let one of the coders look it over and commit it.



Reply
#7
(07-15-2015, 02:04 PM)Hammer link Wrote:Thanks for posting the fix TigerShark Smile

I've made it up as a diff file and posted the patch on the trackers.  I'm sure the fix is good but I don't know enough about the code to confirm that the fix is all that is needed.  I'll let one of the coders look it over and commit it.

I've tested it out as my server's current version. Seems to be working as intended. But let me know. Smile
Reply
#8
Seems like many people are having trouble recovering passwords from Source Forge. Sad
Reply
#9
Ok. I found a bug (or an omission, rather). I didn't account for the instance of non-Aerospace flying units. Fixed that and the tool tip for non-NOE Aero:

Code:
        } else if (isArtilleryFLAK) {
            toHit = new ToHitData(ae.getCrew().getGunnery(), "gunnery skill");
            if (te.isAirborneVTOLorWIGE()) {
                toHit.addModifier(+3,
                            "targeting non-aerospace airborne unit");
            }
            if (te.isAirborne()) {
                if (te.getAltitude() > 3) {
                    if (te.getAltitude() > 9) {
                        toHit.addModifier(TargetRoll.IMPOSSIBLE,
                                "airborne aerospace at altitude > 10");
                    } else if (te.getAltitude() > 6) {
                        toHit.addModifier(5,
                                "airborne aerospace at altitude 7-9");
                    } else if (te.getAltitude() > 3) {
                        toHit.addModifier(4,
                                "airborne aerospace at altitude 4-6.");
                    } else if (te.getAltitude() > 1) {
                        toHit.addModifier(3,
                                "airborne aerospace at altitude 2-3.");
Reply
#10
https://www.dropbox.com/s/8jwzhefehj8usv...n.zip?dl=0
Reply
#11
I had planned on getting this committed this weekend, but since SourceForge has been down.... no such luck.
Reply
#12
Reminder to commit this. Still isn't in the newer versions.
Reply
#13
This issue was added to the patches tracker by Hammer and I committed a fix on 8/5/15.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)