Map

Maps are set locations in the MapleStory world. You are always in a Map, whether it be in Henesys, or even on the Login Screen; you're always in a Map.

Location
Maps can be found in Map.wz in the following location in the wz tree:
 * Map.wz
 * Map
 * Map? (where ? is a number from 0 to 9 and is equal to the first digit of the map's id)
 * [the id of your map].img

Contents
Inside each map is the following information:

Standard information : These appear in each and every map.

 * info
 * back
 * life
 * reactor
 * 0,1,2,3,4,5,6,7
 * foothold
 * ladderRope
 * miniMap
 * portal
 * reactor
 * seat

Other information : These are less commonly found, and are normally used on maps with special features.

 * clock
 * pulley
 * healer
 * monsterCarnival
 * snowBall
 * weather
 * user
 * BuffZone
 * noSkill
 * seat
 * battleField
 * snowMan
 * mobMassacre
 * swimArea
 * nodeInfo
 * shipObj
 * coconut
 * ToolTip

Info - Contains basic info and restrictions regarding the map

 * version - Goes up when Nexon edits the map
 * cloud - Whether or not there are 'mist' clouds present on the map; where the value of 0 equates to no clouds, and 1 has clouds.
 * town - Whether this is a town. Affects death exp loss.
 * swim - Whether or not you can 'swim' in the map, regardless of the presence of any body of water. Just like with the Cloud property; 0 means you can't swim, and 1 means you can swim.
 * returnMap - If you die or use a return scroll where do you go? The mapid set here will be the destination.
 * forcedReturn - If you do so much as change channels or logout you'll get sent here. The mapid set here will be the destination.
 * mobRate - How fast mobs spawn.
 * bgm - The background music. Music can be found in the Sound.wz
 * mapMark - The mark for the map in the minimap.
 * fly - Whether or not you can fly in the map. Flying is a slower and 'heavier' alternative to swimming. The value of 0 means you cannot fly, while the value of 1 means you can fly.
 * noMapCmd - Map commands are not allowed to be used on these maps. /m is disabled.
 * hideMinimap - Is the minimap hidden? Where the value of 0 means it isn't, and the value of 1 means it is.
 * fieldLimit - Used to check several stuffs in maps. Something like map rules. Eg: Jump, downjump, spawn pets, use skills, teleport rocks, change channel, etc.
 * VRTop - The upper boundary of the map.
 * VRLeft - The left boundary.
 * VRBottom - And the bottom.
 * VRRight - And the right.
 * onFirstUserEnter - When you first come here execute this script.
 * onUserEnter - Whenever you enter this map execute this script.
 * moveLimit - Mobile restrictions
 * entrustedShop - [Boolean] Enables Hired Merchants to be used
 * personalShop - [Boolean] Enables Personal Shops to be used
 * help - [String] Not sure what it does, but its in korean words in the wz files
 * zakum2Hack - Zakum Jump Quest Check
 * allMoveCheck - Jumping Quest check protection. Can be used to check for player movements
 * allowedItem - In int forms. Only these items can be dropped in the map. (Used in Wolf/Sheep PQ)
 * decHP/decMP - Amount of hp or mp to decerease at a specific  . (Default: 10 secs)
 * protectItem - decHP and decMP will NOT take effect when this item is equipped
 * protectSetKey - decHP and decMP will NOT take effect when the WHOLE set is equipped. (Eg: Visitors Set)
 * fs - Slipping on ice speed. (Default: 0.2)
 * EscortMinTime - Time allowed to escord a mob npc. (Eg: Visitors PQ and Shammos PQ)
 * reactorShuffle - [Boolean] shuffles  upon entering map. If name does not exist, then shuffle all.
 * expeditionOnly - Only players with expedition canenter this map
 * partyOnly - Only players with party can enter this map
 * fixedMobCapacity - Max amount of mob that can stay in the map (Used in Subway PQ and Pyramid PQ)
 * createMobInterval - Intervals to spawn mob (In milliseconds). This will take effect provided the fixedMobCapacity is not exceeded
 * needSkillForFly - [Boolean] Can fly without soaring skill or not
 * timeOut - Time in milliseconds to warp player out and starts counting upon player enters map
 * timeLimit - Time in seconds to warp player out. (Used to show at Clock)
 * lvLimit - Minimum level to enter the map
 * lvForceMove - Maximum level which can stay in the map. Starts counting from THIS value. If lvForceMove is 51, means if level is equals or more than 51, then warp out.
 * damageCheckFree - Ignore checking same amount of damages received by player (Used in fishing maps)
 * consumeItemCoolTime - Consume use items delay. In seconds
 * everlast - Used in Guild PQ and Happyville maps. (Items will not disappear when is dropped inside the map until a player leaves the map)
 * link - Since Nexon created many maps of the same type, this field will be the main/first map. (Eg: Mulung PQs)

Back - Contains information relating to how background image(s) are positioned on the map.
The 'back' section of a map consists of various 'links' that help build up the background in that specific map. These links contain no images; just information and values that tells the client to fetch specific data from the 'Back.img' (where all background images are stored) property and where or how to place them in each map.

Each 'back' section of a map has several numbered properties in it once opened. These properties always start from 0 and go up numerically. Depending on which number the background image is set on, it can either be infront of another background image, or behind it.

Example 1: A background image set in the property of '0', will always be behind every other background image.

Example 2: A background image set in the property of '14' will always be behind a background image set in the property of 15, and any other background image set on a property above 15.

Example 3: A background image set in the property of '10' will always be infront of a background image set in the property of 9, and any other background image set on a property below 9.

Thus, judging from the examples above; it can be said that the lower the property number set on a background image is, the further behind it will be. The higher the property number set on a background image is, the more infront of other background images it will be. The only exception being when the 'front' value is set to 1, in which that specific background image will be infront of everything on the map, including the player.

Moving on, each property has information and values in it, that determine how the background image will appear in the map. Namely, these include:
 * a - Normally set to the value of 255.
 * ani - Stands for 'animation' or 'animated'. This links to the 'ani' property of the available background sets in the 'Back.img' tree. Images here are dynamic; meaning that they move, hence the term 'animation'. If a value of 1 is set on 'ani' under the 'back' property of a map, it means that the client will fetch background images from the 'ani' section under the 'Back.img' tree, from an available background set. An example of a back would be 'timeTemple.img' or 'Amoria.img'.


 * life
 * reactor
 * 0
 * 1
 * 2
 * 3
 * 4
 * 5
 * 6
 * 7
 * clock
 * pulley
 * healer
 * monsterCarnival
 * snowBall
 * weather
 * user
 * BuffZone
 * noSkill
 * seat
 * battleField
 * snowMan
 * mobMassacre
 * swimArea
 * nodeInfo
 * shipObj
 * coconut
 * ToolTip
 * miniMap
 * foothold
 * ladderRope
 * portal