RHS Feedback - AFRF |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0000204 | AFRF | [All Projects] General | public | 2015-01-25 12:49 | 2015-02-09 01:18 |
|
Reporter | CameronMcDonald | |
Assigned To | reyhard | |
Priority | normal | Severity | tweak | Reproducibility | always |
Status | resolved | Resolution | fixed | |
Platform | | OS | | OS Version | |
Product Version | 0.3.5 | |
Target Version | 0.3.6 | Fixed in Version | 0.3.6 | |
Is it a wish/request? | |
RHS version | |
Arma 3 version | |
Did you used any other mod when the error occurred? | |
Which mods? | |
|
Summary | 0000204: BMP1/BMD1 will not engage infantry with OG15V |
Description | Gents,
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 Reproduce | 1. 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 Information | This 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 [^] |
Tags | No tags attached. |
Relationships | |
Attached Files | |
|
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 | bug_revision_view_page.php?bugnote_id=529#r253 |
2015-01-25 14:17 | CameronMcDonald | Note Added: 0000530 | |
2015-01-25 14:17 | CameronMcDonald | Note Edited: 0000530 | bug_revision_view_page.php?bugnote_id=530#r255 |
2015-01-25 14:19 | reyhard | Note Added: 0000531 | |
2015-01-25 14:20 | reyhard | Note Edited: 0000531 | bug_revision_view_page.php?bugnote_id=531#r257 |
2015-01-25 14:26 | CameronMcDonald | Note Added: 0000532 | |
2015-01-25 14:27 | CameronMcDonald | Note Edited: 0000532 | bug_revision_view_page.php?bugnote_id=532#r259 |
2015-01-25 14:29 | CameronMcDonald | Note Edited: 0000529 | bug_revision_view_page.php?bugnote_id=529#r260 |
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 | bug_revision_view_page.php?bugnote_id=641#r320 |
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 |
Notes |
|
|
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 |
|
|
|
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.
|
|
|
|
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
|
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
|
|
|
|
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
|
|
|
|
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. :( |
|
|
|
|
|
|
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. |
|
|
|
|
|
|
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 |
|
|
|
No worries, mate. :) Thanks again for your consideration. I'll definitely update for the next stable release. |
|