Difference between revisions of "SKILL"
From SphereWiki
MrSugarCube (talk | contribs) m |
m (→Properties: clarification of GAINRADIUS (from revision notes.)) |
||
| Line 25: | Line 25: | ||
| [[FLAGS]] || RW || Gets or sets skill attributes. | | [[FLAGS]] || RW || Gets or sets skill attributes. | ||
|- | |- | ||
| − | | [[GAINRADIUS]] || RW || Gets or sets a difficulty radius | + | | [[GAINRADIUS]] || RW || Gets or sets a difficulty "radius" that prevents characters from gaining skill when performing "easy" actions. Skillgain will only be calculated if the current skill is less than the actual difficulty + GAINRADIUS. If skillgain is aborted due to GAINRADIUS not met, a message will only be displayed if TAG.NOSKILLMSG=1 on character. |
|- | |- | ||
| [[GROUP]] || RW || Get or sets the skill's group flags. | | [[GROUP]] || RW || Get or sets the skill's group flags. | ||
| Line 45: | Line 45: | ||
| [[VALUES]] || RW || Gets or sets a modifier for the value of items that are created using the skill. Accepts multiple values to adjust based on skill level. | | [[VALUES]] || RW || Gets or sets a modifier for the value of items that are created using the skill. Accepts multiple values to adjust based on skill level. | ||
|} | |} | ||
| − | |||
| − | |||
==Triggers== | ==Triggers== | ||
Revision as of 18:01, 23 October 2010
A skill block defines the basic properties and behaviours of a skill.
Contents
Properties
The following properties are available when defining a skill:
| Name | Read/Write | Description |
| ADV_RATE | RW | Gets or sets the skill's advance rate. Accepts multiple values to adjust based on skill level. |
| BONUS_DEX | RW | Gets or sets a multiplier for how much dexterity affects a character's non-real skill amount, and affects stat gain. |
| BONUS_INT | RW | Gets or sets a multiplier for how much intelligence affects a character's non-real skill amount, and affects stat gain. |
| BONUS_STATS | RW | Gets or sets a modifier for gaining stats when using the skill. |
| BONUS_STR | RW | Gets or sets a multiplier for how much strength affects a character's non-real skill amount, and affects stat gain. |
| DELAY | RW | Gets or sets how long it takes to attempt to complete the skill, in tenths of a second. Accepts multiple values to adjust based on skill level. |
| EFFECT | RW | Gets or sets a value which effects skills in different ways. (Crafting = Resource Loss % on Fail, Healing = Amount Healed). Accepts multiple values to adjust based on skill level. |
| FLAGS | RW | Gets or sets skill attributes. |
| GAINRADIUS | RW | Gets or sets a difficulty "radius" that prevents characters from gaining skill when performing "easy" actions. Skillgain will only be calculated if the current skill is less than the actual difficulty + GAINRADIUS. If skillgain is aborted due to GAINRADIUS not met, a message will only be displayed if TAG.NOSKILLMSG=1 on character. |
| GROUP | RW | Get or sets the skill's group flags. |
| KEY | RW | Gets or sets the skill's defname. |
| NAME | RW | Gets or sets the name of the skill. |
| STAT_DEX | RW | Gets or sets the maximum dexterity a character can gain up to when using this skill. |
| STAT_INT | RW | Gets or sets the maximum intelligence a character can gain up to when using this skill. |
| STAT_STR | RW | Gets or sets the maximum strength a character can gain up to when using this skill. |
| TARGET_PROMPT | RW | Gets or sets the message shown when the character selects the skill, and also forces characters to select a target when non-empty. |
| TITLE | RW | Gets or sets the professional title for the skill. |
| VALUES | RW | Gets or sets a modifier for the value of items that are created using the skill. Accepts multiple values to adjust based on skill level. |
Triggers
The following table lists all of the triggers that can be placed under a skill definition. All of the triggers here have an equivalent @Skill trigger on the character object.
| Name | Description |
| @Abort | Fires when a character aborts an attempt at using the skill. |
| @Fail | Fires when a character fails an attempt at using the skill. |
| @Gain | Fires when a character is given the chance to gain in the skill. |
| @PreStart | Fires when a character starts to use the skill, before any hardcoded behaviour takes place. |
| @Select | Fires when a character selects the skill from their skill menu. |
| @Start | Fires when a character starts to use the skill. |
| @Success | Fires when a character succeeds an attempt at using the skill. |
| @UseQuick | Fires when a character quickly uses the skill, without changing their ACTION. |
Examples
//
// Alchemy skill from the default script pack.
//
[SKILL 0]
DEFNAME=SKILL_ALCHEMY
KEY=Alchemy
TITLE=Alchemist
DELAY=3.0,1.0
ADV_RATE=10.0,200.0,800.0
VALUES=1,20,100
BONUS_STATS=10
BONUS_STR=0
BONUS_DEX=20
BONUS_INT=80
STAT_STR=5
STAT_INT=75
STAT_DEX=40
ON=@Fail
SRC.SYSMESSAGE You toss the failed mixture from the mortar, unable to create a potion from it.
ON=@Abort
SRC.SYSMESSAGE You fail to complete the potion.