Jump to content
Sign in to follow this  
Locke@Germany

Weapons Config Bug

Recommended Posts

Hi,

there seems to be a problem in ArmA (V1.01 and V1.02) regarding the weapon configs.

If the weapon has multiple firing modes like Single,Burst & Full Auto the reloadtime set in the first firing mode is also used in all other modes. Regardles if there is an entry reloadtime defined for the other modes.

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">

class Locke_TestM16 : Rifle

{

scope = 2;

value = 0;

model = "\ca\weapons\m16_proxy";

optics = 1;

displayName = "Test Weapon";

picture = "\CA\weapons\data\equip\w_m16_ca.paa";

UiPicture = "\CA\weapons\data\Ico\i_regular_CA.paa";

drySound[] = {"\ca\Weapons\Data\Sound\M16_cock_v1", 0.000316228, 1};

reloadMagazineSound[] = {"\ca\Weapons\Data\Sound\M16_reload_v1", 0.01, 1};

magazines[] = {"Locke_30Rnd_556x45_Stanag"};

modes[] = {"Locke_Single","Locke_Burst","Locke_FullAuto"};

class Locke_Single : Locke_Mode_SemiAuto

{

sound[] = {"\ca\Weapons\Data\Sound\AK74_1_SS_A", 10.0, 1};

reloadTime = 0.1; // this is used for all other firing modes, but why ?

recoil = "AK74Recoil";

recoilProne = "AK74Recoil";

dispersion = 0.0025;

minRange = 2;

minRangeProbab = 0.1;

midRange = 250;

midRangeProbab = 0.7;

maxRange = 400;

maxRangeProbab = 0.04;

};

class Locke_Burst : Locke_Mode_Burst

{

sound[] = {"\ca\Weapons\Data\Sound\AK74_1_BS_A", 10.0, 1};

reloadTime = 4; // testing only - gets totaly ignored by ArmA

ffCount = 3;

recoil = "AK74Recoil";

recoilProne = "AK74Recoil";

dispersion = 0.007;

minRange = 2;

minRangeProbab = 0.1;

midRange = 60;

midRangeProbab = 0.7;

maxRange = 100;

maxRangeProbab = 0.05;

};

class Locke_FullAuto : Locke_Mode_FullAuto

{

sound[] = {"\ca\Weapons\Data\Sound\AK74_1_SS_A", 10.0, 1};

reloadTime = 8; // testing only - gets totaly ignored by ArmA

ffCount = 30;

recoil = "AK74Recoil";

recoilProne = "AK74Recoil";

dispersion = 0.005;

minRange = 2;

minRangeProbab = 0.1;

midRange = 30;

midRangeProbab = 0.7;

maxRange = 60;

maxRangeProbab = 0.05;

};

class Library

{

libTextDesc = $STR_LIB_M16;

};

I've come across this bug while working on a weapons & Sound MOD i intend to release in the near future. While most weapons achieve very high rates of fire when set to fully automatic (normaly ranging from 600 up to 800 rounds per minute) a human being in reality is not able to reproduce those high rates by pressing the trigger repeatedly in single fire mode. While limiting the single mode to around 350-400 rpm i noticed that this also influenced the other firing modes aswell, even if they had a different reloadtime defined in their part of the config and where not based on the single fire mode.

Furthermore not only Addons seem to be effected but also the original weapons from the game show this strange bug, just try the minigun on the blachhawk and you will notice that the time it takes to empty the 2000 rounds of ammo is the same (around 12sec.) for both firing modes.

I've also made a little test addon to showcase this strange effect, the code-sample is from this test addon.

Test Addon Download - MEGAUPLOAD

Test Addon Download - Rapidshare

Sorry if this has already been reported somewhere but for me this is a new entry in the steady growing list of Bug's in ArmA.

Locke.

Share this post


Link to post
Share on other sites

I had the same issue, but since the human player can't click as fast as the action is chambering a new round (or squeeze the trigger IRL), I did not change the rate of fire in semi-automatic modes.

You can, however, try to bump-fire the gun, which is possible with real weapons. The accuracy will suffer in any case.

I figured out the sound was somehow limiting the ROF. I added the burst mode to the MP5 series and had to sounds with different frequencies (rof's). The gun with the lower firing freq-sound was not shooting as fast as the one with the fast firing rate.

I bet it is something in the sound-config line which I don't understand.

Share this post


Link to post
Share on other sites

Hi,

I had the same issue, but since the human player can't click as fast as the action is chambering a new round (or squeeze the trigger IRL), I did not change the rate of fire in semi-automatic modes.

yes i'am aware of this, but you would be still able to click your mouse button faster than you would be able to sqeeze the trigger of a real gun.

I figured out the sound was somehow limiting the ROF. I added the burst mode to the MP5 series and had to sounds with different frequencies (rof's). The gun with the lower firing freq-sound was not shooting as fast as the one with the fast firing rate.

I bet it is something in the sound-config line which I don't understand.

The two values in the line sound[]={}; are only representing the volume and pitch the sound effect should be played ingame.

In current ArmA it is simply not possible to have multiple firingmodes on a weapon and have different reloadtimes for each of them. You can easily try it for yourself by setting the reloadtime of the Single-Mode on your MP5 to a rather high value like 1 sec. or more for testing and you will see that also the burst and full-auto-mode are using this value, regardless of what sound effect or reloadtime settings are used for the other modes.

As i said above a good example is the original M134 Minigun mounted on the UH-60.

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">

class M134 : MGun

{

scope = 2;

displayName = $STR_DN_M134;

cursor = "\ca\Weapons\Data\w_weapon_mg";

cursorAim = "\ca\Weapons\Data\w_weapon_mg";

showAimCursorInternal = 1;

magazines[] = {"2000Rnd_762x51_M134", "4000Rnd_762x51_M134"};

modes[] = {"LowROF", "HighROF"};

canLock = 0;

class LowROF : Mode_FullAuto

{

displayName = $STR_DN_M134_2000;

burst = 5;

multiplier = 5;

reloadTime = 0.022;

sound[] = {"\ca\Weapons\Data\Sound\m134loop4_end", 10.0, 1};

soundContinuous = 0;

flash = "gunfire";

flashSize = 0.1;

recoil = "Empty";

maxLeadSpeed = 600;

aiDispersionCoefX = 5;

ffMagnitude = 0.5;

ffFrequency = 11;

ffCount = 6;

dispersion = 0.015;

minRange = 1;

minRangeProbab = 0.1;

midRange = 300;

midRangeProbab = 0.58;

maxRange = 400;

maxRangeProbab = 0.04;

};

class HighROF : LowROF

{

displayName = $STR_DN_M134_4000;

reloadTime = 0.005;

sound[] = {"\ca\Weapons\Data\Sound\m134loop3_end", 10.0, 1};

soundContinuous = 0;

showToPlayer = 1;

minRange = 1;

minRangeProbab = 0.1;

midRange = 200;

midRangeProbab = 0.58;

maxRange = 300;

maxRangeProbab = 0.04;

};

};

While both modes got different sounds and reloadtimes the first reloadtime is used for both modes, resulting in the same ROF for the "HighROF" and "LowROF".

This can be tryed by anyone with a clock, just take the time it takes to fire all ammo in both modes and compare them.

As for the MP5 i would like to add that a silenced MP5 with retractable stock but without the burst-mode is called a MP5SD3. While BIS calls the weapon ingame MP5SD6 it could be seen as a realism issue that they did not configured it with a 3-Round burst.

Source: Heckler & Koch Website

Locke.

Share this post


Link to post
Share on other sites

Hehe, I knew right from the start, they missed the 3rnd burst again. They forgot it in OFP and ArmA has even more old bugs, this included.

Both MP5 should have the SE3F trigger group (A5 and SD6).

Maybe they fixed the ROF bug with the burst multiplier...that way you have the same rof but x times the actual bullets are fired.

They simulate a 4 cannon ZSU-23/4 with multiplier 4 but only one gun actually shoots.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×