This script checks the total number of cartridges, not the ones in the clip. If there are 2 cartridges left in the clip, the weapon will still fire 3 times and the third shot will consume those cartridges that are not loaded currently into the clip.
Yeah, probably. There is no GECK function to measure how many rounds are in the magazine, only the total number of rounds the player has. I figure it's an acceptable break from reality, considering that when you reload, all your ammo gets consolidated into a single pool anyway.
Yes, I am informed about this, which is why I mentioned that this is a JIP function. I just wrote this for anyone who might want to improve on this interesting feature. Here is an example of your script if using JIP:
Spoiler:
Show
scn aaaSCPTBurstFire
short GoBurst float Timer ref Owner int Equipped
Begin OnEquip set Owner to GetContainer set Equipped to 1 End
Begin OnUnequip set Equipped to 0 End
begin OnFire set GoBurst to 1 end
begin GameMode if (Equipped == 0) return endif if (Owner.GetCurrentAmmoRounds >= 3) if (GoBurst > 0) set Timer to (Timer + GetSecondsPassed) if (Timer >= 0.1) Owner.FireWeapon aaaWEAPBurstFire10mmSMG set GoBurst to (GoBurst + 1) set Timer to 0 endif endif if (GoBurst > 2);Number of additional rounds to fire per trigger pull set Timer to 0 set GoBurst to 0 endif else set Timer to 0 set GoBurst to 0 endif end
Great mod! Im trying to replicate what you did, but for the Service rifle, aaaand Im missing something... When I shoot, I shoot a burst-fire version of full auto... I cant get it to stop firing after the burst. I dont know what you did...
You need to add a counter that triggers on each OnFire block and increments by one. Then, you need to run a comparison to see if the incremented number is less than the number of rounds you want to fire per burst (let's say 3). If RoundsFired < 3, then keep shooting. If RoundsFired >= 3, stop shooting. You can look at my script to see how I did it, it might be easier than me trying to explain it.
Not possible with the base-game textures. I'm already using the higher-res "1st Person" versions, but unfortunately, the Fallout 3 weapons have really crappy textures. However, you might be able to find a higher-resolution retexture here on the Nexus.
I know this is an ancient comment, but Millena's standalone 10mm SMG retexture (https://www.nexusmods.com/newvegas/mods/39471?tab=files) actually doesn't change the mesh, so it is fully compatible with this mod. A few of his other retextures don't include mesh replacements and thus are fully compatible with nif-bashed weapons
All my mods are completely vanilla and require no other mods (At most, it might require the DLC). You could copy and paste the weapon's script onto any weapon in the game and give it burst fire.
24 comments
But it's a JIP NVSE function.
scn aaaSCPTBurstFire
short GoBurst
float Timer
ref Owner
int Equipped
Begin OnEquip
set Owner to GetContainer
set Equipped to 1
End
Begin OnUnequip
set Equipped to 0
End
begin OnFire
set GoBurst to 1
end
begin GameMode
if (Equipped == 0)
return
endif
if (Owner.GetCurrentAmmoRounds >= 3)
if (GoBurst > 0)
set Timer to (Timer + GetSecondsPassed)
if (Timer >= 0.1)
Owner.FireWeapon aaaWEAPBurstFire10mmSMG
set GoBurst to (GoBurst + 1)
set Timer to 0
endif
endif
if (GoBurst > 2);Number of additional rounds to fire per trigger pull
set Timer to 0
set GoBurst to 0
endif
else
set Timer to 0
set GoBurst to 0
endif
end
By the way, you make very cool mods.
Im trying to replicate what you did, but for the Service rifle, aaaand Im missing something... When I shoot, I shoot a burst-fire version of full auto... I cant get it to stop firing after the burst. I dont know what you did...