You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/Fixed-or-Improved-Logics.md
+21-23Lines changed: 21 additions & 23 deletions
Original file line number
Diff line number
Diff line change
@@ -213,17 +213,15 @@ This page describes all ingame logics that are fixed or improved in Phobos witho
213
213
- Fixed an issue that units on the slope tilted at an excessive angle.
214
214
- Fixed an issue that impassable invisible barrier generated by the behavior of infantry continuously entering vehicles.
215
215
- Fixed an issue that teleport units board transport vehicles on the bridge will create an impassable invisible barrier, which may cause the game to freeze or even crash.
216
-
- Fixed an issue that MCV will self-destruct when using trigger 107 to teleport.
217
216
- Fixed an issue that moving MCV with Teleport locomotion will cause reconnection error.
218
217
- Fixed wrong shadow when a vehicle has hover locomotor and is being lifted by `IsLocomotor=yes` warhead.
219
218
- Fixed the bug that a unit can overlap with `Teleport` units after it's been damaged by a fallen unit lifted by `IsLocomotor=yes` warheads.
220
219
- Fixed an issue that game crashes (EIP:7FB178) when infantry are about to enter an occupiable building that has been removed and is not real dead.
221
220
- Fixed an issue that game crashes when spawnee has been removed and is not real dead.
222
221
- Separated the AirstrikeClass pointer between the attacker/aircraft and the target to avoid erroneous overwriting issues.
223
222
- Fixed the bug that buildings will always be tinted as airstrike owner.
224
-
- Fixed the bug that 'AllowAirstrike=no' cannot completely prevent air strikes from being launched against it.
223
+
- Fixed the bug that `AllowAirstrike=no` cannot completely prevent air strikes from being launched against it.
225
224
- Fixed the issue where computer players did not search for new enemies after defeating them or forming alliances with them.
226
-
- Fixed an issue that spawned `Strafe` aircraft on aircraft carriers may not be able to return normally if aircraft carriers moved a short distance when the aircraft is landing.
227
225
228
226
## Fixes / interactions with other extensions
229
227
@@ -703,6 +701,22 @@ BallisticScatter.Max= ; floating point value, distance in cells
703
701
704
702
## Technos
705
703
704
+
### Airstrike target eligibility
705
+
706
+
- By default whether or not a building can be targeted by airstrikes depends on value of `CanC4`, which also affects other things. This can now be changed independently by setting `AllowAirstrike`. If not set, defaults to value of `CanC4`.
707
+
- For non building situations, the default value is true.
708
+
- Now it is possible to designate air strikes against non building targets.
709
+
- The airstrike aircraft will now aim at the target itself rather than the cell beneath its feet.
710
+
711
+
In `rulesmd.ini`:
712
+
```ini
713
+
[SOMETECHNO]; TechnoType
714
+
AllowAirstrike= ; boolean
715
+
716
+
[SOMEWARHEAD]; WarheadType
717
+
AirstrikeTargets=building ; List of Affected Target Enumeration (none|infantry|units|buildings|all)
718
+
```
719
+
706
720
### Alternate FLH customizations
707
721
708
722
-`AlternateFLH.OnTurret` can be used to customize whether or not `AlternateFLHN` used for `OpenTopped` transport firing coordinates, multiple mind control link offsets etc. is calculated relative to the unit's turret if available or body.
- It is now possible to set a global cap for the effects of `InfantryGainSelfHeal` and `UnitsGainSelfHeal` by setting `InfantryGainSelfHealCap` & `UnitsGainSelfHealCap` under `[General]`, respectively.
719
733
- Whether or not `MultiplayPassive=true` houses benefit from these effects can be controlled via `GainSelfHealAllowMultiplayPassive`.
720
-
- It is also possible to change the pip frames displayed from `pips.shp` individually for infantry, units and buildings by setting the frames for infantry & unit self-healing on `Pips.SelfHeal.Infantry/Units/Buildings` under `[AudioVisual]`, respectively.
721
-
-`Pips.SelfHeal.Infantry/Units/Buildings.Offset` can be used to customize the pixel offsets for the displayed pips, individually for infantry, units and buildings.
734
+
- It is also possible to change the pip frames displayed from `pips.shp` individually for infantry, units and buildings by setting the frames for infantry & unit self-healing on `Pips.SelfHeal.(Infantry/Units/Buildings)` under `[AudioVisual]`, respectively.
735
+
-`Pips.SelfHeal.(Infantry/Units/Buildings).Offset` can be used to customize the pixel offsets for the displayed pips, individually for infantry, units and buildings.
722
736
- Whether or not a TechnoType benefits from effects of `InfantryGainSelfHeal` or `UnitsGainSelfHeal` buildings or neither can now be controlled by setting `SelfHealGainType`.
723
737
- If `SelfHealGainType` is not set, InfantryTypes and VehicleTypes with `Organic` set to true gain self-healing from `InfantryGainSelfHeal`, other VehicleTypes from `UnitsGainSelfHeal` and AircraftTypes & BuildingTypes never gain self-healing.
724
738
@@ -744,9 +758,9 @@ SelfHealGainType= ; Self-Heal Gain Type Enumeration (nohea
- It is now possible to customize the frame delay between instances of `[General] -> ChronoSparkle1` animations created on objects being warped by setting `[General] -> ChronoSparkleDisplayDelay`.
747
-
- By default on buildings with `MaxOccupants` higher than 0, chrono sparkle animation would be shown at each of the `MuzzleFlashX` coordinates. This behaviour is now customizable, and supports `MuzzleFlashX` indices higher than 10.
761
+
- By default on buildings with `MaxNumberOccupants` higher than 0, chrono sparkle animation would be shown at each of the `MuzzleFlashX` coordinates. This behaviour is now customizable, and supports `MuzzleFlashX` indices higher than 10.
748
762
-`[General] -> ChronoSparkleBuildingDisplayPositions` can be set to show the sparkle animation on the building (`building`), muzzle flash coordinates of current occupants (`occupants`), muzzle flash coordinates of all occupant slots (`occupantslots`) or any combination of these.
749
-
- If `occupants` or `occupantslots` is listed without `building`, a single chrono sparkle animation is still displayed on building if it doesn't have any occupants or it has `MaxOccupants` value less than 1, respectively.
763
+
- If `occupants` or `occupantslots` is listed without `building`, a single chrono sparkle animation is still displayed on building if it doesn't have any occupants or it has `MaxNumberOccupants` value less than 1, respectively.
750
764
- The chrono sparkle animation that is displayed on building itself is also now displayed at the center of it rather than at center of its topmost cell.
751
765
752
766
In `rulesmd.ini`:
@@ -840,22 +854,6 @@ In `artmd.ini`:
840
854
Image= ; name of the file that will be used as image, without extension
841
855
```
842
856
843
-
### Airstrike target eligibility
844
-
845
-
- By default whether or not a building can be targeted by airstrikes depends on value of `CanC4`, which also affects other things. This can now be changed independently by setting `AllowAirstrike`. If not set, defaults to value of `CanC4`.
846
-
- For non building situations, the default value is true.
847
-
- Now it is possible to designate air strikes against non building targets.
848
-
- The airstrike aircraft will now aim at the target itself rather than the cell beneath its feet.
849
-
850
-
In `rulesmd.ini`:
851
-
```ini
852
-
[SOMETECHNO]
853
-
AllowAirstrike= ; boolean
854
-
855
-
[SOMEWARHEAD]
856
-
AirstrikeTargets=building ; List of Affected Target Enumeration (none|infantry|units|buildings|all)
857
-
```
858
-
859
857
### Customizable veterancy insignias
860
858
861
859
- You can now customize veterancy insignia of TechnoTypes.
Copy file name to clipboardExpand all lines: docs/New-or-Enhanced-Logics.md
+45-45Lines changed: 45 additions & 45 deletions
Original file line number
Diff line number
Diff line change
@@ -80,7 +80,7 @@ This page describes all the engine features that are either new and introduced b
80
80
-`AttachEffect.InitialDelays` can be used to set the delays before first creating the effects on TechnoType. Defaults to 0 (immediately). Delay matching the position in `AttachTypes` is used for that type, or the last listed delay if not available.
81
81
-`AttachEffect.RecreationDelays` is used to determine if the effect can be recreated if it is removed completely (e.g `AttachEffect.RemoveTypes`), and if yes, how long this takes. Defaults to -1, meaning no recreation. Delay matching the position in `AttachTypes` is used for that type, or the last listed delay if not available.
82
82
- Note that neither `InitialDelays` or `RecreationDelays` count down if the effect cannot currently be active due to `DiscardOn` condition.
83
-
83
+
84
84
- AttachEffectTypes can be attached to objects via Warheads using `AttachEffect.AttachTypes`.
85
85
-`AttachEffect.DurationOverrides` can be used to override the default durations. Duration matching the position in `AttachTypes` is used for that type, or the last listed duration if not available.
86
86
-`AttachEffect.CumulativeRefreshAll` if set to true makes it so that trying to attach `Cumulative=true` effect to a target that already has `Cumulative.MaxCount` amount of effects will refresh duration of all attached effects of the same type instead of only the one with shortest remaining duration. If `AttachEffect.CumulativeRefreshAll.OnAttach` is also set to true, this refresh applies even if the target does not have maximum allowed amount of effects of same type.
- Now you can let infantry or vehicle passengers quickly enter or leave the transport vehicles without queuing.
1772
-
1773
-
In `rulesmd.ini`:
1774
-
```ini
1775
-
[General]
1776
-
NoQueueUpToEnter=false ; boolean
1777
-
NoQueueUpToUnload=false ; boolean
1778
-
1779
-
[SOMEVEHICLE]; VehicleType
1780
-
NoQueueUpToEnter= ; boolean, default to [General] -> NoQueueUpToEnter
1781
-
NoQueueUpToUnload= ; boolean, default to [General] -> NoQueueUpToUnload
1782
-
```
1785
+
## Terrain
1783
1786
1784
-
### Aggressive attack move mission
1787
+
### Destroy animation & sound
1785
1788
1786
-
-`AttackMove.Aggressive` allows your technos to attack the enemy's unarmed buildings more aggressively when in attack move mission (Ctrl+Shift).
1787
-
-`AttackMove.UpdateTarget` allows your technos to automatically change and select a higher threat target when in attack move mission (Ctrl+Shift).
1789
+
- You can now specify a destroy animation and sound for a TerrainType that are played when it is destroyed.
1788
1790
1789
1791
In `rulesmd.ini`:
1790
1792
```ini
1791
-
[General]
1792
-
AttackMove.Aggressive=false ; boolean
1793
-
AttackMove.UpdateTarget=false ; boolean
1794
-
1795
-
[SOMETECHNO]
1796
-
AttackMove.Aggressive= ; boolean, default to [General] -> AttackMove.Aggressive
1797
-
AttackMove.UpdateTarget= ; boolean, default to [General] -> AttackMove.UpdateTarget
1793
+
[SOMETERRAINTYPE]; TerrainType
1794
+
DestroyAnim= ; AnimationType
1795
+
DestroySound= ; Sound entry
1798
1796
```
1799
1797
1798
+
## Vehicles
1799
+
1800
1800
### Amphibious access vehicle
1801
1801
1802
-
- Now you can let amphibious infantry or vehicle passengers enter or leave amphibious transport vehicles on water surface. Defaults to `[General]->AmphibiousEnter` or `[General]->AmphibiousUnload`.
1802
+
- Now you can let amphibious infantry or vehicle passengers enter or leave amphibious transport vehicles on water surface.
1803
1803
1804
1804
In `rulesmd.ini`:
1805
1805
```ini
1806
1806
[General]
1807
1807
AmphibiousEnter=false ; boolean
1808
1808
AmphibiousUnload=false ; boolean
1809
1809
1810
-
[SOMEVEHICLE]; VehicleType
1811
-
AmphibiousEnter= ; boolean
1812
-
AmphibiousUnload= ; boolean
1813
-
```
1814
-
1815
-
## Terrain
1816
-
1817
-
### Destroy animation & sound
1818
-
1819
-
- You can now specify a destroy animation and sound for a TerrainType that are played when it is destroyed.
1820
-
1821
-
In `rulesmd.ini`:
1822
-
```ini
1823
-
[SOMETERRAINTYPE]; TerrainType
1824
-
DestroyAnim= ; AnimationType
1825
-
DestroySound= ; Sound entry
1810
+
[SOMEVEHICLE]; VehicleType, transport
1811
+
AmphibiousEnter= ; boolean, default to [General] -> AmphibiousEnter
1812
+
AmphibiousUnload= ; boolean, default to [General] -> AmphibiousUnload
1826
1813
```
1827
1814
1828
-
## Vehicles
1829
-
1830
1815
### Damaged unit image changes
1831
1816
1832
1817
- When a unit is damaged (health points percentage is lower than `[AudioVisual] -> ConditionYellow` percentage), it now may use different image set by `Image.ConditionYellow` VehicleType.
Note that the VehicleTypes had to be defined under [VehicleTypes] and use same image type (SHP/VXL) for vanilla/damaged states.
1847
1832
```
1848
1833
1834
+
### Fast access vehicle
1835
+
1836
+
- Now you can let infantry or vehicle passengers quickly enter or leave the transport vehicles without queuing.
1837
+
1838
+
In `rulesmd.ini`:
1839
+
```ini
1840
+
[General]
1841
+
NoQueueUpToEnter=false ; boolean
1842
+
NoQueueUpToUnload=false ; boolean
1843
+
1844
+
[SOMEVEHICLE]; VehicleType, transport
1845
+
NoQueueUpToEnter= ; boolean, default to [General] -> NoQueueUpToEnter
1846
+
NoQueueUpToUnload= ; boolean, default to [General] -> NoQueueUpToUnload
1847
+
```
1848
+
1849
1849
### Jumpjet Tilts While Moving
1850
1850
1851
1851

@@ -2019,7 +2019,7 @@ DamageEnemiesMultiplier= ; floating point value
2019
2019
2020
2020
### Detonate Warhead on all objects on map
2021
2021
2022
-
- Setting `DetonateOnAllMapObjects` to true allows a Warhead that is detonated by a projectile (for an example, this excludes things like animation `Warhead` and Ares' GenericWarhead superweapon but includes `Crit.Warhead` and animation `Weapon`) and consequently any `Airburst/ShrapnelWeapon` that may follow to detonate on each object currently alive and existing on the map regardless of its actual target, with optional filters. Note that this is done immediately prior Warhead detonation so after `PreImpactAnim`*(Ares feature)* has been displayed.
2022
+
- Setting `DetonateOnAllMapObjects` to true allows a Warhead that is detonated by a projectile (for an example, this excludes things like animation `Warhead` and Ares' GenericWarhead superweapon but includes `Crit.Warhead` and animation `Weapon`) and consequently any `AirburstWeapon/ShrapnelWeapon` that may follow to detonate on each object currently alive and existing on the map regardless of its actual target, with optional filters. Note that this is done immediately prior Warhead detonation so after `PreImpactAnim`*(Ares feature)* has been displayed.
2023
2023
-`DetonateOnAllMapObjects.Full` customizes whether or not the Warhead is detonated fully on the targets (as part of a dummy weapon) or simply deals area damage and applies Phobos' Warhead effects.
2024
2024
-`DetonateOnAllMapObjects.AffectTargets` is used to filter which types of targets (TechnoTypes) are considered valid and must be set to a valid value other than `none` for this feature to work. Only `none`, `all`, `aircraft`, `buildings`, `infantry` and `units` are valid values. This is set to `none` by default as inclusion of all object types can be performance-heavy.
2025
2025
-`DetonateOnAllMapObjects.AffectHouses` is used to filter which houses targets can belong to be considered valid and must be set to a valid value other than `none` for this feature to work. Only applicable if the house that fired the projectile is known. This is set to `none` by default as inclusion of all houses can be performance-heavy.
0 commit comments