0 of 0

File information

Last updated

Original upload

Created by

AmaccurzerO

Uploaded by

DevvEloper

Virus scan

Safe to use

Tags for this mod

About this mod

Dismantle Turrets redone to fix issues and bugs. Also, FO3 version of Dismantle Turrets ported to TTW from scratch.

Requirements
Permissions and credits
Changelogs
[WHAT]

This is a REDUX version for NV Detachable Ceiling Turrets from AmaccurzerO, which fixes an issue the original mod had: 

  • The weapon fires every frame of the game, regardless of game time multiplier setting. This means the turret fires excesively fast, and keeps that fast even in the few slow-motion gameplay (like VATS).

This problem made the weapon too overpowered, able to kill a supermutant overlord in 3 seconds. Now that's fixed.
Also, I've made a TTW version of the mod, which also includes the usable Alien Turrets from the FO3 version of the mod.

Here's a showcase of the issue, the fix, and the Alien Turret:




[COMPATIBILITY]

This mod should be compatible with everything which doesn't add new scripts to placed ceiling turrets, or edit scripts for ceiling turrets which already had one.

For patching mods which do that, go see [PATCHING] section.

[INSTALLATION]

It is recommended to use a mod manager like MO2.

FOR NEW VEGAS:
  • Download and install the original NV mod (required for the assets!).
  • Donwload and install this mod, FNV version. Let it overwrite the original mod.

FOR TALE OF TWO WASTELANDS:
  • Download and install the original FO3 mod (required for the assets!). IMPORTANT: delete or hide the .esp inside it.
  • Download and install this mod, TTW version.

[HOW]

The issue was caused by the fact the turrets were designed to work without ammo. Instead, they function continuously until they run out of "health". To achieve this, AmaccurzerO went for the obvious approach: literally not attaching any kind of ammo to the turret.

However, for some reason, this causes the problem mentioned in the [WHAT] section: the fire rate is not attached to any kind of game time pacing, thus is attached to frame rate. I don't know why this happens. However, I do know that the problem is essentially that the weapon doesn't have set an ammunition.

I have theories about this problem having something to do with the utilities FNV requires today to work properly (Tick Fix, Heap Replacer, Engine Optimizations, etc), not in a sense that those utilities broke anything, but in a sense that weapons without ammo set (like these turrets) essentially cause this kind of behavior.

In any case, I approached for a different solution: the turret has set a new custom ammo, but this ammo is not consumed by the weapon, is non-playable, is hidden, and is added to, equipped to and removed from the player via scripting, so the ammo is active only while wielding the weapon.

The gameplay of the turrets is kept as is: they last around a minute being fired before they are destroyed, and can be acquired from any source of ceiling turrets.

[PATCHING]

The mod proudly uses modified, or either new, scripts for ceiling turrets, accounting for their deactivated state (which essentially is "unconscious" state, in the game matters). Since some mod could want to add new ceiling turrets or modify some of the vanilla ones, here's the code to include in the scripting for those turrets:

For ballistic ceiling turrets:

Spoiler:  
Show
ref TurretRef
short button
Begin OnActivate
 set TurretRef to getself
    if (IsActionRef player == 1) && (TurretRef.getunconscious == 1)
          showmessage TTTxMessage
       else
          activate
   endif
END
Begin MenuMode
set TurretRef to getself
    set button to getbuttonpressed
    
     if (button == 1)
       TurretRef.moveto TTTxDumpCellMarker
            TurretRef.killactor
            player.additem TTTxTurretMinigun 1
        endif
      if (button == 0)
     activate
    endif
END


For alien ceiling turrets:
Spoiler:  
Show
ref TurretRef
short button
Begin OnActivate
 set TurretRef to getself
    if (IsActionRef player == 1) && (TurretRef.getunconscious == 1)
          showmessage TTTxMessageAlien
       else
          activate
   endif
END
Begin MenuMode
set TurretRef to getself
    set button to getbuttonpressed
    
     if (button == 1)
       TurretRef.moveto TTTxDumpCellMarker
            TurretRef.killactor
            player.additem TTTxTurretAlien 1
        endif
      if (button == 0)
     activate
    endif
END


You shall add this code anywhere in the proper turret script.


[CREDITS]

All credits go to AmaccurzerO. The original mod, the assets, the idea, the implementation, all go to him. I'm just a little code hoarder.