summaryrefslogtreecommitdiff
path: root/src/map
AgeCommit message (Collapse)AuthorFilesLines
2013-11-19Sanitized and improved several macros through the codeHaru23-257/+276
- Sanitized all potentially unsafe macros (related eA:15259) - Improved some function-like macros to evaluate their argument only once and keep it in a temporary variable. This improves performance in the damage calculation related code. Signed-off-by: Haru <haru@dotalux.com>
2013-11-18Merge pull request #224 from datmumbles/size_changesshennetsind8-46/+46
Corrected size-related constant names (closes #222).
2013-11-18Fixed Bug 7819 - Renewal Elemental Damageshennetsind1-5/+1
Special Thanks to Michieru for gathering official server data and testing. http://hercules.ws/board/tracker/issue-7819-element-tables/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-18Fixed the erroneously redirected GM Full Strip Packetshennetsind3-1/+19
Implemented in 2009-10-27, the packet was being redirected to a account name req packet, while it was a entirely different feature. this fixes the (GM-Suit) 'right click' option 'remove all equipment'. Special Thanks to Yommy. Signed-off-by: shennetsind <ind@henn.et>
2013-11-18Follow up aee2f6317e1c927847993801b5973d7e2e27a418shennetsind1-2/+2
Fixed glitch that'd occur in clients with login screen where even after logging out the client would still remember previously sent banned timestamps, keeping the char banned until client was reopened. Also dropped a error message map server would show up when banning offline characters. Special Thanks to Mvmbles for pointing it out, Haruna for testing and helping fix it. Signed-off-by: shennetsind <ind@henn.et>
2013-11-18Modified charban char server responding actionshennetsind2-11/+11
so that the char id is used instead of account id, thus not disconnecting the account id from map server unless the char id being banned is online, special thanks to haruna. Signed-off-by: shennetsind <ind@henn.et>
2013-11-18Fixed itemdb elvmax issue caused by inheritshennetsind1-1/+1
Special Thanks to Yommy, Haruna. Signed-off-by: shennetsind <ind@henn.et>
2013-11-18Corrected size-related constant names and cleaned up comments (closes #222).Mumbles8-46/+46
2013-11-18Follow-up to 1f5161a2bd3c7934373146d8cac3c131536758baHaru1-1/+7
- Added explicit column names in the item_db query, to ensure it will throw a SQL error in case some are missing, rahter than silently failing and returning incorrect data. - Added sql upgrade file to add the bindonequip column to the item_db2 table for those who have it. - As with all the item_db2 upgrade scripts, you need at least MySQL 5.0 in order to run it. If your version is not compatible, or if the script fails for any reason, manual upgrade instructions are provided within the script. - Special thanks to Mumbles. Signed-off-by: Haru <haru@dotalux.com>
2013-11-18Fixed an issue with item_db2 entries that specify Inherit, and no ScriptHaru2-55/+102
- Added missing source documentation for the itemdb overhaul related functions. - Slighty refactored the readdb sql function. - Special thanks to sevenzz23 for reporting the crash issue (topic:3029) http://hercules.ws/board/topic/3029-ritem-data-structure-overhaul-error-msg/ and to Ind for testing. Signed-off-by: Haru <haru@dotalux.com>
2013-11-17Added emblem blank pixels checkHaru3-10/+114
- Made possible thanks to (and using base code by) Ai4rei - eAthena r15263 and add-on patch http://hercules.ws/board/topic/2974-add-on-patch-for-ea-r15263-commit/ - Modified to allow checking for a percentage of transparent pixels rather than full image transparency. - Tweaked to accept some other bmp formats that are currently allowed by the client. - The performance hit from enabling this check is negligible (benchmarks show that scanning an emblem requires about half the time required to decompress it after it's received), but it does exist, as noted in the configuration file. - Special thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-11-16Renewal elemental attr fixshennetsind2-2/+7
I'm committing on malufett's behalf. Signed-off-by: shennetsind <ind@henn.et>
2013-11-16Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-3/+3
2013-11-16Introducing Character Ban Support.shennetsind4-9/+57
@charban/@charunban, can temporarily block any accounts as opposed to the usual account-wide block. Special Thanks to Haruna, Yommy! Signed-off-by: shennetsind <ind@henn.et>
2013-11-16Fixed a mapserver crash when using SQL item DB and an item's script is NULLHaru1-3/+3
- Special thanks to Mumbles. Signed-off-by: Haru <haru@dotalux.com>
2013-11-16Fixed atcommand alias bug on selected commandsshennetsind1-23/+23
Modified the issues in question to check against the source command name, ensuring that the conditions work even when an alias is used. Also replaced sensitive conditions with insensitive ones, Special Thanks to Haruna. Signed-off-by: shennetsind <ind@henn.et>
2013-11-15Official expiration timer supportshennetsind4-6/+85
As brought up in http://hercules.ws/board/topic/2225-paid-server/ Special Thanks to Haruna for all the help! Thanks to Beret, Ai4rei for information Signed-off-by: shennetsind <ind@henn.et>
2013-11-15Official Item BindOnEquip Supportshennetsind6-7/+38
Implements the 'BindOnEquip' item db field which determines whether the piece of equipment should bind to the character upon being equipped. When a character tries to equip such a item for the first time a dialog shows up asking the character to confirm whether to equip the item or not, and notifying the character that by equipping the item it will become bound to the character, and therefore unable to be used by another character. Special Thanks to Beret for all the information, Haruna for testing. Signed-off-by: shennetsind <ind@henn.et>
2013-11-15Fixed db2sql plugin forcing minimal modeshennetsind1-4/+3
Would turn map server into minimal mode regardless of the --db2sql option being used. Signed-off-by: shennetsind <ind@henn.et>
2013-11-15Small fix to the Item DB parser (Slots, not Slot!)Haru1-1/+1
- Special thanks to kyeme Signed-off-by: Haru <haru@dotalux.com>
2013-11-14Added Inheritance support for item_db2Haru1-22/+39
- If an item is marked as Inherit: true in item_db2, and it already exists, in item_db, then any unspecified fields are taken from the item_db entry rather than using their default values. - Special thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-11-14Updated db2sql plugin for the needs of the new itemdbshennetsind4-76/+60
May be used as ./map-server --db2sql or by typing "server tools db2sql" within map-server console parse. Special Thanks to Haruna. Signed-off-by: shennetsind <ind@henn.et>
2013-11-14Item DB overhaulHaru3-269/+310
http://hercules.ws/board/topic/2954-item-db-file-structure-overhaul - Item db was changed to libconfig format. - This new format is larger than the original format, but it's less subject to conflicts when some items are edited and the file gets updated. - It is no longer necessary to specify fields with no value, and only the actually used fields are specified. - Items scripts (especially the long ones) are made more readable by splitting them into multiple lines, with proper indentation. - A converter perl script is provided in the tools directory (and a link to the web-based version of the same script canbe found in the above forum topic) - All of this was made possible thanks to Ind, Yommy. Signed-off-by: Haru <haru@dotalux.com>
2013-11-13Follow up 8fda38dcdabbb9d252b0e11fb07b2ad37f9e659fshennetsind2-2/+4
Fixed compiler error on selected systems, thanks to haruna bringing it up! Signed-off-by: shennetsind <ind@henn.et>
2013-11-13HPM Custom Data Struct Makeover!shennetsind6-73/+36
- Modified how the core handles it, making it easier to add new points. - Modified how plugins call it, calls were made shorter, e.g. 'HPMi->getFromSession(session[fd],HPMi->pid,0)' => 'getFromSession(session[fd],0)' -- check src/common/HPMi.h #defines for all the options - Added support for npc_data (getFromNPCD and so on) as requested in http://hercules.ws/board/topic/2923-hpm-custom-struct-npcs/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-12Follow up ce6c4c63a3a5c1516780f2eac978d02820a8dc0bshennetsind1-0/+5
Fixed shutdown memory manager warning. Signed-off-by: shennetsind <ind@henn.et>
2013-11-11Fixed MSVC compile error in ce6c4c63a3a5c1516780f2eac978d02820a8dc0bHaru1-2/+3
- Fixed bugreport:7818, thanks to sevenzz23 http://hercules.ws/board/tracker/issue-7818-error-when-compiling/ Signed-off-by: Haru <haru@dotalux.com>
2013-11-11Follow-up to dd05ae388d69e7df1dffcd393cea5e4cdc605e75Haru2-4/+120
- Reduced number of false positives when parsing .@scope variables. - Added correct error source information where it previously said 'source not found'. - Special thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-11-10Follow-up to 97001710c06ed7053d18c8baaac602eb563b64b3Haru1-11/+12
- Added --script-check to the --help screen. Signed-off-by: Haru <haru@dotalux.com>
2013-11-10Fixed item chain drop rate processing algorithmHaru1-13/+6
- This corrects the absurdly high drop rate the Blacksmith skill Ore Discovery was granting, to its correct values (and processing algorithm) from Aegis. - Special thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-11-10Added deprecation messages for incorrect capitalization in scriptsHaru3-3/+87
- These messages are temporary, only meant to help those with custom scripts to transition them to the correct case-sensitive syntax. If you ignore the deprecation messages you encounter, your scripts may continue to work just as they did until now, but this will no longer be true in the near future, and they may stop working at any time. If you ignore this, and your scripts break, you'll get to keep the pieces :) Signed-off-by: Haru <haru@dotalux.com>
2013-11-09Follow up 7803b4e0d437681aa09113b5240363d03d85a1b8shennetsind1-2/+2
The commit said "4. pc_jobchange now correctly vaporizes the homun. " while it actually fixed it on skillreset, this commit fixes it on pc_jobchange and on pc_dead. Special Thanks to kyeme! Signed-off-by: shennetsind <ind@henn.et>
2013-11-09Fixed Bug 7800shennetsind1-1/+0
homunculus skill delays (cooldown was fixed in 7803b4e0d437681aa09113b5240363d03d85a1b8 ) are no longer reset upon being vaporized Thanks to Wend, kyeme. http://hercules.ws/board/tracker/issue-7800-homunculus-skills-cooldown/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-09Fixed Bug 7809shennetsind1-3/+3
Fixed @speed bug that'd cause partial speed increase (instead of 100%) until map change. Thanks to Beret, kyeme. http://hercules.ws/board/tracker/issue-7809-speed-command/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-09Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind2-15/+15
2013-11-09HPM Support for plugin-implemented "--args" (options)shennetsind2-20/+26
As a necessary measure for the upcoming bot that will keep .sql files in sync with their .txt counterparts. Special Thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>
2013-11-09Consolidated commands called in scripts to their lowercase versionHaru2-15/+15
- Added a note about variables and command scripts case sensitivity. Even though the engine still accepts variable, function and command names in a case insensitive way, it is discouraged to rely on such behavior. Please update your custom scripts as soon as possible. Signed-off-by: Haru <haru@dotalux.com>
2013-11-08Fixed 5 Homun Bugsshennetsind5-19/+32
1. Homun cooldowns are no longer reset upon being vaporized. 2. Call Homun now displays the skill title above the char upon success. 3. Homuns that have been out of owners sight for over 3 seconds will now be teleport back to master. 4. pc_jobchange now correctly vaporizes the homun. 5. New homunculus now spawn with full health. Special Thanks to kyeme/Beret for all the information and official server testing. Signed-off-by: shennetsind <ind@henn.et>
2013-11-08Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind2-0/+12
2013-11-08Fixed Bug 7807shennetsind2-12/+12
NPC Duplicates with xs/ys weren't being properly loaded, Special Thanks to Haruna. Also fixes an issue with the instance empty timer. http://hercules.ws/board/tracker/issue-7807-endless-tower/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-08Added support for monster spritename constantsHaru2-0/+12
- Follow-up to 124ab2a1cdb344f24170a4d91f7000ebabf39b40 - Replaced numeric IDs in NPC definitions and setnpcdisplay calls with the appropriate constants - Made possible thanks to Ind Signed-off-by: Haru <haru@dotalux.com>
2013-11-07Merge remote-tracking branch 'upstream/master'shennetsind1-38/+78
2013-11-07Further item bind adjustmentsshennetsind10-17/+21
Thanks to Haruna! Signed-off-by: shennetsind <ind@henn.et>
2013-11-07Extended script constants to support NPC sprite IDsHaru1-35/+76
- Added support for constants whose name begins with a number. - Follow-up to 124ab2a1cdb344f24170a4d91f7000ebabf39b40. - Replaced calls to setnpcdisplay with hardcoded numeric IDs to constants. - Thanks to Yommy. Signed-off-by: Haru <haru@dotalux.com>
2013-11-07Item Bound Fixes/Adjustments/Improvementsshennetsind19-324/+212
Special Thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>
2013-11-07Corrected a const pointer being incorrectly initializedHaru1-2/+1
- Fixes bugreport:7804, thanks to kyeme http://hercules.ws/board/tracker/issue-7804-warning-c4090-function Signed-off-by: Haru <haru@dotalux.com>
2013-11-07Fixed equip command failing when another item of the same kind is equippedHaru1-1/+1
- The command now correctly skips the already equipped items, rather than trying to equip them again (and fail during the process). - Special thanks to Poison. Signed-off-by: Haru <haru@dotalux.com>
2013-11-06Update Fixshennetsind2-0/+2
Re-added the changes that were gone in the update conflict. Signed-off-by: shennetsind <ind@henn.et>
2013-11-06Merge remote-tracking branch 'origin/master'shennetsind16-65/+503
Signed-off-by: shennetsind <ind@henn.et> Conflicts: conf/messages.conf src/common/mmo.h src/map/pc_groups.c src/map/pc_groups.h
2013-11-06Updated to latest Herculesshennetsind1-13/+40
Signed-off-by: shennetsind <ind@henn.et>