ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/pod/objects.pod
(Generate patch)

Comparing deliantra/server/pod/objects.pod (file contents):
Revision 1.16 by elmex, Wed Dec 20 21:30:42 2006 UTC vs.
Revision 1.24 by root, Sat May 19 00:11:11 2007 UTC

108For players this field reflects the duration of the invisibility 108For players this field reflects the duration of the invisibility
109and is decreased every tick by 1. 109and is decreased every tick by 1.
110 110
111For non-player objects this field is not changed by server ticks. 111For non-player objects this field is not changed by server ticks.
112 112
113=item I<glow_radius> <number>
114
115This field indicates how far an object glows. Default is a radius of 0 (no
116glowing at all).
117
113=item I<speed> <number> 118=item I<speed> <number>
114 119
115If this field is greater than MIN_ACTIVE_SPEED (~0.0001) the object is placed 120If this field is greater than MIN_ACTIVE_SPEED (~0.0001) the object is placed
116on the active object list and will be processed each tick (see also speed_left!). 121on the active object list and will be processed each tick (see also speed_left!).
117 122
194See Flags section below. 199See Flags section below.
195 200
196=item I<activate_on_release> (0|1) (default: 1) 201=item I<activate_on_release> (0|1) (default: 1)
197 202
198Sets the flag FLAG_ACTIVATE_ON_RELEASE. 203Sets the flag FLAG_ACTIVATE_ON_RELEASE.
204See Flags section below.
205
206=item I<is_lightable> (0|1)
207
208Sets the flag FLAG_IS_LIGHTABLE.
199See Flags section below. 209See Flags section below.
200 210
201=item I<editable> (more than deprecated) 211=item I<editable> (more than deprecated)
202 212
203This field had a special meaning for crossedit, which used parts 213This field had a special meaning for crossedit, which used parts
238If FLAG_APPLIED is not set the object is destroyed. 248If FLAG_APPLIED is not set the object is destroyed.
239 249
240=item FLAG_CHANGING 250=item FLAG_CHANGING
241 251
242If the I<state> field of the object is 0 the object will be processed periodically 252If the I<state> field of the object is 0 the object will be processed periodically
243(if speed is set). If the I<state> field is 1 it won't be processed. 253(if I<speed> is set). If the I<state> field is 1 it won't be processed.
254
255This flag indicates that the object is changing into a different object.
256The object has to have the I<other_arch> field set. The object the changing object
257changes into is derived from the archetype in I<other_arch>.
258
259When the object does not have FLAG_ALIVE set the I<food> field will be decremented
260each time the object is processed, and if I<food> reaches 0 one new object will be generated.
261
262When the object has FLAG_ALIVE set the I<food> field is the number of objects that
263will be generated.
264
265After the new object is created the I<hp> field from the old object is copied into
266the new one.
267
268When the old object was a B<LAMP> it's I<food> fields value less 1 will be copied
269to the new object.
244 270
245=item FLAG_IS_A_TEMPLATE (internal use) 271=item FLAG_IS_A_TEMPLATE (internal use)
246 272
247This flag is set on the inventory of generators like B<CREATOR>s and B<CONVERTER>s, 273This flag is set on the inventory of generators like B<CREATOR>s and B<CONVERTER>s,
248or other objects that have the flags FLAG_GENERATOR and FLAG_CONTENT_ON_GEN set. 274or other objects that have the flags FLAG_GENERATOR and FLAG_CONTENT_ON_GEN set.
299=item FLAG_REFL_SPELL 325=item FLAG_REFL_SPELL
300 326
301This flag indicates whether something reflects spells, like spell reflecting 327This flag indicates whether something reflects spells, like spell reflecting
302amuletts. 328amuletts.
303 329
330=item FLAG_IS_LIGHTABLE
331
332This flag indicates whether a B<LIGHTER> can light this object. See also the
333description of the B<LIGHTER> type. How easy you can light an item depends
334partially on the material of the object.
335
304=back 336=back
305 337
306=head2 Description of type specific fields and behaviour 338=head2 Description of type specific fields and behaviour
307 339
308The beginning of the headers of the following subsection 340The beginning of the headers of the following subsection
309are the server internal names for the objects types, see include/define.h. 341are the server internal names for the objects types, see include/define.h.
310 342
343=head3 B<MOOD_FLOOR> - type 65 - change mood of monsters
344
345speed == 0 for triggered mood changes, speed != 0 for non-triggered mood
346changes.
347
348 (based on value that last_sp takes):
349 0: 'furious' Makes all monsters aggressive
350 1: 'angry' As above but pets are unaffected
351 2: 'calm' Makes all monsters unaggressive
352 3: 'sleep' Puts all monsters to sleep
353 4: 'charm' Makes monster into a pet of person
354 who triggers the square. This setting
355 is not enabled for continous operation
356 5: 'destroy mons' destroy any monsters on this space
357 6: 'destroy pets' destroy friendly monsters on this space
358
311=head3 B<TRANSPORT> - type 2 - Player transports 359=head3 B<TRANSPORT> - type 2 - Player transports
312 360
313This type is implemented by the transport extension and has currently no special 361This type is implemented by the transport extension and has currently no special
314fields that affect it. 362fields that affect it.
315 363
316=head3 B<ROD> - type 3 - Rods that fire spells 364=head3 B<ROD>, B<HORN> - type 3, 35 - Rods that fire spells
317 365
318Rods contain spells and can be fired by a player. 366Rods contain spells and can be fired by a player.
319 367
320=over 4 368=over 4
321 369
327the 'use magic item' skill level of the player and 1/10 of the level of the 375the 'use magic item' skill level of the player and 1/10 of the level of the
328rod is added as bonus. 376rod is added as bonus.
329 377
330=item I<hp> <number> 378=item I<hp> <number>
331 379
332The amount of spellpoints this rod has left. 380The amount of spellpoints this rod has left. Recharges at a rate of C<1 +
381maxhp/10> per tick.
333 382
334=item I<maxhp> <number> 383=item I<maxhp> <number>
335 384
336The maximum amount of spellpoints this rod has. 385The maximum amount of spellpoints this rod has.
337 386
515 564
516=over 4 565=over 4
517 566
518=item I<level> <number> 567=item I<level> <number>
519 568
520This field affects the propability of poisoning. The higher the level difference 569This field affects the probability of poisoning. The higher the level difference
521between the one who is hit and the poision the more propable it is the attacked 570between the one who is hit and the poision the more probable it is the attacked
522one will be poisoned. 571one will be poisoned.
523 572
524=item I<slaying> <race> 573=item I<slaying> <race>
525 574
526This field has the usual meaning of 'slaying', when the 575This field has the usual meaning of 'slaying', when the
652the arrows I<dam> field, the bows I<dam> field, the bows I<magic> field 701the arrows I<dam> field, the bows I<dam> field, the bows I<magic> field
653and the arrows I<magic> field. 702and the arrows I<magic> field.
654 703
655=item I<wc> <number> 704=item I<wc> <number>
656 705
657The weapon class of the arrow, which has effect on the propability of hitting. 706The weapon class of the arrow, which has effect on the probability of hitting.
658 707
659It is recomputed when the arrow is being fired by this formula: 708It is recomputed when the arrow is being fired by this formula:
660 709
661 wc = 20 - bow->magic - arrow->magic - (skill->level or shooter->level) 710 wc = 20 - bow->magic - arrow->magic - (skill->level or shooter->level)
662 - dex_bonus - thaco_bonus - arrow->stats.wc - bow->stats.wc + wc_mod 711 - dex_bonus - thaco_bonus - arrow->stats.wc - bow->stats.wc + wc_mod
677Bitfield which decides the attacktype of the damage, see include/attackinc.h 726Bitfield which decides the attacktype of the damage, see include/attackinc.h
678On fireing the I<attacktype> of the bow is added to the arrows I<attacktype>. 727On fireing the I<attacktype> of the bow is added to the arrows I<attacktype>.
679 728
680=item I<level> <number> (interally used) 729=item I<level> <number> (interally used)
681 730
682The level of the arrow, this affects the propability of piercing FLAG_REFL_MISSILE, 731The level of the arrow, this affects the probability of piercing FLAG_REFL_MISSILE,
683see above in the B<ARROW> description. 732see above in the B<ARROW> description.
684 733
685The I<level> is set when the arrow is fired to either the skill level or the 734The I<level> is set when the arrow is fired to either the skill level or the
686shooters level. 735shooters level.
687 736
816Generally this field on weapons is in ranges of 1-30 and decides the slowdown of the 865Generally this field on weapons is in ranges of 1-30 and decides the slowdown of the
817I<sp> regeneration. 866I<sp> regeneration.
818 867
819=item I<body_BODYSLOT> 868=item I<body_BODYSLOT>
820 869
821The part of the body you need to use this weapon, possible values should be 870The part/slot of the body you need to use this weapon, possible values for
822looked up in common/item.C at body_locations. 871C<BODYSLOT> should be looked up in common/item.C at body_locations.
823 872
873The value (in the range C<-7..7>) gives the number of those body slots
874used up by the item (if negative) or the number of body slots this object
875has (if positive, e.g. for monsters or players). The special value C<0>
876indicates that this object cannot equip items requiring these body slots.
877
824=item I<resist_RESISTNACY> <number> 878=item I<resist_RESISTANCY> <number>
825 879
826this is the factor with which the difference of the players resistancy and 100% 880this is the factor with which the difference of the players resistancy and 100%
827is multiplied, something like this: 881is multiplied, something like this:
828 882
829 additional_resistancy = (100 - current_resistanct) * (<number>/100) 883 additional_resistancy = (100 - current_resistancy) * (<number>/100)
830 884
831if <number> is negative it is added to the total vulnerabilities, 885if <number> is negative it is added to the total vulnerabilities,
832and later the total resistance is decided by: 886and later the total resistance is decided by:
833 887
834 'total resistance = total protections - total vulnerabilities' 888 'total resistance = total protections - total vulnerabilities'
835 889
836see also common/living.C:fix_player 890see also common/living.C:fix_player.
837 891
838=item I<path_(attuned|repelled|denied)> 892=item I<path_(attuned|repelled|denied)>
839 893
840this field modifies the pathes the player is attuned to, see include/spells.h PATH_* 894this field modifies the pathes the player is attuned to, see include/spells.h PATH_*
841for the pathes. 895for the pathes.
1012 1066
1013A type for any object that has no special behaviour. 1067A type for any object that has no special behaviour.
1014 1068
1015=head3 B<LAMP> - type 82 - A lamp 1069=head3 B<LAMP> - type 82 - A lamp
1016 1070
1017This object makes light. 1071This object represents a lamp, that can be carried and switched
1072on and off and has a certain amount of fuel in it.
1073
1074A lamp consists of two archetypes: the 'on' archetype and the 'off' archetype.
1075Each of them should point at the other one with it's I<other_arch> field.
1076
1077See the I<other_arch> field for the behaviour of a lamp object when it is applied.
1078
1079If this object has FLAG_IS_LIGHTABLE set the lamp can be turned on and off
1080with a B<LIGHTER>, see also the description of FLAG_IS_LIGHTABLE.
1081
1082=over 4
1083
1084=item I<glow_radius> <number>
1085
1086The radius of the light that the lamp emits, see also I<glow_radius> in the
1087generic object flags description.
1088
1089=item I<speed> <number>
1090
1091If FLAG_CHANGING is set the I<speed> field will indicate how fast the
1092lamp burns it's fuel (I<food>).
1093
1094Setting FLAG_CHANGING makes only sense on the archetype which represents
1095the 'on' state of the lamp.
1096
1097See also the description of FLAG_CHANGING.
1098
1099Lamps which have no FLAG_CHANGING set would also make sense and represent
1100lamps that never burn up.
1101
1102=item I<other_arch> <number>
1103
1104This is the field that points to the 'other' archetype which represents the
1105opposite state of the lamp. The newly from I<other_arch> derived object will
1106replace the current object and will get the value of I<food> of the replaced object.
1107
1108Rationale:
1109
1110When the lamp (on) is applied a new object is derived from the archetype
1111in I<other_arch> and the I<food> value is copied to it ('the fuel is
1112transferred'). The new lamp (off) object has to have a I<other_arch> field
1113which points to the archetype from which a lamp (on) can be derived.
1114
1115=item I<food> <number>
1116
1117This fields stands for the fuel of the lamp.
1118
1119=back
1018 1120
1019=head3 B<DUPLICATOR> - type 83 - Duplicators or: Multiplicators 1121=head3 B<DUPLICATOR> - type 83 - Duplicators or: Multiplicators
1020 1122
1021This type of objects multiplies objects that are above it when it is activated. 1123This type of objects multiplies objects that are above it when it is activated.
1022You can even multiply by 0, which will destroy the object. 1124You can even multiply by 0, which will destroy the object.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines