RHS Feedback

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000204AFRF[All Projects] Generalpublic2015-01-25 12:492015-02-09 01:18
ReporterCameronMcDonald 
Assigned Toreyhard 
PrioritynormalSeveritytweakReproducibilityalways
StatusresolvedResolutionfixed 
PlatformOSOS Version
Product Version0.3.5 
Target Version0.3.6Fixed in Version0.3.6 
Summary0000204: BMP1/BMD1 will not engage infantry with OG15V
DescriptionGents,

I've been doing some testing to see how your mounted weapons are configured (and see if there's a need for improvement a la the small tweak I put out for A2).

The BMP1/BMD1 will not engage infantry targets with OG15V HE-Frag, rather, it will stubbornly continue to use PG15V.

Not a real problem, but hell, the BMP1 is renowned for being an ArmA infantryman's worst nightmare... why not make it a bit scarier by using the OG15V to smear soft targets?
Steps To Reproduce1. Throw a BMP1/BMD1 and some infantry down in the editor.
2. Remove the PKT to make the use of the 2A28 a bit more likely.
3. Watch the BMP1/BMD1 only engage with PG15V.
4. Daydream about how cool it would be if it used OG15V rounds to hit infantry/soft targets.
Additional InformationThis can probably be easily rectified by tweaking ammunition cost values, if you've implemented a main gun system like I did in the below addon (I'm about to check your tanks, so hopefully you have!).

http://forums.bistudio.com/showthread.php?125395-CMcD-Cannon-Main-Gun-Tweaks [^]
TagsNo tags attached.
Is it a wish/request?
RHS version
Arma 3 version
Did you used any other mod when the error occurred?
Which mods?
Attached Files

- Relationships

-  Notes
(0000527)
reyhard (administrator)
2015-01-25 13:26

only autocannons have such system know. I was afraid of AI cheating on reload times so I didn't even consider adding it to cannons. Sounds interesting anyway
(0000529)
CameronMcDonald (reporter)
2015-01-25 14:13
edited on: 2015-01-25 14:29

It's pretty easy to implement. For example, for the A2 BMP3:

In CFGWeapons:

    // Muzzles for 2A70
    class CMCD_2A70 : 2A70
    {
        // Player's weapon
        displayName = "2A70";
        reloadTime = 6.6666667; // 9rpm (ROF fix)
        aiRateOfFire = 6.7666667; // Higher than reload to prevent AI haxx
        aiRateOfFireDistance = 10;
        magazines[] = {"22Rnd_100mm_HE_2A70","CMCD_9M117_BMP3"}; // Allows player to load ATGMs
    };
    class CMCD_2A70_OF19 : CMCD_2A70
    {
        // Intended for AI (OF19)
        displayName = "2A70";
        magazines[] = {"22Rnd_100mm_HE_2A70"};
    };
    class CMCD_2A70_9M117 : 2A70Rocket
    {
        // Intended for AI (9M117 ATGM)
        displayName = "9M117";
        reloadTime = 6.6666667; // 9rpm (ROF fix)
        aiRateOfFire = 6.7666667; // Higher than reload to prevent AI haxx
        aiRateOfFireDistance = 10;
        magazines[] = {"CMCD_9M117_BMP3"};
    };
    // Actual 2A70 gun for AI (and player)
    class CMCD_2A70_BMP3 : CMCD_2A70
    {
        scope = protected;
        displayName = "2A70";
        shotFromTurret = 1;
        muzzles[] = {ATGM,PLAYER};
        //class HE : CMCD_2A70_OF19 { ShowToPlayer=false; }; // Not visible to player
        class ATGM : CMCD_2A70_9M117 { ShowToPlayer=false; }; // Not visible to Player, AI will use as ATGM
        class PLAYER : CMCD_2A70 { ShowToPlayer=true; }; // Visible to Player, AI will use as HE
    };

TL;DR - this adds invisible weapons for the AI which allow it to fire HE-Frag and ATGMs. Using an AIRateOfFire=xx; entry higher than the reloadtime will prevent the AI cheating (like in vanilla A2).

Naturally, the player cannot access the AI's firemodes (locked out via ShowToPlayer=false;) but can operate the cannon in the normal way.

This improvement can be carried across to all tank cannons, so you can have them using HE-Frag, HEAT, sabot, ATGMs - any ammo nature, basically - on the fly, without cheating on reload times.

(0000530)
CameronMcDonald (reporter)
2015-01-25 14:17
edited on: 2015-01-25 14:17

Here's my example for the A2 T90:

In CFGWeapons:

    // Muzzles for 2A46M (T90)
    class CMCD_2A46M : CMCD_D81TM
    {
    displayname = "24A46M";
    magazines[] = {"23Rnd_125mmSABOT_T72", "22Rnd_125mmHE_T72", "CMCD_9M119", "CMCD_9M119M"};
    };
    class CMCD_2A46M_BK21M : CMCD_2A46M
    {
        // Intended for AI
        displayName = "2A46M";
        magazines[] = {"22Rnd_125mmHE_T72"};
    };
    class CMCD_2A46M_BM32 : CMCD_2A46M
    {
        // Intended for AI
        displayName = "2A46M";
        magazines[] = {"23Rnd_125mmSABOT_T72"};
    };
    class CMCD_2A46M_9K119 : CMCD_2A46M
    {
        // Intended for AI
        displayName = "9K119";
        magazines[] = {"CMCD_9M119"};
    };
    class CMCD_2A46M_9K120 : CMCD_2A46M
    {
        // Intended for AI
        displayName = "9K120";
        magazines[] = {"CMCD_9M119M"};
    };
    // Actual 2A46M gun (2A46M for T90 with 9K120) for AI and player
    class CMCD_2A46M_T90 : CMCD_2A46M
    {
        scope = public;
        muzzles[] = {PLAYER,ATGM,HEAT};
        shotFromTurret = 1;
        class HEAT : CMCD_2A46M_BK21M { ShowToPlayer=false; }; // Not visible to Player, AI will use as HE
        //class SABOT : CMCD_2A46M_BM32 { ShowToPlayer=false; }; // Not visible to Player
        class ATGM : CMCD_2A46M_9K119 { ShowToPlayer=false; aiRateOfFire = 7.7; }; // Not visible to Player, AI will use as ATGM
        class PLAYER : CMCD_2A46M {}; // Visible to Player, AI will use as SABOT
    };
};

(0000531)
reyhard (administrator)
2015-01-25 14:19
edited on: 2015-01-25 14:20

yeah, I know, as I said before, it's already done that way for 2a42 & 2a72 but it's matter of AI cheating in that case.

imagine ai destroying tank & in another second firing HE into group of infantry. rather not realistic

(0000532)
CameronMcDonald (reporter)
2015-01-25 14:26
edited on: 2015-01-25 14:27

Yep, like I said above, though - the one-two punch is solved using AIRateOfFire.

Unless this command has become deprecated in A3, that's how this was prevented in A2.

E.g.

        reloadTime = 6.6666667; // 9rpm (ROF fix)
        aiRateOfFire = 6.7666667; // Higher than reload to prevent AI haxx

(0000593)
CameronMcDonald (reporter)
2015-01-27 12:14

Welp, I think you can close this one, reyhard.

I've found an issue (which was also present in A2) which will probably make a tweak like this untenable for anyone who wants to tank and hold onto their .RPTs at the same time.

I'm going to release an addon which implements the multiple muzzles, but I'll be sure to warn people of the potential RPT spam.

Damned engine limitations. :(
(0000595)
reyhard (administrator)
2015-01-27 13:33

what kind of error?
(0000609)
CameronMcDonald (reporter)
2015-01-28 08:09

https://dev.withsix.com/issues/39784 [^]

Take a look at the above - ACE2 incorporated the multiple muzzle idea as well, back in the day. The .RPT starts filling up with...

"duplicate magazine <insert magazine name here> detected in slots <insert mode here> and <insert another mode here>"

...as soon as the player jumps in the tank for some gunnery.

Note that AI-crewed tanks are just fine - it's only when the player is a gunner.

I've found a strange thing - you can have 2 muzzles for a tank gun with no problems (e.g. the 2A28 for the BMP/BMD1 works perfectly with HEAT/HE-F) with no errors at all, but as soon as you have 3 or more the error kicks in. Makes me wonder if BI did this in order to allow autocannons to work properly.

You could, I guess, compromise and have 2 muzzles for each tank main gun without any error - maybe SABOT and HE-F. A pity that HEAT and ATGM would still be unused, though.
(0000641)
CameronMcDonald (reporter)
2015-02-03 10:28
edited on: 2015-02-03 10:28

http://forums.bistudio.com/showthread.php?188338-CMcD-Main-Gun-Tweaks-%28A3%29&p=2870810&viewfull=1#post2870810 [^]

Added some RHS weapons to my little tweak. Note the inherent limitations.

I've had some issues with the cost values of your ammunition and AI selection of natures (especially the M1's desire to fire HE at everything), but decided not to tinker with it for now.

(0000642)
reyhard (administrator)
2015-02-03 10:43

well, take in account that I fiddled with it around and it might overlap later. Yet, till beta02 (or stable 0.4) there is nothing to worry
(0000643)
CameronMcDonald (reporter)
2015-02-03 10:52

No worries, mate. :) Thanks again for your consideration. I'll definitely update for the next stable release.

- Issue History
Date Modified Username Field Change
2015-01-25 12:49 CameronMcDonald New Issue
2015-01-25 13:26 reyhard Note Added: 0000527
2015-01-25 14:13 CameronMcDonald Note Added: 0000529
2015-01-25 14:16 CameronMcDonald Note Edited: 0000529 View Revisions
2015-01-25 14:17 CameronMcDonald Note Added: 0000530
2015-01-25 14:17 CameronMcDonald Note Edited: 0000530 View Revisions
2015-01-25 14:19 reyhard Note Added: 0000531
2015-01-25 14:20 reyhard Note Edited: 0000531 View Revisions
2015-01-25 14:26 CameronMcDonald Note Added: 0000532
2015-01-25 14:27 CameronMcDonald Note Edited: 0000532 View Revisions
2015-01-25 14:29 CameronMcDonald Note Edited: 0000529 View Revisions
2015-01-27 12:14 CameronMcDonald Note Added: 0000593
2015-01-27 13:33 reyhard Note Added: 0000595
2015-01-28 08:09 CameronMcDonald Note Added: 0000609
2015-02-03 10:28 CameronMcDonald Note Added: 0000641
2015-02-03 10:28 CameronMcDonald Note Edited: 0000641 View Revisions
2015-02-03 10:43 reyhard Note Added: 0000642
2015-02-03 10:52 CameronMcDonald Note Added: 0000643
2015-02-08 09:33 reyhard Status new => resolved
2015-02-08 09:33 reyhard Fixed in Version => 0.3.6
2015-02-08 09:33 reyhard Resolution open => fixed
2015-02-08 09:33 reyhard Assigned To => reyhard
2015-02-09 01:18 MistyRonin Target Version => 0.3.6


Copyright © 2000 - 2024 MantisBT Team
Powered by Mantis Bugtracker