Compare commits

..

32 Commits

Author SHA1 Message Date
Alex
32fc8f43ea Update 3 files
- /data/scripts/lib/weapongenerator.lua
- /data/scripts/lib/turretgenerator.lua
- /data/scripts/lib/turretingredients.lua
2023-09-02 18:19:34 +00:00
Weblate Admin
b7351d174a Translated using Weblate (Russian)
Currently translated at 59.2% (16 of 27 strings)

Translation: WPE-2/ru
2023-09-02 07:30:17 +00:00
Weblate Admin
f4ca4afa45 Added translation using Weblate (Russian) 2023-09-01 03:33:57 +00:00
Alex
863e00a5d0 Update file weapongenerator.lua 2023-08-30 20:17:50 +00:00
Alex
f258093ca3 Update file weapongenerator.lua 2023-08-30 19:19:23 +00:00
Slava
a0a45906a1 Delete ru.po 2023-08-30 18:40:03 +00:00
Alex
0a3f032d56 Update file turretgenerator.lua 2023-08-30 18:37:08 +00:00
Alex
e531517104 Update file turretgenerator.lua 2023-08-30 18:30:44 +00:00
Alex
c2d09f1cc2 Update file turretgenerator.lua 2023-08-30 18:22:54 +00:00
Alex
c232b70341 Update 5 files
- /data/scripts/lib/inventoryitemprice.lua
- /data/scripts/lib/galaxy.lua
- /data/scripts/lib/turretingredients.lua
- /data/scripts/lib/weapongenerator.lua
- /data/scripts/lib/turretgenerator.lua
2023-08-30 18:21:10 +00:00
Alex
f7d95dab9d Update file turretgenerator.lua 2023-08-30 06:41:01 +00:00
Weblate
fa2efb38ff Merge branch 'origin/main' into Weblate. 2023-08-29 23:10:52 +00:00
Weblate Admin
0dc950077d Translated using Weblate (Russian)
Currently translated at 100.0% (27 of 27 strings)

Translation: WPE-2/ru
Translate-URL: http://weblate.beaconborn.ru/projects/wpe-2/ru/ru/
2023-08-29 23:10:51 +00:00
Weblate Admin
b2f7d58187 Translated using Weblate (Russian)
Currently translated at 100.0% (27 of 27 strings)

Translation: WPE-2/ru
Translate-URL: http://weblate.beaconborn.ru/projects/wpe-2/ru/ru/
2023-08-29 23:08:58 +00:00
Weblate Admin
425e3fc101 Translated using Weblate (Russian)
Currently translated at 100.0% (27 of 27 strings)

Translation: WPE-2/ru
Translate-URL: http://weblate.beaconborn.ru/projects/wpe-2/ru/ru/
2023-08-29 23:06:18 +00:00
Slava
ad6bcf30dc Update file ru.po 2023-08-29 21:38:15 +00:00
Weblate Admin
b35cfba58e Translated using Weblate (Russian)
Currently translated at 100.0% (27 of 27 strings)

Translation: WPE-2/ru
Translate-URL: http://weblate.beaconborn.ru/projects/wpe-2/ru/ru/
2023-08-29 21:28:43 +00:00
Weblate Admin
899f3702c7 Translated using Weblate (Russian)
Currently translated at 100.0% (27 of 27 strings)

Translation: WPE-2/ru
Translate-URL: http://weblate.beaconborn.ru/projects/wpe-2/ru/ru/
2023-08-29 21:08:14 +00:00
Weblate Admin
cfdb5e445d Translated using Weblate (Russian)
Currently translated at 100.0% (27 of 27 strings)

Translation: WPE-2/ru
Translate-URL: http://weblate.beaconborn.ru/projects/wpe-2/ru/ru/
2023-08-29 21:02:10 +00:00
Slava
de517a1b5b Update 2 files
- /data/localization/template.pot
- /data/localization/ru.po
2023-08-29 20:52:08 +00:00
Slava
b5036334b1 Update 3 files
- /data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua
- /data/localization/ru.po
- /data/localization/template.pot
2023-08-29 20:48:31 +00:00
Slava
385608bb7a Update 3 files
- /data/localization/template.pot
- /data/localization/ru.po
- /data/scripts/lib/turretgenerator.lua
2023-08-29 19:21:40 +00:00
Slava
357d46cd1f Reset Translate 2023-08-29 19:03:58 +00:00
Slava
3cd1e2d575 Add translation template file 2023-08-29 15:31:29 +00:00
Alex
9111bf856e Update 2 files
- /data/scripts/lib/weapongenerator.lua
- /data/scripts/lib/turretgenerator.lua
2023-08-29 15:11:13 +00:00
bacon
f74138d77b changed main 2023-08-29 02:06:55 +03:00
Slava
cbcc5ae680 Update file .gitattributes 2023-08-28 21:01:26 +00:00
Alex
fc351d2555 Update 2 files
- /data/textures/icons/hive.png
- /data/textures/icons/hivelauncher.png
2023-08-28 20:08:36 +00:00
Alex
e90ff8f1e2 Update file weapongenerator.lua 2023-08-28 20:08:13 +00:00
Alex
13a688edb3 Update 2 files
- /data/scripts/lib/turretgenerator.lua
- /data/scripts/lib/weapongenerator.lua
2023-08-28 20:07:43 +00:00
Slava
0880b82677 Update 6 files
- /data/scripts/lib/galaxy.lua
- /data/scripts/lib/inventoryitemprice.lua
- /data/scripts/lib/turretgenerator.lua
- /data/scripts/lib/turretingredients.lua
- /data/scripts/lib/weapongenerator.lua
- /data/scripts/lib/weapontype.lua
2023-08-28 18:50:20 +00:00
bacon
050a642982 - retexture 2023-08-28 01:09:23 +03:00
13 changed files with 739 additions and 432 deletions

2
.gitattributes vendored
View File

@@ -4,4 +4,4 @@ CHANGELOG export-ignore
.gitlab-ci.yml export-ignore .gitlab-ci.yml export-ignore
.git export-ignore .git export-ignore
.vs export-ignore .vs export-ignore
.gitignore exsport-ignore .gitignore export-ignore

View File

@@ -1,153 +1,151 @@
# ========== C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/turretgenerator.lua ========== msgid ""
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/turretgenerator.lua: msgstr "Project-Id-Version: PACKAGE VERSION\nReport-Msgid-Bugs-To: \nPOT-Creation-Date: 2023-09-01 03:33+0000\nPO-Revision-Date: 2023-09-02 07:30+0000\nLast-Translator: Weblate Admin <beaconborn@yandex.ru>\nLanguage-Team: Russian <http://weblate.beaconborn.ru/projects/wpe-2/ru/ru/>\nLanguage: ru\nMIME-Version: 1.0\nContent-Type: text/plain; charset=UTF-8\nContent-Transfer-Encoding: 8bit\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\nX-Generator: Weblate 5.0\n"
# ========== \data\scripts\lib\turretgenerator.lua ==========
#: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name" msgctxt "weapon name"
msgid "SmartCannon" msgid "SmartCannon"
msgstr ""
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/turretgenerator.lua:
msgctxt "Weapon Prefix"
msgid "Ionized"
msgstr ""
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/turretgenerator.lua:
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "SmartCannon"
msgstr "Умная пушка" msgstr "Умная пушка"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/turretgenerator.lua: #: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name"
msgid "Ionized SmartCannon"
msgstr "Ионизирущая умная пушка"
#: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name" msgctxt "weapon name"
msgid "Heavy Cannon" msgid "Heavy Cannon"
msgstr "" msgstr "Тяжелое орудие"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/turretgenerator.lua: #: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name" msgctxt "weapon name"
msgid "Diffusor" msgid "Cumulative Heavy Cannon"
msgstr "" msgstr "Кумулятивная тяжелая пушка"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/turretgenerator.lua: #: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name"
msgid "Diffuser"
msgstr "Диффузор"
#: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name" msgctxt "weapon name"
msgid "Hookgun" msgid "Hookgun"
msgstr "" msgstr "Гарпун"
#: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name"
msgid "HiveLauncher"
msgstr "Роевая ракетная установка"
# ========== C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapongenerator.lua ========== # ========== \data\scripts\lib\weapongenerator.lua ==========
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapongenerator.lua: #: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Name" msgctxt "Weapon Name"
msgid "SmartCannon" msgid "SmartCannon"
msgstr "Умная пушка" msgstr "Умная пушка"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapongenerator.lua: #: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "SmartCannon"
msgstr "Умная пушка"
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Name" msgctxt "Weapon Name"
msgid "Heavy Cannon" msgid "Heavy Cannon"
msgstr "Тяжелая Пушка" msgstr "Тяжелое орудие"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapongenerator.lua: #: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "Cumulative"
msgstr ""
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "Heavy Cannon"
msgstr "Тяжелая Пушка"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapongenerator.lua:
msgctxt "Weapon Name" msgctxt "Weapon Name"
msgid "Diffuser" msgid "Diffuser"
msgstr "Диффузор" msgstr "Диффузор"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapongenerator.lua: #: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Prefix" msgctxt "Weapon Prefix"
msgid "Diffuser" msgid "Diffuser"
msgstr "Диффузор" msgstr "Диффузор"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapongenerator.lua: #: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Name" msgctxt "Weapon Name"
msgid "Harpoon"
msgstr ""
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "Harpoon"
msgstr ""
# ========== C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapontype.lua ==========
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapontype.lua:
msgctxt "Weapon Type"
msgid "Smart Сannon"
msgstr ""
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapontype.lua:
msgctxt "Weapon Type"
msgid "Heavy Cannon"
msgstr "Тяжелая Пушка"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapontype.lua:
msgctxt "Weapon Type"
msgid "Diffuser"
msgstr "Диффузор"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/lib/weapontype.lua:
msgctxt "Weapon Type"
msgid "Hookgun" msgid "Hookgun"
msgstr "" msgstr "Гарпун"
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "Hookgun"
msgstr "Гарпун"
# ========== C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua ========== #: \data\scripts\lib\weapongenerator.lua:
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua: msgctxt "Weapon Name"
msgid "HiveLauncher"
msgstr "Роевая ракетная установка"
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "HiveLauncher"
msgstr "Роевая ракетная установка"
# ========== \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua ==========
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
#, fuzzy
msgctxt ""
msgid "WPE Turrets" msgid "WPE Turrets"
msgstr "Расширенный пак оружия" msgstr "WPE Турели"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua: #: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
#, fuzzy
msgctxt ""
msgid "Intro" msgid "Intro"
msgstr "Вступление" msgstr "Вступление"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua: #: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
#, fuzzy
msgctxt ""
msgid "In this part of the encyclopedia you will find a description of the turrets from the Weapon Pack Extended mod.\n\nI recommend using turret models from the collection in the workshop." msgid "In this part of the encyclopedia you will find a description of the turrets from the Weapon Pack Extended mod.\n\nI recommend using turret models from the collection in the workshop."
msgstr "В этой части энциклопедии вы найдете описание турелей из мода Weapon Pack Extended. \n\nЯ рекомендую использовать модели турелей из коллекции в мастерской" msgstr "В этой части энциклопедии вы найдете описание турелей из мода Weapon Pack Extended.nnЯ рекомендую использовать модели турелей из коллекции в мастерской."
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua: #: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgid "Autocannon" #, fuzzy
msgstr "Автопушка" msgctxt ""
msgid "SmartCannon"
msgstr "Умная пушка"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua: #: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
#, fuzzy
msgctxt ""
msgid "A lightweight version of the classic cannon.\n\nCompared to conventional cannons:\n+ Increased rate of fire (x2)\n+ Increased projectile speed (x1.5)\n+ A little more damage on the shield (10% - 15%)\n+ Can be equipped with homing missiles.\n- Less damage (x0.75)\n- Shorter damage range (x0.8)" msgid "A lightweight version of the classic cannon.\n\nCompared to conventional cannons:\n+ Increased rate of fire (x2)\n+ Increased projectile speed (x1.5)\n+ A little more damage on the shield (10% - 15%)\n+ Can be equipped with homing missiles.\n- Less damage (x0.75)\n- Shorter damage range (x0.8)"
msgstr "Облегченная версия классической пушки.\n\о сравнению с обычными пушками:\n+ Увеличенная скорострельность (x2)\n+ Увеличенная скорость полета снаряда (x1.5)\n+ Немного больший урон по щиту (10% - 15%)\n+ Может оснащаться самонаводящимися ракетами.\n- Меньший урон (x0.75)\n- Меньшая дальность поражения (x0.8)." msgstr "Облегченный вариант классической пушки.nо сравнению с обычными пушками:\\n+ Увеличенная скорострельность (x2)\\n+ Увеличенная скорость полета снаряда (x1,5)\\n+ Немного больше урон по щиту (10% - 15%)\\n+ Может быть оснащена самонаводящимися ракетами.\\n- Меньший урон (x0,75)\\n- Меньшая дальность поражения (x0,8)"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua: #: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
#, fuzzy
msgctxt ""
msgid "Heavy Cannon" msgid "Heavy Cannon"
msgstr "Тяжелая Пушка" msgstr "Тяжелое орудие"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua: #: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
#, fuzzy
msgctxt ""
msgid "The cannon of the main caliber. It shoots with heavy explosive shells, the hit of which can displace the enemy ship.\n\n+ High damage\n+ High projectile speed\n+ When hit, push the opponent\n+ Also can have a penetration\n- Low rate of fire\n- Occupies many slots\n- Big size\n- Requires more crew" msgid "The cannon of the main caliber. It shoots with heavy explosive shells, the hit of which can displace the enemy ship.\n\n+ High damage\n+ High projectile speed\n+ When hit, push the opponent\n+ Also can have a penetration\n- Low rate of fire\n- Occupies many slots\n- Big size\n- Requires more crew"
msgstr "Пушка главного калибра. Стреляет тяжелыми разрывными снарядами, попадание которых может смести вражеский корабль.\n\n+ Высокий урон\n+ Высокая скорость снаряда\n+ При попадании в цель толкает противника\n+ Также может иметь пробитие\n- Низкая скорострельность\n- Занимает много слотов\n- Большие размеры\n- Требует больше экипажа" msgstr "Пушка главного калибра. Стреляет тяжелыми разрывными снарядами, попадание которых может смести корабль противника.\\n\\n+ Высокий урон\\n+ Высокая скорость полета снаряда\\n+ При попадании толкает противника\\n+ Также может иметь пробитие\\n- Низкая скорострельность\\n- Занимает много слотов\\n- Большие размеры\\n- Требуется больше экипажа"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua: #: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
#, fuzzy
msgctxt ""
msgid "Energy diffuser" msgid "Energy diffuser"
msgstr "Энегретический диффузор" msgstr "Энегретический диффузор"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua: #: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
#, fuzzy
msgctxt ""
msgid "Short range combat weapon. Does not cause damage to the hull, but extremely effectively destroys shields. Requires civil slots.\n\nShield Damage x20" msgid "Short range combat weapon. Does not cause damage to the hull, but extremely effectively destroys shields. Requires civil slots.\n\nShield Damage x20"
msgstr "Боевое оружие малой дальности. Не наносит повреждений корпусу, но чрезвычайно эффективно разрушает щиты. Требует гражданских слотов.\n\nУрон по щитам x20" msgstr "Боевое оружие малой дальности. Не наносит повреждений корпусу, но чрезвычайно эффективно разрушает щиты. Требует гражданских слотов.\\n\\nУрон по щитам x20"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua: #: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
#, fuzzy
msgctxt ""
msgid "Hookgun" msgid "Hookgun"
msgstr "" msgstr "Гарпун"
#: C:/Users/riksl/AppData/Roaming/Avorion/mods/WPE2/data/scripts/player/ui/encyclopedia/chapters/wpeturrets.lua: #: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
#, fuzzy
msgctxt ""
msgid "Short range combat weapon. Does not cause damage to the shield, but extremely effectively to attrac. Requires 2 gunners slots.\n May have penetration\n" msgid "Short range combat weapon. Does not cause damage to the shield, but extremely effectively to attrac. Requires 2 gunners slots.\n May have penetration\n"
msgstr "" msgstr "Боевое оружие малой дальности. Не наносит урона щиту, но чрезвычайно эффективно для атак. Требует 2 слота для стрелков.nМожет иметь проникающую способность\n"
# ========== old ==========
# msgctxt "Weapon Type"
# msgid "Auto Сannon"
# msgstr "Автопушка"
# msgctxt "Weapon Prefix"
# msgid "Cumulative Heavy Cannon"
# msgstr "Кумулятивная тяжелая пушка"

View File

@@ -0,0 +1,138 @@
# ========== \data\scripts\lib\turretgenerator.lua ==========
#: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name"
msgid "SmartCannon"
msgstr ""
#: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name"
msgid "Ionized SmartCannon"
msgstr ""
#: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name"
msgid "Heavy Cannon"
msgstr ""
#: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name"
msgid "Cumulative Heavy Cannon"
msgstr ""
#: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name"
msgid "Diffuser"
msgstr ""
#: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name"
msgid "Hookgun"
msgstr ""
#: \data\scripts\lib\turretgenerator.lua:
msgctxt "weapon name"
msgid "HiveLauncher"
msgstr ""
# ========== \data\scripts\lib\weapongenerator.lua ==========
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Name"
msgid "SmartCannon"
msgstr ""
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "SmartCannon"
msgstr ""
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Name"
msgid "Heavy Cannon"
msgstr ""
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Name"
msgid "Diffuser"
msgstr ""
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "Diffuser"
msgstr ""
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Name"
msgid "Hookgun"
msgstr ""
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "Hookgun"
msgstr ""
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Name"
msgid "HiveLauncher"
msgstr ""
#: \data\scripts\lib\weapongenerator.lua:
msgctxt "Weapon Prefix"
msgid "HiveLauncher"
msgstr ""
# ========== \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua ==========
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgctxt ""
msgid "WPE Turrets"
msgstr ""
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgctxt ""
msgid "Intro"
msgstr ""
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgctxt ""
msgid "In this part of the encyclopedia you will find a description of the turrets from the Weapon Pack Extended mod.\n\nI recommend using turret models from the collection in the workshop."
msgstr ""
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgctxt ""
msgid "SmartCannon"
msgstr ""
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgctxt ""
msgid "A lightweight version of the classic cannon.\n\nCompared to conventional cannons:\n+ Increased rate of fire (x2)\n+ Increased projectile speed (x1.5)\n+ A little more damage on the shield (10% - 15%)\n+ Can be equipped with homing missiles.\n- Less damage (x0.75)\n- Shorter damage range (x0.8)"
msgstr ""
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgctxt ""
msgid "Heavy Cannon"
msgstr ""
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgctxt ""
msgid "The cannon of the main caliber. It shoots with heavy explosive shells, the hit of which can displace the enemy ship.\n\n+ High damage\n+ High projectile speed\n+ When hit, push the opponent\n+ Also can have a penetration\n- Low rate of fire\n- Occupies many slots\n- Big size\n- Requires more crew"
msgstr ""
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgctxt ""
msgid "Energy diffuser"
msgstr ""
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgctxt ""
msgid "Short range combat weapon. Does not cause damage to the hull, but extremely effectively destroys shields. Requires civil slots.\n\nShield Damage x20"
msgstr ""
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgctxt ""
msgid "Hookgun"
msgstr ""
#: \data\scripts\player\ui\encyclopedia\chapters\wpeturrets.lua:
msgctxt ""
msgid "Short range combat weapon. Does not cause damage to the shield, but extremely effectively to attrac. Requires 2 gunners slots.\n May have penetration\n"
msgstr ""

View File

@@ -1,5 +1,6 @@
weaponProbabilities[WeaponType.SmartCannon] = {d = 0.65, p = 2.0} weaponProbabilities[WeaponType.SmartCannon] = {d = 0.65, p = 2.0}
weaponProbabilities[WeaponType.HeavyCannon] = {d = 0.6, p = 1.0} weaponProbabilities[WeaponType.HeavyCannon] = {d = 0.65, p = 2.0}
weaponProbabilities[WeaponType.Diffuser] = {d = 0.6, p = 1.0} weaponProbabilities[WeaponType.Diffuser] = {d = 0.55, p = 1.0}
weaponProbabilities[WeaponType.Hookgun] = {d = 0.6, p = 1.0} weaponProbabilities[WeaponType.Hookgun] = {d = 0.55, p = 1.0}
weaponProbabilities[WeaponType.HiveLauncher] = {d = 0.6, p = 1.0}

View File

@@ -1,5 +1,6 @@
valueWeights[WeaponType.SmartCannon ] = 2 valueWeights[WeaponType.SmartCannon ] = 1.5
valueWeights[WeaponType.HeavyCannon ] = 2.5 valueWeights[WeaponType.HeavyCannon ] = 1.5
valueWeights[WeaponType.Diffuser ] = 1.7 valueWeights[WeaponType.Diffuser ] = 2
valueWeights[WeaponType.Hookgun ] = 1.5 valueWeights[WeaponType.Hookgun ] = 1.5
valueWeights[WeaponType.HiveLauncher] = 1.5

View File

@@ -1,266 +1,375 @@
scales[WeaponType.SmartCannon] = { scales[WeaponType.SmartCannon] = {
{from = 0, to = 28, size = 1.0, usedSlots = 2}, {from = 0, to = 28, size = 1.0, usedSlots = 2},
{from = 29, to = 38, size = 2.0, usedSlots = 3}, {from = 29, to = 38, size = 1,5, usedSlots = 3},
{from = 39, to = 49, size = 3.0, usedSlots = 4}, {from = 39, to = 49, size = 2.0, usedSlots = 4},
--dummy for cooaxial, add 1 to size and level --dummy for cooaxial, add 1 to size and level
{from = 50, to = 52, size = 4.0, usedSlots = 5}, {from = 50, to = 52, size = 4.0, usedSlots = 5},
} }
scales[WeaponType.HeavyCannon] = { scales[WeaponType.HeavyCannon] = {
{from = 0, to = 28, size = 3.0, usedSlots = 4}, {from = 0, to = 28, size = 3.0, usedSlots = 4},
{from = 29, to = 38, size = 4.0, usedSlots = 5}, {from = 29, to = 38, size = 4.0, usedSlots = 5},
{from = 39, to = 49, size = 5.0, usedSlots = 6}, {from = 39, to = 49, size = 5.0, usedSlots = 6},
--dummy for cooaxial, add 1 to size and level --dummy for cooaxial, add 1 to size and level
{from = 50, to = 52, size = 5, usedSlots = 6}, {from = 50, to = 52, size = 6, usedSlots = 6},
} }
scales[WeaponType.Diffuser] = { scales[WeaponType.Diffuser] = {
{from = 0, to = 46, size = 1.0, usedSlots = 2}, {from = 0, to = 46, size = 1.0, usedSlots = 2},
{from = 47, to = 50, size = 2.0, usedSlots = 4}, {from = 47, to = 50, size = 2.0, usedSlots = 4},
--dummy for cooaxial, add 1 to size and level --dummy for cooaxial, add 1 to size and level
{from = 51, to = 52, size = 3.0, usedSlots = 6}, {from = 51, to = 52, size = 3.0, usedSlots = 6},
} }
scales[WeaponType.Hookgun] = { scales[WeaponType.Hookgun] = {
{from = 0, to = 46, size = 1.0, usedSlots = 2}, {from = 0, to = 46, size = 1.0, usedSlots = 2},
{from = 47, to = 50, size = 2.0, usedSlots = 4}, {from = 47, to = 50, size = 2.0, usedSlots = 4},
--dummy for cooaxial, add 1 to size and level --dummy for cooaxial, add 1 to size and level
{from = 51, to = 52, size = 3.0, usedSlots = 6}, {from = 51, to = 52, size = 4.0, usedSlots = 6},
} }
if GameVersion() >= Version(0, 31, 0) then scales[WeaponType.HiveLauncher] = {
possibleSpecialties[WeaponType.SmartCannon] = { {from = 0, to = 32, size = 1.0, usedSlots = 2},
{specialty = Specialty.HighDamage, probability = 0.2}, {from = 33, to = 40, size = 1.5, usedSlots = 3},
{specialty = Specialty.HighFireRate, probability = 0.3}, {from = 41, to = 50, size = 2.0, usedSlots = 4},
{specialty = Specialty.HighRange, probability = 0.7}, --dummy for cooaxial, add 1 to size and level
-- {specialty = Specialty.HighHullDamage, probability = 0.5}, {from = 51, to = 52, size = 3.0, usedSlots = 6},
-- {specialty = Specialty.LessCoolingTime, probability = 0.4}, }
}
else if GameVersion() >= Version(0, 31, 0) then
possibleSpecialties[WeaponType.SmartCannon] = { possibleSpecialties[WeaponType.SmartCannon] = {
Specialty.HighDamage, {specialty = Specialty.HighDamage, probability = 0.2},
Specialty.HighFireRate, {specialty = Specialty.HighFireRate, probability = 0.3},
Specialty.HighRange, {specialty = Specialty.HighRange, probability = 0.7},
Specialty.HighHullDamage, }
Specialty.LessCoolingTime, else
} possibleSpecialties[WeaponType.SmartCannon] = {
end Specialty.HighDamage,
Specialty.HighFireRate,
if GameVersion() >= Version(0, 31, 0) then Specialty.HighRange,
possibleSpecialties[WeaponType.HeavyCannon] = { Specialty.HighHullDamage,
{specialty = Specialty.HighDamage, probability = 0.2}, Specialty.LessCoolingTime,
{specialty = Specialty.HighRange, probability = 0.35}, }
{specialty = Specialty.HighFireRate, probability = 0.3}, end
-- {specialty = Specialty.HighHullDamage, probability = 0.2},
-- {specialty = Specialty.HighShieldDamage, probability = 0.2}, if GameVersion() >= Version(0, 31, 0) then
-- {specialty = Specialty.LessCoolingTime, probability = 0.2} possibleSpecialties[WeaponType.HeavyCannon] = {
} {specialty = Specialty.HighDamage, probability = 0.2},
else {specialty = Specialty.HighRange, probability = 0.35},
possibleSpecialties[WeaponType.HeavyCannon] = { {specialty = Specialty.HighFireRate, probability = 0.3},
Specialty.HighDamage, }
Specialty.HighFireRate, else
Specialty.HighRange, possibleSpecialties[WeaponType.HeavyCannon] = {
Specialty.HighHullDamage, Specialty.HighDamage,
Specialty.HighShieldDamage, Specialty.HighFireRate,
Specialty.LessCoolingTime, Specialty.HighRange,
} Specialty.HighHullDamage,
end Specialty.HighShieldDamage,
Specialty.LessCoolingTime,
if GameVersion() >= Version(0, 31, 0) then }
possibleSpecialties[WeaponType.Diffuser] = { end
{specialty = Specialty.HighDamage, probability = 0.3},
{specialty = Specialty.HighRange, probability = 0.3}, if GameVersion() >= Version(0, 31, 0) then
-- {specialty = Specialty.FasterRechargeTime, probability = 0.6}, possibleSpecialties[WeaponType.Diffuser] = {
} {specialty = Specialty.HighDamage, probability = 0.3},
else {specialty = Specialty.HighRange, probability = 0.3},
possibleSpecialties[WeaponType.Diffuser] = { }
Specialty.HighDamage, else
Specialty.HighRange, possibleSpecialties[WeaponType.Diffuser] = {
Specialty.FasterRechargeTime, Specialty.HighDamage,
} Specialty.HighRange,
end Specialty.FasterRechargeTime,
}
if GameVersion() >= Version(0, 31, 0) then end
possibleSpecialties[WeaponType.Hookgun] = {
{specialty = Specialty.HighDamage, probability = 0.3}, if GameVersion() >= Version(0, 31, 0) then
{specialty = Specialty.HighRange, probability = 0.3}, possibleSpecialties[WeaponType.Hookgun] = {
-- {specialty = Specialty.FasterRechargeTime, probability = 0.6}, {specialty = Specialty.HighDamage, probability = 0.3},
} {specialty = Specialty.HighRange, probability = 0.3},
else }
possibleSpecialties[WeaponType.Hookgun] = { else
Specialty.HighDamage, possibleSpecialties[WeaponType.Hookgun] = {
Specialty.HighRange, Specialty.HighDamage,
Specialty.FasterRechargeTime, Specialty.HighRange,
} Specialty.FasterRechargeTime,
end }
end
function TurretGenerator.generateSmartCannonTurret(rand, dps, tech, material, rarity)
local result = TurretTemplate() if GameVersion() >= Version(0, 31, 0) then
possibleSpecialties[WeaponType.HiveLauncher] = {
-- generate turret {specialty = Specialty.HighShootingTime, probability = 0.2},
local requiredCrew = TurretGenerator.dpsToRequiredCrew(dps) {specialty = Specialty.HighDamage, probability = 0.15},
local crew = Crew() {specialty = Specialty.HighFireRate, probability = 0.15},
crew:add(requiredCrew, CrewMan(CrewProfessionType.Gunner)) {specialty = Specialty.HighRange, probability = 0.25},
result.crew = crew {specialty = Specialty.BurstFire, probability = 0.1},
}
-- generate weapons else
local numWeapons = rand:getInt(1, 4) possibleSpecialties[WeaponType.HiveLauncher] = {
Specialty.HighDamage,
local weapon = WeaponGenerator.generateSmartCannon(rand, dps, tech, material, rarity) Specialty.HighRange,
weapon.fireDelay = weapon.fireDelay * numWeapons Specialty.FasterRechargeTime,
}
-- attach weapons to turret end
TurretGenerator.attachWeapons(rand, result, weapon, numWeapons)
-- ===========================================================================================================================================================
local shootingTime = 25 * rand:getFloat(0.8, 1.2) function TurretGenerator.generateSmartCannonTurret(rand, dps, tech, material, rarity)
local coolingTime = 15 * rand:getFloat(0.8, 1.2) local result = TurretTemplate()
TurretGenerator.createStandardCooling(result, coolingTime, shootingTime)
-- generate turret
TurretGenerator.scale(rand, result, WeaponType.SmartCannon, tech, 0.6) local requiredCrew = TurretGenerator.dpsToRequiredCrew(dps)
local specialties = TurretGenerator.addSpecialties(rand, result, WeaponType.SmartCannon) local crew = Crew()
crew:add(requiredCrew, CrewMan(CrewProfessionType.Gunner))
result.slotType = TurretSlotType.Armed result.crew = crew
result:updateStaticStats()
-- generate weapons
local name = "SmartCannon /* weapon name*/"%_T local numWeapons = rand:getInt(1, 4)
local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Physical) local weapon = WeaponGenerator.generateSmartCannon(rand, dps, tech, material, rarity)
weapon.fireDelay = weapon.fireDelay * numWeapons
result.title = Format("%1%%2%%3%%4%%5%%6%%7% /* [outer-adjective][barrel][coax][dmg-adjective][multishot][name][serial], e.g. Enduring Dual Coaxial Plasmatic Tri-R-Mining Laser T-F */"%_T, outerAdjective, barrel, coax, dmgAdjective, multishot, name, serial)
local specType = 1 local specType = rand:getInt(0, 2)
if specType > 0 then if specType == 1 then
weapon.prefix = "Ionized /* Weapon Prefix*/"%_t weapon.shieldPenetration = 1
weapon.shieldPenetration = 1 elseif specType == 2 then
end weapon.damageType = DamageType.Plasma
weapon.damage = weapon.damage * 0.9
return result end
end
-- attach weapons to turret
generatorFunction[WeaponType.SmartCannon] = TurretGenerator.generateSmartCannonTurret TurretGenerator.attachWeapons(rand, result, weapon, numWeapons)
local shootingTime = 25 * rand:getFloat(0.8, 1.2)
function TurretGenerator.generateHeavyCannonTurret(rand, dps, tech, material, rarity) local coolingTime = 15 * rand:getFloat(0.8, 1.2)
local result = TurretTemplate() TurretGenerator.createStandardCooling(result, coolingTime, shootingTime)
-- generate turret TurretGenerator.scale(rand, result, WeaponType.SmartCannon, tech, 0.6)
local requiredCrew = TurretGenerator.dpsToRequiredCrew(dps) local specialties = TurretGenerator.addSpecialties(rand, result, WeaponType.SmartCannon)
local crew = Crew()
crew:add(requiredCrew*2, CrewMan(CrewProfessionType.Gunner)) result.slotType = TurretSlotType.Armed
crew:add(requiredCrew, CrewMan(CrewProfessionType.Repair)) result:updateStaticStats()
result.crew = crew
local name = "Smart-Cannon /* weapon name*/"%_T
-- generate weapons local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Physical)
local numWeapons = rand:getInt(1, 4) if specType == 1 then
outerAdjective = "Ionized "%_T
local weapon = WeaponGenerator.generateHeavyCannon(rand, dps, tech, material, rarity) elseif specType == 2 then
weapon.fireDelay = weapon.fireDelay * numWeapons outerAdjective = "Plasmed "%_T
weapon.damage = weapon.damage * 0.9
-- attach weapons to turret end
TurretGenerator.attachWeapons(rand, result, weapon, numWeapons) result.title = Format("%1%%2%%3%%4%%5%%6%%7% /* [outer-adjective][barrel][coax][dmg-adjective][multishot][name][serial] */"%_T, outerAdjective, barrel, coax, dmgAdjective, multishot, name, serial)
local shootingTime = 25 * rand:getFloat(0.8, 1.2) return result
local coolingTime = 20 * rand:getFloat(0.8, 1.2) end
TurretGenerator.createStandardCooling(result, coolingTime, shootingTime)
generatorFunction[WeaponType.SmartCannon] = TurretGenerator.generateSmartCannonTurret
TurretGenerator.scale(rand, result, WeaponType.HeavyCannon, tech, 0.6)
local specialties = TurretGenerator.addSpecialties(rand, result, WeaponType.HeavyCannon)
-- ===========================================================================================================================================================
result.slotType = TurretSlotType.Armed function TurretGenerator.generateHeavyCannonTurret(rand, dps, tech, material, rarity)
result:updateStaticStats() local result = TurretTemplate()
local name = "Heavy Cannon /* weapon name*/"%_T -- generate turret
local requiredCrew = TurretGenerator.dpsToRequiredCrew(dps)
local Pen = rand:getInt(0, rarity.value) local crew = Crew()
if Pen > 0 then crew:add(requiredCrew * 3, CrewMan(CrewProfessionType.Gunner))
weapon.blockPenetration = Pen crew:add(requiredCrew, CrewMan(CrewProfessionType.Repair))
weapon.prefix = "Cumulative /* Weapon Prefix*/"%_t result.crew = crew
end
-- generate weapons
local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Physical) local numWeapons = rand:getInt(1, 4)
result.title = Format("%1%%2%%3%%4%%5%%6%%7% /* [outer-adjective][barrel][coax][dmg-adjective][multishot][name][serial], e.g. Enduring Dual Coaxial Plasmatic Tri-R-Mining Laser T-F */"%_T, outerAdjective, barrel, coax, dmgAdjective, multishot, name, serial)
local weapon = WeaponGenerator.generateHeavyCannon(rand, dps, tech, material, rarity)
return result weapon.fireDelay = weapon.fireDelay * numWeapons
end
local Pen = rand:getInt(0, rarity.value)
generatorFunction[WeaponType.HeavyCannon] = TurretGenerator.generateHeavyCannonTurret if Pen > 0 then
weapon.blockPenetration = Pen
outerAdjective = "Cumulative "%_T
function TurretGenerator.generateDiffuserTurret(rand, dps, tech, material, rarity) end
local result = TurretTemplate()
-- attach weapons to turret
-- generate turret TurretGenerator.attachWeapons(rand, result, weapon, numWeapons)
local requiredCrew = TurretGenerator.dpsToRequiredCrew(dps)
local crew = Crew() local shootingTime = 25 * rand:getFloat(0.8, 1.2)
crew:add(requiredCrew, CrewMan(CrewProfessionType.Gunner)) local coolingTime = 20 * rand:getFloat(0.8, 1.2)
result.crew = crew TurretGenerator.createStandardCooling(result, coolingTime, shootingTime)
-- generate weapons TurretGenerator.scale(rand, result, WeaponType.HeavyCannon, tech, 0.6)
local numWeapons = rand:getInt(1, 2) local specialties = TurretGenerator.addSpecialties(rand, result, WeaponType.HeavyCannon)
local weapon = WeaponGenerator.generateDiffuser(rand, dps, tech, material, rarity) result.slotType = TurretSlotType.Armed
weapon.damage = weapon.damage / numWeapons result:updateStaticStats()
-- attach weapons to turret local name = "Heavy Cannon /* weapon name*/"%_T
TurretGenerator.attachWeapons(rand, result, weapon, numWeapons)
local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Physical)
local rechargeTime = 20 * rand:getFloat(0.8, 1.2)
local shootingTime = 15 * rand:getFloat(0.8, 1.2) if result.size >= 4 then
TurretGenerator.createBatteryChargeCooling(result, rechargeTime, shootingTime) name = "Mass Driver /* weapon name*/"%_T
weapom.speed = weapon.speed * 2
weapon.reach = weapon.reach * 1.2
TurretGenerator.scale(rand, result, WeaponType.Diffuser, tech, 0.75) end
local specialties = TurretGenerator.addSpecialties(rand, result, WeaponType.Diffuser)
if result.size >= 5 then
result.slotType = TurretSlotType.Armed name = "Mass Warper /* weapon name*/"%_T
result:updateStaticStats() weapom.speed = weapon.speed * 2
weapon.reach = weapon.reach * 1.5
local name = "Diffusor /* weapon name*/"%_T end
local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Energy) result.title = Format("%1%%2%%3%%4%%5%%6%%7% /* [outer-adjective][barrel][coax][dmg-adjective][multishot][name][serial] */"%_T, outerAdjective, barrel, coax, dmgAdjective, multishot, name, serial)
result.title = Format("%1%%2%%3%%4%%5%%6%%7% /* [outer-adjective][barrel][coax][dmg-adjective][multishot][name][serial], e.g. Enduring Dual Coaxial Plasmatic Tri-R-Mining Laser T-F */"%_T, outerAdjective, barrel, coax, dmgAdjective, multishot, name, serial)
return result
return result end
end
generatorFunction[WeaponType.HeavyCannon] = TurretGenerator.generateHeavyCannonTurret
generatorFunction[WeaponType.Diffuser] = TurretGenerator.generateDiffuserTurret
-- ===========================================================================================================================================================
function TurretGenerator.generateHookgunTurret(rand, dps, tech, material, rarity) function TurretGenerator.generateDiffuserTurret(rand, dps, tech, material, rarity)
local result = TurretTemplate() local result = TurretTemplate()
-- generate turret -- generate turret
local requiredCrew = TurretGenerator.dpsToRequiredCrew(dps) local requiredCrew = TurretGenerator.dpsToRequiredCrew(dps)
local crew = Crew() local crew = Crew()
crew:add(requiredCrew*2, CrewMan(CrewProfessionType.Gunner)) crew:add(requiredCrew, CrewMan(CrewProfessionType.Gunner))
result.crew = crew result.crew = crew
-- generate weapons -- generate weapons
local numWeapons = rand:getInt(1, 2) local numWeapons = rand:getInt(1, 2)
local weapon = WeaponGenerator.generateHookgun(rand, dps, tech, material, rarity) local weapon = WeaponGenerator.generateDiffuser(rand, dps, tech, material, rarity)
weapon.damage = weapon.damage / numWeapons weapon.damage = weapon.damage / numWeapons
-- attach weapons to turret -- attach weapons to turret
TurretGenerator.attachWeapons(rand, result, weapon, numWeapons) TurretGenerator.attachWeapons(rand, result, weapon, numWeapons)
local rechargeTime = 4 * rand:getFloat(0.8, 1.2) local rechargeTime = 20 * rand:getFloat(0.8, 1.2)
local shootingTime = 2 * rand:getFloat(0.8, 1.2) local shootingTime = 15 * rand:getFloat(0.8, 1.2)
TurretGenerator.createBatteryChargeCooling(result, rechargeTime, shootingTime) TurretGenerator.createBatteryChargeCooling(result, rechargeTime, shootingTime)
TurretGenerator.scale(rand, result, WeaponType.Hookgun, tech, 0.75) TurretGenerator.scale(rand, result, WeaponType.Diffuser, tech, 0.75)
local specialties = TurretGenerator.addSpecialties(rand, result, WeaponType.Hookgun) local specialties = TurretGenerator.addSpecialties(rand, result, WeaponType.Diffuser)
result.slotType = TurretSlotType.Armed result.slotType = TurretSlotType.Armed
result:updateStaticStats() result:updateStaticStats()
local name = "Hookgun /* weapon name*/"%_T local name = "Diffuser /* weapon name*/"%_T
local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Physical) local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Energy)
result.title = Format("%1%%2%%3%%4%%5%%6%%7% /* [outer-adjective][barrel][coax][dmg-adjective][multishot][name][serial], e.g. Enduring Dual Coaxial Plasmatic Tri-R-Mining Laser T-F */"%_T, outerAdjective, barrel, coax, dmgAdjective, multishot, name, serial) result.title = Format("%1%%2%%3%%4%%5%%6%%7% /* [outer-adjective][barrel][coax][dmg-adjective][multishot][name][serial] */"%_T, outerAdjective, barrel, coax, dmgAdjective, multishot, name, serial)
return result return result
end end
generatorFunction[WeaponType.Hookgun] = TurretGenerator.generateHookgunTurret generatorFunction[WeaponType.Diffuser] = TurretGenerator.generateDiffuserTurret
-- ===========================================================================================================================================================
function TurretGenerator.generateHookgunTurret(rand, dps, tech, material, rarity)
local result = TurretTemplate()
-- generate turret
local requiredCrew = TurretGenerator.dpsToRequiredCrew(dps)
local crew = Crew()
crew:add(requiredCrew*2, CrewMan(CrewProfessionType.Gunner))
result.crew = crew
-- generate weapons
local numWeapons = rand:getInt(1, 2)
local weapon = WeaponGenerator.generateHookgun(rand, dps, tech, material, rarity)
weapon.damage = weapon.damage / numWeapons
local spec = rand(0.5)
if spec then
weapon.holdingForce = weapon.otherForce * 2
weapon.otherForce = 0
end
-- attach weapons to turret
TurretGenerator.attachWeapons(rand, result, weapon, numWeapons)
local rechargeTime = 4 * rand:getFloat(0.8, 1.2)
local shootingTime = 2 * rand:getFloat(0.8, 1.2)
TurretGenerator.createBatteryChargeCooling(result, rechargeTime, shootingTime)
TurretGenerator.scale(rand, result, WeaponType.Hookgun, tech, 0.75)
local specialties = TurretGenerator.addSpecialties(rand, result, WeaponType.Hookgun)
result.slotType = TurretSlotType.Armed
result:updateStaticStats()
local name = "Hookgun /* weapon name*/"%_T
local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Physical)
if spec then
outerAdjective = "Stabilizing"%_T
end
result.title = Format("%1%%2%%3%%4%%5%%6%%7% /* [outer-adjective][barrel][coax][dmg-adjective][multishot][name][serial] */"%_T, outerAdjective, barrel, coax, dmgAdjective, multishot, name, serial)
return result
end
generatorFunction[WeaponType.Hookgun] = TurretGenerator.generateHookgunTurret
-- ===========================================================================================================================================================
function TurretGenerator.generateHiveLauncherTurret(rand, dps, tech, material, rarity)
local result = TurretTemplate()
-- generate turret
local requiredCrew = TurretGenerator.dpsToRequiredCrew(dps)
local crew = Crew()
crew:add(requiredCrew*2, CrewMan(CrewProfessionType.Gunner))
result.crew = crew
-- generate weapons
local numWeapons = rand:getInt(1, 2)
local weapon = WeaponGenerator.generateHiveLauncher(rand, dps, tech, material, rarity)
weapon.damage = weapon.damage / numWeapons
-- attach weapons to turret
local positions = {}
if rand:getBool() then
table.insert(positions, vec3(0, 0.3, 0))
else
table.insert(positions, vec3(0.4, 0.3, 0))
table.insert(positions, vec3(-0.4, 0.3, 0))
end
-- attach
for _, position in pairs(positions) do
weapon.localPosition = position * result.size
result:addWeapon(weapon)
end
local shootingTime = 20 * rand:getFloat(0.8, 1.2)
local coolingTime = 15 * rand:getFloat(0.8, 1.2)
TurretGenerator.createStandardCooling(result, coolingTime, shootingTime)
TurretGenerator.scale(rand, result, WeaponType.RocketLauncher, tech, 0.6, coaxialAllowed)
local specialties = TurretGenerator.addSpecialties(rand, result, WeaponType.RocketLauncher)
result.slotType = TurretSlotType.Armed
result:updateStaticStats()
local name = "Hive-Launcher /* weapon name*/"%_T
if weapon.shotsFired > 20 then
name = "Swarm-Launcher /* weapon name*/"%_T
end
local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Physical)
multishot = ""%_T
result.title = Format("%1%%2%%3%%4%%5%%6%%7% /* [outer-adjective][barrel][coax][dmg-adjective][multishot][name][serial] */"%_T, outerAdjective, barrel, coax, dmgAdjective, multishot, name, serial)
return result
end
generatorFunction[WeaponType.HiveLauncher] = TurretGenerator.generateHiveLauncherTurret

View File

@@ -1,45 +1,51 @@
TurretIngredients[WeaponType.SmartCannon] = TurretIngredients[WeaponType.SmartCannon] =
{ {
{name = "Servo", amount = 15, investable = 10, minimum = 5, weaponStat = "fireRate", investFactor = 1.0, changeType = StatChanges.Percentage}, {name = "Servo", amount = 15, investable = 10, minimum = 5, weaponStat = "fireRate", investFactor = 1.0, changeType = StatChanges.Percentage},
{name = "Warhead", amount = 5, investable = 6, minimum = 1, weaponStat = "damage", }, {name = "Processor", amount = 5, investable = 6, minimum = 1, weaponStat = "damage", },
{name = "High Pressure Tube", amount = 2, investable = 6, minimum = 1, weaponStat = "reach", }, {name = "High Pressure Tube", amount = 2, investable = 6, minimum = 1, weaponStat = "reach", investFactor = 1.5, changeType = StatChanges.Percentage},
{name = "Ammunition M", amount = 2, investable = 4, minimum = 1, weaponStat = "damage", investFactor = 0.5,}, {name = "Ammunition M", amount = 2, investable = 4, minimum = 1, weaponStat = "damage", investFactor = 1, changeType = StatChanges.Percentage},
{name = "Targeting Card", amount = 3, investable = 3, minimum = 0, weaponStat = "seeker", investFactor = 1, changeType = StatChanges.Flat}, {name = "Targeting Card", amount = 3, investable = 3, minimum = 0, weaponStat = "seeker", investFactor = 1, changeType = StatChanges.Flat},
{name = "Steel", amount = 8, investable = 10, minimum = 3,}, {name = "Steel", amount = 8, investable = 10, minimum = 3,},
{name = "Steel Tube", amount = 5, investable = 10, minimum = 3,}, {name = "Steel Tube", amount = 5, investable = 10, minimum = 3,},
-- {name = "Targeting System", amount = 0, investable = 2, minimum = 0, turretStat = "automatic", investFactor = 1, changeType = StatChanges.Flat}, }
}
TurretIngredients[WeaponType.HeavyCannon] =
TurretIngredients[WeaponType.HeavyCannon] = {
{ {name = "Servo", amount = 8, investable = 8, minimum = 4, weaponStat = "fireRate", investFactor = 1.0, changeType = StatChanges.Percentage},
{name = "Servo", amount = 8, investable = 8, minimum = 4, weaponStat = "fireRate", investFactor = 1.0, changeType = StatChanges.Percentage}, {name = "Explosive Charge", amount = 5, investable = 6, minimum = 1, weaponStat = "damage", },
{name = "Warhead", amount = 5, investable = 6, minimum = 1, weaponStat = "damage", }, {name = "High Pressure Tube", amount = 2, investable = 6, minimum = 1, weaponStat = "reach", },
{name = "High Pressure Tube", amount = 2, investable = 6, minimum = 1, weaponStat = "reach", }, {name = "Ammunition L", amount = 5, investable = 10, minimum = 3, weaponStat = "damage", investFactor = 0.2,},
{name = "Ammunition", amount = 5, investable = 10, minimum = 3, weaponStat = "damage", investFactor = 0.2,}, {name = "Steel", amount = 20, investable = 10, minimum = 20,},
{name = "Steel", amount = 20, investable = 10, minimum = 20,}, {name = "Metal Plate", amount = 8, investable = 10, minimum = 10,},
{name = "Metal Plate", amount = 8, investable = 10, minimum = 10,}, }
-- {name = "Targeting System", amount = 0, investable = 2, minimum = 0, turretStat = "automatic", investFactor = 1, changeType = StatChanges.Flat},
} TurretIngredients[WeaponType.Diffuser] =
{
TurretIngredients[WeaponType.Diffuser] = {name = "Plasma Cell", amount = 10, investable = 10, minimum = 10, weaponStat = "fireRate", investFactor = 1.0, changeType = StatChanges.Percentage},
{ {name = "High Capacity Lens", amount = 5, investable = 6, minimum = 1, weaponStat = "reach", },
{name = "Plasma Cell", amount = 10, investable = 10, minimum = 10, weaponStat = "fireRate", investFactor = 1.0, changeType = StatChanges.Percentage}, {name = "Industrial Tesla Coil",amount = 2, investable = 6, minimum = 1, weaponStat = "damage", },
{name = "High Capacity Lens", amount = 5, investable = 6, minimum = 1, weaponStat = "reach", }, {name = "Steel", amount = 20, investable = 0, minimum = 20,},
{name = "Energy Tube", amount = 2, investable = 6, minimum = 1, weaponStat = "damage", }, {name = "Copper", amount = 10, investable = 0, minimum = 10,},
{name = "Steel", amount = 20, investable = 0, minimum = 20,}, {name = "Silver", amount = 5, investable = 0, minimum = 5,},
{name = "Copper", amount = 10, investable = 0, minimum = 10,}, }
{name = "Silver", amount = 5, investable = 0, minimum = 5,},
-- {name = "Targeting System", amount = 0, investable = 2, minimum = 0, turretStat = "automatic", investFactor = 1, changeType = StatChanges.Flat}, TurretIngredients[WeaponType.Hookgun] =
} {
{name = "Force Generator", amount = 10, investable = 10, minimum = 10, weaponStat = "fireRate", investFactor = 1.0, changeType = StatChanges.Percentage},
TurretIngredients[WeaponType.Hookgun] = {name = "Energy Tube", amount = 5, investable = 6, minimum = 1, weaponStat = "reach", },
{ {name = "Power Unit", amount = 2, investable = 6, minimum = 1, weaponStat = "damage", },
{name = "Plasma Cell", amount = 10, investable = 10, minimum = 10, weaponStat = "fireRate", investFactor = 1.0, changeType = StatChanges.Percentage}, {name = "Steel", amount = 20, investable = 0, minimum = 20,},
{name = "High Capacity Lens", amount = 5, investable = 6, minimum = 1, weaponStat = "reach", }, {name = "Conductor", amount = 10, investable = 0, minimum = 10,},
{name = "Energy Tube", amount = 2, investable = 6, minimum = 1, weaponStat = "damage", }, }
{name = "Steel", amount = 20, investable = 0, minimum = 20,},
{name = "Copper", amount = 10, investable = 0, minimum = 10,}, TurretIngredients[WeaponType.HiveLauncher] =
{name = "Silver", amount = 5, investable = 0, minimum = 5,}, {
-- {name = "Targeting System", amount = 0, investable = 2, minimum = 0, turretStat = "automatic", investFactor = 1, changeType = StatChanges.Flat}, {name = "Servo", amount = 15, investable = 10, minimum = 5, weaponStat = "fireRate", investFactor = 1.0, changeType = StatChanges.Percentage},
} {name = "Rocket", amount = 15, investable = 10, minimum = 15, weaponStat = "damage", investFactor = 0.2, changeType = StatChanges.Percentage},
{name = "High Pressure Tube", amount = 6, investable = 12, minimum = 1, weaponStat = "reach", investFactor = 0.4, changeType = StatChanges.Percentage},
{name = "Fuel", amount = 6, investable = 12, minimum = 1, weaponStat = "reach", investFactor = 0.5, changeType = StatChanges.Percentage},
{name = "Targeting Card", amount = 10, investable = 10, minimum = 0, weaponStat = "seeker", investFactor = 1, changeType = StatChanges.Flat},
{name = "Steel", amount = 8, investable = 10, minimum = 3,},
{name = "Wire", amount = 5, investable = 10, minimum = 3,},
}

View File

@@ -3,11 +3,11 @@ function WeaponGenerator.generateSmartCannon(rand, dps, tech, material, rarity)
local weapon = Weapon() local weapon = Weapon()
weapon:setProjectile() weapon:setProjectile()
dps = dps * 0.75 dps = dps * 0.9
local fireDelay = rand:getFloat(1.5, 2.5)*0.5 local fireDelay = rand:getFloat(1.5, 2.5)*0.5
local reach = rand:getFloat(1100, 1500)*0.7 local reach = rand:getFloat(1100, 1500)*0.7
local damage = dps * fireDelay local damage = dps * fireDelay
local speed = rand:getFloat(300, 400)*2 local speed = rand:getFloat(300, 400)*4
local existingTime = (reach / speed)*1.2 local existingTime = (reach / speed)*1.2
weapon.fireDelay = fireDelay weapon.fireDelay = fireDelay
@@ -15,8 +15,8 @@ function WeaponGenerator.generateSmartCannon(rand, dps, tech, material, rarity)
weapon.appearanceSeed = rand:getInt() weapon.appearanceSeed = rand:getInt()
weapon.seeker = 1 weapon.seeker = 1
weapon.appearance = WeaponAppearance.Cannon weapon.appearance = WeaponAppearance.Cannon
weapon.name = "SmartCannon /* Weapon Name*/"%_t weapon.name = "Smart-Cannon /* Weapon Name*/"%_t
weapon.prefix = "SmartCannon /* Weapon Prefix*/"%_t weapon.prefix = "Smart-Cannon /* Weapon Prefix*/"%_t
weapon.icon = "data/textures/icons/smartcannon.png" weapon.icon = "data/textures/icons/smartcannon.png"
weapon.sound = "cannon" weapon.sound = "cannon"
weapon.accuracy = 0.99 - rand:getFloat(0, 0.03) weapon.accuracy = 0.99 - rand:getFloat(0, 0.03)
@@ -46,13 +46,14 @@ end
generatorFunction[WeaponType.SmartCannon] = WeaponGenerator.generateSmartCannon generatorFunction[WeaponType.SmartCannon] = WeaponGenerator.generateSmartCannon
function WeaponGenerator.generateHeavyCannon(rand, dps, tech, material, rarity) function WeaponGenerator.generateHeavyCannon(rand, dps, tech, material, rarity)
local weapon = Weapon() local weapon = Weapon()
weapon:setProjectile() weapon:setProjectile()
dps = dps * 1.85 dps = dps * 1.85
local fireDelay = rand:getFloat(1.5, 2.0)*1.7 local fireDelay = rand:getFloat(1.5, 2.0)*1.7
local reach = rand:getFloat(1100, 1500)*1.2 local reach = rand:getFloat(1100, 1500)*1.5
local damage = dps * fireDelay local damage = dps * fireDelay
local speed = rand:getFloat(600, 1000)*1.4 local speed = rand:getFloat(600, 1000)*1.4
local existingTime = (reach / speed)*1.1 local existingTime = (reach / speed)*1.1
@@ -91,6 +92,7 @@ end
generatorFunction[WeaponType.HeavyCannon] = WeaponGenerator.generateHeavyCannon generatorFunction[WeaponType.HeavyCannon] = WeaponGenerator.generateHeavyCannon
function WeaponGenerator.generateDiffuser(rand, dps, tech, material, rarity) function WeaponGenerator.generateDiffuser(rand, dps, tech, material, rarity)
local weapon = Weapon() local weapon = Weapon()
weapon:setBeam() weapon:setBeam()
@@ -192,3 +194,54 @@ function WeaponGenerator.generateHookgun(rand, dps, tech, material, rarity)
end end
generatorFunction[WeaponType.Hookgun] = WeaponGenerator.generateHookgun generatorFunction[WeaponType.Hookgun] = WeaponGenerator.generateHookgun
function WeaponGenerator.generateHiveLauncher(rand, dps, tech, material, rarity)
local weapon = Weapon()
weapon:setProjectile()
local fireDelay = rand:getFloat(2.2, 3)
local reach = rand:getFloat(1300, 1800)
local damage = dps * fireDelay
local speed = rand:getFloat(150, 200)
local existingTime = reach / speed
weapon.fireDelay = fireDelay
weapon.reach = reach
weapon.appearanceSeed = rand:getInt()
weapon.seeker = true
weapon.appearance = WeaponAppearance.RocketLauncher
weapon.name = "Hive-Launcher /* Weapon Name*/"%_t
weapon.prefix = "Hive-Launcher /* Weapon Prefix*/"%_t
weapon.icon = "data/textures/icons/hivelauncher.png"
weapon.sound = "cannon"
weapon.accuracy = 0.5 - rand:getFloat(0, 0.02)
weapon.damage = damage
weapon.damageType = DamageType.Physical
weapon.impactParticles = ImpactParticles.Explosion
weapon.impactSound = 1
weapon.impactExplosion = true
weapon.psize = rand:getFloat(0.2, 0.4)
weapon.pmaximumTime = existingTime
weapon.pvelocity = speed
weapon.pcolor = ColorHSV(rand:getFloat(10, 60), 0.7, 1)
weapon.pshape = ProjectileShape.Rocket
if rand:test(1) then
local shots = {6, 10, 14, 18, 22, 26, 30}
weapon.shotsFired = shots[rand:getInt(1, #shots)]
weapon.damage = (weapon.damage * 1.5) / weapon.shotsFired
end
WeaponGenerator.adaptWeapon(rand, weapon, tech, material, rarity)
weapon.recoil = weapon.damage * 2
weapon.explosionRadius = math.sqrt(weapon.damage * 5)
return weapon
end
generatorFunction[WeaponType.HiveLauncher] = WeaponGenerator.generateHiveLauncher

View File

@@ -1,5 +1,6 @@
WeaponTypes.addType("SmartCannon", "Smart Сannon /* Weapon Type */"%_t, armed) WeaponTypes.addType("SmartCannon", "Smart Сannon /* Weapon Type */"%_t, armed)
WeaponTypes.addType("HeavyCannon", "Heavy Cannon /* Weapon Type */"%_t, armed) WeaponTypes.addType("HeavyCannon", "Heavy Cannon /* Weapon Type */"%_t, armed)
WeaponTypes.addType("Diffuser", "Diffuser /* Weapon Type */"%_t, armed) WeaponTypes.addType("Diffuser", "Diffuser /* Weapon Type */"%_t, armed)
WeaponTypes.addType("Hookgun", "Hookgun /* Weapon Type */"%_t, armed) WeaponTypes.addType("Hookgun", "Hookgun /* Weapon Type */"%_t, armed)
WeaponTypes.addType("HiveLauncher", "HiveLauncher /* Weapon Type */"%_t, armed)

View File

@@ -14,7 +14,7 @@ category.chapters =
}, },
{ {
title = "Autocannon"%_t, title = "Smartcannon"%_t,
picture = "data/textures/slide/3.png", picture = "data/textures/slide/3.png",
text = "A lightweight version of the classic cannon.\n\nCompared to conventional cannons:\n+ Increased rate of fire (x2)\n+ Increased projectile speed (x1.5)\n+ A little more damage on the shield (10% - 15%)\n+ Can be equipped with homing missiles.\n- Less damage (x0.75)\n- Shorter damage range (x0.8)"%_t, text = "A lightweight version of the classic cannon.\n\nCompared to conventional cannons:\n+ Increased rate of fire (x2)\n+ Increased projectile speed (x1.5)\n+ A little more damage on the shield (10% - 15%)\n+ Can be equipped with homing missiles.\n- Less damage (x0.75)\n- Shorter damage range (x0.8)"%_t,
}, },

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 37 KiB

View File

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB