Long Range Turret 2.0


Fill the gap between gun turrets and lasers with this powerful sniper turret — now with high-damage physical ammunition!

Content
9 days ago
2.0
1.09K
Combat

Changelog

Version: 2.3.6
Date: 2026-04-18
  Compatibility:
    - Fixed compatibility with Krastorio2 Spaced Out "More Realistic Weapons" (confirmed root cause)
    - Previous attempts incorrectly assumed K2 patches LR ammo_type directly; it does not
    - Actual cause: K2SO replaces vanilla "bullet" rifle ammo (firearm-magazine,
      piercing-rounds-magazine, kr-rifle-magazine, etc.) with physical projectile
      delivery at max_range = 30 tiles; LR turret has range 55+, so these bullets
      expire mid-flight and hit the ground
    - Fix: data-final-fixes.lua now iterates all "bullet"-category ammo items and
      raises max_range to turret_range * 1.25 on any projectile delivery that is
      shorter than the turret range; activates only when kr-realistic-weapons is on
    - lead_target_for_projectile_speed set to 3.15 (K2SO rifle speed 3.0 + 5% margin)
      on lr-gun-turret so it correctly leads moving targets with physical projectiles
Version: 2.3.5
Date: 2026-04-18
  Compatibility:
    - Reverted ammo category back to "bullet" so turret accepts vanilla magazines again
    - Version 2.3.4 broke this by introducing a dedicated "lr-bullet" category:
      the turret only accepted one category, so firearm/piercing/uranium rounds
      could no longer be inserted
    - New approach: ammo stays as "bullet", but data-final-fixes.lua runs after K2 MRW
      and fully restores the original instant delivery on all three LR ammo items,
      overwriting whatever K2 had set; this means LR bullets are again hitscan and
      reach the full 55-tile range regardless of K2 MRW being active
    - lead_target_for_projectile_speed patch for lr-gun-turret retained (K2 patches
      gun-turret but not lr-gun-turret, so moving targets are still led correctly)
Version: 2.3.3
Date: 2026-04-18
  Compatibility:
    - Fixed compatibility with Krastorio2 "More Realistic Weapons" (MRW) setting
    - K2 MRW converts all "bullet"-category ammo to physical projectiles with finite
      flight range, calibrated for vanilla turret ranges (~18-22 tiles); LR turret
      fires at 55+ tiles, causing bullets to expire mid-flight and hit the ground
    - Added data-final-fixes.lua that runs after K2 has rewritten ammo prototypes:
      patches max_range on all LR ammo projectile deliveries to turret_range * 1.25
    - Added lead_target_for_projectile_speed to turret attack_parameters when K2 MRW
      is detected, so the turret correctly leads moving targets with physical projectiles
    - Fix is non-destructive: activates only when K2 MRW has converted ammo to
      projectile delivery; vanilla (hitscan) behavior is unchanged without K2
Version: 2.3.2
Date: 2026-04-18
  Bug Fixes:
    - Fixed ammo action causing turret to shoot at the ground instead of the target
    - Fixed other turrets stopping to fire when LR turret acquired a target
    - Root cause: make_ammo_type() used two separate "direct" action blocks; the second
      block applied target_effects relative to the source (shooter), not the hit entity,
      causing projectiles to resolve damage at the turret position (ground) and
      incorrectly interfering with neighboring turret targeting
    - Fix: merged both action blocks into a single "direct" action with one
      action_delivery containing both source_effects (muzzle flash) and
      target_effects (damage + hit explosion)
Version: 2.3.1
Date: 2026-03-24
  Balance:
    - Removed area (AoE/explosion) damage from all LR ammo tiers
    - All ammo now deals purely physical damage on direct hit
    - T1 (LR Rounds): 7 physical damage (was 3 phys + 4 explosion)
    - T2 (LR Piercing Rounds): 14 physical damage (was 6 phys + 8 explosion)
    - T3 (LR Uranium Rounds): 38 physical damage (was 18 phys + 20 explosion)
    - Total damage values preserved; only damage type changed
  Locale:
    - Updated EN/RU item names: removed "Explosive" prefix, added "LR" prefix
    - Updated EN/RU item descriptions to reflect physical-only damage
    - Updated EN/RU technology names and descriptions accordingly
    - Updated Factoriopedia description to remove AoE references
  Documentation:
    - Updated FAQ.md: removed all AoE references, updated ammo tier table
    - Updated README.md: updated ammo table, removed AoE mentions
    - Updated MOD_PORTAL_DESCRIPTION.md: updated ammo table, removed AoE mentions
  Code:
    - Simplified make_explosive_ammo_type() into make_ammo_type(): removed area action block
    - Removed explosion_damage and explosion_radius parameters
    - Updated inline comments to reflect physical-only design
Version: 2.3.0
Date: 2026-03-08
  Features:
    - Added 3 tiers of explosive rounds with area damage:
      - Explosive Rounds Magazine (firearm + coal → 5 phys + 8 explosion, radius 2.5)
      - Explosive Piercing Rounds Magazine (piercing + coal → 8 phys + 14 explosion, radius 3.0)
      - Explosive Uranium Rounds Magazine (uranium + coal → 24 phys + 28 explosion, radius 3.5)
    - Added 3 new technologies unlocking explosive ammo tiers
    - Added physical and fire resistances to the turret (mid-tier survivability)
    - Added Factoriopedia description with strategy tips and details (EN/RU)
    - Added dynamic entity tooltip showing actual settings values (range, HP, damage, cooldown)
    - Added is_military_target flag for proper enemy targeting priority
    - Added inventory move/pick/drop sounds matching base game turrets (Factorio 2.0 item_sounds)
  Optimization:
    - Shared attack animation instance between prepared_animation and attacking_animation
    - Refactored animation helpers into local closures
    - Added LuaDoc annotations to constants module
  Bug Fixes:
    - Fixed icon_size: explicitly set to match actual icon file dimensions
    - Fixed item subgroup: changed from "defensive-structure" to "turret"
    - Added nil-safety for tech.effects in technology modification loop
  Locale:
    - Full EN/RU localization for all 3 ammo tiers (names, descriptions)
    - Full EN/RU localization for 3 new technologies
    - Dynamic entity description with actual setting values
    - Factoriopedia extended description with strategy guide
  Cleanup:
    - Removed unused gun-turret-research_old.png
Version: 2.2.1
Date: 2025-01-31
  Bug Fixes:
    - Fixed turret animation bug: frame_count now fixed at 2 for attack animations
    - Removed variable frame_count parameter that caused incorrect turret orientation
Version: 2.2.0
Date: 2025-01-31
  Features:
    - Added mod settings to customize turret parameters:
      - Range (30-100 tiles, default 55)
      - Minimum range (0-20 tiles, default 5)
      - Health (400-2000 HP, default 1000)
      - Damage modifier (1.0-3.0x, default 1.6)
      - Cooldown (10-60 ticks, default 30)
  Optimization:
    - Refactored code with centralized constants module (lr_constants.lua)
    - Reduced code duplication in animation definitions
    - Optimized migration script with loop-based tech scanning
  Locale:
    - Added setting descriptions in English and Russian
  Changes:
    - Improved code organization and maintainability
Version: 2.1.0
Date: 2025-01-13
  Bug Fixes:
    - Fixed animation loading errors by correctly specifying HR sprite dimensions and paths
    - Fixed turret orientation issue in prepared state
    - Fixed shadow alignment with corrected shift values
  Changes:
    - Adjusted preparing_speed, folding_speed, folded_state_timeout, cooldown
    - Implemented stripes definition for multi-file sprite sheets
Version: 2.0.0
Date: 2025-01-11
  Major Features:
    - Ported to Factorio 2.0
  Changes:
    - Updated all prototypes to 2.0 format
    - Removed deprecated hr_version, icon_mipmaps, axially_symmetrical
    - Updated recipe/sound/technology formats for 2.0
    - Added Russian localization
Version: 1.1.2
Date: 2020-01-01
  Info:
    - Original version by ComputerComa for Factorio 1.1
    - Based on original mod by Yehn