|
Atrinik Server 2.5
|
Schooting weapons like bows/crossbows are used to shoot projectiles (arrows/bolts). Shooting weapons and normal (melee) weapons can be wielded both at the same time. Like with any other equipment, stats/bonuses from shooting weapons are directly inherited by the player.
It's very easy to add new pairs of weapons & projectiles. Just set matching <ammunition class> both for shooting weapon and projectile.
Type defined by:
| Attribute | Field | Description |
|---|---|---|
| align | obj::align | X align of the object on the map. |
| alpha | obj::alpha | Alpha value of the object. |
| ammunition class | obj::race | Only projectiles with matching <ammunition class> can be fired with this weapon. For normal bows set "arrows", for normal crossbows set "crossbow bolts". In certain cases, the ammunition class is displayed in the game. Hence, when you create a new ammunition class, choose an intuitive name like "missiles", "spirit bolts" - whatever. |
| anim speed | obj::anim_speed | How fast to play this animation. |
| animation | obj::animation_id | The animation-name defines what animation is displayed for this object in-game. Note that a set animation will overrule the face. |
| base damage | liv::dam | The <base damage> significantly affects the damage done by using this weapon. This damage is added to the projectile damage and then (if <ignore strength> disabled) a bonus according to the player's strength is added. |
| block view | FLAG_BLOCKSVIEW | If an item is set to block view, players (and monsters) cannot see beyond it unless they cross it or manage to stand on top of it. |
| cursed | FLAG_CURSED | The item is cursed. This object can't be removed when wielded or worn (without uncursing it). Remove curse will remove this flag. |
| damned | FLAG_DAMNED | Stronger form of curse. Item can't be removed when wielded or worn. Remove damnation will remove this flag. |
| description | obj::msg | This text describes the weapons's "story". Every decent artifact weapon should have such a description. |
| direction | obj::direction | The object's direction. |
| direction based drawing | obj::draw_direction | If enabled, the object will be shown depending on its direction and player's position. Usually used by wall decoration so the decoration doesn't appear from both sides of the wall. |
| glow radius | obj::glow_radius | If <glow radius> is set to a value greater than zero, the object appears lit up on dark maps. <glow radius> can be a value between 0 and 4, the higher, the more light does the object emit. |
| god-given item | FLAG_STARTEQUIP | A god-given item vanishes as soon as the player drops it to the ground. |
| height | obj::z | Adjusts Y position of the object as it appears on the map. |
| identified | FLAG_IDENTIFIED | If an item is identified, the player has full knowledge about it. |
| ignore strength | obj::no_strength | Usually the player's strength takes effect on the damage done by the shooting weapon. If <ignore strength> is set, the player's strength is ignored. |
| image | obj::face | The image name defines what image is displayed for this object in-game. |
| inv. system object | FLAG_SYS_OBJECT | Marks an object as system object. System objects are ALWAYS invisible and hidden from the players. System objects are put in layer 0. |
| invisible | FLAG_IS_INVISIBLE | Generally makes the object invisible. Invisible objects will be shown if the player has "see invisible" (from an item). To hide objects totally from detection, use "sys_object". |
| is animated | FLAG_ANIMATE | If set, the object is animated and animation is used. Note: Some special objects will use an animation NOT as animation but as frame list. Examples are buttons (which frames are changed by the object status of the button). IS_TURNABLE will enable direction turning for some object types. These flags are all system related. Be VERY careful when changing them. |
| is turnable | FLAG_IS_TURNABLE | System flag. Object can be turned into directions. |
| layer | obj::layer | This is the map layer the object will put in. The selected layer will affect where and how this object is shown on client side. Layer 0 is reserved for sys_object type objects and will NEVER be shown on client side. Layer 1 is for floor objects and layer 2 for floor masks. Layer 3 and 4 are for items on the ground. Layer 5 is for walls, layer 6 is reserved for players and layer 7 is for spell effects and high flying/visible objects like arrows. |
| level required in | obj::item_skill | This attribute specifies in which skill category the player must meet the <required level> in order to use the weapon. It is meaningless when <required level> is zero/unset. For example: <required level> = 15, <level required in> = physical means the player cannot use the weapon unless he is equal or greater than level 15 in the physical skill category. |
| magic bonus | obj::magic | <Magic bonus> improves the quality of the shooting weapon. I'm not sure what exactly is increased - maybe weaponclass? However, <magic bonus> seems to have a little bit of positive influence on your chance to hit. |
| magical | FLAG_IS_MAGICAL | If set, this object counts as "magical". Detect magic or identify will show this flag and the player will see a small blue M in the client's inventory part. |
| material | obj::material_real | The material defines the exact material of which the object consists. It is much more specific than <material class>, however only one material can be selected, not multiple. <material> is not required to be set, it can be left 'undefined'. |
| material class | obj::material | This bitmask-value informs the player of which basic material(s) the object consists. Material class does also affect how likely the object can be destroyed by hazardous spell-effects, like firestorm. |
| name | obj::name | This is the name of the object, displayed to the player. |
| no prayers | FLAG_NO_CLERIC | If enabled, it is impossible for players to use prayers on that spot. |
| no spells | FLAG_NO_MAGIC | If enabled, it is impossible for players to use spells on that spot. |
| no teleport | FLAG_NO_TELEPORT | Marks an object as no teleport object. A no teleport object can't be teleported by teleporter except if the object is inside the inventory of another object which can be teleported. |
| non-pickable | FLAG_NO_PICK | If set, the object cannot be picked up (neither by players nor monsters). |
| number | obj::nrof | This value determines the number of objects in one stack (for example: 100 goldcoins => "number = 100"). You should set this at least to one, for any pickable object - otherwise it won't be mergeable into a stack. |
| one drop | FLAG_ONE_DROP | If this flag is set for an item inside monster's quest_container with the quest being quest item type, the player will only be able to get this item once. |
| permanent cursed | FLAG_PERM_CURSED | The item is permanently cursed. If this flag is set, applying or unapplying it will set "cursed 1" again. This flag can't be removed by remove curse. |
| permanent damned | FLAG_PERM_DAMNED | The item is permanently damned. If this flag is set, applying or unapplying it will set "damned 1" again. This flag can't be removed by remove damnation. |
| player only | FLAG_PLAYER_ONLY | If set, only players can enter the tile the object with this flag is on. |
| reflect missiles | FLAG_REFL_MISSILE | Object will reflect missiles. |
| reflect spells | FLAG_REFL_SPELL | Object will reflect spells. |
| required level | obj::item_level | If <required level> is set to a value greater than zero, players cannot use the weapon unless they meet this level in the skill category specified by <level required in>. For example: <required level> = 15, <level required in> = physical means the player cannot use the weapon unless he is equal or greater than level 15 in the physical skill category. |
| shooting range | obj::last_sp | This value is supposed to be the base <shooting range>. It is added to the base range of the used ammunition (arrow, bolt, etc). |
| shooting speed | liv::sp | After shooting the player can't do a second shoot for some time. This value + the arrow shooting delay (different arrows can have different delay) will determine the time the player must wait. The value is in ticks. 8 ticks are one second. |
| stackable | FLAG_CAN_STACK | If set, the item can be stacked. Careful, don't use on rings or other applyable items, it will lead to side effects. Missiles are designed to be used as stacks for example. |
| start speed | obj::speed_left | When an active object (with 'speed' being non-zero) is put on a map, this value is used as counter. Every 'tick', 'speed' (if negative, value is turned positive before) is added to this value - if it is bigger than 0 the object 'will do something' and this counter is decreased with -1.0. By default a normal object will be put on the map with start speed 0. It 'will do something' with the next coming 'tick'. Setting this value to -1.0 will put it on map but wait one full 'lifetime' round until it does something. A 'fire object' should be put on map with start speed 0 - it should try to burn something in the moment it comes in the game. A bomb for example should be put with speed -1.0 on the map - it will stay then on map until the bomb becomes active - it explodes. The 'lifetime' round is determinated by speed. A speed of 1.0 will give a 'lifetime' round of 1 tick - a speed of 0.01 100 ticks. Special case: A negative speed value will add to start speed a random value between 0.0 to 0.9 . So, a speed of -0.1 with a start speed of -1.0 will result in speed 0.1 and start speed between -1.0 and -0.1. This is useful to let a row of same objects act in different tick ranges. |
| title | obj::title | This is the object's title. Once an object is identified the title is attached to the name. Typical titles are "of Yordan", "of xray vision" etc. |
| unique item | FLAG_UNIQUE | Unique items exist only one time on a server. If the item is taken, lost or destroyed - it's gone for good. |
| unpaid | FLAG_UNPAID | An <unpaid> item cannot be used unless the player carried it over a shop mat, paying the demanded price. Setting this flag makes sense only for items inside shops. |
| value | obj::value | Change an object's value. |
| wc hit range | liv::wc_range | The wc_range of an archery weapon is copied to the projectile which is fired with it. |
| weapon type | obj::sub_type1 | The <weapon type> characterizes the type of shooting weapon this is. Each of these weapon types requires an according skill to be used. |
| weaponclass | liv::wc | This value is supposed to be the base <weaponclass>, but it seems to have rather little effect. High values are good here, low values bad. |
| weight | obj::weight | This value defines the object's weight in gram (1000g is 1kg). Objects with zero weight are not pickable for players. Still, set the "non-pickable" flag for explicitly non-pickable objects. |
| zoom | obj::zoom | How much to zoom the object on the map. |
1.7.4