-
Notifications
You must be signed in to change notification settings - Fork 739
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add GAU-8 Enhancement #4497
Add GAU-8 Enhancement #4497
Conversation
Can you describe what exactly this pull request changes/adds in detail? Maybe a video of the change or something. |
https://www.youtube.com/watch?v=AD1GlElqo74 - Old video if you need a new video I can make one up. |
My goal was to recreate the pull request @SzwedzikPL created, but never finished or at least it was never brought into ACE. I contacted the author of the mod and he was on board 100%, |
Cool, we'll review it! 👍 |
Essentially it's an ACE-port of the Mighty GAU-8/A Avenger Mod of @AlexusDE and me. @sargken was so nice to adjust it so it fits to the ACE-guidelines. The mod is also at GitHub, it can be found here: ZabuzaW/MightyGau-8Avenger Here's a list of features:
And here's a showcase video: |
I am all for it, I think it fits ACE3 as it improves realism of the plane's armament. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apart from those the PR looks good to me. I can't comment on the actual config though.
private ["_weapon", "_projectile", "_i", "_no"]; | ||
|
||
_weapon = param [1]; | ||
_projectile = param [6]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should use params
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you help me out on this using params how would i make them select the specific elements i need? params ["_weapon", "_projectile"];
_weapon need to be element 1
_projectile needs to be element 6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
params ["", "_weapon", "", "", "", "", "_projectile"];
Although in this case it's probably better to do:
private _weapon = _this select 1;
private _projectile = _this select 6;
*/ | ||
#include "script_component.hpp" | ||
|
||
private ["_weapon", "_projectile", "_i", "_no"]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We use inline private _variable = "bla";
, please change to that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How would I make _i
private using the method you want.
* | ||
* Return value: | ||
* None | ||
* |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing example.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Already fixed
@@ -0,0 +1,42 @@ | |||
/* | |||
* Author: Alexus, Zabuza, SzwedzikPL, Sargken | |||
* GAU-8 muzzle effect |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing closing point.
addons/aircraft/config.cpp
Outdated
}; | ||
class Explosion1 | ||
{ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Opening braces should be on same line as class name.
addons/aircraft/config.cpp
Outdated
#include "RscInGameUI.hpp" | ||
|
||
class ACE_Gau8ShellImpact { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this class is big enough to be put in its own file now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Effects.hpp
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
addons/aircraft/CfgSoundShaders.hpp
Outdated
class CfgSoundShaders { | ||
class ACE_GAU8_30mm_closeExp_SoundShader { | ||
samples[] = { | ||
{PATHTOF(sounds\ammo\GAU8_Hit1),1}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing quotes. Use QPATHTOF()
instead.
addons/aircraft/CfgAmmo.hpp
Outdated
caliber = 4.1700001; | ||
airFriction = -0.00036000001; | ||
explosive = 0.34999999; | ||
soundHit1[] = {PATHTOF(sounds\ammo\GAU8_Hit1),3.1622779,1,2000}; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing quotes. Use QPATHTOF()
instead.
no need to remove them entirely. There is a config entry for this:
|
Couldn't we do the gun effects with |
It uses some randomization, pabst |
addons/aircraft/CfgWeapons.hpp
Outdated
burst = 1; | ||
class LowROF: Mode_FullAuto { | ||
displayName = "GAU-8"; | ||
magazines[] = {"ACE_1174Rnd_GAU8_30mm_Plane_CAS_01_F"}; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should allow it to still take the old magazines or it could break loadout scripts or other mods using this weapon with the old ammo.
|
||
if (_weapon != "ACE_Gatling_30mm_Plane_CAS_01_F") exitWith {}; | ||
|
||
_no = 8 + random 1; | ||
private _no = 8 + random 1; | ||
private _i; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is no need to private this, it's self-privatized because it's used in that for loop.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jonpas Not true in my experience, though I do use the array syntax of for
so that might e why
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The incrementor of the for-loop is automatically set to private to the inner scope of the loop:
_i = "banana";
for "_i" from 0 to 2 do {
_i = _i; // with or without
};
_i
-> "banana"
where as:
_i = "banana";
for "_a" from 0 to 2 do {
_i = _a;
};
_i
-> 2
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But you are right about the alternative syntax:
_i = "banana";
for [{_i=1},{_i<=2},{_i=_i+1}] do {};
_i
-> 3
work-around:
_i = "banana";
for [{private _i=1},{_i<=2},{_i=_i+1}] do {};
_i
-> "banana"
@@ -13,18 +13,19 @@ | |||
* Return value: | |||
* None | |||
* | |||
* Example: | |||
* QUOTE(_this call FUNC(gau8_muzzleEffect)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should write it out full, eg. [unit, "weapon", "muzzle", "ammo", "magazine", projectile] call ace_aircraft_fnc_gau8_muzzleEffect;
|
I agree with @PabstMirror
@commy2, the randomization part could very well be stripped; I believe it's not working, because it does: private _no = 8 + random 1;
for "_i" from 1 to _no do { I'm not sure how |
I believe this is an artifact from the past. There where some higher values long ago. If that's the case, you can set it to 8 iterations, fix. The random part inside of the loop is important. But whether the amount of dropped particles is 8 or 9, well this isn't. |
Any other suggestions? |
do this to make the tracers show up with NVG only: |
Tracer effects of the GAU-8 can not been seen with eye nor with a night vision device; not at day time nor at night time. |
Roger. I was mislead by this post:
|
Oh. Yeah, that's indeed misleading. I'll remove that from the changelog for the next update^^ |
This is done on my end. If you guys see things that need to be changed lmk. Otherwise it's completed. |
Status update? :) |
I think the next release is 8.2 so gotta wait for .9 |
laserLock = 1; | ||
hit = 300; | ||
indirectHit = 100; | ||
indirectHitRange = 3.5; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For reference, the 120mm HE has a hit value of 220 and an indirectHit of 60.
The old indirectHit value was 4.
Are these values sane for a 30mm gatling gun?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tested it and it's not as bad as I feared. Maybe it can be tweaked later to try to make it less destructive to buildings, but for now it's okay as far as I can tell.
@jonpas Anything else that needs to be done? |
Status update? :) Here's a video of the content: |
Hello @sargken and @ZabuzaW, excuse us for the long delay on this. We have been getting information about the realism of this in connection with the massive changes and after going through it all decided this is better living in its own mod. @SilentSpike can probably give some quick information as of why. Thank you for the wanted contribution nonetheless, we appreciate the effort! |
This is the same concept done as here #1976.
Adds in the Enhanced GAU-8 Mod
Credit goes to @AlexusDE and @ZabuzaW
Has been tested in a single player environment.
The following list presents all added/changed features:
Further Info on the mod