Upgrades
Flag: | Upgrades |
File(s): | Rules(md).ini |
Values: | unsigned integers |
Special Values: | None |
Default: | 0 |
Applicable to: | BuildingTypes |
This flag specifies the max amount of upgrades this BuildingType can accept. See the tutorial section for more upgrade coding.
Tutorial
If you have ever played Tiberian Sun, you surely remember the upgrade system that GDI had. If you haven't, well, upgrades are buildings placed on top of other buildings that provide things like extra power or different weapons. This effect is fully recreateable in RA2/YR.
; Rules(md).ini [PARENT_BUILDING] Upgrades=3 ;how many upgrade slots does this building have? [UPGRADE_BUILDING] PowersUpBuilding=parent_building ;which building can be upgraded by this upgrade? Takes one building and one building only. PowersUpToLevel=-1 ;-1 means "take first available slot", whereas positive values specify the exact slot# to use. ; Art(md).ini [PARENT_BUILDING] PowerUp#Anim= ;The animation to add to this building when powered up by one level PowerUp#AnimDamaged= ;Damaged version of the animation to add to this building when powered up by one level PowerUp#LocX= ;The x offset from the buildings draw position for this powerup animation PowerUp#LocY= ;The x offset from the buildings draw position for this powerup animation PowerUp#LocZ= ;Adjustment to normal Z when rendering this animation. This could be used to make the animation appear behind the building. PowerUp#YSort= ;Amount to add to anims sorting position so that it renders in the correct order relative to other objects
Where # references a specific upgrade slot (numbered from 1 to rules(md).ini -> [PARENT] -> Upgrades= ).
If the PowerUp#Anim(Damaged) is not specified, it will simply use [UPGRADE]Image= animation. The PowerUp#Anim(Damaged) should be omitted, because specifying the Image= on the upgrade itself is the correct way to do this.
If the Location is unspecified, (0,0,0) will be used.
Known upgrade problems:
- Upgrades can not act as Radars or Spy Satellites.
- Upgrades can not add/override the Template:TTL/Template:TTL= on their parent building.
- Upgrades can not have two different weapons (both Template:TTL and Template:TTL must point to the same weapon, if your upgrade is to provide it). If you set them to be two different weapons, they will fire only if both weapons can hit the target.
- Upgrades can not give the player ability to build new unit(s). If you still build a plugin, each building builded after the plugin causes the new unit(s) to dissapear from the sidebar and makes them unbuildable.
In short, the upgrades only implement functions that were possible in Tiberian Sun.