summaryrefslogtreecommitdiff
path: root/src/common
AgeCommit message (Collapse)AuthorFilesLines
2014-01-18Socket interfacedshennetsind7-115/+182
We designed this one with having as little changes required elsewhere in mind, thus the way most socket-related things are called has not changed. Plugins may now take a greater advantage of the socket features. Signed-off-by: shennetsind <ind@henn.et>
2014-01-18Modified strlib interface to be compliant with hpmhooksshennetsind1-5/+3
aka no #ifdef within the interface. Thanks to Haruna. Signed-off-by: shennetsind <ind@henn.et>
2014-01-18Libconfig Interfacedshennetsind4-59/+216
Ready for plugin use. Thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>
2014-01-15Fixed Bug 7973shennetsind1-2/+2
Changed PACKETVER_RE to be commented out by default since 20131223 is not ragexere. Thanks to evilpuncker http://hercules.ws/board/tracker/issue-7973-missed-update-at-mmoh/ Signed-off-by: shennetsind <ind@henn.et>
2014-01-13Fixed HPM support for group permissionsshennetsind1-0/+5
pcg->add_permission dropped, use 'AddGroupPermission("name",unsigned int var for mask id)' Signed-off-by: shennetsind <ind@henn.et>
2014-01-12Changed some void* to the correct data types where applicableHaru2-3/+4
Signed-off-by: Haru <haru@dotalux.com>
2014-01-12Fixed ERS Cache sharingshennetsind3-10/+24
Enforcing cache to match the option condition in order for it to be shared. Special Thanks to Haruna! Signed-off-by: shennetsind <ind@henn.et>
2014-01-11Fixed Bug 7960shennetsind1-1/+1
http://hercules.ws/board/tracker/issue-7960-scriptc-warnings/ Also applied a temporary adjustment due to ERS_OPT_CLEAN not being consistent (decent fix will follow up, haru and i are working on it) -- thanks to kyeme for pointing it out! Signed-off-by: shennetsind <ind@henn.et>
2014-01-11Hercules 1st 2014 MegaPatchshennetsind4-74/+270
http://hercules.ws/board/topic/3886-hercules-1st-2014-megapatch/ Signed-off-by: shennetsind <ind@henn.et>
2013-12-30Fixed account expiration timeshennetsind1-1/+1
Login server no longer insta-denies expired accounts, as there may be free to play (or non paying) char server modes in the list, also made sure type 3 is sent as normal mode to non-expired accounts (client has a hardcoded if type == 3 => "claim need to pay & deny message" Special Thanks to Beret. Signed-off-by: shennetsind <ind@henn.et>
2013-12-24Christmas Patch - 2013-12-23 Supportshennetsind1-1/+1
Info: http://hercules.ws/board/topic/3614-christmas-patch-gifto/ Signed-off-by: shennetsind <ind@henn.et>
2013-12-18Follow up a23d072a66d2569ba13921522be3c82ae9aad576shennetsind2-4/+6
just updating the headers since they were modified. Signed-off-by: shennetsind <ind@henn.et>
2013-12-18Fixed Bug 7906shennetsind1-1/+1
http://hercules.ws/board/tracker/issue-7906-compiling-error-latest/ Signed-off-by: shennetsind <ind@henn.et>
2013-12-17Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-1/+1
2013-12-17Speed up of several procedures that rely on ERS, _mreallocz ('z'ero)shennetsind6-8/+52
Made Possible Thanks to the Woonderful Haruna! <3 Commit also fixes an inconsistency in the ERS, where it'd start with clear memory but would use garbage upon resizing, also implements a new ERS option that clears entries as soon as pass by ers_free, so that they'll be all shinny for when ers_alloc reuses them. Signed-off-by: shennetsind <ind@henn.et>
2013-12-17Fixed a leftover warning in Release buildsHaru1-1/+1
- Fixes a series of "left-hand operand of comma expression has no effect" in nullpo checks. - Special thanks to ossi0110. Signed-off-by: Haru <haru@dotalux.com>
2013-12-17Fixed some additional linux warningsHaru1-4/+4
- Fixed some warnings we had missed. - Improved -W cflag detection routines. - Only use -Wshadow if it's actually useful. Signed-off-by: Haru <haru@dotalux.com>
2013-12-17Fixed several compiler warningsHaru10-35/+53
- Warnings detected thanks to Xcode's compiler settings (more strict by default) and clang, warnings mostly but not only related to data sizes on 64 bit systems, that were silenced until now by very lax compiler settings. - This also decreases by a great deal the amount of warnings produced by MSVC in x64 mode (for the adventurous ones who tried that) - Also fixed (or silenced in case of false positives) the potential issues pointed out by the (awesome) clang static analyzer. - Patch co-produced with Ind, I'm merging and committing in his place! Signed-off-by: Haru <haru@dotalux.com>
2013-12-17Added support for non-aborting assertionsHaru3-41/+71
- Added Assert_ret, Assert_retv, Assert_retb, Assert_retr, working similarly to the corresponding nullpo_ functions. - Moved Assert-related macros to nullpo.h, since they share some functions. Signed-off-by: Haru <haru@dotalux.com>
2013-12-17Nullpo cleanupHaru2-271/+64
- Removed unused, nonportable nullpo checks with formatted message (related: eAthena r15245) - Converted nullpo_chk to a macro, to make it easier on the llvm static analyzer. - Added more details to the nullpo_info reports (related: eAthena r15246) - Ensured that the nullpo check macros evaluate their pointer argument once and only once, so that it's safe to use with expressions that assign values or have side-effects. Signed-off-by: Haru <haru@dotalux.com>
2013-12-17Changed plugin extension from .so to .dylib on OS XHaru1-1/+3
- No functional changes. That's just the correct OS X file extension for dynamic libs. Signed-off-by: Haru <haru@dotalux.com>
2013-12-16Introducing HPM Support for custom battle confsshennetsind3-1/+86
Special Thanks to Mhalicot. Signed-off-by: shennetsind <ind@henn.et>
2013-12-09Fixed some logic errorsshennetsind1-1/+1
Special Thanks to Haru Signed-off-by: shennetsind <ind@henn.et>
2013-12-06HPM: mapindex interfaceshennetsind2-56/+90
Signed-off-by: shennetsind <ind@henn.et>
2013-12-03Questlog fixesHaru1-7/+11
- Improved memory usage of the quest log system. (saves up to 75kB per online character). Fixes issue #133. - Fixed various issues with quest entries disappearing from characters without an apparent reason, or monster kill counters getting stuck - the issues were caused by a de-synchronization between the two parallel questlog arrays in map_session_data. - Added some code documentation. - Thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-11-29Follow up 3a269dca93c421141631b4c87b2f366b6c130a42shennetsind1-0/+3
Extended to the fix to aggregated as well, as in val: [ y,x ]/{y,x}/(x,y,...) Signed-off-by: shennetsind <ind@henn.et>
2013-11-28Fixed conf inheritance issueshennetsind1-5/+9
Special Thanks to bgamez23, kyeme. Signed-off-by: shennetsind <ind@henn.et>
2013-11-25Fixed Bug 7833shennetsind1-0/+1
instance custom map names no longer linger in the index after the instance is destroyed http://hercules.ws/board/tracker/issue-7833-instancing-issues/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-25Fixed equip_level_max handling in the sql db convertershennetsind1-0/+2
The field is now NULL when the value is not provided, instead of MAX_LEVEL. Special Thanks to Mvmbles for bringing the issue to our attention. Signed-off-by: shennetsind <ind@henn.et>
2013-11-22Minor HPMi Sub Modificationsshennetsind1-0/+24
- HPMi->addCommand is now addAtcommand, dropped usage of ACMD_A() - HPMi->addScript is now addScriptCommand, dropped usage of BUILDIN_A() - HPMi->addCPCommand is now addCPCommand, dropped necessity of CPCMD_A() - HPMi->addPacket is now addPacket, 5th param (HPMi->pid) is now automatically filled by the macro, therefore param count drops to 4 (packetID,packetLength,packetFunction,packetIncomingPoint). There is no longer necessity to check for the availability of the commands, the macros will do it on their own and drop a warning about it upon failure. These changes won't affect pre-compiled plugins. Signed-off-by: shennetsind <ind@henn.et>
2013-11-20Added support for 'make plugin.pluginname' to compile only 'pluginname'Haru1-15/+22
- Various Makefile optimizations Signed-off-by: Haru <haru@dotalux.com>
2013-11-19Sanitized and improved several macros through the codeHaru26-235/+211
- 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-17Fixed Bug 7832shennetsind1-0/+3
http://hercules.ws/board/tracker/issue-7832-compile-issue/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-16Introducing Character Ban Support.shennetsind3-0/+14
@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 char server's maintenance modeshennetsind1-0/+8
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-14Updated db2sql plugin for the needs of the new itemdbshennetsind2-1/+6
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-13HPM Custom Data Struct Makeover!shennetsind4-48/+135
- 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-09HPM Support for plugin-implemented "--args" (options)shennetsind4-9/+104
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-07Merge remote-tracking branch 'upstream/master'shennetsind1-0/+5
2013-11-07Item Bound Fixes/Adjustments/Improvementsshennetsind1-1/+11
Special Thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>
2013-11-06Update Fixshennetsind1-1/+1
Re-added the changes that were gone in the update conflict. Signed-off-by: shennetsind <ind@henn.et>
2013-11-07Added _MSC_VER check.Shido1-0/+5
* This will check if C/C++ Compiler Version since VER 18.00 already defined Interlocked/Interlocked64. Signed-off-by: Shido <the.keikun@gmail.com>
2013-11-06Merge remote-tracking branch 'upstream/master'shennetsind5-22/+40
Signed-off-by: shennetsind <ind@henn.et> Conflicts: src/map/pc.c
2013-11-06Merge pull request #217 from HerculesWS/script-checkershennetsind3-8/+26
Introducing the Hercules Standalone Script Syntax Checker
2013-11-05cbasetypes.h updateshennetsind1-6/+6
partial usage of ea:15242 (ai4rei) -- will revisit the remaining. Signed-off-by: shennetsind <ind@henn.et>
2013-11-05Introducing the Hercules Standalone Script Syntax CheckerHaru3-8/+26
- Added a command line argument '--script-check' to check a script's syntax without running the server (and without requiring a SQL connection). Usage: ./map-server --script-check /path/to/the/script.txt - For convenience, a script-checker bash script is provided, to set the path correctly when called from a different directory. Usage: /path/to/Hercules/script-checker /path/to/the/script/to/check.txt - While the script checker will supposedly work under windows as well, no convenience scripts are currently provided for platforms other than UNIX (feel free to open a pull request with a .bat launcher or whatever you like) - Integration with IDEs or text editors is possible. In fact, I already have a fully functional plugin for vim (through vim-syntastic), and if there's enough interest, I'll publish it. - screenshot: http://d.pr/i/NOBD - If you want an online checker, http://haru.ws/scriptchecker/ is running this code, without modifications and will be kept up to date (without any warranty though.) - Special thanks to Ind, Yommy, Streusel, who helped making this possible, in a way or another.
2013-11-03Added some packetver-related flags to the UNIX build scriptHaru1-7/+7
- The --disable-packetver-re (or --enable-packetver-re=no) flag prevents the definition of PACKETVER_RE (without editing mmo.h) - The --with-key1=, --with-key2=, --with-key3= flags override the encryption key defined by the current packetver. All three flags are required if at least one is used, or they'll be ignored. - These options are mostly useful for buildbots, developers who often use git bisect, or users who want to minimize their diffs and still want to override those settings. - (unrelated minor tweak) Silenced an unnecessarily verbose STDERR message caused by the $CC shipped with clang-5 during the MinGW check.
2013-11-02Fixed Bug #7786shennetsind1-1/+1
@speed no longer screws up on map change, modified @speed feedback so its clear whether the permanent speed flag is gone, enhanced @speed by making it capable of bypassing battle_config.max_walk_speed, made status_calc_speed rely on MIN_WALK_SPEED instead of the hardcoded 0, modified MIN_WALK_SPEED from 0 to 20 (it 1) wasnt being respected and 2) less than 20 clips). @speed is now capable of moving the character faster, prior to this commit @speed 0 was equivalent to @speed 50 of this new version, @speed 20 for example is now the new maximum (and moves much faster). http://hercules.ws/board/tracker/issue-7786-speed-bug-when-changing-maps/ Thanks to Mumbles for all the info Signed-off-by: shennetsind <ind@henn.et>
2013-11-02Updated to latest Herculesshennetsind1-0/+3
Signed-off-by: shennetsind <ind@henn.et>
2013-10-30Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-4/+4