More Balance

This commit is contained in:
bacon
2023-08-23 23:52:30 +03:00
parent 58c11a20c4
commit 30c46b7028
6 changed files with 44 additions and 29 deletions

View File

@@ -114,7 +114,8 @@ function TurretGenerator.generateHeavyCannonTurret(rand, dps, tech, material, ra
-- generate turret
local requiredCrew = TurretGenerator.dpsToRequiredCrew(dps)
local crew = Crew()
crew:add(requiredCrew, CrewMan(CrewProfessionType.Gunner))
crew:add(requiredCrew*2, CrewMan(CrewProfessionType.Gunner))
crew:add(requiredCrew, CrewMan(CrewProfessionType.Repair))
result.crew = crew
-- generate weapons

View File

@@ -7,8 +7,8 @@ function WeaponGenerator.generateAutoCannon(rand, dps, tech, material, rarity)
local fireDelay = rand:getFloat(1.5, 2.5)*0.5
local reach = rand:getFloat(1100, 1500)*0.7
local damage = dps * fireDelay
local speed = rand:getFloat(300, 400)*1.5
local existingTime = (reach / speed)*1.1
local speed = rand:getFloat(300, 400)*2
local existingTime = (reach / speed)*1.2
weapon.fireDelay = fireDelay
weapon.reach = reach
@@ -50,10 +50,10 @@ function WeaponGenerator.generateHeavyCannon(rand, dps, tech, material, rarity)
weapon:setProjectile()
dps = dps * 1.85
local fireDelay = rand:getFloat(1.5, 2.5)*1.8
local reach = rand:getFloat(1100, 1500)*0.5
local fireDelay = rand:getFloat(1.5, 2.0)*1.7
local reach = rand:getFloat(1100, 1500)*1.2
local damage = dps * fireDelay
local speed = rand:getFloat(600, 1000)
local speed = rand:getFloat(600, 1000)*1.4
local existingTime = (reach / speed)*1.1
weapon.fireDelay = fireDelay
@@ -61,10 +61,9 @@ function WeaponGenerator.generateHeavyCannon(rand, dps, tech, material, rarity)
weapon.appearanceSeed = rand:getInt()
weapon.appearance = WeaponAppearance.Bolter
weapon.name = "Heavy Cannon /* Weapon Name*/"%_t
weapon.prefix = "Heavy Cannon /* Weapon Prefix*/"%_t
weapon.icon = "data/textures/icons/heavycannon.png"
weapon.sound = "cannon"
weapon.accuracy = 0.89 - rand:getFloat(0, 0.03)
weapon.accuracy = 0.95 - rand:getFloat(0, 0.02)
weapon.damage = damage
weapon.damageType = DamageType.Physical
@@ -73,11 +72,21 @@ function WeaponGenerator.generateHeavyCannon(rand, dps, tech, material, rarity)
weapon.impactExplosion = true
weapon.otherForce = dps*math.max(1, rarity.value)*89*5
weapon.psize = rand:getFloat(0.2, 0.5)
weapon.pmaximumTime = existingTime
weapon.pvelocity = speed
weapon.pcolor = ColorHSV(rand:getFloat(10, 60), 0.7, 1)
local Pen = rand:getInt(0, rarity.value)
if Pen > 0 then
weapon.blockPenetration = Pen
weapon.prefix = "Cumulative Heavy Cannon /* Weapon Prefix*/"%_T
else
weapon.prefix = "Heavy Cannon /* Weapon Prefix*/"%_T
end
WeaponGenerator.adaptWeapon(rand, weapon, tech, material, rarity)
-- these have to be assigned after the weapon was adjusted since the damage might be changed