Difference between revisions of "Actor properties"
From ECWolf Wiki
(Created page with "Properties set various values regarding the behavior of a DECORATE actor. If a propert has the same name as a ZDoom property the behavior shoul...") |
m |
||
(12 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | Properties set various values regarding the behavior of a [[DECORATE]] actor. | + | Properties set various values regarding the behavior of a [[DECORATE]] actor. If a property has the same name as a [[ZDoom:Actor properties|ZDoom property]] the behavior should be assumed to be similar. |
− | == Actor Properties == | + | ==Actor Properties== |
− | === Behavior === | + | ===Behavior=== |
− | * '''Damage''' ''value'' | + | * '''{{LE|Damage}}''' ''value'' |
− | :Specifies the amount of damage the actor will do on impact. If the damage is given in parenthesis the value will be absolute. | + | :Specifies the amount of damage the actor will do on impact. If the damage is given in parenthesis the value will be absolute. Otherwise, it will use the value*random(1,8). |
− | * '''GibHealth''' ''value'' | + | * '''{{LE|GibHealth}}''' ''value'' |
:The negative health threashold before the actor enters its extreme death state. | :The negative health threashold before the actor enters its extreme death state. | ||
− | * '''Health''' ''value''[, ''skill2'' ...] | + | * '''{{LE|Health}}''' ''value''[, ''skill2'' ...] |
− | :Sets the number of hit points the actor has. | + | :Sets the number of hit points the actor has. If multiple health values are given the health will apply to the next successive skill level. Unspecified skills will use the next highest value. (In other words, if only skills 1 and 2 are given skill 3 will use the value for skill2.) |
− | * '''PainChance''' ''value'' | + | * '''{{LE|PainChance}}''' ''value'' |
− | :The chance (out of 256, where 256 = Always) the actor will enter the | + | :The chance (out of 256, where 256 = Always) the actor will enter the Pain state when damaged. |
− | * '''SightTime''' ''value''[, ''random''] | + | * '''{{LE|SightTime}}''' ''value''[, ''random''] |
− | :The number of function calls (usually [[A_Look]]) it takes for the actor to react to seeing the player. | + | :The number of function calls (usually [[A_Look]]) it takes for the actor to react to seeing the player. The random portion is the maximum number of tics to add to the base value. |
− | * '''Speed''' ''value''[, ''runspeed''] | + | * '''{{LE|Speed}}''' ''value''[, ''runspeed''] |
:The amount the actor moves in one Doom tic or one call to [[A_Chase]]. The speed will be changed to runspeed when the actor sees the player. | :The amount the actor moves in one Doom tic or one call to [[A_Chase]]. The speed will be changed to runspeed when the actor sees the player. | ||
− | === Physics === | + | ===Physics=== |
− | * '''Height''' ''value'' | + | * '''{{LE|Height}}''' ''value'' |
:The height of the actor. This is ignored at the time, but should be set to 64 for all solid actors for forwards compatibility. | :The height of the actor. This is ignored at the time, but should be set to 64 for all solid actors for forwards compatibility. | ||
− | * '''Radius''' ''value' | + | * '''{{LE|Radius}}''' ''value' |
:The radius of the actor. | :The radius of the actor. | ||
− | === Attacks === | + | ===Attacks=== |
− | * ''' | + | * '''{{LE|MeleeRange}}''' ''value'' |
− | :Gives the chance | + | :Gives the maximum distance from the center of the monster that a melee attack can reach. |
− | === Sound === | + | * '''{{LE|MinMissileChance}}''' ''value'' |
− | * '''ActiveSound''' ''soundname'' | + | :Gives the minimum chance (0-256) the monster has of not attacking when attempting to attack. Lower values are more aggressive. |
+ | * '''{{LE|MissileFrequency}}''' ''value'' | ||
+ | :Gives a floating point multiplier for the missile chance curve. Higher values will make the monster attack more frequently over longer distances. | ||
+ | |||
+ | ===Sound=== | ||
+ | * '''{{LE|ActiveSound}}''' ''soundname'' | ||
:Defines the sound to randomly play while the actor is active. | :Defines the sound to randomly play while the actor is active. | ||
− | * '''AttackSound''' ''soundname'' | + | * '''{{LE|AttackSound}}''' ''soundname'' |
:Defines the sound to play when the actor attacks. | :Defines the sound to play when the actor attacks. | ||
− | * '''DeathSound''' ''soundname'' | + | * '''{{LE|DeathSound}}''' ''soundname'' |
:Defines the sound to play when [[A_Scream]] is called. | :Defines the sound to play when [[A_Scream]] is called. | ||
− | * '''PainSound''' ''soundname'' | + | * '''{{LE|PainSound}}''' ''soundname'' |
:Defines the sound to play when [[A_Pain]] is called. | :Defines the sound to play when [[A_Pain]] is called. | ||
− | * '''SecretDeathSound''' ''soundname'' | + | * '''{{LE|SecretDeathSound}}''' ''soundname'' |
:Defines the alternative deathsound to play when the level requests it. | :Defines the alternative deathsound to play when the level requests it. | ||
− | * '''SeeSound''' ''soundname'' | + | * '''{{LE|SeeSound}}''' ''soundname'' |
:Defines the sound to play when the actor sees the player. | :Defines the sound to play when the actor sees the player. | ||
− | === Special === | + | ===Rendering=== |
− | * '''DropItem''' ''classname''[, ''probability''[, ''amount'']] | + | * '''{{LE|Scale}}''' ''value'' |
− | :When an actor dies it will drop items based off this property. | + | * '''{{LE|XScale}}''' ''value'' |
− | * '''Points''' ''score'' | + | * '''{{LE|YScale}}''' ''value'' |
+ | :Defines scaling factors for the actor's sprite. Scale sets both xscale and yscale. | ||
+ | ===Special=== | ||
+ | * '''{{LE|Overheadicon}}''' "''TILE'':''value''" | ||
+ | :What overhead icon the actor should show on the automap. | ||
+ | * '''{{LE|DropItem}}''' ''classname''[, ''probability''[, ''amount'']] | ||
+ | :When an actor dies it will drop items based off this property. A probability can be specified (0-255) which indicates the liklihood of the item spawning. Amount is used for ammunition and indicates how much ammo the pickup should give. | ||
+ | * '''{{LE|Points}}''' ''score'' | ||
:Number of points to give to the target when the actor is killed or picked up. | :Number of points to give to the target when the actor is killed or picked up. | ||
− | == Additional Properties == | + | ==Additional Properties== |
The following properties are restricted to a certain set of actors. | The following properties are restricted to a certain set of actors. | ||
− | === Inventory === | + | ===Inventory=== |
− | * '''inventory.amount''' ''amount'' | + | * '''{{LE|inventory.amount}}''' ''amount'' |
:Amount to give when picking up the inventory item. | :Amount to give when picking up the inventory item. | ||
− | * '''inventory.icon''' ''icon'' | + | * '''{{LE|inventory.icon}}''' ''icon'' |
:Icon to show in the players inventory. ''(Partially implemented)'' | :Icon to show in the players inventory. ''(Partially implemented)'' | ||
− | * '''inventory.interhubamount''' ''amount'' | + | * '''{{LE|inventory.interhubamount}}''' ''amount'' |
:Amount to keep in the players inventory between hubs. | :Amount to keep in the players inventory between hubs. | ||
− | * '''inventory.maxamount''' ''amount'' | + | * '''{{LE|inventory.maxamount}}''' ''amount'' |
:Maximum amount of this item the actor can carry at once. | :Maximum amount of this item the actor can carry at once. | ||
− | * '''inventory.pickupsound''' ''soundname'' | + | * '''{{LE|ammo.backpackamount}}''' ''amount'' |
+ | :Amount of the item to be supplied when picking up a backpack. | ||
+ | * '''{{LE|ammo.backpackboostamount}}''' ''amount'' | ||
+ | :How much the backpack should boost the item's capacity. | ||
+ | * '''{{LE|ammo.backpackmaxamount}}''' ''amount'' | ||
+ | :Maximum amount of this item that backpacks can boost it to. | ||
+ | * '''{{LE|inventory.pickupsound}}''' ''soundname'' | ||
:Sound to play when picking up the item. | :Sound to play when picking up the item. | ||
− | === Player === | + | ===Player=== |
− | * '''player.displayname''' ''name'' | + | * '''{{LE|player.damagescreencolor}}''' ''color'' {{New}} |
+ | :Color which will be used when player takes damage. Darker shade of it is used with fizzle fade death type. | ||
+ | * '''{{LE|player.displayname}}''' ''name'' | ||
:Name to show on the class selection screen. Must be unique. | :Name to show on the class selection screen. Must be unique. | ||
− | * '''player.maxhealth''' ''amount'' | + | * '''{{LE|player.forwardmove}}''' ''scale''[, ''run-scale''] |
+ | :Scales the forward/backward movement speed. Moving backwards will still be scaled by 2/3. | ||
+ | * '''{{LE|player.maxhealth}}''' ''amount'' | ||
:Maximum health the class has. | :Maximum health the class has. | ||
− | * '''player.startitem''' ''classname''[, ''amount''] | + | * '''{{LE|player.movebob}}''' ''factor'' |
+ | :Multiplies the strength of the movement bob by the given factor. | ||
+ | * '''{{LE|player.sidemove}}''' ''scale''[, ''run-scale''] | ||
+ | :Scales the strafe speed for the player. | ||
+ | * '''{{LE|player.startitem}}''' ''classname''[, ''amount''] | ||
:Specifies an inventory item to give to the player initially. For ammo an amount can also be specified. | :Specifies an inventory item to give to the player initially. For ammo an amount can also be specified. | ||
− | * '''player.weaponslot''' ''slotnum'', ''classname''[, ...] | + | * '''{{LE|player.viewheight}}''' ''height'' |
+ | :Sets the player's viewheight relative to the ground. | ||
+ | * '''{{LE|player.weaponslot}}''' ''slotnum'', ''classname''[, ...] | ||
:Sets the default weapon slot assignment for the class. | :Sets the default weapon slot assignment for the class. | ||
− | === Weapon === | + | ===Weapon=== |
− | * '''weapon.ammogive1''' ''amount'' | + | * '''{{LE|weapon.ammogive1}}''' ''amount'' |
:Amount of ammo to give when picking up the weapon. | :Amount of ammo to give when picking up the weapon. | ||
− | * '''weapon.ammotype1''' ''classname'' | + | * '''{{LE|weapon.ammotype1}}''' ''classname'' |
:The ammo type to use for this weapon. | :The ammo type to use for this weapon. | ||
− | * '''weapon.ammouse1''' ''amount'' | + | * '''{{LE|weapon.ammouse1}}''' ''amount'' |
:The amount of ammo to use when firing this weapon. | :The amount of ammo to use when firing this weapon. | ||
− | * '''weapon.selectionorder''' ''value'' | + | * '''{{LE|weapon.bobrangex}}''' ''amount'' |
+ | :Range multiplier for horizontal bobbing. Default is 1.0. | ||
+ | * '''{{LE|weapon.bobrangey}}''' ''amount'' | ||
+ | :Range multiplier for vertical bobbing. Default is 1.0. | ||
+ | * '''{{LE|weapon.bobspeed}}''' ''amount'' | ||
+ | :Bobbing speed multiplier. Affects how quickly the bobbing motion occurs. Default is 1.0. | ||
+ | * '''{{LE|weapon.bobstyle}}''' ''style'' | ||
+ | :The type of bobbing to use. Possible values include ''Normal'', ''Inverse'', ''Alpha'', ''InverseAlpha'', ''Smooth'', and ''InverseSmooth''. | ||
+ | :*''Normal'' is the default value and corresponds to the bobbing motion used in all old Doom-engine games. | ||
+ | :*''Alpha'' is the bobbing motion used in the alpha versions of ''Doom''. The weapon sprites are raised when bobbing, not lowered, so they might get cut off if they do not extend enough past the screen. | ||
+ | :*''Smooth'' is a smoother version of the normal style. | ||
+ | :*''Inverse*'' types mirror the motion vertically compared to the non-inverse version. InverseAlpha lowers the weapon sprite while bobbing; the others raise it. | ||
+ | * '''{{LE|weapon.selectionorder}}''' ''value'' | ||
:The priority of this weapon when performing auto selections when running out of ammo. Lower numbers are higher priority. | :The priority of this weapon when performing auto selections when running out of ammo. Lower numbers are higher priority. | ||
− | * '''weapon.slotnumber''' ''slotnum'' | + | * '''{{LE|weapon.slotnumber}}''' ''slotnum'' |
:Assigns this weapon to a slot for all classes. | :Assigns this weapon to a slot for all classes. | ||
− | * '''weapon.slotpriority''' ''value'' | + | * '''{{LE|weapon.slotpriority}}''' ''value'' |
:Decimal value which specifies where to place the weapon in the slot. 0 for the beginning, 1 for the end. | :Decimal value which specifies where to place the weapon in the slot. 0 for the beginning, 1 for the end. | ||
− | * '''weapon.yadjust''' ''amount'' | + | * '''{{LE|weapon.yadjust}}''' ''amount'' |
:Amount of shift the weapon sprite when the hud is off. Positive values shift the sprite down. | :Amount of shift the weapon sprite when the hud is off. Positive values shift the sprite down. | ||
+ | ==Flag Combos== | ||
+ | These properties set a series of flags appropriate for a certain kind of actor. | ||
+ | * '''{{LE|MONSTER}}''' | ||
+ | :* {{flag|CANUSEWALLS}} | ||
+ | :* {{flag|COUNTKILL}} | ||
+ | :* {{flag|ISMONSTER}} | ||
+ | :* {{flag|SHOOTABLE}} | ||
+ | :* {{flag|SOLID}} | ||
+ | * '''{{LE|PROJECTILE}}''' | ||
+ | :* {{flag|MISSILE}} |
Latest revision as of 03:55, 21 January 2023
Properties set various values regarding the behavior of a DECORATE actor. If a property has the same name as a ZDoom property the behavior should be assumed to be similar.
Actor Properties
Behavior
- Damage value
- Specifies the amount of damage the actor will do on impact. If the damage is given in parenthesis the value will be absolute. Otherwise, it will use the value*random(1,8).
- GibHealth value
- The negative health threashold before the actor enters its extreme death state.
- Health value[, skill2 ...]
- Sets the number of hit points the actor has. If multiple health values are given the health will apply to the next successive skill level. Unspecified skills will use the next highest value. (In other words, if only skills 1 and 2 are given skill 3 will use the value for skill2.)
- PainChance value
- The chance (out of 256, where 256 = Always) the actor will enter the Pain state when damaged.
- SightTime value[, random]
- The number of function calls (usually A_Look) it takes for the actor to react to seeing the player. The random portion is the maximum number of tics to add to the base value.
- Speed value[, runspeed]
- The amount the actor moves in one Doom tic or one call to A_Chase. The speed will be changed to runspeed when the actor sees the player.
Physics
- Height value
- The height of the actor. This is ignored at the time, but should be set to 64 for all solid actors for forwards compatibility.
- Radius value'
- The radius of the actor.
Attacks
- MeleeRange value
- Gives the maximum distance from the center of the monster that a melee attack can reach.
- MinMissileChance value
- Gives the minimum chance (0-256) the monster has of not attacking when attempting to attack. Lower values are more aggressive.
- MissileFrequency value
- Gives a floating point multiplier for the missile chance curve. Higher values will make the monster attack more frequently over longer distances.
Sound
- ActiveSound soundname
- Defines the sound to randomly play while the actor is active.
- AttackSound soundname
- Defines the sound to play when the actor attacks.
- DeathSound soundname
- Defines the sound to play when A_Scream is called.
- PainSound soundname
- Defines the sound to play when A_Pain is called.
- SecretDeathSound soundname
- Defines the alternative deathsound to play when the level requests it.
- SeeSound soundname
- Defines the sound to play when the actor sees the player.
Rendering
- Scale value
- XScale value
- YScale value
- Defines scaling factors for the actor's sprite. Scale sets both xscale and yscale.
Special
- Overheadicon "TILE:value"
- What overhead icon the actor should show on the automap.
- DropItem classname[, probability[, amount]]
- When an actor dies it will drop items based off this property. A probability can be specified (0-255) which indicates the liklihood of the item spawning. Amount is used for ammunition and indicates how much ammo the pickup should give.
- Points score
- Number of points to give to the target when the actor is killed or picked up.
Additional Properties
The following properties are restricted to a certain set of actors.
Inventory
- inventory.amount amount
- Amount to give when picking up the inventory item.
- inventory.icon icon
- Icon to show in the players inventory. (Partially implemented)
- inventory.interhubamount amount
- Amount to keep in the players inventory between hubs.
- inventory.maxamount amount
- Maximum amount of this item the actor can carry at once.
- ammo.backpackamount amount
- Amount of the item to be supplied when picking up a backpack.
- ammo.backpackboostamount amount
- How much the backpack should boost the item's capacity.
- ammo.backpackmaxamount amount
- Maximum amount of this item that backpacks can boost it to.
- inventory.pickupsound soundname
- Sound to play when picking up the item.
Player
- player.damagescreencolor color (New from 1.4)
- Color which will be used when player takes damage. Darker shade of it is used with fizzle fade death type.
- player.displayname name
- Name to show on the class selection screen. Must be unique.
- player.forwardmove scale[, run-scale]
- Scales the forward/backward movement speed. Moving backwards will still be scaled by 2/3.
- player.maxhealth amount
- Maximum health the class has.
- player.movebob factor
- Multiplies the strength of the movement bob by the given factor.
- player.sidemove scale[, run-scale]
- Scales the strafe speed for the player.
- player.startitem classname[, amount]
- Specifies an inventory item to give to the player initially. For ammo an amount can also be specified.
- player.viewheight height
- Sets the player's viewheight relative to the ground.
- player.weaponslot slotnum, classname[, ...]
- Sets the default weapon slot assignment for the class.
Weapon
- weapon.ammogive1 amount
- Amount of ammo to give when picking up the weapon.
- weapon.ammotype1 classname
- The ammo type to use for this weapon.
- weapon.ammouse1 amount
- The amount of ammo to use when firing this weapon.
- weapon.bobrangex amount
- Range multiplier for horizontal bobbing. Default is 1.0.
- weapon.bobrangey amount
- Range multiplier for vertical bobbing. Default is 1.0.
- weapon.bobspeed amount
- Bobbing speed multiplier. Affects how quickly the bobbing motion occurs. Default is 1.0.
- weapon.bobstyle style
- The type of bobbing to use. Possible values include Normal, Inverse, Alpha, InverseAlpha, Smooth, and InverseSmooth.
- Normal is the default value and corresponds to the bobbing motion used in all old Doom-engine games.
- Alpha is the bobbing motion used in the alpha versions of Doom. The weapon sprites are raised when bobbing, not lowered, so they might get cut off if they do not extend enough past the screen.
- Smooth is a smoother version of the normal style.
- Inverse* types mirror the motion vertically compared to the non-inverse version. InverseAlpha lowers the weapon sprite while bobbing; the others raise it.
- weapon.selectionorder value
- The priority of this weapon when performing auto selections when running out of ammo. Lower numbers are higher priority.
- weapon.slotnumber slotnum
- Assigns this weapon to a slot for all classes.
- weapon.slotpriority value
- Decimal value which specifies where to place the weapon in the slot. 0 for the beginning, 1 for the end.
- weapon.yadjust amount
- Amount of shift the weapon sprite when the hud is off. Positive values shift the sprite down.
Flag Combos
These properties set a series of flags appropriate for a certain kind of actor.
- MONSTER
- PROJECTILE