
ExtraToolCustomization
Fixes tool bugs and adds customization for Sentries and Mines.
Date uploaded | 2 months ago |
Version | 1.5.0 |
Download link | Dinorush-ExtraToolCustomization-1.5.0.zip |
Downloads | 1570 |
Dependency string | Dinorush-ExtraToolCustomization-1.5.0 |
This mod requires the following mods to function

BepInEx-BepInExPack_GTFO
BepInEx pack for GTFO. Preconfigured and includes Unity Base DLLs.
Preferred version: 3.2.1README
ExtraToolCustomization
Bug Fixes
All Tools
Fixes tool ammo resetting to 100% when using a tool/picking up sentry with more than 100% ammo. Tools still cannot gain ammo above 100%.
All Sentries
Fixes a bug where sentries that ran out of ammo while firing at a target would fire once immediately when given ammo.
Burst Sentry
Fixes burst sentry behavior. It could previously preserve remaining burst across activations, firing less than expected. Additionally, it had extended lock on time on initial placement or if it had no remaining burst after killing the last enemy in range.
In other words: Burst Sentry has faster initial lock-on time and its first burst is always a full burst. Likely makes Burst Sentry stronger, so use in vanilla at your own risk!
Shotgun Sentry (Requires MTFO)
Allows Sentry_FireTowardsTargetInsteadOfForward
in Archetype data to work on Shotgun Sentries.
Tool Customization (Requires MTFO)
Un-hardcodes Sentry archetype IDs. They are instead determined by GearCategory according to the fire mode defined in PlayerOffline (c:1
):
- 10: SemiArchetype
- 11: AutoArchetype
- 12: BurstArchetype
- 13: SemiArchetype (Shotgun)
Sentries can be customized via custom files under Custom/ExtraToolCustomization/Sentry
. A template file will be generated on game start if no files exist. The files are formatted as lists of data objects. For example, see the base template:
[
{
"ArchetypeID": 0,
"Name": "Sentry Gun",
"BackDamage": false, // Enables/disables back damage for the sentry
"DeployTime": 3, // Time for the sentry to deploy
"ScanDelay": 1.5, // Time for the sentry to begin scanning after deploying or losing a target
"PlacementTime": 0.6, // Time to place the sentry
"PickupTime": 0.6, // Time to pick up the sentry
"ScanColor": "#00895CFF", // Color of the scan beam
"TargetColor": "#F0561AF4" // Color of the scan beam when a target is locked
}
]
Mines can likewise be customized via custom files under Custom/ExtraToolCustomization/Mine
. Base template:
[
{
"OfflineID": 0, // OfflineID can be used for Mine Deployer tools
"ItemID": 0,
"Name": "Mine Deployer",
"Delay": 0.25, // Delay before the mine detonates
"Radius": 2.5, // Radius of the capsule hit detection
"DistanceMin": 3, // Distance within which maximum damage is dealt
"DistanceMax": 15, // Maximum length of the capsule hit detection; distance past which minimum damage is dealt
"DamageMin": 15,
"DamageMax": 50,
"Force": 1000, // Force applied to killed enemies
"PlacementTime": 0.5, // Time to place a mine
"PlacementCooldown": 2, // Time you can't do anything after placing a mine
"PickupTime": 0.5, // Time to pick up a mine
"BeamData": {
"Color": "#FF0000FF", // Color of the beam
"Width": 1, // Width of the beam
"Length": 20 // Length of the beam, affects how far away the mine detects enemies
},
"LightData": {
"Color": "#FF0000FF", // Color of the small blinking light on the mine
"Intensity": 0.03, // Intensity of the light
"Range": 1 // Range/size of the light
}
},
{
"OfflineID": 0,
"ItemID": 0, // Item ID can be used for consumables OR Mine Deployer tools
"Name": "Consumable Mine",
"Delay": 0.25,
"Radius": 2,
"DistanceMin": 2.5,
"DistanceMax": 12,
"DamageMin": 10,
"DamageMax": 35,
"Force": 700,
"PlacementTime": 0.5,
"PlacementCooldown": 2, // Only matters if the mine has more than 1 use
"PickupTime": 0.5, // Has no impact on consumable mines
"BeamData": {
"Color": "#FF0000FF",
"Width": 1,
"Length": 20
},
"LightData": {
"Color": "#FF2020FF", // Consumable mines' lights remain static and do not blink
"Intensity": 0.3,
"Range": 0.8
}
}
]
CHANGELOG
v1.5.0
- Added Sentry field:
- FriendlyDamageMulti: Damage multiplier when hitting friendly players
- Added a bug fix for sentries that ran out of ammo while firing shooting a bullet when given ammo again
- Fixed some cross-plugin issues with customized sentries, especially shotgun sentries
v1.4.2
- Fixed sentry ammo overflowing if given ammo from GtfXP while sentry is deployed.
v1.4.1
- Added a fix to prevent tool ammo from resetting to 100% from any change when above 100%.
v1.4.0
- Added Mine fields:
- BeamData: Contains "Color", "Length", and "Width" fields.
- LightData: Contains "Color", "Intensity", and "Range" fields.
- Added Sentry fields:
- DeployTime: Time it takes for the sentry to deploy.
- ScanDelay: Time it takes for the sentry to begin scanning after deploying or losing a target.
- Note: Also affects the minimum time a sentry remains locked when a target is found.
- PlacementTime: Time it takes to place the sentry.
- PickupTime: Time it takes to pick up the sentry.
- ScanColor: The color of the scan beam.
- TargetColor: The color of the scan beam when a target is locked.
- Added Configuration file with an option to forcibly recreate the template files.
- Fixed Sentry settings not applying
- Fixed mine settings not syncing to clients
v1.3.2
- Fixed consumable mines not being affected by PlacementTime or PlacementCooldown
v1.3.1
- Fixed LiveEdit not functioning for the Mine folder
v1.3.0
- Fixed most custom mine data not applying for clients
v1.2.0
- Sentry custom files now use "ArchetypeID" instead of "OfflineID".
- Fixed client sentry guns dealing no damage.
v1.1.4
- Renamed Mine field:
- PlacementTime -> PlacementCooldown
- Added Mine fields:
- PlacementTime: Time it takes to place a mine.
- PickupTime: Time it takes to pick up a mine.
v1.1.3
- Fixed the error again because I can't read
v1.1.2
- Fixed an error that occurred when there are two customizations for the same itemID
v1.1.1
- Added Mine field:
- PlacementTime: Delay before you can act after placing a mine.
v1.1.0
- Added sentry customization:
- Only option currently is "BackDamage" enabled or disabled.
- Fixed sentry loadout text not pulling from Archetype.
v1.0.0
- Initial Release