Jump to content

IsGattling: Difference between revisions

From ModEnc²
en>Testid123
mNo edit summary
en>DeathFish
mNo edit summary
Line 15: Line 15:
==Note==
==Note==
*in the real world '''Infantry''' can use the '''gatling gun''', but I don't know why [[Westwood]] doesn't allow this for [[InfantryTypes]] 🤔([[Westwood]] has no concept of a ''' "Gattling Trooper" ''' so this logic doesn't apply to [[ InfantryTypes]] [[Testid123]]).
*in the real world '''Infantry''' can use the '''gatling gun''', but I don't know why [[Westwood]] doesn't allow this for [[InfantryTypes]] 🤔([[Westwood]] has no concept of a ''' "Gattling Trooper" ''' so this logic doesn't apply to [[ InfantryTypes]] [[Testid123]]).
<!---
 
<font style="color:grey">You should understand that, aside from the most fundamental data, each logic was initially created for a specific unit, especially under the relatively rushed development process of {{yr}}. The names of the functions don't have much to do with any real-world settings. For example, a building with {{f|Armory|yes|link}} isn't actually for units to switch to a certain type of weapon, but rather it's so powerful that it allows any type of unit to practice and gain weapon usage experience here!!!(Heaven knows how many types of weapons are in this armory, even including those technologies that the player doesn't possess.) And {{f|Pushy|yes|link}} doesn't directly give a unit a weapon for pushing; instead, it addresses the limitations when a unit uses a warhead with {{f|DirectRocker|yes|link}}.</font>
<br>That being said, this is not an appropriate place for chatting. If y<font style="color:white">ou're looking for someone to chat with, you can go to 20400prosperous.ys168.com and leave me your email address. Messages are hidden by default, so others won't be able to see them. Also, its interface will remain in English display for you tod</font>ay. :)
<font style="color:grey"><b>(All of this content will be removed later)</b></font>
----
<h3><I>"each logic was initially created for a specific unit"</I></h3><br>
Other extensions such as [[Ares]] allow unlimited use And I really liked that [[Ares]] did that 🙂.
----
It se<font style="color:white">ems you really enjoy using INI combinations to create wonderful effects. Perhaps you could try YR+Ares+KratosPP (if considering online stability, use the last version of DP-KratosLite). If you truly want to turn scattered logic into universal components that can serve as building blocks, you first need to abstract the characteristics of various statements and consider their versatility. For example, how do we add 10 turrets to a unit? Do we have to write something like Turret%dAnim? No, we can attach 10 units to one unit, and these units use their own turrets and weapons. The same idea can be applied to making a building function as multiple types of Factory buildings, or having infantry use Gatling logic, etc. Both past projects like GearZero and Hares, and current ones like Kratos, are doing such things. Ares was actually not like this when it was initially called RockPatch2. It only became useful when it gained the InitialPayload logic in version 0.A, and its Save/Load functionality was completely unusable before version 1.0. The bigger issue was in functional design: they made features based on logic that each community member used only for a specific unit in their own project, and it was even uncertain whether these would be used in the end. These were like sets of molds. For example, Ares' Abductor logic is a product of this approach. Users expected engine developers to do everything for them so that they only needed to fill in a "yes" to complete their work. In the end, the Ares development team was overwhelmed. Completed features were left untested, and a large number of unfinished features consumed users' expectations and patience, almost leading to the death of the project. In fact, in later versions of Ares, it was almost only supported by AlexB. Because the path Ares took at the time had problems. If it was for a specific project, it could be highly customized with various logics, as the project's life cycle and the expansion cycle were consistent, and there would be no maintenance issues within the project's life cycle. However, for a community public project, versatility needs to be considered. Therefore, making highly customized features that cannot be generalized (and in the end, even the original requester may not use them) based on the wishlist is clearly wrong. Phobos is currently facing the same issue. Last month, Phobos' contributors discussed the future direction on GitHub. This time, the problem was too many historical submissions, and many of the highly customized features were useless to others, and the code did not meet current standards, making it difficult to merge and process. In fact, it is still the same problem. The conclusion of the discussion was still that the functions of community projects need to be generalized (whether it is by allowing users to choose the functions they need when generating dlls or providing sufficiently universal but not too troublesome INI statements). In Kratos, there is a complete AE system with concepts such as triggers and effectors, and it also has a complete logic for TechnoType conversion. The ownership transfer of animations is completely normal (if you have studied long enough, you should understand how important this is). You can even perform mathematical counting in AEType, and similarly, you can use various logics to directly recreate another Gatling logic, Spawns logic, more ShapeVehicle attack sequences, etc. So, if you love combining various functions to achieve effects, I really encourage you to give it a try. However, it only comes with a Chinese manual, so you'll probably need to translate it yourse</font>lf.
<font style="color:grey"><b>(All of this content will be removed later)</b></font> --->
{{Bugs}}
{{Bugs}}
Even though there <u><b><font style="Color:blue">IsGattling=yes</font></b></u> But if <u><b>[[VehicleTypes]]</b></u> has<u><b>{{f|IsSimpleDeployer|yes|Link}}</b></u>[[Weapon2]] and [[EliteWeapon2]] formed from the <u><b>{{f|IsSimpleDeployer|yes|Link}}</b></u>
Even though there <u><b><font style="Color:blue">IsGattling=yes</font></b></u> But if <u><b>[[VehicleTypes]]</b></u> has<u><b>{{f|IsSimpleDeployer|yes|Link}}</b></u>[[Weapon2]] and [[EliteWeapon2]] formed from the <u><b>{{f|IsSimpleDeployer|yes|Link}}</b></u>
IsGattling=true can not fall back to secondary weapon slot (even-numbered WeaponX slots) if primary one (odd-numbered) cannot fire at current target
*This bug has been fixed in Phobos Build#34.


There will be no sequence <u><b>[[Weapon4]],[[Weapon6]]</b></u> With logic <u><b><font style="Color:blue">IsGattling=yes</font></b></u> Only <u><b>[[Report]]</b></u> has changed In order of weapons.
There will be no sequence <u><b>[[Weapon4]],[[Weapon6]]</b></u> With logic <u><b><font style="Color:blue">IsGattling=yes</font></b></u> Only <u><b>[[Report]]</b></u> has changed In order of weapons.

Revision as of 14:13, 20 January 2025

Tiberian Dawn Red Alert Tiberian Sun Firestorm Red Alert 2 Yuri's Revenge
Flag: IsGattling
File(s): Rules(md).ini
Values: boolean
Default: no
Applicable to: VehicleTypes, BuildingTypes


If set, specifies that this object uses a Gattling Weapon System, which consists of multiple weapon stages.
Originally used on the Gattling Tank/Cannon.
Odd number weapons are normally assigned to attack only on the ground. (AG=yes)
Even weapons are normally assigned to attack in the sky only. (AA=yes)
Even if you specify even-numbered weapons to attack on the ground but TechnoTypes will only use weapons(Weapon1=, EliteWeapon1= [Odd number weapons]) to attack the target.

Note

Bugs/Side-Effects/Unexpected Limitations Even though there IsGattling=yes But if VehicleTypes hasIsSimpleDeployer=yesWeapon2 and EliteWeapon2 formed from the IsSimpleDeployer=yes

IsGattling=true can not fall back to secondary weapon slot (even-numbered WeaponX slots) if primary one (odd-numbered) cannot fire at current target

  • This bug has been fixed in Phobos Build#34.

There will be no sequence Weapon4,Weapon6 With logic IsGattling=yes Only Report has changed In order of weapons.

  • However, DeployFireWeapon can still be used to control whether to use Weapon 1 or Weapon 2 in deployment mode.

Although it is not possible to replace weapons, the counter accumulates normally (that's why there were changes in the Report), so after undeploy, the corresponding stage's weapon will be used (of course, RateDown caused by deployment interruption firing will also be calculated).

Disable Report for any weapon If it is used with InfantryTypes ;;Solved the problem by

Adding the tag IsGattling=yes (without any additional logic involved) give to TechnoTypes will make those Secondary,EliteSecondary of TechnoTypes Ignored(Except for weapons that come from tags Deployer=yes ,DeployFire=yes).
Adding the tag IsGattling=yes (without any additional logic involved) give to VehicleTypes(UnitNavalTypes) will make those Secondary,EliteSecondary of VehicleTypes(UnitNavalTypes) Ignored(Except for weapons that come from tags Deployer=yes ,DeployFire=yes).
VehicleTypes(UnitNavalTypes) in water can attack on land if their Primary,ElitePrimary can attack on land (in some cases, those units will ignore it). LandTargeting=2 also).