|
Atrinik Server 2.5
|
#include <object.h>
| struct obj* obj::above |
| struct obj* obj::active_next |
| struct obj* obj::active_prev |
X align of the object on the actual map. Similar to object::z, a value of 100 = object is moved 100 pixels to the right, -50 and the object is moved 50 pixels to the left.
Object's alpha value.
Animation speed in ticks
An index into the animation array
Artifact name that was applied to this object by give_artifact_abilities().
| uint8 obj::attack[NROFATTACKS] |
our attack values - range from 0%-125%. (negative values makes no sense). Note: we can in theory allow 300% damage for a attacktype. all we need is to increase sint8 to sint16. That's true for resist & protection too. But it will be counter the damage calculation. Think about a way a player deals only 10 damage at base but can grab so many items that he does 3000% damage. that's not how this should work. More damage should come from the stats.dmg value - NOT from this source. The "125% max border" should work nice and the 25% over 100% should give a little boost. I think about to give player crafters the power to boost items to 100%+.
What kind of attack movement
| Type(s) | Description |
|---|---|
| Monster & NPC, Spawn Point Monster | Distance attack: Move toward a player if far, but mantain some space. Run away: Run but attack if player catches up to object. Hit and run: Run to then hit player then run away cyclicly. Wait and hit: Wait for player to approach then hit, move if hit. Rush: Rush toward player blindly, similiar to dumb monster. Always run: Always run never attack. Wait and hit from distance: Attack from a distance if hit. Keep distance: Do not try to move towards player if far. |
| struct obj* obj::attacked_by |
Various behavior flags.
| Type(s) | Description |
|---|---|
| Monster & NPC, Spawn Point Monster | This entry defines what kind of actions/behavior the monster is capable of. |
| struct obj* obj::below |
How much weight this object contains (of objects in inv). This is not copied by memcpy(), since the memcpy() doesn't actually copy over the inventory either, so it would create bogus carrying weight in some cases.
| Type(s) | Description |
|---|---|
| Monster & NPC, Spawn Point Monster | If a monster has something in the inventory, this value can be set to reflect the slowdown due to the carried weight. |
| struct obj* obj::chosen_skill |
| void* obj::custom_attrset |
Means the object is moving that way.
| struct obj* obj::enemy |
What count the enemy has
| Type(s) | Description |
|---|---|
| Spawn Point Monster | The spawn point will use a random number between 0-9999 to find a usable mob to spawn. If this value is nearest but not higher, this mob is selected. A number of 0 and only one mob in the spawn point means this mob is spawned always. A number of 5000 means a 50% chance to spawn. |
| struct obj* obj::exp_obj |
Struct pointer to the 'face' - the picture(s)
| uint32 obj::flags[NUM_FLAGS_32] |
Object is a light source
Condition of repair of an item - from 0 to 100% item_quality
| Type(s) | Description |
|---|---|
| Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Helmet, Shield | This is the real quality status of item - showing how much it is used up. The quality value represents a percent value affecting the item's stats. Lower quality than 100% means effects like protection/damage etc are reduced. |
| Monster & NPC, Spawn Point Monster | Level of the monster relative to map difficulty. |
Level needed to use or apply this item
| Type(s) | Description |
|---|---|
| Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Helmet, Shield | If <required level> is set to a value greater than zero, players cannot wear this item 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 wear the item unless he is equal or greater than level 15 in the physical skill category. |
| Monster & NPC, Spawn Point Monster | If random_move is set, this determines value of Y position the creatures can move away from the spawn point (if it has one). |
| Shooting Weapon | 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. |
| Weapon | 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 level than 15 in the physical skill category. |
| Client Map Info | Number of tiles around the info object (including the info object's tile) that are within the tooltip's area. |
Quality of an item in range from 0-100
| Type(s) | Description |
|---|---|
| Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Helmet, Shield | Every item has a natural material quality, ranging from 0 to 100. This is a percent factor, which affects the base stats of the item. However, <max. quality> does not represent the actual state of the item but the best <actual quality> value this item can ever have. Basic quality is 80%. If the item is made of cheap material, the value may be lower. If made of very fine material it may be 100%. |
Item crafted from race x. "orcish xxx", "dwarven xxxx"
| Type(s) | Description |
|---|---|
| Monster & NPC, Spawn Point Monster | If random_move is set, this determines value of X position the creatures can move away from the spawn point (if it has one). |
if set and item_level, item_level in this skill is needed
| Type(s) | Description |
|---|---|
| Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Helmet, Shield | This attribute specifies in which skill category the player must meet the <required level> in order to wear the item. It is meaningless when <required level> is zero/unset. For example: <required level> = 15, <level required in> = physical means the player cannot wear the item unless he is equal or greater than level 15 in the physical skill category. |
| Shooting Weapon | 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. |
| Weapon | 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 level than 15 in the physical skill category. |
| Client Map Info | If not 0, will draw an outline around the tooltip's edges with the specified border size. |
How long since we last ate
| Type(s) | Description |
|---|---|
| Applyable Light | If set this light will wear out. If not set, it is a permanent light and <Ticks of Light> counter is ignored. |
| Altar, Altar Trigger, Button, Trigger Button, Detector, Handle, Handle Trigger, Inventory Checker, Pedestal, Trigger Pedestal | Depending on the target object, setting this flag or not can have different effects. See the object you are connecting to this. |
| Disease | Every time the disease "moves", the player's food is reduced by the value of <food depletion>. For negative values, a %-based amount is taken. |
| Exit | This flag defines the destined map as "personal unique map". If set, there will be a seperate version of that map for every player out there. This feature is used for the permanent apartments. It should not be used for anything else other than apartments, since Atrinik is a multiplayer game. An exit pointing outside of a personal unique map must have the "unique destination" flag unset. |
| Magic Mirror | How much to adjust height of objects using height on the mirrored tile by. |
| Magic Wall | If set the wall is "on" and casts spells - if not set the wall is "off" and doesn't cast spells (but can be turned on). |
| Spawn Point Monster | The monster will: a) Only spawn when this darkness setting is the same as the map's darkness b) If the monster is spawned already and the darkness changes to an invalid value, the spawn point will remove the monster. A positive darkness value means "if higher". A negative darkness value means "if lower" from absolute value. A value of 4 means monster will be shown until darkness drops to 4 or lower. A value of -4 means monster will be shown until darkness is 4 or higher. 0 means "show always" (default). |
| Potion | If this value is 0, the potion will invoke a spell effect when used. If set to -1, the potion will create a force when used and grant the user with the effects set (stats bonuses, resists, etc). Values higher than 0 are used internally for special potions - don't play around with it here! |
as last_sp, except for grace
| Type(s) | Description |
|---|---|
| Ability | The casting delay this spell/ability invokes to a monster using it. This is cumulatively added to the monster's default casting delay. |
| Disease | The <attenuation> value reduces the diseases' <infectiousness> everytime it infects someone new. This limits how many generations a disease can propagate. |
| Horn, Rod, Wand & Staff | When fired/used, this value in ticks defines how long it needs before the player can fire it again. The value is in ticks. 8 ticks are a second. |
| Inventory Checker | If set, only players meeting the match criteria can pass through that space. If unset (default), the inventory checker acts like a trigger/button. |
| Spawn Point | Defines the base spawn chance. Value 0 means spawn try every active phase. -1 means no spawn try. Values > 0 means spawn chance is 1 / value + 1. |
| Potion | If throwable, this value in ticks defines how long it needs before the player can throw something again. The value is in ticks. 8 ticks are a second. |
| Projectile | After shooting the player can't do a second shoot for some time. This value + the bow shooting delay (different bows can have different delay) will determine the time the player must wait. The value is in ticks. 8 ticks are one second. |
Last healed. Depends on constitution
| Type(s) | Description |
|---|---|
| Brestplate Armour | This poses a penalty to spell regeneration speed, for wearing the armour. The bigger the spellpoint penalty, the worse. |
| Boots | This poses a penalty to spell regeneration speed, for wearing the boots. The higher the spellpoint penalty, the worse. |
| Helmet | This poses a penalty to spell regeneration speed, for wearing the helmet. The higher the spellpoint penalty, the worse. |
| Inventory Checker | <Remove match> means remove object if found. Setting this is usually not recommended because inventory checkers are in general invisible. So, unlike for altars/locked doors, the player won't expect to lose an object when walking over that square. And he doesn't even get a message either. So, *if* you enable <remove match>, make sure to inform the player what's going on! |
| Magic Mirror | How much to zoom the mirrored objects. |
| Spawn Point | Size of an area around the spawn point where the mob should be placed randomly. If this value is set to 0, spawn point will find no free place. If set to 1, it tests the space where the spawn point itself is. Increasing the value will start a search around the spot, starting in the south. value 2 searches spot 0, -1, value 3 spot 1, -1, 4 = 0, -1, etc. |
| Poison Food | When a poison force is created after someone is affected by this poison food this value sets how often the DOT force applies damage before it wears out. (DOT = Damage Over Time) |
| Client Map Info | Adjusts the label's tile X position. |
As last_heal, but for spell points
| Type(s) | Description |
|---|---|
| Applyable Light | If <glow radius> is set to a value not zero, the object appears lit up on dark maps. The higher the value, the more light does the object emit. The current reasonable max value is 9. If the value is 0, the light can't be lit and can't be applied. This is used for burned out lights like torches. If the value is negative, this object will invoke darkness. |
| Altar | The spell will be cast in this direction. Note, that if the altar should cast a healing spell on the player, this must be direction 0. For other spells like firestorm, it should be set a valid point of the compass direction. |
| Altar Trigger | If this attribute is enabled, the altar trigger won't push the connected value by altar reset. Only ONCE by dropping the sacrifice. This is typically used when the altar is connected to a creator, e.g. for selling tickets. If this attribute is disabled (default), the altar trigger will push the connected value TWICE per sacrifice: First by dropping sacrifice, second by reset. This mode is typically used for altars being connected to gates, resulting in the gate being opened and closed again. |
| Brestplate Armour | Slowdown penalty reduces the player's walking speed while wearing the armour. Higher values are worse - zero is the best. |
| Boots | Slowdown penalty reduces the player's walking speed when wearing the boots. Higher values are worse - zero is best. |
| Helmet | Slowdown penalty reduces the player's walking speed when wearing the helmet. Higher values are worse - zero is best. |
| Disease | If set, the disease imposes a <slowdown> penalty while being infected. The player's speed is reduced by <slowdown> % of normal value. |
| Floor | This value sets the basic light/darkness value of tile space. This is how much this space is naturally glowing. This is NOT the light source value. This value can be negative (shadow) and is directly added to a tile light value. |
| Inventory Checker, Sign & MagicMouth | Enabled means having that object is a match. Disabled means not having that object is a match. |
| Mood Floor | <mood> is used to determine what will happen to the monster when affected by the mood floor: furious: Makes all monsters aggressive. angry: As above but pets are unaffected. calm: Makes all monsters unaggressive. sleep: Puts all monsters to sleep. charm: Turns monster into a pet of person who triggers the square. This setting is not enabled for continous operation, you need to insert a <connection> value! |
| Pit, Trapdoor | If the transfer flag is set, the destination values are used in a special way - instead of marking a fixed position, they are used to define a "drop area" where the player drops randomly. |
| Potion | This value is supposed to be the base <throw range>. The value is only valid for potions which can be thrown. |
| Projectile | This value is supposed to be the base <throw or shooting range>. For ammunition like arrows or bolts, the value is a base value which is added to the shooting weapon base value (bow, crossbow, sling). |
| Shooting Weapon | This value is supposed to be the base <shooting range>. It is added to the base range of the used ammunition (arrow, bolt, etc). |
| Client Map Info | Adjusts the label's tile Y position. |
the layer in a map, this object will be sorted in
the level of this object (most used for mobs & player)
| Type(s) | Description |
|---|---|
| Altar | Set the power level of the spell. |
| Book | If this value is set to be greater than zero, the player needs a certain literacy level to succeed reading the book. The book can be read if: mental level is greater than <literacy level> - 5. Adding level to a book can be a nice idea, personally I like it when a player needs more than his fighting skills to solve a quest. However, keep the book's level at least below 15 because it is quite difficult to gain high mental levels. |
| Creator | The created object will be of that level. If zero/unset, the standard level of the archetype is used. (Only used if "create arch" is set) |
| Disease | The <plague level> is proportional to the disease's deadliness. This mainly reflects in the <damage>. It has no effect on most other symptoms. Neverthless, it is a very important value for all damage-inflicting diseases. |
| Duplicator | The number of items in the target pile will be multiplied by this value. If it is set to zero, all target objects will be destroyed. |
| Flesh | The <flesh level> is not visible to the players and it affects only dragon players. Normally this value reflects the level of the monster from which the flesh item originates. Dragon players always search for flesh of highest level possible, because it bears the best chance to gain high resistances. |
| Damager | Level of the damager. Affects the chance for the damager to miss (same chance as spells). |
| Holy Altar | To re-consecrate an altar, the player's wisdom level must be as high or higher than this value. In that way, some altars can not be re-consecrated, while other altars, like those in dungeons and apartments could be. Altars located in temples should have at least <reconsecrate level> 200. Some characters might need those altars, they would be very unhappy to see them re-consecrated to another cult. |
| Horn | The casting level of the <spell> determines it's power. For attack spells, level should not be set too high. |
| Rod | The casting level of the <spell> determines it's power. For attack spells, level should be set to something reasonable. |
| Magic Wall | The wall will cast it's spells at level <spell level>. "level 1" walls cast spells at minimal strength. "level 115" walls cast deadly spells. Arch default is level 1 - you should always set this value to meet the overall difficulty of your map. |
| Monster & NPC, Spawn Point Monster | A monster's <level> is the most important attribute. <level> affects the power of a monster in various ways, and also how much experience the player gains for killing the monster. |
| Mover | If <move players> is enabled, both players and monsters will be moved. In the arches' default it is disabled - thus ONLY monsters get moved. Remember that "monsters" include NPCs. This feature provides you with the possibility to make NPCs literally "come to life". Example: The player is talking with an NPC, speaking a certain keyword. This triggers a magic ear and activates creators, creating (per default: monster-only) movers under the NPC's feet. The NPC starts "walking" on a predefined route! |
| Poison Food | Set the power level of the poison. |
| Potion | If the potion contains a spell, the spell is cast at this level. For other potions it should be set to at least 1. |
| Rune & Trap | This value sets the level the rune will cast the spell it contains at, if applicable. A level 99 rune casts a very, very mean spell of whatever. (<rune level> 0 runes won't detonate at all!) Level also affects how easily a trap may be found and disarmed, and how much experience the player gets for doing so. Beware: High level runes can be quite a cheap source of experience! So either make them tough, or keep the level low. |
| Scroll | The spell of the scroll will be casted at this level. This value should always be set, to at least 1. |
| Wand & Staff | The <casting level> of the wand determines it's power. |
Any magical bonuses to this item
| Type(s) | Description |
|---|---|
| Bracers | <Magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armour-class bonus on the bracers. |
| Brestplate Armour | <Magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armour-class bonus on the armour. |
| Boots | <Magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armour-class bonus on the boots. Important: <magic bonus> on boots has no effect if there is no <armour class> set. It only works in combination with <armour class>. |
| Cloak | <Magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armour-class bonus on the cloak. Important: <magic bonus> on cloaks has no effect if there is no <armour class> set. It only works in combination with <armour class>. |
| Girdle | <magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armour-class bonus on the girdle. Important: <magic bonus> on girdles has no effect if there is no <armour class> set. It only works in combination with <armour class>. |
| Gloves | If the gloves provide <armour class>, <magic bonus> will increase it. If the gloves have <weapon class> instead, then <magic bonus> will increase that. |
| Helmet | <Magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armour-class bonus on the helmet. Important: <magic bonus> on helmets has no effect if there is no <armour class> set. It only works in combination with <armour class>. Crowns for example typically provide no <amour class>. |
| Shield | <magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armour-class bonus on the shield. |
| Disease | <Infection range> sets the range at which infection may occur. If positive, the <infection range> is level dependant - if negative, it is not. E.g. "<infection range> -6" means creatures can be infected in six square range, and <plague level> doesn't modify that. |
| Monster & NPC, Spawn Point Monster | The casting delay this monster invokes every cast. This is cumulatively added to the spell's default casting delay. |
| Projectile | Magic bonus increases chance to hit and damage a little bit. |
| Shooting Weapon | <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. |
| Weapon | For a weapon, magic bonus works just like weapon class, except that magic bonus can be improved by the gods or reduced by acid. Hence, it is less useful than direct weapon class value on a weapon. |
What materials this object consists of
This holds the real material value like what kind of steel
What kind of movement
| Type(s) | Description |
|---|---|
| Monster & NPC, Spawn Point Monster | Pet movement: The monster does pet movement. Small circle: Will move in a circle until it is attacked. Large circle: Same as small circle, but a larger circle is used. Short horizontal pace: Will pace back and forth until attacked. Long horizontal pace: Like short one, but the length of the horizontal pace area is longer. Random direction: Will go in a random direction. Random walk: Constantly move in a different random direction. Short vertical pace: Like short horizontal pace, but vertical instead. Long vertical pace: Like short one, but the length of the vertical pace area is longer. Use waypoints: The monster uses waypoints, if it has any. |
If this is a book/sign/magic mouth/etc
| Type(s) | Description |
|---|---|
| Misc Object, Floor, Gems, Jewels, Nuggets | This text may describe the object. |
| Altar, Altar Trigger | This text will be displayed to the player in the exact moment when the altar is activated. |
| Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Helmet, Shield | This text describes the item's "story". Every decent artifact should have such a description. |
| Clock, Button, Trigger Button, Flesh, Handle, Handle Trigger | This text may describe the item. |
| Book | This is the text that appears "written" in the book. |
| Container | This text may contain a description of the container. |
| Converter | This text may contain a description of the converter. |
| Disease | This text is displayed to the player every time the symptoms strike. |
| Exit | If set, this message will be displayed to the player when he applies the exit. This is quite useful to throw in some "role-play feeling": "As you enter the dark cave you hear the sound of rustling dragonscales...". |
| Horn | This text may contain a description of the horn. |
| Rod | This text may contain a description of the rod. |
| Locked Door | When a player is trying to open the door without carrying the appropriate key, this text is displayed to the player. This is a good opportunity to place hints about the special key needed to unlock the door. |
| Magic Ear, Monster & NPC, Spawn Point Monster | This textfield contains the keyword-matching-syntax. The text should have the following format: "@match <keyword1>|<keyword2>|... ". Any number of keywords from one to infinite is allowed. Make sure they are seperated by a '|'. Examples: "@match yes", "@match gold|treasure". The connected value will be triggerd when the player speaks any of the given keywords within a two-square radius. IMPORTANT: Upper/lower case does not make a difference. |
| Marker | In the moment when the player gets marked, this text is displayed to him. You should really set a message in any marker you create, because it's the only way for the player to notice what's going on. |
| Projectile | This text may describe the projectile. This could be nice for very special ones. |
| Rune & Trap | When the rune detonates, this text is displayed to the victim. For especially powerful runes, create an appropriate thrilling description. ;) |
| Shooting Weapon, Weapon | This text describes the weapons's "story". Every decent artifact weapon should have such a description. |
| Sign & MagicMouth | This text will be displayed to the player. |
| Special Key | This will add a description to the object. The player can read this text by clicking on the item in his inventory. Use this message to describe what the key is good for. A player might have 50 different keys on his key-ring. Don't expect players to recall their purpose just by their names. |
| Spellbook | This text may contain a nice description of the spellbook's cover or something. |
| Wand & Staff | This text may contain a description of the wand. |
| Event Object, Map Event Object | Allows you to pass multi-line options to the event. |
| Client Map Info | Label name or the tooltip's contents. Client markup is allowed. |
The name of the object, obviously...
| Type(s) | Description |
|---|---|
| Misc Object, Light Source, Applyable Light, Light Refill Object, Ability, Altar, Altar Trigger, Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Clock, Helmet, Shield, Book, Button, Trigger Button, Container, Converter, Creator, Detector, Director, Disease, Duplicator, Exit, Flesh, Floor, Wall, Food, Drink, Gate, Timed Gate, Handle, Handle Trigger, Holy Altar, Horn, Rod, Inorganic, Inventory Checker, Gems, Jewels, Nuggets, Locked Door, Magic Ear, Magic Mirror, Magic Wall, Money, Monster & NPC, Spawn Point, Spawn Point Monster, Mood Floor, Mover, Pedestal, Trigger Pedestal, Pit, Poison Food, Organic, Potion, Power Crystal, Projectile, Rune & Trap, Savebed, Shooting Weapon, Scroll, Shop Floor, Shop Mat, Sign & MagicMouth, Special Key, Spellbook, Spinner, Swamp, Teleporter, Trapdoor, Treasure, Weapon, Random Drop Container, Wand & Staff, Waypoint Object | This is the name of the object, displayed to the player. |
| Damager | The name of the damager. This is so the player knows what is hitting them, and in case they die, the killer's name. Examples are 'lava', 'spikes', etc. |
| Marker | When the player steps onto the marker, all existing forces in the player's inventory with a <key string> matching <delete mark> will be removed. If you don't want to remove any marks, leave this textfield empty. Note that the string <delete mark> is set as the name of this marker. So don't be confused, and remember changing the name will take effect on the marker's functionality. |
| Event Object | Name of the plugin which should be triggered by this event object. |
| Map Event Object | Name of the plugin which should be triggered by this map event object. |
| Quest Container | Name of this quest. |
| Beacon | ID of the beacon. This should be unique string and no other beacon should have the same ID. |
| Client Map Info | Each label/tooltip/etc name must be unique and cannot contain spaces. |
How many of the objects
Pointer used for various things
| Type(s) | Description |
|---|---|
| Applyable Light | If a light source wears out, it checks this value. If it set, the object changes to this new object. This happens with torches - after they wear out, they change to burned out torches which can't be re-lit or refilled. |
| Container | This is used for a certain kind of... "animation" when opening the container. Stick to the default arches here and you won't get into trouble. |
| Converter | <receive arch> is the name of the archetype to convert into. |
| Creator | This string defines the object that will be created. You can choose any of the existing arches. If you leave this empty, the creator will clone any non-system objects from its inventory instead (sort of like the spawn point). Creators can't create mobs, use spawn points for that. |
| Disease | If set, the specified arch is created and dropped every time the symptoms strike. This can be various things: farts, body pieces, eggs... Even monsters can be created that way. You could also make a disease where some exotic stuff like money/gems is created. |
| Holy Altar | The altar belongs to the god of the given name. Possible options for <god name> are: Tabernacle, Moroch. If you want to have an unconsecrated altar, set <god name> to empty string and eventually <reconsecrate level> 0. |
| Locked Door | If set, the door will when opened change permanently to this object. If not set, the door will be used as "auto-closing" door, using the open counter value. |
| Monster & NPC, Spawn Point Monster | This only takes effect if <multiply> or <splits> is enabled. The monster will create a <breed monster> every once in a while. <breed monster> can be set to any valid arch-name of a monster. |
| struct obj* obj::owner |
Pointer to the object which controls this one.
Owner should not be referred to directly - get_owner() should be used instead.
Paths the object is attuned to
| Type(s) | Description |
|---|---|
| Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Helmet, Shield, Weapon | Click on the <attuned paths> button to select spellpaths. The player will get attuned to the specified spellpaths while wearing this item. |
| Magic Mirror | Layers to zoom. |
| Monster & NPC, Spawn Point Monster | Click on the <attuned paths> button to select spellpaths. The creature will get attuned to the specified spellpaths. |
| Map Event Object | A combination of AI events this object wants to receive. |
| Client Map Info | Number of tiles east of the info object that the object spans. |
Paths the object is denied access to
| Type(s) | Description |
|---|---|
| Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Helmet, Shield, Weapon | Click on the <denied paths> button to select spellpaths. The specified spellpaths will be denied to the player while wearing this item. |
| Monster & NPC, Spawn Point Monster | Click on the <denied paths> button to select spellpaths. The creature won't be able to cast spells of the specified paths. |
Paths the object is repelled from
| Type(s) | Description |
|---|---|
| Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Helmet, Shield, Weapon | Click on the <repelled paths> button to select spellpaths. The player will get attuned to the specified spellpaths while wearing this item. |
| Monster & NPC, Spawn Point Monster | Click on the <repelled paths> button to select spellpaths. The creature will get repelled to the specified spellpaths. |
| Client Map Info | Number of tiles south of the info object that the object spans. |
| sint8 obj::protection[NROFATTACKS] |
Human, goblin, dragon, etc
| Type(s) | Description |
|---|---|
| Light Refill Object | Defines the light type which we can refill with this refill object. |
| Container | If set, the container will hold only certain types of objects. Possible choices for <container class> are: "gold and jewels", "arrows" and "keys". Unfortunately it is not easy to create new container classes, because items need a matching counterpiece-attribute to the <container class> before they can be put inside a container. This attribute ("race") is set only for the existing container classes. |
| Disease | The disease will only infect creatures of the specified <race>. "<race> *" means every creature can be infected. |
| Inventory Checker, Sign & MagicMouth | This string specifies the object we are looking for: We have a match if the player does/don't carry an object of archetype <match arch name>. |
| Monster & NPC, Spawn Point Monster | Every monster should have a race set to categorize it. The monster's <race> can have different effects: Slaying weapons inflict triple damage against enemy races and holy word kills only enemy races of the god. |
| Projectile | Only shooting weapons with matching <ammunition class> (and matching <ammunition type>) can fire these projectiles. For arrows set "arrows", for crossbow bolts set "crossbow bolts" (big surprise). You can also make special containers holding these projectiles by setting the <container class> to match your <ammunition class>. |
| Shooting Weapon | 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. |
| Event Object | Name of the script of data file we want submit to the plugin when the event is triggered. |
| Map Event Object | Name of the script of data file we want submit to the plugin when the map event is triggered. |
Items to be generated
| Type(s) | Description |
|---|---|
| Monster & NPC, Spawn Point Monster | When the monster is killed, items from the treasurelist will drop to the ground. This is a common way to reward players for killing (masses of) monsters. Note that you can always put items into the monster's inventory. Those will drop-at-kill just like the stuff from the <treasurelist>. |
| Shop Floor | This entry determines what kind of treasure will appear, when <generate goods> is enabled. |
| Treasure | This entry determines what kind of treasure will appear. |
Monster runs away if its hp goes below this percentage.
| Type(s) | Description |
|---|---|
| Monster & NPC, Spawn Point Monster | This is a percentage based value in the range 0-100. The creature will attempt to run from the attacker when it's health points drops below this percentage of max health. |
Which race to do double damage to. If this is an exit, this is the filename
| Type(s) | Description |
|---|---|
| Altar, Altar Trigger | This string specifies the item that must be put on the altar to activate it. It can either be the name of an archetype, or directly the name of an object. Yet, titles are not recognized by altars. Remember to put a note somewhere, telling the player what he is expected to drop on the altar. Often this is put in the altar's name: E.g. "drop 100 platinums". |
| Container | If <key string> is set, only players with a special key of matching <key string> are able to open the container. |
| Converter | <Cost arch> is the name of the archetype the player has to put on the converter, as payment. |
| Creator | The created object will bear the name specified in <name creation>. If nothing is set, the standard name of the archetype is used. (Only used if "create arch" is set) |
| Detector | <Match name> specifies the name of the object we are looking for. Actually it does also check for the <key string> in key-objects, but for this case inventory checkers are often more powerful to use. |
| Duplicator | Only objects of matching archetype, lying on top of the duplicator will be duplicated, multiplied or removed. All other objects will be ignored. |
| Exit, Pit, Teleporter, Trapdoor | The exit path defines the map that the player is transferred to. You can enter an absolute path, beginning with '/' (for example "/tutorial"). It can also be a relative path, not beginning with '/' (on the map "/shattered_islands/world_0303" for example I could use the relative path "0304"). Use relative paths whenever possible! Note that upper/lower case must always be set correctly. However, please use lower case only. It is well possible to have an exit pointing to the same map that the exit is on. If slaying is not set in an exit, the player will see a message like "The exit is closed". |
| Inventory Checker, Sign & MagicMouth | This string specifies the object we are looking for: We have a match if the player does/don't carry a key object or a mark with identical <key string>. This string is compared to the name of an object. If the "match = slaying field" is set, the text is compared to the slaying field of the object we search for. This can make sense if we really want avoid any problems with user set names of objects. |
| Locked Door | The <key string> in the door must be identical with the <key string> in the special key, then the door is unlocked. It is VERY important to set the <key string> to something that is unique among the Atrinik maps. |
| Magic Mirror | The map path the magic mirror is pointing to. Can be either absolute or relative map path. If not set, the current map path is used. |
| Marker | The <key string> can be detected by inventory checkers/ detectors. If the player already has a force with that <key string>, there won't be inserted a second one. |
| Pedestal, Trigger Pedestal | The <match race> defines the object we're looking for. If <match race> matches the monster's or the player's race, we have a match. Yes, pedestals can detect a player's race! E.g. you could create a place where only fireborns can enter, by setting "slaying unnatural". If it is set to "player", any player stepping on the pedestal is a match. Very useful if you want to open a gate for players but not for monsters. |
| Projectile | Slaying means the weapon does triple (3x) damage to monsters of the specified race. If <slaying race> matches an arch name, only monsters of that archetype receive triple damage. Triple damage is very effective, especially on higher levels. |
| Special Key | This string must be identical with the <key string> in the locked door, then it can be unlocked. It can also be used to trigger inventory checkers. |
| Spellbook | This string also defines the contained spell (just like field above), but here you write the spell's name directly. Setting both <spell> and <spell name> makes no sense. |
| Weapon | Slaying means the weapon does triple (3x) damage to monsters of the specified race. If <slaying race> matches an arch name, only monsters of that archetype are hit with triple damage. |
| Event Object | This string is given the event as option string. |
| Map Event Object | This string is given the map event as option string. |
| Waypoint Object | Path to destination map. Leave blank to use current map. You can enter an absolute path, beginning with '/' (for example "/tutorial"). It can also be a relative path, not beginning with '/' (on the map "/shattered_islands/world_0303" for example I could use the relative path "0304"). Use relative paths whenever possible! Note that upper/lower case must always be set correctly. However, please use lower case only. |
| Client Map Info | Color of the outline in HTML notation (default is red, or #ff0000). |
The overall speed of this object
| Type(s) | Description |
|---|---|
| Misc Object | The object's speed. |
| Detector | This value defines the time between two detector checks. If you want the detector to behave almost like pedestals/buttons, set speed rather high, like <detection speed> 1.0. |
| Disease | The <speed> of the disease determines how fast the disease will "move", thus how fast the symptoms strike the host. |
| Damager | Controls how often the damager hits creatures standing on top of it. If 0, no damage will be done. |
| Magic Wall | The <casting speed> defines the spellcasting speed of the wall. You can fine-tune how long the duration between two casts shall be. |
| Marker | The <marking speed> defines how quickly it will mark something standing on the marker. Set this value rather high to make sure the player really gets his mark. I think <marking speed> 1.0 should do fine. |
| Monster & NPC, Spawn Point Monster | The <speed> determines how fast a monster will both move and fight. High <speed> makes a monster considerably stronger. If the start value is negative (like -0.1) then the speed is set to 0.1 but the speed counter becomes a random start value. |
| Spawn Point | The <speed> determines how often a spawn point will control itself and/or its monster. If there is no monster, the spawn point will try to spawn a new one. |
| Mover | The movement speed value determines how fast a chain of these movers will push a player along (default is -0.2). |
| Swamp | The higher this value, the faster will players and items sink into the swamp. Swamp with very high drowning speed can be a nasty and unexpected death-trap. Players should get a warning before such areas. |
| Teleporter | If the <activation speed> is nonzero, the teleporter will automatically be activated in regular time-intervals. Hence, the player can just step on it and gets teleported sooner or later. The duration between two activates depends on the given value. Default in the teleporter arch is <activation speed> 0.1. VERY IMPORTANT: If you want to have your teleporter activated via button/handle/magic_ear/etc, you must set <activation speed> to zero! |
How much speed is left to spend this round
| Type(s) | Description |
|---|---|
| Misc Object, Altar, Altar Trigger, Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Clock, Helmet, Shield, Book, Button, Trigger Button, Container, Converter, Creator, Detector, Director, Disease, Duplicator, Exit, Flesh, Floor, Wall, Gate, Timed Gate, Handle, Handle Trigger, Damager, Holy Altar, Horn, Rod, Inorganic, Inventory Checker, Gems, Jewels, Nuggets, Locked Door, Magic Ear, Magic Mirror, Magic Wall, Marker, Money, Monster & NPC, Spawn Point, Mood Floor, Mover, Pedestal, Trigger Pedestal, Pit, Potion, Power Crystal, Projectile, Rune & Trap, Savebed, Shooting Weapon, Scroll, Shop Floor, Shop Mat, Sign & MagicMouth, Special Key, Spellbook, Spinner, Swamp, Teleporter, Trapdoor, Treasure, Weapon, Random Drop Container, Wand & Staff, Event Object, Map Event Object, Waypoint Object, Quest Container, Beacon, Client Map Info | 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. |
| Food | The <speed> determines how long a force will stay if it gets created from food effects. Only used when food has effects and then copied to force speed. |
| Poison Food | This value sets the speed of the DOT ticks. Careful - a value of 1 means damage every game tick - that can be 9 per second! (DOT = Damage Over Time) |
The object can move over/is unaffected from this terrain type
| Type(s) | Description |
|---|---|
| Misc Object | What terrain can this object move on. |
| Monster & NPC, Spawn Point Monster | These settings define on which kind of terrain this creature can move. If nothing is set, the creature can walk on land surface. |
type flags for different environment (tile is under water, firewalk,...) A object which can be applied GIVES this terrain flags to his owner
| Type(s) | Description |
|---|---|
| Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Helmet, Shield, Weapon | The bearer of this item can move in every terrain that is set by <support terrain>. Such abilities like "water walking", "fire walking" etc are almost priceless as they open access to an entire new plane of the Atrinik world. Artifacts with <support terrain> attributes are VERY SPECIAL and they must be well-balanced! |
| Floor | The <terrain type> defines what kind of environment exists on this tile. This can be anything from normal land (= "none") to water, fire etc. Only creatures whith appropriate terrain abilities can pass over this square. |
Of foo, etc
How much money it is worth (or contains)
| Type(s) | Description |
|---|---|
| Misc Object, Light Source, Applyable Light, Light Refill Object, Ability, Altar, Altar Trigger, Amulet, Ring, Bracers, Brestplate Armour, Boots, Cloak, Girdle, Gloves, Clock, Helmet, Shield, Book, Button, Trigger Button, Container, Converter, Creator, Detector, Director, Disease, Duplicator, Exit, Flesh, Floor, Wall, Food, Drink, Gate, Timed Gate, Handle, Handle Trigger, Damager, Holy Altar, Horn, Rod, Inorganic, Inventory Checker, Gems, Jewels, Nuggets, Locked Door, Magic Ear, Magic Mirror, Magic Wall, Marker, Money, Mood Floor, Mover, Pedestal, Trigger Pedestal, Pit, Poison Food, Organic, Potion, Power Crystal, Projectile, Rune & Trap, Savebed, Shooting Weapon, Scroll, Shop Floor, Shop Mat, Sign & MagicMouth, Special Key, Spellbook, Spinner, Swamp, Teleporter, Trapdoor, Weapon, Random Drop Container, Wand & Staff, Event Object, Map Event Object, Waypoint Object, Quest Container, Beacon, Client Map Info | Change an object's value. |
new weapon speed system. swing of weapon
| Type(s) | Description |
|---|---|
| Container | This value determines how much the weight of items is reduced in percent, when put inside the container. <reduce weight %> 1.0 means no reduction, <reduce weight %> 0 means items are weightless inside. 0.5 means weight is halved. |
| Weapon | The weapon speed determines how often the wielder can swing the weapon during a certain period of time. The lower the faster, <weapon speed> 1 is best (that is lighting fast). A typical average value is 8. Speed and damage should be kept in reasonable relation. |
| float obj::weapon_speed_add |
| float obj::weapon_speed_left |
Attributes of the object - the weight
Weight-limit of object - player and container should have this... perhaps we can substitute it?
| Type(s) | Description |
|---|---|
| Container | The container can hold a maximum total weight of the given value in gram. Note that this weight limit is calculated *after* the weight reduction (<reduce weight>) has been applied. |
| Random Drop Container | Set to a range from 0 to x. 0 means dropped always. 999999 means a chance from 1/999999 to drop. |
Z-Position in the map (in pixels) for this object.
For floor (layer 1), this makes the client use tile stretching. All other objects get Y position (height) adjustment on the map (100 = the object moves 100 pixels further to the top, -50 = the object moves 50 pixels to the bottom).
How much to zoom the object.
0 = 100 = 100% zoom of the object, which means the original (no actual zooming is done). 50 = 50% of the original object's size, 200 = 200% of the original object's size.
1.7.4