Added preliminary support for login and char server in the HPMDataCheck

- Special thanks to Ind

Signed-off-by: Haru <haru@dotalux.com>
Added preliminary support for char and login server to HPMHooking

- Special thanks to Ind

Signed-off-by: Haru <haru@dotalux.com>
Fixed Bug#8012
-http://hercules.ws/board/tracker/issue-8012-bonus-bvariablecastrate-and-bfixedcastrate-not-working-properly/?gopid=21893#entry21893

Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
Merge pull request #378 from HerculesWS/hpmupdates

Char and login server preliminary support for the HPM system
Follow up 1d0452110f4b02f6d771c61d5c3a944f82b155f3
-Updated MVS VC++ project includes and filters.

Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
Follow-up to 1d0452110f4b02f6d771c61d5c3a944f82b155f3

- Updated Xcode project

Signed-off-by: Haru <haru@dotalux.com>
Fixed some errors pointed out by clang's static analyzer

Signed-off-by: Haru <haru@dotalux.com>
Follow-up to 1d0452110f4b02f6d771c61d5c3a944f82b155f3

- Added HPMHooking plugin to the VS2013 project
Follow up to 1d0452110f4b02f6d771c61d5c3a944f82b155f3

- Added HPMHooking plugin to the VS2012 project
- Monster chase range updates (bugreport:7637)
  * Updated monster_chase_range in monster.conf from 1 to 3; I originally thought official value is 1, but doing some in-depth tests myself I realized it's 3 for the most important situations
  * When a monster cannot issue new "move" commands because it was affected by a status change, but is still moving due to knockback immunity, it will no longer unlock its target and stop
  * Fixed a bug that always caused the chase path monsters calculated to be 1 cell too short causing them to recalculate their path one cell before their goal every single time
- Fixed the direction calculation once again and optimized it at the same time (bugreport:9373)
  * Now the calculated direction is 100% official, really truly, checked it myself with every single cell and various skills
  * Added a new function map_calc_dir_xy that allows to check for a direction between two cells without the need of a block_list
  * map_calc_dir will now just use map_calc_dir_xy to avoid duplicate code
* Improved Icewall walk block implementation
- Moved the configuration setting "icewall_walk_block" to monster.conf
- Split the configuration into mob_icewall_walk_block and boss_icewall_walk_block so it can be configured for bosses separately
- Expanded the configuration
  * If the value is set to 1, monsters on an ice wall cell will behave like trapped monsters, that means they won't be able to move at all, they will use idle skills and if they are attacked while nobody is in their attack range, they will use their rudeattacked skills; this is equal to official behavior of bosses
  * If the value is set to 2-255, it will behave as before but monsters in the AI loop now use both idle and chase skills, but will no longer use their rudeattacked skills even if attacked from range; this is equal to official behavior of normal monsters
  * Official values would be "220" for normal monsters (loop until Icewall expiration) and "1" for bosses (behave like trapped monster) on most official servers, but as some official servers have a less exploitable implementation (from looping AI only a limited amount of times up to outright blocking Icewall on all maps with bosses)
- Cleaned up the rudeattacked code a little so it's easier to read
- Fire Pillar is no longer a trap and can no longer be hit or knocked back in renewal

Thanks to Playtester (rathena b43b855d2, 902c920b734cd)
Follow-up to c6f102e (fixed a typo)

Special thanks to kyeme

Signed-off-by: Haru <haru@dotalux.com>
- If you now cast Icewall on an existing ice wall cell, the duration (HP) will no longer be refreshed
Thanks to Playtester
Merge branch 'master' of https://github.com/HerculesWS/Hercules