1 |
root |
1.1 |
<html> |
2 |
|
|
<head> |
3 |
|
|
<title>Crossfire Playerbook - Chapter 5</title> |
4 |
|
|
</head> |
5 |
|
|
<body> |
6 |
|
|
|
7 |
|
|
<h1>Skills System</h1> |
8 |
|
|
|
9 |
|
|
<h2><a name="5.1.0">Description</h2> |
10 |
|
|
|
11 |
|
|
Under the skills system the flow of play changes dramatically. Instead of |
12 |
|
|
gaining experience for basically just killing monsters (and disarming traps) |
13 |
|
|
players will now gain a variety of experience through the use of skills. |
14 |
|
|
Some skills replicate old functions in the game (e.g. melee weapons skill, |
15 |
|
|
missile weapon skill) while others add new functionality (e.g. stealing, |
16 |
|
|
hiding, writing, etc). A complete list of the available skills can be found |
17 |
|
|
in table <a href="#table_skill_stats">skill statistics</a>. Appendix <a |
18 |
|
|
href="appB.html">B (skills)</a> contains descriptions for many of the |
19 |
|
|
skills. <p> |
20 |
|
|
|
21 |
|
|
<em>Note:</em> The skills system is enabled as the default option |
22 |
|
|
as of version 0.92.0<p> |
23 |
|
|
<em>Note2:</em> The new skills/experience system is compatible |
24 |
|
|
with character files from at least version 0.91.1 onward. |
25 |
|
|
|
26 |
|
|
<a name="table_skill_stats"> |
27 |
|
|
<center> |
28 |
|
|
<table border=1 cellpadding=5"> |
29 |
|
|
<tr><th>Skill</th><th>Experience Category</th><th colspan=3>Associated Stats</th></tr> |
30 |
|
|
<tr><th></th><th></th><th>Stat 1</th><th>Stat 2</th><th>Stat 3</th></tr> |
31 |
|
|
<!--#include file="skill_stat.html"--> |
32 |
|
|
</table> |
33 |
|
|
Skills</center> |
34 |
|
|
<p> |
35 |
|
|
<h2><a name="5.2.0">About experience and skills</h2> |
36 |
|
|
<h3><a name="5.2.1">Associated and miscellaneous skills</h3> |
37 |
|
|
|
38 |
|
|
In <em>Crossfire</em> two types of skills exist; The first kind, ``associated'' |
39 |
|
|
skills, are those skills which are <em>associated with a category of |
40 |
|
|
experience</em>. The other kind of skill, ``miscellaneous'' skills, |
41 |
|
|
are <em>not</em> related to any experience category. |
42 |
|
|
<p> |
43 |
|
|
The main difference between these two kinds of skills is in the |
44 |
|
|
result of their use. |
45 |
|
|
When associated skills are used <em>successfully</em> experience is |
46 |
|
|
accrued in the experience category <em>associated with that skill</em>. |
47 |
|
|
In contrast, the use of miscellaneous skills <em>never</em> gains |
48 |
|
|
the player any experience regardless of the success in using it. |
49 |
|
|
<p> |
50 |
|
|
<em>Both</em> miscellaneous and associated skills can <em>fail</em>. This means |
51 |
|
|
that the attempt to use the skill was unsuccessful. <em>Both</em> |
52 |
|
|
miscellaneous and associated skills <em>can</em> have certain |
53 |
|
|
primary stats <em>associated</em> with them. These associated stats can help |
54 |
|
|
to determine if the use of a skill is successful and to what |
55 |
|
|
<em>degree</em> it is successful. |
56 |
|
|
<p> |
57 |
|
|
All gained experience is modified by the associated |
58 |
|
|
stats for that skill (table <a href="#table_skill_stats">skill statistics</a>) and then the |
59 |
|
|
appropriate experience category automatically updated as needed. |
60 |
|
|
<p> |
61 |
|
|
<h3><a name="5.2.2">Restrictions on skills use and gaining experience</h3> |
62 |
|
|
|
63 |
|
|
Neither a character's stats nor the character class restricts the |
64 |
|
|
player from gaining experience in any of the experience |
65 |
|
|
categories. Also, there are no inherent |
66 |
|
|
restrictions on character skill use-any player may |
67 |
|
|
use any <em>acquired</em> skill. |
68 |
|
|
<p> |
69 |
|
|
<center> |
70 |
|
|
<table border=1 cellpadding=5><col align=center> |
71 |
|
|
<a name="table_exp_stat_mod"> |
72 |
|
|
<tr><th>Average of associated stats</th> |
73 |
|
|
<th>Experience gained multiplier</th> |
74 |
|
|
<th>Average of associated stats</th> |
75 |
|
|
<th>Experience gained multiplier</th></tr> |
76 |
|
|
<!--#include file="statskmod.html"--> |
77 |
|
|
</table> |
78 |
|
|
How stats associated with a skill modify gained experience<p> |
79 |
|
|
</center> |
80 |
|
|
<p> |
81 |
|
|
<h3><a name="5.2.3">Algorithm for Experience Gain under the skills system</h3> |
82 |
|
|
<p> |
83 |
|
|
Here we take the view that a player must 'overcome an opponent' |
84 |
|
|
in order to gain experience. Examples include foes killed in combat, |
85 |
|
|
finding/disarming a trap, stealing from some being, identifying |
86 |
|
|
an object, etc. |
87 |
|
|
<p> |
88 |
|
|
Gained experience is based primarily on the difference in levels |
89 |
|
|
between 'opponents', experience point value of a ``vanquished foe'', |
90 |
|
|
the values of the associated stats of the skill being used and |
91 |
|
|
two factors that are set internally <em>Note:</em> If you want to |
92 |
|
|
know more about this, check out the skills_developers.doc.) |
93 |
|
|
<p> |
94 |
|
|
Below the algorithm for experience gain is given where player ``pl'' |
95 |
|
|
that has ``vanquished'' opponent ``op'' using skill ``sk'':<p> |
96 |
|
|
<quote> |
97 |
|
|
EXP GAIN = (EXP(op) + EXP(sk)) * lvl_mult * stat_mult<p> |
98 |
|
|
</quote> |
99 |
|
|
where EXP(sk) is a constant award based on the skill used, |
100 |
|
|
EXP(op) is the base experience award for `op' which depends |
101 |
|
|
on what op is (see below), |
102 |
|
|
stat_mult is taken from table <a href="#table_exp_stat_mod">experience modification</a>, |
103 |
|
|
and lvl_mult is: |
104 |
|
|
<p> |
105 |
|
|
For level(pl) < level(op):: <p> |
106 |
|
|
<samp> |
107 |
|
|
lvl_mult = FACTOR(sk) * (level(op) - level(pl))<p> |
108 |
|
|
</samp> |
109 |
|
|
For level(pl) = level(op):: <p> |
110 |
|
|
<samp> |
111 |
|
|
lvl_mult = FACTOR(sk)<p> |
112 |
|
|
</samp> |
113 |
|
|
For level(pl) > level(op):: <p> |
114 |
|
|
<samp> |
115 |
|
|
lvl_mult = (level(op)/level(pl)); <p> |
116 |
|
|
</samp> |
117 |
|
|
where level(op) is the level of `op', level(pl) is the level |
118 |
|
|
of the player, and FACTOR(sk) is an internal factor based on |
119 |
|
|
the skill used by pl. |
120 |
|
|
<p> |
121 |
|
|
There are three different cases for how EXP(op) can be computed: |
122 |
|
|
<ol> |
123 |
|
|
<li> <strong>op is a living creature</strong>: EXP(op) is just the base |
124 |
|
|
experience award given in the <A href="../spoiler-html/spoiler.html">spoiler</a> . |
125 |
|
|
|
126 |
|
|
<li><strong>op is a trap</strong>: EXP(op) = 1/(fraction of the time which the |
127 |
|
|
trap is visible). Thus, traps which are highly <em>visible</em> get <em>lower</em> |
128 |
|
|
values. |
129 |
|
|
|
130 |
|
|
<li><strong>op is not a trap but is non-living</strong>: EXP(op) = internal |
131 |
|
|
experience award of the item. Also, the lvl_mult is multiplied by |
132 |
|
|
any <samp>magic</samp> enchantment on the item. |
133 |
|
|
</ol> |
134 |
|
|
|
135 |
|
|
<p> |
136 |
|
|
<h2><a name="5.3.0">How skills are used</h2> |
137 |
|
|
<centeR> |
138 |
|
|
<a name="table_skill_cmd"> |
139 |
|
|
<table cellpadding=5 border=1> |
140 |
|
|
<tr><td><samp>skills</samp></td><td> This command lists all the player's |
141 |
|
|
current known skills, their level |
142 |
|
|
of use and the associated experience |
143 |
|
|
category of each skill. </td></tr> |
144 |
|
|
|
145 |
|
|
<tr><td> <samp>ready_skill <skill></samp></td><td> This command changes |
146 |
|
|
the player's current readied skill to |
147 |
|
|
<samp><skill></samp>. </td></tr> |
148 |
|
|
|
149 |
|
|
<tr><Td> <samp>use_skill <skill> <string></samp></td><td> This |
150 |
|
|
command changes the player's current |
151 |
|
|
readied skill <em>and</em> then executes it |
152 |
|
|
in the facing direction of the player. |
153 |
|
|
Similar in action to the <samp>invoke</samp> |
154 |
|
|
command. </td></tr> |
155 |
|
|
</table> |
156 |
|
|
Skills commands<p> |
157 |
|
|
</center> |
158 |
|
|
|
159 |
|
|
Three player commands are related to skills use: <samp>ready_skill</samp>, |
160 |
|
|
<samp>use_skill</samp>, and <Samp>skills</samp> (see table <a |
161 |
|
|
href="#table_skill_cmd">skill commands</a>). Generally, a player will use a |
162 |
|
|
skill by first readying the right one, with the <samp>ready_skill</samp> |
163 |
|
|
command and then making a ranged ``attack'' to activate the skill; using |
164 |
|
|
most skills is just like firing a wand or a bow. In a few cases however, a |
165 |
|
|
skill is be used just by having it <em>readied</em>. For example, the |
166 |
|
|
<samp>mountaineer</samp> skill allows favorable movement though hilly |
167 |
|
|
terrain while it is readied.<p> |
168 |
|
|
|
169 |
|
|
To change to a new skill, a player can use either the <samp>use_skill</samp> |
170 |
|
|
or <samp>ready_skill</samp> commands, but note that the use of several |
171 |
|
|
common items can automatically change the player's current skill too. |
172 |
|
|
Examples of this include readying a bow (which will cause the code to make |
173 |
|
|
the player's current skill <samp>missile_weapons</samp>) or readying a melee |
174 |
|
|
weapon (current skill auto-matically becomes <samp>melee weapons</samp>). |
175 |
|
|
Also, some player actions can cause a change in the current skill. Running |
176 |
|
|
into a monster while you have a readied weapon in your inventory causes the |
177 |
|
|
code to automatically make our current skill <samp>melee weapons</samp>. As |
178 |
|
|
another example of this-casting a spell will cause the code to switch the |
179 |
|
|
current skill to <samp>wizardry</samp> or <samp>praying</samp> (as |
180 |
|
|
appropriate to the spell type).<p> |
181 |
|
|
|
182 |
|
|
It is not possible to use more than one skill at a time.<p> |
183 |
|
|
|
184 |
|
|
<h2><a name="5.4.0">Acquiring skills</h2> |
185 |
|
|
|
186 |
|
|
Skills may be gained in two ways. In the first, new skills may |
187 |
|
|
<em>learned</em>. This is done by reading a ``skill scroll'' and the |
188 |
|
|
process is very similar to learning a spell. Just as in attempts to learn |
189 |
|
|
incantations, success in learning skills is dependent on a random test based |
190 |
|
|
on the learner's INT. Using your INT stat, look in the learn% column in |
191 |
|
|
table <a href="chap2.html#table_pri_eff">primary stat effects</a> to find |
192 |
|
|
your % chance of learning a skill. Once you hit 100%, you will always be |
193 |
|
|
successfull in learning new skills. <p> |
194 |
|
|
|
195 |
|
|
The acquisition of a <em>skill tool</em> will also allow the player to use |
196 |
|
|
a new skill. An example of a skill tool is ``lockpicks'' |
197 |
|
|
<!--#include file="lockpicks.html"--> |
198 |
|
|
(which allow the |
199 |
|
|
player to pick door locks). The player merely applies the skill |
200 |
|
|
tool in order to gain use of the new skill. If the tool is unapplied, |
201 |
|
|
the player loses the use of the skill associated with the tool. |
202 |
|
|
<p> |
203 |
|
|
|
204 |
|
|
After a new skill is gained (either learned or if player has an applied |
205 |
|
|
skill tool) it will appear on the player's skill roster (use the 'skills' |
206 |
|
|
command to view its status). If the new skill is an associated skill, then |
207 |
|
|
it will automatically be gained at the player's current level in the |
208 |
|
|
appropriate experience category. For example, Stilco the Wraith, who is 5th |
209 |
|
|
level in <samp>agility</samp>, buys a set of lockpicks and applies them. He |
210 |
|
|
may now use the skill lockpicking at 5th level of ability since that is an |
211 |
|
|
<samp>agility</samp> associated skill. |
212 |
|
|
<p> |
213 |
|
|
<a href="handbook.html"><img src="fig/book.gif">Back to table of contents</a><br> |
214 |
|
|
<a href="chap4.html"><img src="fig/stairup.gif">Go to chapter 4</a><br> |
215 |
|
|
<a href="chap6.html"><img src="fig/stairdown.gif">Go to chapter 6</a><br> |