Hey all,   Due to programming concerns we had to change the map.def format a little. This will affect you and your map making, but hopefully it'll also make it easier for you to write and read .def files.   The new .def format uses start and ending tags like the following:   [general] allow_combat: 0 allow_rain: 1 map_name: `Snow Isla Prima` [/general]   This is the entire list of options you can put in the different tags. It also includes the new area attributes.   For many of the cases, 1 means Yes, 0 means No (as usual), so assume that's the case unless I specify differently. [general] map_name: <The name of the map> #If you just want the default attribute you don't have to write it here... allow_rain: <If it's going to rain on the map or not - default: 1> allow_combat: <Is it a PK map? Default: 0> allow_multicombat: <Allow multi-combat? Default: 0> allow_beam: <Max level allowed to beam from this map Default: 0 (means every player can beam)> allow_tport: <Is teleporting allowed on this map? Default: 1> allow_harvesting: <Is harvesting allowed? Default: 1> allow_manufacturing: <Is manufacturing allowed? Default: 1> allow_summoning: <Is summoning allowed? Default: 1> allow_spellcasting: <Can you use magic on this map? Default: 1> allow_potions: <Can you do potions on this map? Default: 1> timed_heat: <Heat damage per minute - between 0 and 100 - Default: 0> timed_cold: <Cold damage per minute - between 0 and 100 - Default: 0> timed_poison: <Poison damage per minute - between 0 and 100 - Default: 0> timed_corrosion: <Corrosion damage per minute - between 0 and 100 - Default: 0> timed_damage: <Damage per minute - between 0 and 100 - Default: 0> timed_radiation: <Damage per minute - between 0 and 100 - Default: 0> walk_heat: <Per step heat damage - between 0 and 100 - Default: 0> walk_cold: <Per step cold damage - between 0 and 100 - Default: 0> walk_poison: <Per step poison damage - between 0 and 100 - Default: 0> walk_corrosion: <Per step corrosion damage - between 0 and 100 - Default: 0> [/general] The teleport point is activated when you step on it - for instance when stepping on a teleporter [teleport_point] teleport_src_x: <The x coordinate the player needs to step on> teleport_src_y: <The y coordinate the player needs to step on> teleport_dst_x: <The x coordinate where you want the player to be send> teleport_dst_y: <The y coordinate where you want the player to be send> teleport_map: <The map where the player will be teleported to> type: <Is it going to sparkle when you teleport? Default: 0> [/teleport_point] The interdiction area creates a square where you have to specify the coordinates of the corners: y | y2 _____ | | | | | | y1 |_____| | |______________ x x1 x2 The above coordinate system is the same for every other area-based definition, so remember it :) The interdiction is being out-fased, so use the [attributes] instead - it's just here to reference how the .def files for the older maps are going to be rewritten. [interdiction_area] min_x: <The smallest x coordinate (X1)> min_y: <The smallest y coordinate (Y1)> max_x: <The largest x coordinate (X2)> max_y: <The largest y coordinate (Y2)> can_manufacture: <Is it possible to manufacture here?> [/interdiction_area] [text_area] min_x: <The smallest x coordinate (X1)> min_y: <The smallest y coordinate (Y1)> max_x: <The largest x coordinate (X2)> max_y: <The largest y coordinate (Y2)> call_small: <If it's going to call small - used for quests and other things (if you want a special effect such as a character suddenly showing up or something), but it's really nothing you should worry about as map makers, so just leave it out and speak with us if you want to use it> text: <The text that's going to appear on the players screen - max 250 characters> [/text_area] This is used to specify a special text that's going to be seen when the player clicks on the item with the eye icon. [object_name] object_id: <The object ID> object_name: <The text that'll appear - max 49 characters> [/object_name] This is used when you want to give an area a special name - it's the text appearing when you click on the compass. [location_info] min_x: <The smallest x coordinate (X1)> min_y: <The smallest y coordinate (Y1)> max_x: <The largest x coordinate (X2)> max_y: <The largest y coordinate (Y2)> text: <The name of the location> [/location_info] The use area is used to specify a special action that's going to happen when you click on an item. You can only click on the item from within the specified area. [use_area] min_x: <The smallest x coordinate (X1)> min_y: <The smallest y coordinate (Y1)> max_x: <The largest x coordinate (X2)> max_y: <The largest y coordinate (Y2)> teleport_x: <The x location the player is going to be teleported to on click - if he isn't going to be teleported, just leave this out> teleport_y: <The y location the player is going to be teleported to on click - if he isn't going to be teleported, just leave this out> teleport_map: <The map the player is going to be teleported to on click - if he isn't going to be teleported, just leave this out.> map_object_id: <The ID of the object the player has to click> inv_object_id: <The ID of an object the player clicks on the map object with> send_sparks: <Specifies if the teleport is going to send sparks when it's activated> too_far_text: <The text that's shown when you're too far away> wrong_object_text: <The text that's going to be shown when the use_area is activated, but the player uses the wrong object> use_text: <The text that's going to be shown when the item is used> open_book: <The book ID that's going to be opened when the use area is activated - you cannot teleport a person and have a book opened at the same time (the book will close if the player moves outside the area, so..)> [/use_area] [sound_area] min_x: <The smallest x coordinate (X1)> min_y: <The smallest y coordinate (Y1)> max_x: <The largest x coordinate (X2)> max_y: <The largest y coordinate (Y2)> min_minute: <The min minute the song will play> max_minute: <The max minute the song will play> min_hour: <The min hour the song will play> max_hour: <The max hour the song will play> positional: <If it's positional> radius: <The radius, where it's possible to hear the song> frequency: <The frequency - how many seconds that should go between trying to send the song to the different players - if 0, it will be random> chance: <The chance the for song to play - between 0 and 1000 - used when frequency is 0> loops: <The number of loops the song is going to play for> sound_name: <The filename of the sound> [/sound_area] For the attributes the syntax is a bit different, as it's a newer addition. The following tags are available: (<tag name> - <Description>) allow_combat - Is it a PK area? Default: 0 allow_multicombat - Allow multi-combat? Default: 0 allow_beam - Max level allowed to beam from this area. Default: 0 (means every player can beam) allow_tport - Is teleporting allowed on this map? Default: 1 allow_harvesting - Is harvesting allowed? Default: 1 allow_manufacturing - Is manufacturing allowed? Default: 1 allow_summoning - Is summoning allowed? Default: 1 allow_spellcasting - Can you use magic on this map? Default: 1 allow_potions - Can you do potions on this map? Default: 1 timed_heat - Heat damage per minute - between 0 and 100 - Default: 0 timed_cold - Cold damage per minute - between 0 and 100 - Default: 0 timed_poison - Poison damage per minute - between 0 and 100 - Default: 0 timed_corrosion - Corrosion damage per minute - between 0 and 100 - Default: 0 timed_damage - Damage per minute - between 0 and 100 - Default: 0 walk_heat - Per step heat damage - between 0 and 100 - Default: 0 walk_cold - Per step cold damage - between 0 and 100 - Default: 0 walk_poison - Per step poison damage - between 0 and 100 - Default: 0 walk_corrosion - Per step corrosion damage - between 0 and 100 - Default: 0 [attributes] [<tag name>] min_x: <The smallest x coordinate (X1)> min_y: <The smallest y coordinate (Y1)> max_x: <The largest x coordinate (X2)> max_y: <The largest y coordinate (Y2)> value: The value of the attribute text: The text that's going to be shown when the attribute is activated [/<tag name>] [/attributes] Example: [attributes] [allow_multicombat] min_x: 22 min_y: 44 max_x: 33 max_y: 55 value: 1 text: You enter a multicombat zone [/allow_multicombat] [allow_harvesting] min_x: 3 min_y: 4 max_x: 33 max_y: 44 value: 0 text: What? Trying to pick flowers from graves? You sick smeg! [/allow_harvesting] [rain_start_chance] min_x: 22 min_y: 4 max_x: 32 max_y: 14 value: 100 text: It's raining, as always... [/rain_start_chance] [/attributes]   Here's an example - I rewrote the Isla Prima .def-file : [general] allow_combat: 0 allow_rain: 1 map_name: `Snow Isla Prima` [/general] ship "banner2" [use_area] min_x: 12 min_y: 18 max_x: 29 max_y: 29 teleport_x: -1 teleport_y: -1 teleport_map: -1 map_object_id: 441 inv_object_id: -1 send_sparks: 0 too_far_text: `You are too far away` use_text: `You've opened a secret scroll!` wrong_object_text: `Nothing happens.` open_book: 2 The above uses the new feature that lets the client open a book window on click. [/use_area] Text object"sign-to docks" [use_area] min_x: 28 min_y: 57 max_x: 36 max_y: 69 teleport_x: -1 teleport_y: -1 teleport_map: -1 map_object_id: 525 inv_object_id: -1 send_sparks: 0 too_far_text: `You can't read the sign from THAT far away!` use_text: `South- to the Docks` wrong_object_text: `Nothing happens.` [/use_area] [location_info] min_x: 11 min_y: 15 max_x: 36 max_y: 39 text: `- The docks` [/location_info] [location_info] min_x: 123 min_y: 96 max_x: 163 max_y: 163 text: `- The Woods` [/location_info] [location_info] min_x: 157 min_y: 33 max_x: 180 max_y: 67 text: `- A Sandy Beach` [/location_info] [location_info] min_x: 139 min_y: 70 max_x: 141 max_y: 84 text: `- A Bridge Over Nice Water` [/location_info] [text_area] min_x: 152 min_y: 114 max_x: 152 max_y: 116 text: `Get off my bones you stupid 3D model!` [/text_area] [text_area] min_x: 147 min_y: 127 max_x: 149 max_y: 130 text: `Have you no respect for the dead!?` [/text_area] Locked house "house3" [use_area] min_x: 81 min_y: 118 max_x: 81 max_y: 120 teleport_x: -1 teleport_y: -1 teleport_map: -1 map_object_id: 187 inv_object_id: -1 send_sparks: 0 too_far_text: `You are too far away from the door` use_text: `The door is locked` wrong_object_text: `Nothing happens.` [/use_area] "Tavern" [use_area] min_x: 63 max_x: 68 min_y: 132 max_y: 135 teleport_x: 20 teleport_y: 12 teleport_map: 2 map_object_id: 71 inv_object_id: -1 send_sparks: 0 too_far_text: `You are too far away from the door` use_text: `Welcome to Pula's Tavern` wrong_object_text: `Nothing happens.` [/use_area] "House5" [use_area] min_x: 89 min_y: 102 max_x: 91 max_y: 109 teleport_x: 53 teleport_y: 48 teleport_map: 2 map_object_id: 96 inv_object_id: -1 send_sparks: 0 too_far_text: `You are too far away from the door` use_text: `` wrong_object_text: `Nothing happens.` [/use_area] "House4" [use_area] min_x: 94 min_y: 161 max_x: 103 max_y: 163 teleport_x: 57 teleport_y: 13 teleport_map: 2 map_object_id: 72 inv_object_id: -1 send_sparks: 0 too_far_text: `You are too far away from the door` use_text: `` wrong_object_text: `Nothing happens.` [/use_area] "House2" [use_area] min_x: 72 min_y: 148 max_x: 76 max_y: 150 teleport_x: 17 teleport_y: 54 teleport_map: 2 map_object_id: 63 inv_object_id: -1 send_sparks: 0 too_far_text: `You are too far away from the door` use_text: `` wrong_object_text: `Nothing happens.` [/use_area] "white tower door" [use_area] min_x: 117 min_y: 151 max_x: 123 max_y: 156 teleport_x: 19 teleport_y: 66 teleport_map: 32 map_object_id: 797 inv_object_id: -1 send_sparks: 0 too_far_text: `You are too far away from the door` use_text: `` wrong_object_text: `Nothing happens.` [/use_area] boat north->south [teleport_point] teleport_src_x: 177 teleport_src_y: 141 teleport_dst_x: 78 teleport_dst_y: 57 type: 0 teleport_map: 0 [/teleport_point] boat south->north [teleport_point] teleport_src_x: 80 teleport_src_y: 58 teleport_dst_x: 176 teleport_dst_y: 139 type: 0 teleport_map: 0 [/teleport_point] secret room (map6nf_cave) [teleport_point] teleport_src_x: 166 teleport_src_y: 73 teleport_dst_x: 62 teleport_dst_y: 38 type: 0 teleport_map: 17 [/teleport_point] "newbie cave" [use_area] min_x: 35 min_y: 67 max_x: 42 max_y: 74 teleport_x: 60 teleport_y: 138 teleport_map: 43 map_object_id: 1348 inv_object_id: -1 send_sparks: 0 too_far_text: `Go into the cave, then click the rock above you again to enter the cave` use_text: `` wrong_object_text: `Nothing happens.` [/use_area]   Making a needed level of attack to enter a map(please do not use this without asking Roja first!!)   [general] allow_combat: 1 allow_rain: 1 allow_multicombat: 1 allow_beam: 0 min_level: 30 map_name: `Kilaran Field` [/general]   A new summon area that decreases mana needed to summon: [attributes] [bonus_summoning_area] min_x: 90 min_y: 130 max_x: 100 max_y: 150 value: 1 [/bonus_summoning_area] [/attributes]   USE WITH ID list: The first number here: http://el.other-life.com/downloads/item_info.txt