summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2013-11-19Sanitized and improved several macros through the codeHaru54-508/+495
- 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-19HPM Hooks UpdateHercules.ws3-0/+30
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-11-18Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind3-13/+13
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-19HPM Hooks UpdateHercules.ws3-13/+13
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-11-18Follow up aee2f6317e1c927847993801b5973d7e2e27a418shennetsind2-10/+20
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-18HPM Hooks UpdateHercules.ws3-30/+30
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-11-18Follow-up to d9a89c56ea63e369999ca13f1584eef9e511490fHaru1-3/+3
- Updated db2sql plugin to reflect the latest changes. - Fixes bugreport:7835, special thanks to ossi0110 http://hercules.ws/board/tracker/issue-7835-db2sql-plugin-error/ 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-17Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind3-10/+114
2013-11-17Fixed Bug 7832shennetsind1-0/+3
http://hercules.ws/board/tracker/issue-7832-compile-issue/ Signed-off-by: shennetsind <ind@henn.et>
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/Herculesshennetsind4-3/+95
2013-11-16Introducing Character Ban Support.shennetsind10-77/+232
@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-16Minor char server char list fixesshennetsind1-9/+5
the array was being erroneously modified in old client packets. Signed-off-by: shennetsind <ind@henn.et>
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-16Updated char server's response to offline map servershennetsind1-4/+16
Previously attempting to log in while map server was unavailable or not yet ready would close the client, now the char select window shows up and attempting to select a character while the map server is unavailable will display a pop up "the map is not available", client will remain in char select window and won't close anymore. Special Thanks to Haruna. Signed-off-by: shennetsind <ind@henn.et>
2013-11-16Fixed char server's maintenance modeshennetsind3-21/+52
Enabling the maintenance mode will now restrict login based on group id (previously maintenance mode was merely cosmetic and would allow all accounts to access). Renamed char-server.conf setting char_maintenance to char_server_type, added char_maintenance_min_group_id to be used in conjunction with char_server_type:1 Signed-off-by: shennetsind <ind@henn.et>
2013-11-16HPM Hooks UpdateHercules.ws3-0/+92
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
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-15HPM Hooks UpdateHercules.ws3-0/+30
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-11-15Official Item BindOnEquip Supportshennetsind7-9/+41
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 modeshennetsind2-8/+5
Would turn map server into minimal mode regardless of the --db2sql option being used. Signed-off-by: shennetsind <ind@henn.et>
2013-11-15Modified db2sql plugin to maintain item_db2.sqlshennetsind1-0/+13
makes it easier to keep the table structure up to date Signed-off-by: shennetsind <ind@henn.et>
2013-11-15Re-generated SQL item databases with the updated db2sql pluginHaru1-1/+1
Signed-off-by: Haru <haru@dotalux.com>
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-15HPM Hooks UpdateHercules.ws3-56/+118
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
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 itemdbshennetsind7-173/+216
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!shennetsind11-128/+178
- 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-11HPM Hooks UpdateHercules.ws3-0/+61
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
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-09Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-6/+6
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>