Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Emergency Repair Proposal 5, Repair Vehicles In Area Over Time #1067

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
94 changes: 67 additions & 27 deletions Patch104pZH/GameFilesEdited/Data/INI/Object/System.ini
Original file line number Diff line number Diff line change
Expand Up @@ -419,6 +419,7 @@ Object GPSScrambler_InvisibleMarker

End

; Patch104p @balance commy2 23/07/2022 Make repair effect linger and heal over time and also repair buildings.
;------------------------------------------------------------------------------
Object RepairVehiclesInArea_InvisibleMarker_Level1
; ***DESIGN parameters ***
Expand All @@ -428,13 +429,13 @@ Object RepairVehiclesInArea_InvisibleMarker_Level1
Draw = W3DModelDraw ModuleTag_NOTREALLYADRAW

DefaultConditionState
Model = None
Model = EXAMineGroup
ParticleSysBone = None GPSRotisserie
ParticleSysBone = None RepairCloud
End
End

KindOf = NO_COLLIDE IMMOBILE UNATTACKABLE
KindOf = NO_COLLIDE IMMOBILE UNATTACKABLE FS_FAKE

; *** ENGINEERING Parameters ***
Body = ImmortalBody ModuleTag_01
Expand All @@ -443,18 +444,31 @@ Object RepairVehiclesInArea_InvisibleMarker_Level1
End

Behavior = AutoHealBehavior ModuleTag_02
HealingAmount = 100
HealingDelay = 1 ; msec ; essentially sleep forever, since lifetime is 0, below
Radius = 100.0
HealingAmount = 5
HealingDelay = 250 ; msec
Radius = 150.0
StartsActive = Yes
KindOf = VEHICLE
SingleBurst = Yes
;SingleBurst = Yes
End

Behavior = DeletionUpdate ModuleTag_03 ; Not LifetimeUpdate, since I can't die. This will DestroyObject me.
MinLifetime = 0 ;one pulse
MaxLifetime = 0
Behavior = AutoHealBehavior ModuleTag_03
HealingAmount = 15
HealingDelay = 250 ; msec
Radius = 150.0
StartsActive = Yes
KindOf = STRUCTURE
;SingleBurst = Yes
End

Behavior = DeletionUpdate ModuleTag_04 ; Not LifetimeUpdate, since I can't die. This will DestroyObject me.
MinLifetime = 10000
MaxLifetime = 10000
End

ShadowTexture = SCCRepair
ShadowSizeX = 300
ShadowSizeY = 300
End

;------------------------------------------------------------------------------
Expand All @@ -466,13 +480,13 @@ Object RepairVehiclesInArea_InvisibleMarker_Level2
Draw = W3DModelDraw ModuleTag_NOTREALLYADRAW

DefaultConditionState
Model = None
Model = EXAMineGroup
ParticleSysBone = None GPSRotisserie
ParticleSysBone = None RepairCloud
End
End

KindOf = NO_COLLIDE IMMOBILE UNATTACKABLE
KindOf = NO_COLLIDE IMMOBILE UNATTACKABLE FS_FAKE

; *** ENGINEERING Parameters ***
Body = ImmortalBody ModuleTag_01
Expand All @@ -481,18 +495,31 @@ Object RepairVehiclesInArea_InvisibleMarker_Level2
End

Behavior = AutoHealBehavior ModuleTag_02
HealingAmount = 200
HealingDelay = 1 ; msec ; essentially sleep forever, since lifetime is 0, below
Radius = 100.0
HealingAmount = 5
HealingDelay = 250 ; msec
Radius = 150.0
StartsActive = Yes
KindOf = VEHICLE
SingleBurst = Yes
;SingleBurst = Yes
End

Behavior = DeletionUpdate ModuleTag_03 ; Not LifetimeUpdate, since I can't die. This will DestroyObject me.
MinLifetime = 0
MaxLifetime = 0
Behavior = AutoHealBehavior ModuleTag_03
HealingAmount = 15
HealingDelay = 250 ; msec
Radius = 150.0
StartsActive = Yes
KindOf = STRUCTURE
;SingleBurst = Yes
End

Behavior = DeletionUpdate ModuleTag_04 ; Not LifetimeUpdate, since I can't die. This will DestroyObject me.
MinLifetime = 20000
MaxLifetime = 20000
End

ShadowTexture = SCCRepair
ShadowSizeX = 300
ShadowSizeY = 300
End

;------------------------------------------------------------------------------
Expand All @@ -504,13 +531,13 @@ Object RepairVehiclesInArea_InvisibleMarker_Level3
Draw = W3DModelDraw ModuleTag_NOTREALLYADRAW

DefaultConditionState
Model = None
Model = EXAMineGroup
ParticleSysBone = None GPSRotisserie
ParticleSysBone = None RepairCloud
End
End

KindOf = NO_COLLIDE IMMOBILE UNATTACKABLE
KindOf = NO_COLLIDE IMMOBILE UNATTACKABLE FS_FAKE

; *** ENGINEERING Parameters ***
Body = ImmortalBody ModuleTag_01
Expand All @@ -519,18 +546,31 @@ Object RepairVehiclesInArea_InvisibleMarker_Level3
End

Behavior = AutoHealBehavior ModuleTag_02
HealingAmount = 300
HealingDelay = 1 ; msec ; essentially sleep forever, since lifetime is 0, below
Radius = 100.0
HealingAmount = 5
HealingDelay = 250 ; msec
Radius = 150.0
StartsActive = Yes
KindOf = VEHICLE
SingleBurst = Yes
;SingleBurst = Yes
End

Behavior = DeletionUpdate ModuleTag_03 ; Not LifetimeUpdate, since I can't die. This will DestroyObject me.
MinLifetime = 0
MaxLifetime = 0
Behavior = AutoHealBehavior ModuleTag_03
HealingAmount = 15
HealingDelay = 250 ; msec
Radius = 150.0
StartsActive = Yes
KindOf = STRUCTURE
;SingleBurst = Yes
End

Behavior = DeletionUpdate ModuleTag_04 ; Not LifetimeUpdate, since I can't die. This will DestroyObject me.
MinLifetime = 30000
MaxLifetime = 30000
End

ShadowTexture = SCCRepair
ShadowSizeX = 300
ShadowSizeY = 300
End

;------------------------------------------------------------------------------
Expand Down
3 changes: 3 additions & 0 deletions Patch104pZH/GameFilesEdited/Data/INI/ObjectCreationList.ini
Original file line number Diff line number Diff line change
Expand Up @@ -5843,6 +5843,7 @@ ObjectCreationList SUPERWEAPON_RepairVehicles1
CreateObject
ObjectNames = RepairVehiclesInArea_InvisibleMarker_Level1
Count = 1
Disposition = LIKE_EXISTING ; Patch104p @balance commy2 23/07/2022 Prevent rotating decal randomly on ability placement.
End
End

Expand All @@ -5852,6 +5853,7 @@ ObjectCreationList SUPERWEAPON_RepairVehicles2
CreateObject
ObjectNames = RepairVehiclesInArea_InvisibleMarker_Level2
Count = 1
Disposition = LIKE_EXISTING ; Patch104p @balance commy2 23/07/2022 Prevent rotating decal randomly on ability placement.
End
End

Expand All @@ -5861,6 +5863,7 @@ ObjectCreationList SUPERWEAPON_RepairVehicles3
CreateObject
ObjectNames = RepairVehiclesInArea_InvisibleMarker_Level3
Count = 1
Disposition = LIKE_EXISTING ; Patch104p @balance commy2 23/07/2022 Prevent rotating decal randomly on ability placement.
End
End

Expand Down
10 changes: 6 additions & 4 deletions Patch104pZH/GameFilesEdited/Data/INI/SpecialPower.ini
Original file line number Diff line number Diff line change
Expand Up @@ -564,14 +564,16 @@ SpecialPower SpecialPowerCommunicationsDownload
; ShortcutPower = Yes ;Capable of being fired by the side-bar shortcut.
End

; Patch104p @balance commy2 23/07/2022 Increase radius by 50%.
; Patch104p @balance commy2 03/08/2023 Reduce recharge time from 4 to 3 minutes.
;------------------------------------------------------------------------------
SpecialPower SuperweaponEmergencyRepair
Enum = SPECIAL_REPAIR_VEHICLES
ReloadTime = 240000 ; in milliseconds
ReloadTime = 180000 ; in milliseconds
RequiredScience = SCIENCE_EmergencyRepair1
PublicTimer = No
SharedSyncedTimer = Yes
RadiusCursorRadius = 100
RadiusCursorRadius = 150
InitiateAtLocationSound = EmergencyRepairActivate
ShortcutPower = Yes ;Capable of being fired by the side-bar shortcut.
AcademyClassify = ACT_SUPERPOWER ;Considered a powerful special power that a player could fire. Not for simpler unit based powers.
Expand All @@ -580,11 +582,11 @@ End
;------------------------------------------------------------------------------
SpecialPower Early_SuperweaponEmergencyRepair
Enum = EARLY_SPECIAL_REPAIR_VEHICLES
ReloadTime = 240000 ; in milliseconds
ReloadTime = 180000 ; in milliseconds
RequiredScience = Early_SCIENCE_EmergencyRepair1
PublicTimer = No
SharedSyncedTimer = Yes
RadiusCursorRadius = 100
RadiusCursorRadius = 150
InitiateAtLocationSound = EmergencyRepairActivate
ShortcutPower = Yes ;Capable of being fired by the side-bar shortcut.
AcademyClassify = ACT_SUPERPOWER ;Considered a powerful special power that a player could fire. Not for simpler unit based powers.
Expand Down
45 changes: 23 additions & 22 deletions Patch104pZH/GameFilesEdited/Data/generals.str
Original file line number Diff line number Diff line change
Expand Up @@ -25714,18 +25714,19 @@ RU: "Вырубает вражескую связь.\n\nВремя для гот
AR: "وﺪﻌﻟا تﻻﺎﺼﺗإ ﻊﻄﻗ\n\n٠٠ : ٤ : ﻲﻟزﺎﻨﺘﻟا ﺪﻌﻟا ﺖﻗﺆﻣ"
END

// Patch104p @balance commy2 03/08/2023 Reduce recharge time from 4 to 3 minutes.
CONTROLBAR:TooltipFireEmergencyRepair
US: "Emergency Repair\n\nCountdown Timer: 4:00"
DE: "Notfallreparatur.\n\nCountdown: 4:00"
FR: "Réparation d'urgence.\n\nCompte à rebours : 4:00"
ES: "Reparar Emergencia.\n\nCuenta atrás: 4:00"
IT: "Riparazione d'emergenza\n\nConto alla rovescia: 4:00"
KO: "긴급 복구합니다.\n\n카운트다운 타이머: 4:00"
ZH: "警急修理載具。\n\n倒數計時:4:00"
BP: "Executa reparos de emergência nas unidades dentro da área selecionada.\n\nContagem Regressiva: 4:00"
PL: "Naprawia pojazdy.\n\nCzas aktywacji: 4:00"
RU: "Немедленный ремонт.\n\nВремя для готовности: 4:00"
AR: "ئراﻮﻄﻟا ﺢﯿﻠﺼﺗ\n\n٠٠ : ٤ : ﻲﻟزﺎﻨﺘﻟا ﺪﻌﻟا ﺖﻗﺆﻣ"
US: "Emergency Repair\n\nCountdown Timer: 3:00"
DE: "Notfallreparatur.\n\nCountdown: 3:00"
FR: "Réparation d'urgence.\n\nCompte à rebours : 3:00"
ES: "Reparar Emergencia.\n\nCuenta atrás: 3:00"
IT: "Riparazione d'emergenza\n\nConto alla rovescia: 3:00"
KO: "긴급 복구합니다.\n\n카운트다운 타이머: 3:00"
ZH: "警急修理載具。\n\n倒數計時:3:00"
BP: "Executa reparos de emergência nas unidades dentro da área selecionada.\n\nContagem Regressiva: 3:00"
PL: "Naprawia pojazdy.\n\nCzas aktywacji: 3:00"
RU: "Немедленный ремонт.\n\nВремя для готовности: 3:00"
AR: "ئراﻮﻄﻟا ﺢﯿﻠﺼﺗ\n\n٠٠ : ٣ : ﻲﻟزﺎﻨﺘﻟا ﺪﻌﻟا ﺖﻗﺆﻣ"
END

CONTROLBAR:TooltipFireRebelAmbush
Expand Down Expand Up @@ -29748,17 +29749,17 @@ AR: "Balykchy, Kyrgyzstan\nScorched Earth"
END

CONTROLBAR:ToolTipScienceEmergencyRepair
US: "Repairs vehicles in an area\n\nRank 1: Light Repair\nRank 2: Medium Repair\nRank 3: Serious Repair\n\nDeploy from: Command Center"
DE: "Repariert Fahrzeuge im gewählten Bereich für eine bestimmte Zeit.\n\nStufe 1: 30 Sekunden\nStufe 2: 45 Sekunden\nStufe 3: 60 Sekunden\n\nProduktionsstätte: Kommandozentrale"
FR: "Réparent les véhicules d'une zone.\n\nGrade 1 : réparation légère\nGrade 2 : réparation standard\nGrade 3 : réparation importante\n\nDéployées depuis : Poste de commandement."
ES: "Repara vehículos en un área.\n\nRango 1: Reparación leve\nRango 2: Reparación media\nRango 3: Reparación seria\n\nDespliegue desde: Centro de mando"
IT: "Ripara i veicoli in zona.\n\nGrado 1: riparazione leggera\nGrado 2: riparazione media\nGrado 3: riparazione ingente\n\nLanciata da: Centro comando"
KO: "특정 지역의 차량을 복구합니다.\n\n등급 1: 복구(하)\n등급 2: 복구(중)\n등급 3: 복구(상)\n\n명령 위치: 커맨드 센터"
ZH: "維修在固定範圍裡的載具\n\n等級一:輕度維修\n等級二:中度維修\n等級三:高級維修 \n\n部署來源:指揮中心"
BP: "Repara todos os veículos dentro da área de efeito.\n\nPatente 1: Reparos Leves.\nPatente 2: Reparos Médios.\nPatente 3: Reparos Totais.\n\nOrdenado por: Centro de Comando"
PL: "Naprawia pojazdy we wskazanej okolicy.\n\nRanga 1: niewielkie naprawy\nRanga 2: zwykłe naprawy\nRanga 3: poważne naprawy\n\nMiejsce startu: sztab"
RU: "Ремонт техники.\n\nУровень 1: Лёгкий ремонт\nУровень 2: Средний ремонт\nУровень 3: Серьёзный ремонт\n\nУправление из: Командного центра"
AR: "قﺎﻄﻨﻟا ﻦﻤﺿ تﺎﺑﺮﻌﻟا ﺢﯿﻠﺼﺗ\n\nﻒﯿﻔﺨﻟا ﺢﯿﻠﺼﺘﻟا : ١ ﻒﻨﺻ\nﻂﺳﻮﺘﻤﻟا ﺢﯿﻠﺼﺘﻟا : ٢ ﻒﻨﺻ\nيﻮﻘﻟا ﺢﯿﻠﺼﺘﻟا : ٣ ﻒﻨﺻ\n\nةدﺎﯿﻘﻟا ﺰﻛﺮﻣ : ىﺪﻟ ﻊﺑﺎﺗ"
US: "Repairs vehicles and buildings in an area\n\nRank 1: 10 seconds\nRank 2: 20 seconds\nRank 3: 30 seconds\n\nDeploy from: Command Center"
DE: "Repariert Fahrzeuge und Gebäude im gewählten Bereich für eine bestimmte Zeit.\n\nStufe 1: 10 Sekunden\nStufe 2: 20 Sekunden\nStufe 3: 30 Sekunden\n\nProduktionsstätte: Kommandozentrale"
FR: "Réparent les véhicules et les bâtiments d'une zone.\n\nGrade 1 : 10 secondes\nGrade 2 : 20 secondes\nGrade 3 : 30 secondes\n\nDéployées depuis : Poste de commandement."
ES: "Repara vehículos y edificios en un área.\n\nRango 1: 10 segundos\nRango 2: 20 segundos\nRango 3: 30 segundos\n\nDespliegue desde: Centro de mando"
IT: "Ripara i veicoli e le strutture in zona.\n\nGrado 1: 10 secondi\nGrado 2: 20 secondi\nGrado 3: 30 secondi\n\nLanciata da: Centro comando"
KO: "특정 지역의 차량을 및 건물을 복구합니다.\n\n등급 1: 10초\n등급 2: 20초\n등급 3: 30초\n\n명령 위치: 커맨드 센터"
ZH: "維修在固定範圍裡的載具\n\n等級一:10秒\n等級二:20秒\n等級三:30秒 \n\n部署來源:指揮中心"
BP: "Repara todos os veículos e estruturas dentro da área de efeito.\n\nPatente 1: 10 segundos.\nPatente 2: 20 segundos.\nPatente 3: 30 segundos.\n\nOrdenado por: Centro de Comando"
PL: "Naprawia pojazdy i konstrukcje we wskazanej okolicy.\n\nRanga 1: 10 sekund\nRanga 2: 20 sekund\nRanga 3: 30 sekund\n\nMiejsce startu: sztab"
RU: "Ремонт техники.\n\nУровень 1: 10 секунд\nУровень 2: 20 секунд\nУровень 3: 30 секунд\n\nУправление из: Командного центра"
AR: "قﺎﻄﻨﻟا ﻦﻤﺿ تايانبلاو تﺎﺑﺮﻌﻟا ﺢﯿﻠﺼﺗ\n\nيناوث ٠١ : ١ ﻒﻨﺻ\nةيناث ٠٢ : ٢ ﻒﻨﺻ\nةيناث ٠٣ : ٣ ﻒﻨﺻ\n\nةدﺎﯿﻘﻟا ﺰﻛﺮﻣ : ىﺪﻟ ﻊﺑﺎﺗ"
END

GUI:MinSpecFailedTitle
Expand Down