[Mutator]INF Ballistic Tweak

  • Two Factor Authentication is now available on BeyondUnreal Forums. To configure it, visit your Profile and look for the "Two Step Verification" option on the left side. We can send codes via email (may be slower) or you can set up any TOTP Authenticator app on your phone (Authy, Google Authenticator, etc) to deliver codes. It is highly recommended that you configure this to keep your account safe.

Derelan

Tracer Bullet
Jul 29, 2002
2,630
0
36
Toronto, Ontario
Visit site
keihaswarrior said:
What makes you think that a suppressor lowers muzzle velocity? The FAMAS, M4A1, M16A4, MP5/40A3, MP5A2, Uzis, and Mk23 should all have approximately the same muzzle velocity with or without the suppressor attachment.

So then, stricly speaking in a game of INF, why the hell would I ever NOT use a suppressor?
 

keihaswarrior

New Member
Jan 7, 2003
1,376
0
0
41
Seattle
keihaswarrior.home.icq
Derelan said:
So then, stricly speaking in a game of INF, why the hell would I ever NOT use a suppressor?
Bulk, and weapon length (collision).

Think about it, why would attaching a can to the end of the rifle slow down the bullet? If anything it seems like it should increase the muzzle velocity because it effectively lengths the barrel (and therefore the time the bullet spends with compressed gas pushing on it).

Conglomera needs to do more research, and get more advice from people with real firearms experience before changing all the ballistics in INF.
 

ravens_hawk

New Member
Apr 20, 2002
468
0
0
Visit site
KW try reading
"- Even tho they're not... Suppressed firearms are now concidered as using subsonic ammunitions.
- Greatly lowered recoil, damage and penetration for supressed assault rifles, bullets velocities are set to subsonic."
 

Conglomera

Proud Toilet Cleaner
Sep 7, 2001
135
0
0
53
Algiers, Algeria
I'm receiving words that the mutator isn't working for some, well try to put a line in your ServerPackages : ServerPackages=INFBallisticTweak
that's maybe the reason.

To everyone that dnl the mutator :
Try the MP5/40 reloading thing and post a message just to say if it worked or not.

To UN17 :
Anyways if you load IBT before INF_Bonus, you'll not be able to pickup using pickup menu, I don't know why it's like this!
 
Last edited:

Corporal_Lib [BR]

Brazilian Graphic Designer & Gun Nut {=)
It works fine, for me, Conglomera!!! That´s sweet, now I can efficiently use the ACOG, and sharing the same clip for both Uzis and Mp5s (k and A2) is very realistic, but the A2 doesn´t have burst IRL? (the A4 does, is that it???)
But I miss the correct M1911 sound (and it seems a little "powerless" now, needed 5 torso hits to kill a bot w/ LII armour) sound and the proper FAMAS positioning...

Ordering correctly tha long line of mutators is an art, cause I´ve wasted almost 2 months before realising that InfMagcheck was disabling IWE... {=(

Is any server going to host this muttie? it works, just need to use a right combination and order of mutties!!! {XD
 
Last edited:

Olethros

Functional alcoholic
There seems to be a package dependency between your mutator and UN_HandGunFix as well. You should perhaps mention this in the readme file. (Meaning, you HAVE to have UN17's handgunfix mutator installed to run it.)

And FYI, the C7 Mutator is ancient and not in any kind of development so maintaining compatibility and package dependency with it really isn't worth the effort.

BTW: To check which mutators are running, just type "mutate mmdebug" in the console if you are running MultiMut v1.1 or later.
 

Conglomera

Proud Toilet Cleaner
Sep 7, 2001
135
0
0
53
Algiers, Algeria
Olethros said:
There seems to be a package dependency between your mutator and UN_HandGunFix as well. You should perhaps mention this in the readme file. (Meaning, you HAVE to have UN17's handgunfix mutator installed to run it.)

And FYI, the C7 Mutator is ancient and not in any kind of development so maintaining compatibility and package dependency with it really isn't worth the effort.

BTW: To check which mutators are running, just type "mutate mmdebug" in the console if you are running MultiMut v1.1 or later.

Oh thanx that helps, is there any mean of removing this dependency?
Like when found the package is used, if not... then it's just ignored.
 

Conglomera

Proud Toilet Cleaner
Sep 7, 2001
135
0
0
53
Algiers, Algeria
Well as said by Olethros you need UN HandGunFix and C7 Mutator to get IBT working, you can download them following the links above.
Concider this version of IBT as beta, a new version w/ problems solved and some other features found in IWE will follow in the incoming days (maybe 2 or 3).

C you soon
 

Vega-don

arreté pour detention de tomate prohibée
Mar 17, 2003
1,904
0
0
Paris suburbs
Visit site
yes after testing this this rocks.
the acogs are now usefull, i tried against bots, and the acog are really cool.
not your uber weapon because theires still the scope moving, and the scope FOV and the problem with aiming while moving, but now acogs are a possible alternative, according that you adapt your playing stile.

the mp5's and g3 reload is great. the g3 recoil is horrible! but a g3 is supposed to kick alot. (use semi). damage is increased too. minimi is really a powerfull gun now, without being an uber gun (you feel the recoil).

i have talked with conglo because now we have 2 great mutators than can conflict each others. we though that he can use IBT as a base and add several features found in IWE such as famas aim view or shotgun collision, so everything thats good will be in 1 mutator that server will be able to run.

conglo will try to copy the famas aim for the g36k, shouldnt be hard

i have yet to try the other guns.
 

Olethros

Functional alcoholic
About package dependency: If anything in your package is a subclass of anything in - say - the C7 mutator's package, then the C7 package must be present both at compile- and runtime of the derived package. So if you have
class IBT_C7 expands INFw_C7; you have a package dependency.

Additionally, if you make a reference to any external classes like Spawn(class'INFw_C7'); you also have a package dependency since the compiler must resolve the reference to the INFw_C7 class when you rebuild your package.

There is a way around the latter with the DynamicLoadObject method. Like f.ex:
Code:
Class<INFc_Weapon> newWeapon;

newWeapon = class<INFc_Weapon>(DynamicLoadObject("INFwm_C7.INFw_C7", class'Class'));
If(newWeapon != none) Spawn(newWeapon);
else log(Could not spawn the C7 object.");
The above example will only reference the INFw_C7 class if found at run time, so it won't be package dependant upon INFwm_C7.

As for other stuff to include in your mutator, why don't you check out the unreleased beta 7 of InfMagCheck (attached) and see if there's a way to make the two compatible.

This example might work:
Code:
class IBT_FAMAS extends INFc_FAMAS;
var class<PickupMessagePlus> MSM;

function SwitchWeaponMode(){
	if(INFc_SMaleBase(Owner)!=none && INFc_SMaleBase(Owner).bINFGrab == 1 &&
	!(Pawn(Owner).Physics == PHYS_Swimming || Pawn(Owner).Physics == PHYS_Falling || Pawn(Owner).Physics == PHYS_Flying)){
		if(RoundsInClip>1 || INFc_Ammo(AmmoTypes[CurrentAmmoType]).numClips<1){
			// Safely determine if INFMagCheck is installed:
			MSM = Class<PickupMessagePlus>(DynamicLoadObject("INFMagCheck.MagStateMessage", class'Class'));
			if(MSM != none)	INFGotoState('checkAmmo');
			else super.SwitchWeaponMode();
		}
		else Reload();
	}
	else super.SwitchWeaponMode();
}

state checkAmmo
{
ignores Fire, AltFire, Reload, SwitchWeaponMode, AnimEnd, ActivateAttachment;

	function EndState(){
		ResetReloading();

		//if ( INFc_sMaleBase(Owner) != None )
		//	INFc_sMaleBase(Owner).bInfReload = 0;

		if (!bAimMode)
			bReloading = False;              // 2.87

		if ( !bAimMode && INFc_SMale1Bot(Owner) != None && INFc_SMale1Bot(Owner).Enemy != None )
			INFGotoState('HipToAim');

//		if ( bDisableAimMode && bAimMode )          // 2.87
//			INFGotoState('AimToHip');

		if (bLaserWasOn)
		{
			bLaserWasOn = False;
			bLaser = True;
		}
		Super.EndState();
	}

Begin:
	if (bAimMode)
	{
		LastState = 'checkAmmo';
		LastLabel = '';
		INFGotoState('AimToHip');
	}
	else
	{
		YawMeshRotSpeed = default.YawMeshRotSpeed;
		YawMeshReloadRotation = default.YawMeshReloadRotation;
		TweenReload1();
		PlayReload1();

		if (RoundsInClip > 1 || INFc_Ammo(AmmoTypes[CurrentAmmoType]).numClips<1)
		{
			PlayReload1A();
			FinishAnim();
			PlayReload1B();
			FinishAnim();
			PlayReload1C();
			FinishAnim();
			PlayReload1D();
			FinishAnim();
			//DropEmptyClip();
			// Magazine Pouch
			Sleep(0.3);
			//NewMagOpen();
			Owner.PlaySound(Sound'INF_Assets.Weapons.INF_M67Idle', SSlot_WeaponSpecific, 0.8*Pawn(Owner).SoundDampening,, 1200);
			Pawn(Owner).ReceiveLocalizedMessage( MSM, 0, None, None, Self );
			//Sleep(0.3);
			//NewMagPull();
			Sleep(0.3);
			PlayReload1E();
			FinishAnim();
			//AddToClip();
			resetViewMesh();
			PlayReload1F();
			FinishAnim();
			PlayReload1G();
			FinishAnim();
		}
		else {
			TweenReload2();
			PlayReload2();
			PlayReload2A();
			FinishAnim();
			PlayReload2B();
			FinishAnim();
			PlayReload2C();
			FinishAnim();
			PlayReload2D();
			FinishAnim();
			DropEmptyClip();
			// Magazine Pouch
			Sleep(0.2);
			NewMagOpen();
			Sleep(0.3);
			NewMagPull();
			Sleep(0.7);
			PlayReload2E();
			FinishAnim();
			AddToClip();
			Pawn(Owner).ReceiveLocalizedMessage( MSM, 1, None, None, Self );
			PlayReload2F();
			FinishAnim();
			PlayReload2G();
			FinishAnim();
			PlayReload2H();
			FinishAnim();
			PlayReload2I();
			FinishAnim();
		}
//	 	YawMeshRotSpeed = 0.4;
		YawMeshRotSpeed = 0.6;
		YawMeshReloadRotation = 0;

		if ( bChangeWeapon )
			GotoState('DownWeapon');
		else {
			lastState='';
			INFGotoState('Idle');
		}
	}
}

state NewClip
{
ignores Fire, AltFire, Reload, SwitchWeaponMode, AnimEnd, ActivateAttachment;

Begin:
	if (bAimMode)
	{
		LastState = 'NewClip';
		LastLabel = '';
		INFGotoState('AimToHip');
	}
	else
	{
		YawMeshRotSpeed = default.YawMeshRotSpeed;
		YawMeshReloadRotation = default.YawMeshReloadRotation;
		TweenReload1();
		PlayReload1();
		MSM = Class<PickupMessagePlus>(DynamicLoadObject("INFMagCheck.MagStateMessage", class'Class'))

		if (RoundsInClip > 1)
		{
			PlayReload1A();
			FinishAnim();
			PlayReload1B();
			FinishAnim();
			PlayReload1C();
			FinishAnim();
			PlayReload1D();
			FinishAnim();
			DropEmptyClip();
			// Magazine Pouch
			Sleep(0.2);
			NewMagOpen();
			Sleep(0.3);
			NewMagPull();
			Sleep(0.7);
			PlayReload1E();
			FinishAnim();
			AddToClip();
			if(MSM != none) Pawn(Owner).ReceiveLocalizedMessage( MSM, 1, None, None, Self );
			PlayReload1F();
			FinishAnim();
			PlayReload1G();
			FinishAnim();
		}
		else
		{
		TweenReload2();
		PlayReload2();

			PlayReload2A();
			FinishAnim();
			PlayReload2B();
			FinishAnim();
			PlayReload2C();
			FinishAnim();
			PlayReload2D();
			FinishAnim();
			DropEmptyClip();
			// Magazine Pouch
			Sleep(0.2);
			NewMagOpen();
			Sleep(0.3);
			NewMagPull();
			Sleep(0.7);
			PlayReload2E();
			FinishAnim();
			AddToClip();
			if(MSM != none) Pawn(Owner).ReceiveLocalizedMessage( MSM, 1, None, None, Self );
			PlayReload2F();
			FinishAnim();
			PlayReload2G();
			FinishAnim();
			PlayReload2H();
			FinishAnim();
			PlayReload2I();
			FinishAnim();
		}
//	 	YawMeshRotSpeed = 0.4;
		YawMeshRotSpeed = 0.6;
		YawMeshReloadRotation = 0;

		if ( bChangeWeapon )
			GotoState('DownWeapon');
		else
			INFGotoState('Idle');
	}
}
 

Attachments

  • infmagcheck_b7.zip
    37.9 KB · Views: 40
Last edited:

Conglomera

Proud Toilet Cleaner
Sep 7, 2001
135
0
0
53
Algiers, Algeria
Thanx Olethros for your help...
And YES! MagCheck is a realy good feature that MUST have its place in INF, I'll do my best to integrate it to IBT, and in the worst case if I fail to... maybe you can do it yourself. Deal?
 

Conglomera

Proud Toilet Cleaner
Sep 7, 2001
135
0
0
53
Algiers, Algeria
keihaswarrior said:
I still don't see why he is making all suppressed weapons shoot bullets that travel at subsonic speeds and therefore do less damage.

A large premise of this mutator is simply unrealistic!

Ok keihaswarrior let's make it simple, not too technical and explanatory.

A supressor actualy reduces the muzzle blast caused by gazes escaping at high presure from the barrel so the main bang is suppressed by giving more place for gazes to expand while containing them then slowing their exit through baffles or whatever technique is used in a given suppressor.
A suppressor also hide the muzzle flash and acts like a flash hider.
Now that the main gunshot bang is reduced or in some cases silenced, an other important thing remains : If the bullet is supersonic and thus breaks the sound barrier, a supersonic boom called the ballistic crack (in case of projectiles) is produced, and this crack can be heard at very long distances, so the suppression is only partial as the sound signature is still present.
To attain a full degree of supression, in the addition of a suppressor, we have then to load our weapon with subsonic ammunitions that do not produce the ballistic crack. Some handguns cartridges are inherently subsonic (.45 ACP, .40 S&W...) and are very well suppressed just with a muzzle suppressor attached to the weapon. Other handguns or submachine guns which normaly use supersonic amunitions like 9mm Luger can be fully supressed by using heavier subsonic bullets which produce as much energy as supersonic bullets of the same caliber when fired from a shorter barrel because of the higher bullet mass... in this case the suppression is full and still effective as only little degradation in performance occures.
But when it comes to fully suppress a weapon that normaly fires bullets that leave the muzzle at two or three times the speed of sound, and I'm speaking about riffles, the performance degradation is severe when subsonic ammunitions are used as a riffle bullet relies more on its velocity to produce energy than on its mass which is usualy low. But if you want to fully supress a rifle, it's at this cost... However there are specialised subsonic ammunitions designed to be used in suppressed rifles, these cartridges like the us Whisper and russian SP cartridges uses a long and heavy bullet with a respectable amount of powder charge, these bullets leave the muzzle at subsonic velocities but can achieve pretty long range and produce a good amount of energy which is more than the energy of most medium handguns loaded to full power ammunitions. But the use of Whisper or SP cartridges in weapons not specialy designed for them requires the change of barrel by a wider one with faster riffling twist, the receiver must be changed too if the case of the Whisper cartridge is bigger than the chamber.
Back to our infiltration weapons, suppression of 9mm submachine guns is not problematic because the subsonic bullet weighs 147 grains and leaves the muzzle at +/- 1000 FPS compared to the M882 that weighs 112 grains and have a muzzle velocity of +/- 1200 FPS, the performances and recoil are roughly the same, even better for the MP5/40 and Mk.23 that are inherently subsonic and then act the same as if they were unsuppressed.
Now in the category of suppressed 5.56mm, the things are diferents... To fully supress a 5.56mm rifle we must use a heavier bullet, loaded with less powder and filler to fill the empty space inside the case and must be capable of cicling the automatic action, this bullet could be 80 grains and leaves the muzzle at 1040 FPS when shot from M16 it has the same amount of energy of a small pistol shooting short 9mm bullets while having more penetration capability, the performances of such a cartridge is not quite up the standard of an assault riffle, but once again... that's the cost of 5.56 full suppression.

When it came to chose through a realistic aproach, I had the choice of using the M855 62 grains supersonic bullet, make a ballistic crack sound and implement it as distant fire sound and far distant fire sound, the rifle will keep all its behaviours and will only benefit of a muzzle flash hider and modified firing sound.
The other choice was to do like we're using 80 grains subsonic bullets which are completely inaudible at mid to long distances, that produce very low recoil, low energy and less range.

My choice was made and it's the second which is in my opinion the best trade-off, this gives meaning to the use of a supressor on 5.56 rifles.
 

keihaswarrior

New Member
Jan 7, 2003
1,376
0
0
41
Seattle
keihaswarrior.home.icq
I have never heard of any kind of subsonic 5.56 ammo used by the military. Frankly, it sounds made up. AFAIK they use the M855 NATO Ball ammo almost exclusively, but I could be wrong I am not a gun expert.

Currently all INF rifles use the regular supersonic ammo, suppressor or no. In order to do what you suggest, you would have to make the magazines not interchangable.