Compare commits

..

60 Commits

Author SHA1 Message Date
Slava
bf74c5b8cf Add new file 2023-08-28 20:56:03 +00:00
Slava
2323000732 Update .gitlab-ci.yml file 2023-08-28 20:53:53 +00:00
Slava
97ca6a23c7 Update .gitlab-ci.yml file 2023-08-28 20:53:32 +00:00
Slava
ccfa671f52 Update .gitlab-ci.yml file 2023-08-28 20:46:03 +00:00
Slava
6e6b3aa8a6 Update .gitlab-ci.yml file 2023-08-28 20:05:28 +00:00
Slava
812a652bed Update .gitlab-ci.yml file 2023-08-28 20:04:11 +00:00
Slava
19e0acdf6d Update .gitlab-ci.yml file 2023-08-28 20:02:19 +00:00
Slava
d21c529591 Update .gitlab-ci.yml file 2023-08-28 19:56:23 +00:00
Slava
7d08a6bdfc Update .gitlab-ci.yml file 2023-08-28 19:54:11 +00:00
Slava
83dddbea1e Update .gitlab-ci.yml file 2023-08-28 19:52:59 +00:00
Slava
8c3ff4993b Update .gitlab-ci.yml file 2023-08-28 19:52:33 +00:00
Slava
34d41c4c5b Update .gitlab-ci.yml file 2023-08-28 19:49:30 +00:00
Slava
efce751464 Update .gitlab-ci.yml file 2023-08-28 19:49:01 +00:00
Slava
02a32a81f2 Update .gitlab-ci.yml file 2023-08-28 19:46:01 +00:00
Slava
90c76900e1 Update .gitlab-ci.yml file 2023-08-28 19:44:10 +00:00
Slava
4cb196b579 Update .gitlab-ci.yml file 2023-08-28 19:43:48 +00:00
Slava
30343d47a0 Update .gitlab-ci.yml file 2023-08-28 19:33:58 +00:00
Slava
7410e3f488 Update .gitlab-ci.yml file 2023-08-28 19:25:56 +00:00
Slava
36434648d6 Update .gitlab-ci.yml file 2023-08-28 19:22:19 +00:00
Slava
42c671c3a7 Update .gitlab-ci.yml file 2023-08-28 19:21:27 +00:00
Slava
aa6c42b840 Update .gitlab-ci.yml file 2023-08-28 18:47:34 +00:00
Slava
92e0636354 Update .gitlab-ci.yml file 2023-08-28 18:40:33 +00:00
Slava
f84cc424b1 Update .gitlab-ci.yml file 2023-08-28 18:39:16 +00:00
Slava
1e11687962 Update .gitlab-ci.yml file 2023-08-28 18:31:56 +00:00
Slava
07a05df171 Update .gitlab-ci.yml file 2023-08-28 18:22:08 +00:00
Slava
4c101287bf Update .gitlab-ci.yml file 2023-08-28 18:21:26 +00:00
Slava
a16f0be550 Update .gitlab-ci.yml file 2023-08-28 18:18:42 +00:00
Slava
6915961e99 Update .gitlab-ci.yml file 2023-08-28 18:16:18 +00:00
Slava
1612ba9195 Update .gitlab-ci.yml file 2023-08-28 18:10:57 +00:00
Slava
44fef51edd Update .gitlab-ci.yml file 2023-08-28 18:08:29 +00:00
Slava
946a585ec7 Update .gitlab-ci.yml file 2023-08-28 18:06:37 +00:00
Slava
cd6210888b Update .gitlab-ci.yml file 2023-08-28 18:05:38 +00:00
Slava
ccf5c37ec8 Update .gitlab-ci.yml file 2023-08-28 18:02:50 +00:00
Slava
0edade93c1 Update .gitlab-ci.yml file 2023-08-28 18:00:00 +00:00
Slava
ce80b62b82 Update .gitlab-ci.yml file 2023-08-28 17:56:48 +00:00
Slava
80d1d57d94 Update .gitlab-ci.yml file 2023-08-28 17:55:38 +00:00
Slava
1d21757453 Update .gitlab-ci.yml file 2023-08-28 17:54:10 +00:00
Slava
4644383c73 Update .gitlab-ci.yml file 2023-08-28 17:52:09 +00:00
Slava
a99b373b25 Update .gitlab-ci.yml file 2023-08-28 17:50:52 +00:00
Slava
7cf0b95477 Update .gitlab-ci.yml file 2023-08-28 17:49:32 +00:00
Slava
ae4e872b74 Update .gitlab-ci.yml file 2023-08-28 17:47:04 +00:00
Slava
4e5f0a0f89 Update .gitlab-ci.yml file 2023-08-28 17:45:14 +00:00
Slava
599872b114 Update .gitlab-ci.yml file 2023-08-28 17:42:46 +00:00
Slava
e11ab2dae5 Update .gitlab-ci.yml file 2023-08-28 17:41:46 +00:00
Slava
d46d044e2d Update .gitlab-ci.yml file 2023-08-28 17:40:01 +00:00
Slava
b81d07eb49 Update .gitlab-ci.yml file 2023-08-28 17:39:25 +00:00
Slava
0f744108b0 Update .gitlab-ci.yml file 2023-08-28 17:37:14 +00:00
Slava
e92fa54cac Update .gitlab-ci.yml file 2023-08-28 17:29:00 +00:00
Slava
c4a48cbed4 Update .gitlab-ci.yml file 2023-08-28 17:27:14 +00:00
Slava
cdabe00195 Update .gitlab-ci.yml file 2023-08-28 17:26:59 +00:00
Slava
60c589fb74 Update .gitlab-ci.yml file 2023-08-28 17:26:12 +00:00
Slava
5024ed74d4 Update .gitlab-ci.yml file 2023-08-28 17:26:00 +00:00
Slava
8f1f252601 Update .gitlab-ci.yml file 2023-08-28 17:25:00 +00:00
Slava
927da67587 Update .gitlab-ci.yml file 2023-08-28 17:24:29 +00:00
Slava
ce4627919f Update .gitlab-ci.yml file 2023-08-28 17:20:56 +00:00
Slava
ee48cf94c5 Update .gitlab-ci.yml file 2023-08-28 17:18:37 +00:00
Slava
3f5c906577 Update .gitlab-ci.yml file 2023-08-28 17:16:16 +00:00
Slava
d6450e63c0 Update .gitlab-ci.yml file 2023-08-28 17:15:32 +00:00
Slava
71e17e719b Update .gitlab-ci.yml file 2023-08-28 17:05:46 +00:00
Slava
d5c9874b2b Update .gitlab-ci.yml file 2023-08-28 17:05:33 +00:00
4 changed files with 225 additions and 221 deletions

View File

@@ -1,28 +1,40 @@
stages: # List of stages for jobs, and their order of execution
stages:
- prepare # List of stages for jobs, and their order of execution
- release
image: python:3.10
release_job:
prepare_job:
stage: prepare
script:
- 'pip install requests'
- 'git clone https://gitlab-ci-token:${CI_JOB_TOKEN}@gl.beaconborn.ru/bacon/translation-generator.git'
- 'python3 translation-generator/main.py $CI_PROJECT_DIR/WPE-2/data/'
- 'ls -al'
- cat test.txt
release_job:
needs:
- prepare_job
stage: release # It only runs when *both* jobs in the test stage complete successfully.
image: registry.gitlab.com/gitlab-org/release-cli:latest
only:
# - if: "$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH"
refs:
- main
- testing
- ^tags
changes:
- ^README.md
- ^CHANGELOG
- ^.gitattribute
- ^.gitignore
- ^.gitlab-ci.yml
- data/**/*
- modinfo.lua
- thumb.png
- test.txt
script:
- echo "Release WPE 2.0_$CI_COMMIT_SHORT_SHA"
- echo "Release WPE 2.0_$CI_COMMIT_SHORT_SHA branch $CI_COMMIT_BRANCH"
release:
tag_name: v2.0.$CI_PIPELINE_IID

View File

@@ -1,12 +1,12 @@
# ========== /mods/WPE2/data/scripts/lib/weapongenerator.lua ==========
#: /mods/WPE2/data/scripts/lib/weapongenerator.lua:
msgctxt "Weapon Name"
msgid "SmartCannon"
msgid "Smart Cannon"
msgstr "Умная пушка"
#: /mods/WPE2/data/scripts/lib/weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "SmartCannon"
msgid "Smart Cannon"
msgstr "Умная пушка"
#: /mods/WPE2/data/scripts/lib/weapongenerator.lua:

View File

@@ -1,210 +1,201 @@
function WeaponGenerator.generateSmartCannon(rand, dps, tech, material, rarity)
local weapon = Weapon()
weapon:setProjectile()
dps = dps * 0.75
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)*2
local existingTime = (reach / speed)*1.2
weapon.fireDelay = fireDelay
weapon.reach = reach
weapon.appearanceSeed = rand:getInt()
weapon.seeker = 1
weapon.appearance = WeaponAppearance.Cannon
weapon.name = "SmartCannon /* Weapon Name*/"%_t
weapon.prefix = "SmartCannon /* Weapon Prefix*/"%_t
weapon.icon = "data/textures/icons/autocannon.png"
weapon.sound = "cannon"
weapon.accuracy = 0.99 - rand:getFloat(0, 0.03)
weapon.damage = damage
weapon.damageType = DamageType.Physical
weapon.impactParticles = ImpactParticles.Explosion
weapon.shieldDamageMultiplicator=1.1 + rarity.value * 0.1
weapon.impactSound = 1
weapon.impactExplosion = true
local specType = rand:getInt(0, 1)
if specType > 0 then
weapon.prefix = "Ionized SmartCannon /* Weapon Prefix*/"%_t
weapon.shieldPenetration = 1
else
weapon.prefix = "SmartCannon /* Weapon Prefix*/"%_t
end
weapon.psize = rand:getFloat(0.2, 0.5)
weapon.pmaximumTime = existingTime
weapon.pvelocity = speed
weapon.pcolor = ColorHSV(rand:getFloat(10, 60), 0.7, 1)
WeaponGenerator.adaptWeapon(rand, weapon, tech, material, rarity)
-- these have to be assigned after the weapon was adjusted since the damage might be changed
weapon.recoil = weapon.damage * 20 * 0.75
weapon.explosionRadius = math.sqrt(weapon.damage * 6)
return weapon
end
generatorFunction[WeaponType.SmartCannon] = WeaponGenerator.generateSmartCannon
function WeaponGenerator.generateHeavyCannon(rand, dps, tech, material, rarity)
local weapon = Weapon()
weapon:setProjectile()
dps = dps * 1.85
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)*1.4
local existingTime = (reach / speed)*1.1
weapon.fireDelay = fireDelay
weapon.reach = reach
weapon.appearanceSeed = rand:getInt()
weapon.appearance = WeaponAppearance.Bolter
weapon.name = "Heavy Cannon /* Weapon Name*/"%_t
weapon.icon = "data/textures/icons/heavycannon.png"
weapon.sound = "cannon"
weapon.accuracy = 0.95 - rand:getFloat(0, 0.02)
weapon.damage = damage
weapon.damageType = DamageType.Physical
weapon.impactParticles = ImpactParticles.Explosion
weapon.impactSound = 1
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
weapon.recoil = weapon.damage * 50
weapon.explosionRadius = math.sqrt(weapon.damage * 7)
return weapon
end
generatorFunction[WeaponType.HeavyCannon] = WeaponGenerator.generateHeavyCannon
function WeaponGenerator.generateDiffuser(rand, dps, tech, material, rarity)
local weapon = Weapon()
weapon:setBeam()
local fireDelay = rand:getFloat(1, 2.5)*0.5
local reach = rand:getFloat(950, 1400)
local damage = dps * fireDelay
weapon.fireDelay = fireDelay
weapon.appearanceSeed = rand:getInt()
weapon.reach = reach
weapon.continuousBeam = false
weapon.appearance = WeaponAppearance.Tesla
weapon.name = "Diffuser /* Weapon Name*/"%_t
weapon.prefix = "Diffuser /* Weapon Prefix*/"%_t
weapon.icon = "data/textures/icons/diffuser.png"
weapon.sound = "railgun"
weapon.accuracy = 0.99 - rand:getFloat(0, 0.02)
weapon.damage = damage
weapon.damageType = DamageType.Energy
weapon.impactParticles = ImpactParticles.Energy
weapon.shieldDamageMultiplicator = 20 + rand:getFloat(0, 4) + rarity.value * 3
weapon.stoneDamageMultiplicator = 0
weapon.hullDamageMultiplicator = 0
weapon.impactSound = 1
weapon.blength = weapon.reach
weapon.bshape = BeamShape.Lightning
weapon.bwidth = 0.5
weapon.bauraWidth = 3
weapon.banimationSpeed = 0
weapon.banimationAcceleration = 0
weapon.bshapeSize = 13
-- shades of blue
weapon.bouterColor = ColorHSV(rand:getFloat(180, 260), rand:getFloat(0.5, 1), rand:getFloat(0.1, 0.5))
weapon.binnerColor = ColorHSV(rand:getFloat(180, 260), rand:getFloat(0.1, 0.5), 1)
WeaponGenerator.adaptWeapon(rand, weapon, tech, material, rarity)
weapon.recoil = weapon.damage * 5
return weapon
end
generatorFunction[WeaponType.Diffuser] = WeaponGenerator.generateDiffuser
function WeaponGenerator.generateHarpoon(rand, dps, tech, material, rarity)
local weapon = Weapon()
weapon:setBeam()
local fireDelay = rand:getFloat(0.2, 0.5)
local reach = rand:getFloat(500, 900)
local damage = dps * fireDelay
weapon.fireDelay = fireDelay
weapon.appearanceSeed = rand:getInt()
weapon.reach = reach
weapon.continuousBeam = true
weapon.appearance = WeaponAppearance.Cannon
weapon.name = "Harpoon /* Weapon Name*/"%_t
weapon.prefix = "Harpoon /* Weapon Prefix*/"%_t
weapon.icon = "data/textures/icons/harpoon.png"
weapon.sound = "cannon"
weapon.accuracy = 0.99 - rand:getFloat(0, 0.02)
weapon.blockPenetration = rand:getInt(0, rarity.value) + 2
weapon.otherForce = -500 * dps * rarity.value
weapon.damage = damage
weapon.damageType = DamageType.Physical
weapon.impactParticles = ImpactParticles.Physical
weapon.shieldDamageMultiplicator = 0.75
weapon.stoneDamageMultiplicator = 1.2
weapon.hullDamageMultiplicator = 1
weapon.impactSound = 1
weapon.blength = weapon.reach
weapon.bshape = BeamShape.Swirly
weapon.bwidth = 0.5
weapon.bauraWidth = 3
weapon.banimationSpeed = 0
weapon.banimationAcceleration = 0
weapon.bshapeSize = 13
-- shades of blue
weapon.bouterColor = ColorHSV(0, 0, rand:getFloat(0.35, 0.65))
weapon.binnerColor = ColorHSV(1, 1, rand:getFloat(0.35, 0.65))
WeaponGenerator.adaptWeapon(rand, weapon, tech, material, rarity)
return weapon
end
generatorFunction[WeaponType.Harpoon] = WeaponGenerator.generateHarpoon
function WeaponGenerator.generateSmartCannon(rand, dps, tech, material, rarity)
local weapon = Weapon()
weapon:setProjectile()
dps = dps * 0.75
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)*2
local existingTime = (reach / speed)*1.2
weapon.fireDelay = fireDelay
weapon.reach = reach
weapon.appearanceSeed = rand:getInt()
weapon.seeker = rand:test(1 / 2)
weapon.appearance = WeaponAppearance.Cannon
weapon.name = "Smart Cannon /* Weapon Name*/"%_t
weapon.prefix = "Smart Cannon /* Weapon Prefix*/"%_t
weapon.icon = "data/textures/icons/autocannon.png"
weapon.sound = "cannon"
weapon.accuracy = 0.99 - rand:getFloat(0, 0.03)
weapon.damage = damage
weapon.damageType = DamageType.Physical
weapon.impactParticles = ImpactParticles.Explosion
weapon.shieldDamageMultiplicator=1.1 + rarity.value * 0.1
weapon.impactSound = 1
weapon.impactExplosion = true
weapon.psize = rand:getFloat(0.2, 0.5)
weapon.pmaximumTime = existingTime
weapon.pvelocity = speed
weapon.pcolor = ColorHSV(rand:getFloat(10, 60), 0.7, 1)
WeaponGenerator.adaptWeapon(rand, weapon, tech, material, rarity)
-- these have to be assigned after the weapon was adjusted since the damage might be changed
weapon.recoil = weapon.damage * 20 * 0.75
weapon.explosionRadius = math.sqrt(weapon.damage * 6)
return weapon
end
generatorFunction[WeaponType.SmartCannon] = WeaponGenerator.generateSmartCannon
function WeaponGenerator.generateHeavyCannon(rand, dps, tech, material, rarity)
local weapon = Weapon()
weapon:setProjectile()
dps = dps * 1.85
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)*1.4
local existingTime = (reach / speed)*1.1
weapon.fireDelay = fireDelay
weapon.reach = reach
weapon.appearanceSeed = rand:getInt()
weapon.appearance = WeaponAppearance.Bolter
weapon.name = "Heavy Cannon /* Weapon Name*/"%_t
weapon.icon = "data/textures/icons/heavycannon.png"
weapon.sound = "cannon"
weapon.accuracy = 0.95 - rand:getFloat(0, 0.02)
weapon.damage = damage
weapon.damageType = DamageType.Physical
weapon.impactParticles = ImpactParticles.Explosion
weapon.impactSound = 1
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
weapon.recoil = weapon.damage * 50
weapon.explosionRadius = math.sqrt(weapon.damage * 7)
return weapon
end
generatorFunction[WeaponType.HeavyCannon] = WeaponGenerator.generateHeavyCannon
function WeaponGenerator.generateDiffuser(rand, dps, tech, material, rarity)
local weapon = Weapon()
weapon:setBeam()
local fireDelay = rand:getFloat(1, 2.5)*0.5
local reach = rand:getFloat(950, 1400)
local damage = dps * fireDelay
weapon.fireDelay = fireDelay
weapon.appearanceSeed = rand:getInt()
weapon.reach = reach
weapon.continuousBeam = false
weapon.appearance = WeaponAppearance.Tesla
weapon.name = "Diffuser /* Weapon Name*/"%_t
weapon.prefix = "Diffuser /* Weapon Prefix*/"%_t
weapon.icon = "data/textures/icons/diffuser.png"
weapon.sound = "railgun"
weapon.accuracy = 0.99 - rand:getFloat(0, 0.02)
weapon.damage = damage
weapon.damageType = DamageType.Energy
weapon.impactParticles = ImpactParticles.Energy
weapon.shieldDamageMultiplicator = 20 + rand:getFloat(0, 4) + rarity.value * 3
weapon.stoneDamageMultiplicator = 0
weapon.hullDamageMultiplicator = 0
weapon.impactSound = 1
weapon.blength = weapon.reach
weapon.bshape = BeamShape.Lightning
weapon.bwidth = 0.5
weapon.bauraWidth = 3
weapon.banimationSpeed = 0
weapon.banimationAcceleration = 0
weapon.bshapeSize = 13
-- shades of blue
weapon.bouterColor = ColorHSV(rand:getFloat(180, 260), rand:getFloat(0.5, 1), rand:getFloat(0.1, 0.5))
weapon.binnerColor = ColorHSV(rand:getFloat(180, 260), rand:getFloat(0.1, 0.5), 1)
WeaponGenerator.adaptWeapon(rand, weapon, tech, material, rarity)
weapon.recoil = weapon.damage * 5
return weapon
end
generatorFunction[WeaponType.Diffuser] = WeaponGenerator.generateDiffuser
function WeaponGenerator.generateHookgun(rand, dps, tech, material, rarity)
local weapon = Weapon()
weapon:setBeam()
local fireDelay = rand:getFloat(0.2, 0.5)
local reach = rand:getFloat(500, 900)
local damage = dps * fireDelay
weapon.fireDelay = fireDelay
weapon.appearanceSeed = rand:getInt()
weapon.reach = reach
weapon.continuousBeam = true
weapon.appearance = WeaponAppearance.Cannon
weapon.name = "Hookgun /* Weapon Name*/"%_t
weapon.prefix = "Hookgun /* Weapon Prefix*/"%_t
weapon.icon = "data/textures/icons/harpoon.png"
weapon.sound = "cannon"
weapon.accuracy = 0.99 - rand:getFloat(0, 0.02)
weapon.blockPenetration = rand:getInt(0, rarity.value) + 2
weapon.otherForce = -500 * dps * rarity.value
weapon.damage = damage
weapon.damageType = DamageType.Physical
weapon.impactParticles = ImpactParticles.Physical
weapon.shieldDamageMultiplicator = 0.75
weapon.stoneDamageMultiplicator = 1.2
weapon.hullDamageMultiplicator = 1
weapon.impactSound = 1
weapon.blength = weapon.reach
weapon.bshape = BeamShape.Swirly
weapon.bwidth = 0.5
weapon.bauraWidth = 3
weapon.banimationSpeed = 0
weapon.banimationAcceleration = 0
weapon.bshapeSize = 13
-- shades of blue
weapon.bouterColor = ColorHSV(0, 0, rand:getFloat(0.35, 0.65))
weapon.binnerColor = ColorHSV(1, 1, rand:getFloat(0.35, 0.65))
WeaponGenerator.adaptWeapon(rand, weapon, tech, material, rarity)
return weapon
end
generatorFunction[WeaponType.Hookgun] = WeaponGenerator.generateHookgun

1
test.txt Normal file
View File

@@ -0,0 +1 @@