… | |
… | |
101 | length CDATA #IMPLIED |
101 | length CDATA #IMPLIED |
102 | true CDATA #IMPLIED |
102 | true CDATA #IMPLIED |
103 | false CDATA #IMPLIED> |
103 | false CDATA #IMPLIED> |
104 | |
104 | |
105 | <!ENTITY move_on " |
105 | <!ENTITY move_on " |
106 | <attribute arch='move_on' editor='movement type' type='movement_type'> |
106 | <attribute arch='move_on' editor='movement on' type='movement_type'> |
107 | Which movement types automatically (as opposed to manually) activate this object. |
107 | Which movement types automatically (as opposed to manually) activate this object. |
108 | </attribute> |
108 | </attribute> |
109 | "> |
109 | "> |
110 | <!ENTITY move_off " |
110 | <!ENTITY move_off " |
111 | <attribute arch='move_off' editor='movement type' type='movement_type'> |
111 | <attribute arch='move_off' editor='movement off' type='movement_type'> |
112 | Which movement types deactivate this object (e.g. button). |
112 | Which movement types deactivate this object (e.g. button). |
113 | </attribute> |
113 | </attribute> |
114 | "> |
114 | "> |
115 | <!ENTITY move_type " |
115 | <!ENTITY move_type " |
116 | <attribute arch='move_type' editor='movement type' type='movement_type'> |
116 | <attribute arch='move_type' editor='movement type' type='movement_type'> |
117 | Determines which kinds of movement this object can use (e.g. for monsters) |
117 | Determines which kinds of movement this object can use (e.g. for monsters) |
118 | or grants (e.g. for amulets). |
118 | or grants (e.g. for amulets). |
119 | </attribute> |
119 | </attribute> |
120 | "> |
120 | "> |
121 | <!ENTITY movement_types_terrain " |
121 | <!ENTITY move_block " |
122 | <attribute arch='move_block' editor='blocked movement' type='movement_type'> |
122 | <attribute arch='move_block' editor='blocked movement' type='movement_type'> |
123 | Objects using these movement types cannot move over this space. |
123 | Objects using these movement types cannot move over this space. |
124 | </attribute> |
124 | </attribute> |
|
|
125 | "> |
|
|
126 | <!ENTITY movement_types_terrain " |
|
|
127 | &move_block; |
125 | <attribute arch='move_allow' editor='allowed movement' type='movement_type'> |
128 | <attribute arch='move_allow' editor='allowed movement' type='movement_type'> |
126 | Objects using these movement types are allowed to move over this space. Takes |
129 | Objects using these movement types are allowed to move over this space. Takes |
127 | precedence over 'blocked movements'. |
130 | precedence over 'blocked movements'. |
128 | </attribute> |
131 | </attribute> |
129 | <attribute arch='move_slow' editor='slowed movement' type='movement_type'> |
132 | <attribute arch='move_slow' editor='slowed movement' type='movement_type'> |
… | |
… | |
474 | <entry value="0" name="furious" /> |
477 | <entry value="0" name="furious" /> |
475 | <entry value="1" name="angry" /> |
478 | <entry value="1" name="angry" /> |
476 | <entry value="2" name="calm" /> |
479 | <entry value="2" name="calm" /> |
477 | <entry value="3" name="sleep" /> |
480 | <entry value="3" name="sleep" /> |
478 | <entry value="4" name="charm" /> |
481 | <entry value="4" name="charm" /> |
|
|
482 | <entry value="5" name="destroy monster" /> |
|
|
483 | <entry value="6" name="destroy pet" /> |
479 | </list> |
484 | </list> |
480 | |
485 | |
481 | <list name="potion_effect"> |
486 | <list name="potion_effect"> |
482 | <entry value="0" name="<none>" /> |
487 | <entry value="0" name="<none>" /> |
483 | <entry value="65536" name="life restoration" /> |
488 | <entry value="65536" name="life restoration" /> |
… | |
… | |
718 | <attribute arch="sound_destroy" editor="destroy sound" type="string"> |
723 | <attribute arch="sound_destroy" editor="destroy sound" type="string"> |
719 | The sound this objects makes when it is destroyed. Enter either a sound alias from |
724 | The sound this objects makes when it is destroyed. Enter either a sound alias from |
720 | arch/res/sound.conf.res or a path. If you enter <path> in this |
725 | arch/res/sound.conf.res or a path. If you enter <path> in this |
721 | field it will point to sound/<path>.ext |
726 | field it will point to sound/<path>.ext |
722 | </attribute> |
727 | </attribute> |
|
|
728 | <attribute arch="unique" editor="unique" type="bool"> |
|
|
729 | Unique items exist only one time on a server. If the item |
|
|
730 | is taken, lost or destroyed - it's gone for good. |
|
|
731 | </attribute> |
723 | </default_type> |
732 | </default_type> |
724 | |
733 | |
725 | <!-- This ignorelist is for all system objects which are non pickable |
734 | <!-- This ignorelist is for all system objects which are non pickable |
726 | and invisible. They don't interact with players at all. --> |
735 | and invisible. They don't interact with players at all. --> |
727 | <ignore_list name="system_object"> |
736 | <ignore_list name="system_object"> |
… | |
… | |
852 | |
861 | |
853 | <!--####################################################################--> |
862 | <!--####################################################################--> |
854 | |
863 | |
855 | <type number="81" name="Torch"> |
864 | <type number="81" name="Torch"> |
856 | <description><![CDATA[ |
865 | <description><![CDATA[ |
857 | Torches are a special kind of Lamp, they are worn out by repeatedly |
866 | Torches are a special kind of Lamp that offer the option of lighting them |
858 | lightening them up (when the is_lightable flag is set) and otherwise |
867 | up without using a lighter (These torches are usually |
859 | they can only be used once.]]> |
868 | called 'pyrophor torches'. See also the 'reignitable' setting). |
|
|
869 | The other kind of torches, that are reignitable, can be put out and |
|
|
870 | put on again using a lighter.]]> |
860 | </description> |
871 | </description> |
|
|
872 | <attribute arch="is_lightable" editor="reignitable" type="bool"> |
|
|
873 | This flag controls whether the torch can be lit up again using |
|
|
874 | a lighter or whether it can only be used once, in which case |
|
|
875 | they can be enabled by simply applying them without any special tools. |
|
|
876 | </attribute> |
861 | <attribute arch="food" editor="burning duration" type="int"> |
877 | <attribute arch="food" editor="burning duration" type="int"> |
862 | This field specifies the burning duration of the torch. |
878 | This field specifies the burning duration of the torch. |
863 | </attribute> |
879 | </attribute> |
864 | <attribute arch="range" editor="enabled glow radius" type="int"> |
880 | <attribute arch="range" editor="enabled glow radius" type="int"> |
865 | This field sets the glow radius of the torch if it is enabled. |
881 | This field sets the glow radius of the torch if it is enabled. |
… | |
… | |
1529 | container classes. |
1545 | container classes. |
1530 | </attribute> |
1546 | </attribute> |
1531 | <attribute arch="slaying" editor="key string" type="string"> |
1547 | <attribute arch="slaying" editor="key string" type="string"> |
1532 | If <key string> is set, only players with a special key |
1548 | If <key string> is set, only players with a special key |
1533 | of matching <key string> are able to open the container. |
1549 | of matching <key string> are able to open the container. |
|
|
1550 | |
|
|
1551 | When the key string starts with "match ", then it is expected to |
|
|
1552 | be a match expression, which will be applied to the player, so |
|
|
1553 | you can use e.g. (match type=POTION in inv). Note that the matched |
|
|
1554 | object will be removed. |
1534 | </attribute> |
1555 | </attribute> |
1535 | <attribute arch="container" editor="maximum weight" type="int"> |
1556 | <attribute arch="container" editor="maximum weight" type="int"> |
1536 | The container can hold a maximum total weight of the given value |
1557 | The container can hold a maximum total weight of the given value |
1537 | in gram. Note that this weight limit is calculated *after* the |
1558 | in gram. Note that this weight limit is calculated *after* the |
1538 | weight reduction (<reduce weight>) has been applied. |
1559 | weight reduction (<reduce weight>) has been applied. |
… | |
… | |
1652 | <attribute arch="connected" editor="connection" type="string"> |
1673 | <attribute arch="connected" editor="connection" type="string"> |
1653 | Whenever the connection value is activated, |
1674 | Whenever the connection value is activated, |
1654 | the creator gets triggered. |
1675 | the creator gets triggered. |
1655 | </attribute> |
1676 | </attribute> |
1656 | &activate_on; |
1677 | &activate_on; |
1657 | <attribute arch="lifesave" editor="infinit uses" type="bool"> |
1678 | <attribute arch="lifesave" editor="unlimited uses" type="bool"> |
1658 | If <infinit uses> is set, the creator will work |
1679 | If <unlimited uses> is set, the creator will work |
1659 | infinitely, regardless of the value in <number of uses>. |
1680 | infinitely, regardless of the value in <number of uses>. |
1660 | </attribute> |
1681 | </attribute> |
1661 | <attribute arch="speed" editor="speed" type="float"> |
1682 | <attribute arch="speed" editor="speed" type="float"> |
1662 | When this field is set the creator will periodically create stuff |
1683 | When this field is set the creator will periodically create stuff |
1663 | (and will still do so when the connection is triggered). |
1684 | (and will still do so when the connection is triggered). |
… | |
… | |
1688 | Detectors work quite much like inv. checkers/pedestals: If the detector |
1709 | Detectors work quite much like inv. checkers/pedestals: If the detector |
1689 | finds a specific object, it toggles its connected value. |
1710 | finds a specific object, it toggles its connected value. |
1690 | <br><br> |
1711 | <br><br> |
1691 | What is "unique" about them, compared to inv. checkers/ pedestals? |
1712 | What is "unique" about them, compared to inv. checkers/ pedestals? |
1692 | - First, detectors check their square for a match periodically, not |
1713 | - First, detectors check their square for a match periodically, not |
|
|
1714 | instantly, so generate much higher server load |
1693 | instantly. Second, detectors check directly for object names. Third, |
1715 | Second, detectors check directly for object names. Third, |
1694 | detectors do not check the inventory of players/monsters.]]> |
1716 | detectors do not check the inventory of players/monsters.]]> |
1695 | </description> |
1717 | </description> |
1696 | <use><![CDATA[ |
1718 | <use> |
1697 | There is one major speciality about detectors: You can detect spells |
1719 | Best avoid this type at all costs, use a pedestal instead. |
1698 | blown over a detector! To detect a lighting bolt for example, set |
|
|
1699 | "slaying ligthing" and "speed 1.0". In combination with spellcasting |
|
|
1700 | walls, this can be very useful for map-mechanisms.]]> |
|
|
1701 | </use> |
1720 | </use> |
1702 | <attribute arch="no_pick" value="1" type="fixed" /> |
1721 | <attribute arch="no_pick" value="1" type="fixed" /> |
1703 | <attribute arch="slaying" editor="match name" type="string"> |
1722 | <attribute arch="slaying" editor="match name" type="string"> |
1704 | <match name> specifies the name of the object we are looking for. |
1723 | <match name> specifies the name of the object we are looking for. |
1705 | Actually it does also check for the <key string> in key-objects, |
1724 | Actually it does also check for the <key string> in key-objects, |
… | |
… | |
1727 | <ignore> |
1746 | <ignore> |
1728 | <ignore_list name="system_object" /> |
1747 | <ignore_list name="system_object" /> |
1729 | </ignore> |
1748 | </ignore> |
1730 | <description><![CDATA[ |
1749 | <description><![CDATA[ |
1731 | The map script object is a very special object that can react to connected |
1750 | The map script object is a very special object that can react to connected |
1732 | events and executes a perl script. |
1751 | events and executes a perl script in the msg slot. |
1733 | ]]> |
1752 | ]]> |
1734 | </description> |
1753 | </description> |
1735 | <use><![CDATA[ |
1754 | <use><![CDATA[ |
1736 | The perl script gets passed an $activator object and can use the set/get/find/timer functions |
1755 | The perl script gets passed a $state value and $activator, $self, $originator objects and can use the set/get/find/timer functions |
1737 | to react to/trigger other objects. |
1756 | to react to/trigger other objects. See http://pod.tst.eu/http://cvs.schmorp.de/deliantra/server/lib/cf/mapscript.pm for details. |
1738 | ]]> |
1757 | ]]> |
1739 | </use> |
1758 | </use> |
1740 | <attribute arch="connected" editor="connection" type="string"> |
1759 | <attribute arch="connected" editor="connection" type="string"> |
1741 | When the map script object is triggered, it will execute |
1760 | When the map script object is triggered, it will execute |
1742 | the perl script with the triggering object as $activator. |
1761 | the perl script with the triggering object as $activator. |
… | |
… | |
1945 | <type number="23" name="Door"> |
1964 | <type number="23" name="Door"> |
1946 | <ignore> |
1965 | <ignore> |
1947 | <ignore_list name="non_pickable" /> |
1966 | <ignore_list name="non_pickable" /> |
1948 | </ignore> |
1967 | </ignore> |
1949 | <description><![CDATA[ |
1968 | <description><![CDATA[ |
1950 | A door can be opened with a normal key. It also can be broken by attacking |
1969 | A door can be opened with any normal key. It also can be broken by attacking |
1951 | it, and it can be defeated with the lockpicking skill. If a door is |
1970 | it, and it can be defeated with the lockpicking skill. If a door is |
1952 | defeated, horizontally and vertically adjacent doors are automatically |
1971 | defeated, horizontally and vertically adjacent doors are automatically |
1953 | removed.]]> |
1972 | removed.]]> |
1954 | </description> |
1973 | </description> |
1955 | <attribute arch="no_pick" value="1" type="fixed" /> |
1974 | <attribute arch="no_pick" value="1" type="fixed" /> |
… | |
… | |
2157 | <attribute arch="unique" editor="unique map" type="bool"> |
2176 | <attribute arch="unique" editor="unique map" type="bool"> |
2158 | Unique floor means that any items dropped on that spot |
2177 | Unique floor means that any items dropped on that spot |
2159 | will be saved beyond map reset. For permanent apartments, |
2178 | will be saved beyond map reset. For permanent apartments, |
2160 | all floor tiles must be set <unique map>. |
2179 | all floor tiles must be set <unique map>. |
2161 | </attribute> |
2180 | </attribute> |
|
|
2181 | <attribute arch="buildable" editor="buildable" type="bool"> |
|
|
2182 | A buildable can be built upon. This is usually used in combination with |
|
|
2183 | the unique attribute for player apartments or guild storages. But it's |
|
|
2184 | use is not limited to private maps. |
|
|
2185 | </attribute> |
2162 | <attribute arch_begin="msg" arch_end="endmsg" editor="description" type="text"> |
2186 | <attribute arch_begin="msg" arch_end="endmsg" editor="description" type="text"> |
2163 | This text may describe the object. |
2187 | This text may describe the object. |
2164 | </attribute> |
2188 | </attribute> |
2165 | </type> |
2189 | </type> |
2166 | |
2190 | |
… | |
… | |
2200 | </attribute> |
2224 | </attribute> |
2201 | <attribute arch="unique" editor="unique map" type="bool"> |
2225 | <attribute arch="unique" editor="unique map" type="bool"> |
2202 | Unique floor means that any items dropped on that spot |
2226 | Unique floor means that any items dropped on that spot |
2203 | will be saved beyond map reset. For permanent apartments, |
2227 | will be saved beyond map reset. For permanent apartments, |
2204 | all floor tiles must be set <unique map>. |
2228 | all floor tiles must be set <unique map>. |
|
|
2229 | </attribute> |
|
|
2230 | <attribute arch="buildable" editor="buildable" type="bool"> |
|
|
2231 | A buildable can be built upon. This is usually used in combination with |
|
|
2232 | the unique attribute for player apartments or guild storages. But it's |
|
|
2233 | use is not limited to private maps. |
2205 | </attribute> |
2234 | </attribute> |
2206 | <attribute arch_begin="msg" arch_end="endmsg" editor="description" type="text"> |
2235 | <attribute arch_begin="msg" arch_end="endmsg" editor="description" type="text"> |
2207 | This text may describe the object. |
2236 | This text may describe the object. |
2208 | </attribute> |
2237 | </attribute> |
2209 | </type> |
2238 | </type> |
… | |
… | |
2695 | <key string> in the special key, then the door is unlocked. |
2724 | <key string> in the special key, then the door is unlocked. |
2696 | It is VERY important to set the <key string> to something that |
2725 | It is VERY important to set the <key string> to something that |
2697 | is unique among the Deliantra mapset. |
2726 | is unique among the Deliantra mapset. |
2698 | |
2727 | |
2699 | DONT EVER USE the default string "set_individual_value". |
2728 | DONT EVER USE the default string "set_individual_value". |
|
|
2729 | |
|
|
2730 | When the key string starts with "match ", then it is expected to |
|
|
2731 | be a match expression, which will be applied to the player, so |
|
|
2732 | you can use e.g. (match type=POTION in inv). Note that the matched |
|
|
2733 | object will be removed. |
2700 | </attribute> |
2734 | </attribute> |
2701 | <attribute arch="no_magic" editor="restrict spells" type="bool"> |
2735 | <attribute arch="no_magic" editor="restrict spells" type="bool"> |
2702 | Restricting the use of spells to pass this door. |
2736 | Restricting the use of spells to pass this door. |
2703 | This should be set in most cases. |
2737 | This should be set in most cases. |
2704 | (Don't forget that the spell "dimension door" is easily |
2738 | (Don't forget that the spell "dimension door" is easily |
… | |
… | |
2848 | </ignore> |
2882 | </ignore> |
2849 | <description><![CDATA[ |
2883 | <description><![CDATA[ |
2850 | A marker is an object that inserts an invisible force (a mark) into a |
2884 | A marker is an object that inserts an invisible force (a mark) into a |
2851 | player stepping on it. This force does nothing except containing a |
2885 | player stepping on it. This force does nothing except containing a |
2852 | <key string> which can be discovered by detectors or inventory |
2886 | <key string> which can be discovered by detectors or inventory |
2853 | checkers. It is also possible to use markers for removing marks again. |
2887 | checkers. It is also possible to use markers for removing marks again |
|
|
2888 | (by setting the "name" slot to the name of the marker to be removed). |
2854 | <br><br> |
2889 | <br><br> |
2855 | Note that the player has no possibility to "see" his own marks, |
2890 | Note that the player has no possibility to "see" his own marks, |
2856 | except by the effect that they cause on the maps.]]> |
2891 | except by the effect that they cause on the maps.]]> |
2857 | </description> |
2892 | </description> |
2858 | <use><![CDATA[ |
2893 | <use><![CDATA[ |
… | |
… | |
3484 | place where only fireborns can enter, by setting "slaying unnatural". |
3519 | place where only fireborns can enter, by setting "slaying unnatural". |
3485 | |
3520 | |
3486 | If it is set to "player", any player stepping on the pedestal |
3521 | If it is set to "player", any player stepping on the pedestal |
3487 | is a match. Very useful if you want to open a gate for players |
3522 | is a match. Very useful if you want to open a gate for players |
3488 | but not for monsters. |
3523 | but not for monsters. |
|
|
3524 | |
|
|
3525 | &match_compat; |
3489 | </attribute> |
3526 | </attribute> |
3490 | <attribute arch="connected" editor="connection" type="string"> |
3527 | <attribute arch="connected" editor="connection" type="string"> |
3491 | When the pedestal is triggered, all objects with the same |
3528 | When the pedestal is triggered, all objects with the same |
3492 | connection value get activated. |
3529 | connection value get activated. |
3493 | </attribute> |
3530 | </attribute> |
3494 | &move_on; |
3531 | &move_on; |
|
|
3532 | </type> |
|
|
3533 | |
|
|
3534 | <!--####################################################################--> |
|
|
3535 | <type number="32" name="Pedestal Trigger"> |
|
|
3536 | <import_type name="Pedestal" /> |
|
|
3537 | <ignore> |
|
|
3538 | <ignore_list name="non_pickable" /> |
|
|
3539 | </ignore> |
|
|
3540 | <description><![CDATA[ |
|
|
3541 | Pedestal triggers are pedestals which reset after a short period |
|
|
3542 | of time. Every time it is either applied or reset, the |
|
|
3543 | <connection> value is triggered.]]> |
|
|
3544 | </description> |
|
|
3545 | </type> |
|
|
3546 | |
|
|
3547 | <!--####################################################################--> |
|
|
3548 | <type number="19" name="Item Match"> |
|
|
3549 | <ignore> |
|
|
3550 | <ignore_list name="non_pickable" /> |
|
|
3551 | </ignore> |
|
|
3552 | <description><![CDATA[ |
|
|
3553 | Match objects use the deliantra matching language |
|
|
3554 | (http://pod.tst.eu/http://cvs.schmorp.de/deliantra/server/lib/cf/match.pm) |
|
|
3555 | to match items on the same mapspace (if move_on/off are unset) or |
|
|
3556 | items trying to enter (if move_blocked is set). |
|
|
3557 | |
|
|
3558 | If a connected value is given, then it is triggered if the first object |
|
|
3559 | matching the expression is put on it, and the last is removed.]]> |
|
|
3560 | </description> |
|
|
3561 | <use><![CDATA[ |
|
|
3562 | If you want to trigger something else (e.g. a gate) when an item is above this object, |
|
|
3563 | use the move_on/move_off settings. |
|
|
3564 | |
|
|
3565 | If you want to keep something from entering if it has (or lacks) a specific item, |
|
|
3566 | use the move_blocked setting.]]> |
|
|
3567 | </use> |
|
|
3568 | <attribute arch="no_pick" value="1" type="fixed" /> |
|
|
3569 | <attribute arch="slaying" editor="match expression" type="string"> |
|
|
3570 | &match_compat; |
|
|
3571 | |
|
|
3572 | Optionally you can leave out the "match " prefix. |
|
|
3573 | </attribute> |
|
|
3574 | <attribute arch="connected" editor="connection" type="string"> |
|
|
3575 | When the match is triggered, all objects with the same |
|
|
3576 | connection value get activated. |
|
|
3577 | </attribute> |
|
|
3578 | &move_on; |
|
|
3579 | &move_off; |
|
|
3580 | &move_block; |
3495 | </type> |
3581 | </type> |
3496 | |
3582 | |
3497 | <!--####################################################################--> |
3583 | <!--####################################################################--> |
3498 | <type number="94" name="Pit"> |
3584 | <type number="94" name="Pit"> |
3499 | <ignore> |
3585 | <ignore> |
… | |
… | |
4778 | <description><![CDATA[ |
4864 | <description><![CDATA[ |
4779 | A trigger marker is an object that inserts an invisible force (a mark) into a |
4865 | A trigger marker is an object that inserts an invisible force (a mark) into a |
4780 | player stepping on it WHEN TRIGGERED. This force does nothing except containing a |
4866 | player stepping on it WHEN TRIGGERED. This force does nothing except containing a |
4781 | <key string> which can be discovered by detectors or inventory |
4867 | <key string> which can be discovered by detectors or inventory |
4782 | checkers. It is also possible to use markers for removing marks again. |
4868 | checkers. It is also possible to use markers for removing marks again. |
|
|
4869 | (by setting the "name" slot to the name of the marker to be removed). |
4783 | <br><br> |
4870 | <br><br> |
4784 | Note that the player has no possibility to "see" his own marks, |
4871 | Note that the player has no possibility to "see" his own marks, |
4785 | except by the effect that they cause on the maps.]]> |
4872 | except by the effect that they cause on the maps.]]> |
4786 | </description> |
4873 | </description> |
4787 | <use><![CDATA[ |
4874 | <use><![CDATA[ |