Repository navigation
Conversation
…nds (Phobos-developers#2311) <!-- Please manually add a label named [No Documentation Needed] if this change should not be mentioned in documentation, what's new and no credit needs to be given. If the changes are solely made to the documentation, please set the target branch to the pull request named "Weekly Regular Documentation Revisions", rather than the repository's existing branches. --> --------- Co-authored-by: Noble Fish <89088785+DeathFishAtEase@users.noreply.github.com>
### Customize whether aircraft is a cargo plane - In vanilla, the `IsALoaner` flag of an aircraft is determined by the game's own logic during `UnLimbo`. Now, you can explicitly control this flag per AircraftType. - The key `IsALoaner` determines the value of the aircraft's `IsALoaner` flag when it is unlimboed. If left unset, the vanilla behavior is preserved. In `rulesmd.ini`: ```ini [SOMEAIRCRAFT] ; AircraftType IsALoaner= ; boolean ```
… the linked building when deactivated (Phobos-developers#2315) <!-- Please manually add a label named [No Documentation Needed] if this change should not be mentioned in documentation, what's new and no credit needs to be given. If the changes are solely made to the documentation, please set the target branch to the pull request named "Weekly Regular Documentation Revisions", rather than the repository's existing branches. --> --------- Co-authored-by: Noble_Fish <1065703286@qq.com>
…itialPayload logic (Phobos-developers#2316) In the past, in order to use `OpenTopped` with Infantry as a transport, it was necessary to graft/temporarily substitute with an `Abductor` weapon whose invoker is that Infantry; now you can directly use the InitialPayload logic to create passengers, just like other FootClass objects. <img width="242" height="167" alt="image" src="https://github.com/user-attachments/assets/3d7e6c43-952c-4163-97a9-89545af44af0" />
Keep Syringe open until the game exits. Helps stop the client calling GameProcessExited when the "attach debugger" message appears. Ported from Vinifera - [originally done ](https://github.com/Vinifera-Developers/Vinifera/pull/1548/commits/bbc37f5a6e6665189e37166d94197657da25c504)by ZivDero & secsome.
- Ìf `DropCrate` is declared then the specified crate will be spawned when the object is destroyed. In `rulesmd.ini`: ```ini [SOMETECHNO] ; TechnoType DropCrate= ; Powerup crate type enum (money|unit|healbase|cloak|explosion|napalm|squad|reveal|armor|speed|firepower|icbm|invulnerability|veteran|ionstorm|gas|tiberium|pod) ``` Also, a new map action (see the documentation) allows the overwrite of this behaviour (disbale, enable or set a new crate) if the trigger is attached to technos. Tested in online games so this doesn't desync. --------- Co-authored-by: Coronia <2217891145@qq.com> Co-authored-by: Bartłomiej Moroz <Bartm12@wp.pl>
a simplification of Phobos-developers#1390 - `ArmorMultiplier.Chance` can be used to set the chance of whether the armor multiplier will take effect or not when taking damage. - `ArmorMultiplier.AffectsHouse` can be used to set which houses the armor multiplier will take effect. - `ArmorMultiplier.HitAnim` can be used to set the animation that'll be played when taking damage. Won't be displayed if the armor multiplier doesn't take effect due to `ArmorMultiplier.Allow/DisallowWarheads`, `ArmorMultiplier.Chance` or `ArmorMultiplier.AffectsHouse` settings. If more than one animation is listed, a random one is selected. In `rulesmd.ini`: ```ini [SOMEATTACHEFFECT] ; AttachEffectType ArmorMultiplier.Chance=1.0 ; floating point value ArmorMultiplier.AffectsHouse=all ; List of Affected House Enumeration (none|owner/self|allies/ally|team|enemies/enemy|all) ArmorMultiplier.HitAnim= ; List of AnimationTypes ```
…lopers#2230) `ProjectileRange` now has weapon range modifiers applied to it if greater than 0 and unless `ProjectileRange.ApplyModifiers` is set to false on the WeaponType. ---------------------- Summary of changes: - Patches Ares code to skip `Ranged=true` projectile checks and updating projectile position to new coordinates. - Add new hook at `0x467BA4` (Ares hook return address) with updated projectile range check as well as the skipped position update. - New mechanism treats `BulletClass::Range` as immutable initial max range (as opposed to distance that the projectile can still travel that is deducted from every frame) to preserve ability to check effective range with dynamic modifiers, distance traveled so far is stored in new field `BulletExt::DistanceTraveled`. ---------------------- Fixes the main underlying reason for Phobos-developers#2227's existence, whether or not it has any reason to remain after addressing this I do not know.
- Fixed an issue where `OmniFire` was ineffective on buildings with `Turret=yes`. - Fixed an issue where setting a production building as `Primary` could cause it to enter an unload state. --------- - Building types now also support using `DeployFire` and `DeployFireWeapon`. - If a building has other configurations such as `Factory`, `GapGenerator`, or `Passengers`, it will prioritize executing those deployment actions instead. - `DeployFireDelay` specifies the frame interval at which deployed weapons attempt to fire. If the weapon is unavailable due to `ROF`, `CanTarget`, or other reasons, the deployed weapon will not fire. In `rulesmd.ini`: ```ini [SOMEBUILDING] ; BuildingType DeployFireDelay= ; integer, The default value is in the range of 14 to 16. ``` --------- Co-authored-by: Fly-Star <100747645+a851903106@users.noreply.github.com> Co-authored-by: Noble_Fish <1065703286@qq.com> Co-authored-by: Coronia <2217891145@qq.com>
<!-- Please manually add a label named [No Documentation Needed] if this change should not be mentioned in documentation, what's new and no credit needs to be given. If the changes are solely made to the documentation, please set the target branch to the pull request named "Weekly Regular Documentation Revisions", rather than the repository's existing branches. --> ### Automatic conversion based on HP - Units can now be converted into another unit by health percentage. - `Convert.Health.AbovePercent`determines the minimal health percentage at which a unit converts automatically. - `Convert.Health.BelowPercent`determines the maximum health percentage at which a unit converts automatically. - `Convert.Health` specify the new techno after the conversion. This unit must be of the same type of the original (infantry -> infantry, vehicle -> vehicle or aircraft -> aircraft). - Setting a negative number will disable the HP check, and when both checks are disabled, conversion will not occur. In `rulesmd.ini`: ```ini [SOMETECHNO] ; TechnoType, before conversion Convert.Health.AbovePercent=-1.0 ; floating point value, percents or absolute Convert.Health.BelowPercent=-1.0 ; floating point value, percents or absolute Convert.Health= ; TechnoType, after conversion ``` --------- Co-authored-by: Coronia <2217891145@qq.com> Co-authored-by: Noble_Fish <1065703286@qq.com>
and supplement the source
…ers#2191) ### Berzerk (Psychedelic) duration stacking customization - By default `Psychedelic` warheads override the current duration of the berzerk effect regardless of if the new duration is higher or lower than the current one. This can now be customized with `Psychedelic.StackingMode`, with both global setting under `[CombatDamage]` and per-Warhead customization. In `rulesmd.ini`: ```ini [CombatDamage] Psychedelic.StackingMode=override ; Stacking mode enum (override|setifzero|min|max|add|subtract|multiply|divide) [SOMEWARHEAD] ; WarheadType Psychedelic.StackingMode= ; Stacking mode enum (override|setifzero|min|max|add|subtract|multiply|divide) ``` --------------- Dev note: The enum was generalized for potential (future) use elsewhere but is also possibly over-engineered for these kind of purposes and mixes two things together (when and how) which might not be ideal, can simplify it if need be I suppose. --------- Co-authored-by: Coronia <2217891145@qq.com> Co-authored-by: Noble_Fish <1065703286@qq.com>
The implementations of these attack move enhancements from Phobos-developers#1730 are problematic, so remove them before the upcoming release. Keeps AttackMove.Follow and AttackMove.IgnoreWeaponCheck, drops the dependent mega mission fix hook (Phobos-developers#1759) that only served the removed feature, and updates the Whats-New entry to point to the remaining attack move enhancements.
…lopers#1900) RA2/YR doesn't have implemented the Tiberian Sun action "24" (Play Speech). It just marks the action ended and then jumps to the next action from the script list. - Given a speech index, the game will play it. Just like action 24 from Tiberian Sun. In `aimd.ini`: ```ini [SOMESCRIPTTYPE] ; ScriptType x=24,n ``` Already tested in my mod and very simple action.
- now their timers won't extend when the unit is in limbo, and remove useless warp out check - add a TiberiumEater.UnderEMP tag which works similar as PassengerDeletion.UnderEMP
Using `SkipMapSelect=yes` in the map file allows you to bypass the restriction in `mapselmd.ini`—which requires that the player's faction in the current campaign must match the faction in the next new campaign. You can use `NextScenario` and `AltNextScenario` to specify the map names required to enter a new campaign, thereby forcing the game to proceed to the next campaign. 现在在地图文件中使用`SkipMapSelect=yes`可以绕过`mapselmd.ini`中的限制——该限制要求当前战役中玩家所属的阵营必须与下一个新战役中的阵营一致。你可以使用`NextScenario`和`AltNextScenario`来指定进入新战役所需的地图名称强制游戏进入下一个战役。 Now, setting a local variable named `<Alternate Next Scenario>` will also trigger `AltNextScenario`. 现在启用一个名为`<Alternate Next Scenario>`的局部变量也可以触发`AltNextScenario`。 --------- ### `611` Set Next Scenario - Set the next campaign to load after winning the current one. - Works only in `Campaign Mode` and requires setting `[Basic]>SkipMapSelect=yes`. In `mycampaign.map`: ```ini [Actions] ... ID=ActionCount,[Action1],611,4,[Map Filename],0,0,0,0,A,[ActionX] ... ``` --------- Co-authored-by: Fly-Star <100747645+a851903106@users.noreply.github.com> Co-authored-by: Noble_Fish <1065703286@qq.com>
### Stop immediately if the target enters the range during ApproachTarget - In vanilla, the ApproachTarget will simply exit and do nothing if the target is in range. This will cause your units to approach the target unnecessarily. - Now you can change this behavior by the following flag. - The setting can be customized per techno type; if not set on a type, the global setting is used as the fallback. - `AttackMove.StopWhenTargetAcquired` is read as a compatibility alias for `ApproachTarget.StopWhenInRange` (in both `[General]` and techno type sections). In `rulesmd.ini`: ```ini [General] ApproachTarget.StopWhenInRange=false ; boolean [SOMETECHNO] ApproachTarget.StopWhenInRange= ; boolean, default to the same key in [General] ``` ### Keep pursuing the target during ApproachTarget - Now you can make a unit approach its target with the target itself as the destination, just like ZEP, instead of a point on the arc around the target whose radius is the unit's own weapon range. - If `ApproachTarget.StopWhenInRange` is set to `true`, the unit will stop as soon as the target enters its range and will not chase it further. - `AttackMove.PursuitTarget` is read as a compatibility alias for `ApproachTarget.PursuitTarget`. In `rulesmd.ini`: ```ini [SOMETECHNO] ; TechnoType ApproachTarget.PursuitTarget= ; boolean, default to false ``` --------- Co-authored-by: Noble Fish <89088785+DeathFishAtEase@users.noreply.github.com> Co-authored-by: Noble_Fish <1065703286@qq.com> Co-authored-by: Coronia <2217891145@qq.com>
…lopers#2429) ## What kind of change is this? - [X] **New feature, vanilla bugfix or enhancement of a released feature** - changelog, docs and credits entries are needed. - [ ] **Improvement to a new (unreleased) feature** - docs and credits entries are needed; no changelog entry (`Skip Changelog`). - [ ] **Bugfix to a new (unreleased) feature** - credits entry is needed; no changelog or docs entries (`Skip Changelog`, `Skip Docs`). - [ ] **Bugfix to an old (released) feature** - changelog and credits entries are needed; no docs entry (`Skip Docs`). - [ ] **Completely minor change (e.g. a typo fix)** - no entries are needed (`Skip Changelog`, `Skip Docs`, `Skip Credits`). > Since the author is me, please apply `Skip Credits` label. ## Description - You can now use multiple weapons with `NoAmmoWeapons` while `NoAmmoAmount` is active. - `NoAmmoWeapons` selects an appropriate weapon based on the weapon's `CanTarget` and other tags, as well as the warhead's `Verses`. - If no suitable weapon is found, it continues to use `NoAmmoWeapon`. In `rulesmd.ini`: ```ini [SOMETECHNO] ; TechnoType NoAmmoWeapons= ; List of integers NoAmmoWeapons.IgnoreNeverUse=yes ; boolean ``` --------- - 现在你可以在`NoAmmoAmount`生效时使用`NoAmmoWeapons`指定多个武器。 - `NoAmmoWeapons`会根据武器的`CanTarget`等各项标签以及弹头的`Verses`来检查当前武器是否可用。 - 未能搜寻到合适的武器则继续使用`NoAmmoWeapon`。 --------- Co-authored-by: Fly-Star <100747645+a851903106@users.noreply.github.com> Co-authored-by: Noble_Fish <1065703286@qq.com>
was reintroduced by Phobos-developers#2429 Preliminarily judged that the issue was introduced by commit 1074043 when syncing develop, and it is speculated that the documentation changes of the develop branch were not correctly synced when resolving conflicts.
…et and attachment hooks
## What kind of change is this? <!-- Tick the row that matches your change. It tells the maintainers which of the changelog, docs and credits checks should run, and which `Skip` labels to apply for the ones that don't. --> - [X] **New feature, vanilla bugfix or enhancement of a released feature** - changelog, docs and credits entries are needed. - [ ] **Improvement to a new (unreleased) feature** - docs and credits entries are needed; no changelog entry (`Skip Changelog`). - [ ] **Bugfix to a new (unreleased) feature** - credits entry is needed; no changelog or docs entries (`Skip Changelog`, `Skip Docs`). - [ ] **Bugfix to an old (released) feature** - changelog and credits entries are needed; no docs entry (`Skip Docs`). - [ ] **Completely minor change (e.g. a typo fix)** - no entries are needed (`Skip Changelog`, `Skip Docs`, `Skip Credits`). ## Description Fixed an issue in Ares where vehicles would occasionally continue to fire and move even after the driver had been killed. 修复Ares下载具驾驶员被击杀后仍有可能继续开火、移动的问题。 --------- Co-authored-by: Fly-Star <100747645+a851903106@users.noreply.github.com> Co-authored-by: Noble_Fish <1065703286@qq.com> Co-authored-by: Coronia <2217891145@qq.com>
…Phobos-developers#2457) Fixed an issue where vehicles affected by warheads with `IsLocomotor=yes` would have their effects interrupted when deactivated or reactivated. 修复受`IsLocomotor=yes`弹头影响的载具在失灵/复原时会中断抬升效果的问题。 This is the original bug demonstration: <img width="237" height="150" alt="磁电抬人bug" src="https://github.com/user-attachments/assets/c938c4fc-fbf0-46f0-a749-c6be9d597311" /> --------- Co-authored-by: Fly-Star <100747645+a851903106@users.noreply.github.com>
…hobos-developers#2459) ## What kind of change is this? - [x] **New feature, vanilla bugfix or enhancement of a released feature** - changelog, docs and credits entries are needed. ## Description `TerrainType` destructors can delete `SHP` references still retained by the `FileSystem` cache. Subsequent mission restarts can reuse the freed memory and corrupt unrelated data. This was reproduced in Global Crisis’s `TUTO4` after two in-game restarts. Clear borrowed `SHP` references before native deletion in both terrain destructor paths. Owned images and raw theater images retain their existing cleanup behavior. An equivalent standalone correction passed two in-game restarts under Wine with the full campaign DLL set.
…Phobos-developers#2458) ## What kind of change is this? - [X] **New feature, vanilla bugfix or enhancement of a released feature** - changelog, docs and credits entries are needed. - [ ] **Improvement to a new (unreleased) feature** - docs and credits entries are needed; no changelog entry (`Skip Changelog`). - [ ] **Bugfix to a new (unreleased) feature** - credits entry is needed; no changelog or docs entries (`Skip Changelog`, `Skip Docs`). - [ ] **Bugfix to an old (released) feature** - changelog and credits entries are needed; no docs entry (`Skip Docs`). - [ ] **Completely minor change (e.g. a typo fix)** - no entries are needed (`Skip Changelog`, `Skip Docs`, `Skip Credits`). ## Description Vanilla initializes the sidebar radar X origin at `16`. The visible aperture starts at `13` for the Allied/GDI sidebar and `14` for the Soviet/NOD sidebar, so the radar content, its input rectangle, and the view rectangle are offset by 3 and 2 pixels respectively. This PR corrects `RadarClass::RadarX` after the Allied and Soviet sidebar branches converge, using the existing `isNODSidebar` state derived from `Sidebar.GDIPositions`. The fix is enabled by default and can be disabled with: ```ini [AudioVisual] UseSidebarRadarOffsetFix=no ``` The before/after comparison was captured on the map **Super Big Trouble** (**超级大麻烦**). ### Before  ### After  ## Notes - The required YRpp definition is provided by Phobos-developers/YRpp#84; the submodule points to that branch so CI can resolve it. - `scripts\\build_debug.bat` passes. --------- Co-authored-by: Noble_Fish <1065703286@qq.com> Co-authored-by: Noble Fish <89088785+DeathFishAtEase@users.noreply.github.com>
…developers#2462) <!-- If the changes are solely made to the documentation, please set the target branch to the pull request named "Weekly Regular Documentation Revisions", rather than the repository's existing branches. --> ## What kind of change is this? <!-- Tick the row that matches your change. It tells the maintainers which of the changelog, docs and credits checks should run, and which `Skip` labels to apply for the ones that don't. --> - [ ] **New feature, vanilla bugfix or enhancement of a released feature** - changelog, docs and credits entries are needed. - [ ] **Improvement to a new (unreleased) feature** - docs and credits entries are needed; no changelog entry (`Skip Changelog`). - [x] **Bugfix to a new (unreleased) feature** - credits entry is needed; no changelog or docs entries (`Skip Changelog`, `Skip Docs`). - [ ] **Bugfix to an old (released) feature** - changelog and credits entries are needed; no docs entry (`Skip Docs`). - [ ] **Completely minor change (e.g. a typo fix)** - no entries are needed (`Skip Changelog`, `Skip Docs`, `Skip Credits`). ## Description <!-- Write your description below. Usually this is your improvement documentation copy, but you may add extra notes or sections or whatever you feel is important for reviewing. -->
…ng (Phobos-developers#2430) <!-- If the changes are solely made to the documentation, please set the target branch to the pull request named "Weekly Regular Documentation Revisions", rather than the repository's existing branches. --> ## What kind of change is this? <!-- Tick the row that matches your change. It tells the maintainers which of the changelog, docs and credits checks should run, and which `Skip` labels to apply for the ones that don't. --> - [x] **New feature, vanilla bugfix or enhancement of a released feature** - changelog, docs and credits entries are needed. - [ ] **Improvement to a new (unreleased) feature** - docs and credits entries are needed; no changelog entry (`Skip Changelog`). - [ ] **Bugfix to a new (unreleased) feature** - credits entry is needed; no changelog or docs entries (`Skip Changelog`, `Skip Docs`). - [ ] **Bugfix to an old (released) feature** - changelog and credits entries are needed; no docs entry (`Skip Docs`). - [ ] **Completely minor change (e.g. a typo fix)** - no entries are needed (`Skip Changelog`, `Skip Docs`, `Skip Credits`). ## Description <!-- Write your description below. Usually this is your improvement documentation copy, but you may add extra notes or sections or whatever you feel is important for reviewing. --> In `rulesmd.ini`: ```ini [SOMETECHNO] ; TechnoType CrashROT=-1 ; integer, negative means no effects ```
…#2423) <!-- If the changes are solely made to the documentation, please set the target branch to the pull request named "Weekly Regular Documentation Revisions", rather than the repository's existing branches. --> ## What kind of change is this? <!-- Tick the row that matches your change. It tells the maintainers which of the changelog, docs and credits checks should run, and which `Skip` labels to apply for the ones that don't. --> - [ ] **New feature, vanilla bugfix or enhancement of a released feature** - changelog, docs and credits entries are needed. - [ ] **Improvement to a new (unreleased) feature** - docs and credits entries are needed; no changelog entry (`Skip Changelog`). - [ ] **Bugfix to a new (unreleased) feature** - credits entry is needed; no changelog or docs entries (`Skip Changelog`, `Skip Docs`). - [ ] **Bugfix to an old (released) feature** - changelog and credits entries are needed; no docs entry (`Skip Docs`). - [x] **Completely minor change (e.g. a typo fix)** - no entries are needed (`Skip Changelog`, `Skip Docs`, `Skip Credits`). ## Description <!-- Write your description below. Usually this is your improvement documentation copy, but you may add extra notes or sections or whatever you feel is important for reviewing. -->
…rne objects and thus cannot sink https://www.phoboscn.top/t/topic/812
…developers#2463) <!-- If the changes are solely made to the documentation, please set the target branch to the pull request named "Weekly Regular Documentation Revisions", rather than the repository's existing branches. --> ## What kind of change is this? <!-- Tick the row that matches your change. It tells the maintainers which of the changelog, docs and credits checks should run, and which `Skip` labels to apply for the ones that don't. --> - [X] **New feature, vanilla bugfix or enhancement of a released feature** - changelog, docs and credits entries are needed. - [ ] **Improvement to a new (unreleased) feature** - docs and credits entries are needed; no changelog entry (`Skip Changelog`). - [ ] **Bugfix to a new (unreleased) feature** - credits entry is needed; no changelog or docs entries (`Skip Changelog`, `Skip Docs`). - [ ] **Bugfix to an old (released) feature** - changelog and credits entries are needed; no docs entry (`Skip Docs`). - [ ] **Completely minor change (e.g. a typo fix)** - no entries are needed (`Skip Changelog`, `Skip Docs`, `Skip Credits`). ## Description > ## https://www.phoboscn.top/t/topic/808 > Medical crates will make friendly units with the SCATTER ability scurry about > 
<!-- If the changes are solely made to the documentation, please set the target branch to the pull request named "Weekly Regular Documentation Revisions", rather than the repository's existing branches. --> ## What kind of change is this? <!-- Tick the row that matches your change. It tells the maintainers which of the changelog, docs and credits checks should run, and which `Skip` labels to apply for the ones that don't. --> - [x] **New feature, vanilla bugfix or enhancement of a released feature** - changelog, docs and credits entries are needed. - [ ] **Improvement to a new (unreleased) feature** - docs and credits entries are needed; no changelog entry (`Skip Changelog`). - [ ] **Bugfix to a new (unreleased) feature** - credits entry is needed; no changelog or docs entries (`Skip Changelog`, `Skip Docs`). - [ ] **Bugfix to an old (released) feature** - changelog and credits entries are needed; no docs entry (`Skip Docs`). - [ ] **Completely minor change (e.g. a typo fix)** - no entries are needed (`Skip Changelog`, `Skip Docs`, `Skip Credits`). ## Description - Ares' Academy feature could previously only add `Academy.Types` and `Academy.Ignore` to buildings. Now, `Academy.Country.Types.*` and `Academy.Country.Ignore.*` can be used to add country-level filters to buildings. In `rulesmd.ini`: ```ini [SOMEBUILDING] ; BuildingType Academy.Country.Types.N= ; List of TechnoType, empty for all types Academy.Country.Ignore.N= ; List of TechnoType ; Where N is 0,1,2...15. ``` - Additionally, `Academy.AllowCountryFilter` must be set for a country to enable this feature. Only countries with this feature enabled will use the academy's `Academy.Country.Types.*` and `Academy.Country.Ignore.*` instead of `Academy.Types` and `Academy.Ignore`. In `rulesmd.ini`: ```ini [SOMECOUNTRY] ; Country Academy.AllowCountryFilter=false ; boolean ``` --------- Co-authored-by: NetsuNegi39 <negi542554365@outlook.com> Co-authored-by: Noble Fish <89088785+DeathFishAtEase@users.noreply.github.com>
because an explicit type list does not need to distinguish scope through `BuildCat` markers
## What kind of change is this? <!-- Tick the row that matches your change. It tells the maintainers which of the changelog, docs and credits checks should run, and which `Skip` labels to apply for the ones that don't. --> - [x] **New feature, vanilla bugfix or enhancement of a released feature** - changelog, docs and credits entries are needed. - [ ] **Improvement to a new (unreleased) feature** - docs and credits entries are needed; no changelog entry (`Skip Changelog`). - [ ] **Bugfix to a new (unreleased) feature** - credits entry is needed; no changelog or docs entries (`Skip Changelog`, `Skip Docs`). - [ ] **Bugfix to an old (released) feature** - changelog and credits entries are needed; no docs entry (`Skip Docs`). - [ ] **Completely minor change (e.g. a typo fix)** - no entries are needed (`Skip Changelog`, `Skip Docs`, `Skip Credits`). ## Description You can now specify custom palette for Custom Insignia in [TechnoTypes](https://phobos.readthedocs.io/zh-cn/latest/Fixed-or-Improved-Logics.html#customizable-veterancy-insignias) and [InsigniaTypes](https://phobos.readthedocs.io/zh-cn/latest/Miscellanous.html#insignia-type). In `rulesmd.ini`: ```ini [SOMETECHNO] ; TechnoType InsigniaPalette=palette.pal ; filename - including the .pal extension InsigniaPalette.Rookie= ; filename - including the .pal extension InsigniaPalette.Veteran= ; filename - including the .pal extension InsigniaPalette.Elite= ; filename - including the .pal extension InsigniaPalette.WeaponN=palette.pal ; filename - including the .pal extension InsigniaPalette.WeaponN.Rookie= ; filename - including the .pal extension InsigniaPalette.WeaponN.Veteran= ; filename - including the .pal extension InsigniaPalette.WeaponN.Elite= ; filename - including the .pal extension InsigniaPalette.PassengersN=palette.pal ; filename - including the .pal extension InsigniaPalette.PassengersN.Rookie= ; filename - including the .pal extension InsigniaPalette.PassengersN.Veteran= ; filename - including the .pal extension InsigniaPalette.PassengersN.Elite= ; filename - including the .pal extension [SOMEINSIGNIATYPE] ; InsigniaType InsigniaPalette=palette.pal ; filename - including the .pal extension InsigniaPalette.Rookie= ; filename - including the .pal extension InsigniaPalette.Veteran= ; filename - including the .pal extension InsigniaPalette.Elite= ; filename - including the .pal extension ``` --------- Co-authored-by: NetsuNegi39 <negi542554365@outlook.com> Co-authored-by: Noble Fish <89088785+DeathFishAtEase@users.noreply.github.com> Co-authored-by: Netsu_Negi <71598172+NetsuNegi@users.noreply.github.com>
…t wall has been destroyed by adjacent damage/crush/wave damage (Phobos-developers#1861) just a bugfix --------- Co-authored-by: Noble Fish <89088785+DeathFishAtEase@users.noreply.github.com>
This reverts commit d6deafc.
This Ares feature was previously reported as not working, but today's follow-up confirmation could not reproduce the corresponding scenario either; all in all, this was probably a wasted effort. This reverts commit 020d342.
…Rangefinding=false
- ApplyPerTargetEffectsOnDetonate=false can now trigger Crit properly - forced Crit.SuppressWhenIntercepted=false when ApplyPerTargetEffectsOnDetonate=false as doc suggested - disable crit calculation if the warhead can't do crit at all - update ApplyPerTargetEffectsOnDetonate doc
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What kind of change is this?
Skip Changelog).Skip Changelog,Skip Docs).Skip Docs).Skip Changelog,Skip Docs,Skip Credits).Description
I tried to address the major part of the bugs and TO-DO list. I also added some minor changes I found necessary for a pleasant experience.
Here the AI changelog (because I used Gemini for this but & tested manually the major part of the before & after the commits for identifying the problems):
Summary of Changes
This PR addresses all outstanding issues, community tester reports, and stability bugs on the
feature/techno-attachmentbranch, bringing it to a fully tested and production-ready state.Stability & Bug Fixes:
UnlimboinAttachmentClass::AI.CargoClassandIsOccupierIgnorableso infantry and vehicles can enter transports and bunkers carrying attachments.DeploysIntocell clearance checks and properly initializedTechnoExt::Deployer.OccupyList.IsCloseEnough()beforeGetFireError(..., true).Update_Facingfrom corrupting child idle turret facings.key.BaseinUnitClass_DrawVXL_ResetKeyForTurretUsefor smooth 3D rendering.Buildupand disappear onSelldown.New Features & Controls:
InheritTarget=yes: Synchronizes child attack mission and target with the parent.Targetable=no: Redirects enemy AI targeting and player orders directly to the parent.Damageable=no: Makes decorative/sub-components invulnerable to direct weapons, redirecting hits to the parent hierarchy.InheritTilt=yes: Transfers slope pitch/roll and 3D tilting to attached children.AttachmentX.IsOnBarrel=yes: Allows attachments to be mounted directly onto elevating/recoiling barrels.The "Cell occupation cleanup" is something I really I had no idea how to test it. The "Airborne detachment physics" was tested only with jumpjets vehicles.