summaryrefslogtreecommitdiff
path: root/tools
AgeCommit message (Collapse)AuthorFilesLines
2015-08-15Automatic HPM symbol sharingHaru1-2/+5
Signed-off-by: Haru <haru@dotalux.com>
2015-08-15Enabled HPMDataCheck for login and char serversHaru1-2/+9
Signed-off-by: Haru <haru@dotalux.com>
2015-08-15HPM compatibility improvementsHaru3-27/+69
Improved compatibility, portability and standards conformance. - Since it is not possible to portably and reliably re-use the core's symbols in plugins, symbols are no longer exported unless explicitly required, in the UNIX builds. This mimics the Windows behavior and adds HPM compatibility to OSes such as FreeBSD. Credits to Andrei Karas for making this possible. - For convenience, it is no longer necessary to call GET_SYMBOL, since the plugin will automatically import all the available symbols when it's loaded, depending on the included headers. - Plugins are now supposed to include the "common/hercules.h" header before including anything else. Incluing common/HPMi.h, common/cbasetypes.h or conf/core.h is no longer necessary, as those are guaranteed to be automatically included by hercules.h. - HPM API version bumped to 1.1. Signed-off-by: Haru <haru@dotalux.com>
2015-08-15Added HPMHooking support for common interfacesHaru1-4/+37
Signed-off-by: Haru <haru@dotalux.com>
2015-06-19Fixed HPMHookGen's inability to detect certain interface membersHaru2-6/+7
Private members as well as members of interfaces with more than one section are now correctly detected. Signed-off-by: Haru <haru@dotalux.com>
2015-06-19Follow-up to e81d221Haru2-6/+2
Let doxygen ignore __attribute__ instead of ignoring it at parse time. Signed-off-by: Haru <haru@dotalux.com>
2015-06-19Improved info/error messages during plugin loadingHaru1-2/+2
- Each loaded plugin will now show a status message - If a plugin loads because of a missing symbol, an error message will be displayed, mentioning the name of the missing symbol. Signed-off-by: Haru <haru@dotalux.com>
2015-06-19Fixed an issue causing some structs to be missing from the HPMDataCheckHaru2-1/+2
Signed-off-by: Haru <haru@dotalux.com>
2015-06-19Improved the HPMHookingGen parserHaru1-0/+5
It now strips gcc's __attribute__ from interface methods Signed-off-by: Haru <haru@dotalux.com>
2015-06-02Follow up to 712812bMysteries3-3/+3
- More link changes - Added proper link to Roulette topic
2015-01-24Minor channel system refactoringHaru1-0/+2
Signed-off-by: Haru <haru@dotalux.com>
2015-01-24Added additional item drops support to the quest dbHaru1-0/+8
- Special thanks to Dastgir, Michieru Signed-off-by: Haru <haru@dotalux.com>
2015-01-24Added quest_db.txt to quest_db.conf Conversion Tooldastgir1-0/+86
2015-01-22HPMHookGen compatibility fix for doxygen 1.8.9.xHaru1-1/+1
Signed-off-by: Haru <haru@dotalux.com>
2014-12-10In validateinterfaces tool fix searching lost interfaces.Andrei Karas1-1/+1
2014-12-02Improve a bit checking in validateinterfaces.py.Andrei Karas1-0/+8
2014-12-02Add different command line actions to validateinterfaces.py.Andrei Karas1-16/+36
2014-12-02in validateinterfaces.py tool add support for checking not added functions ↵Andrei Karas1-6/+44
to initerfaces.
2014-11-15Follow-up to 61fc83fd7dd51e9a88ac7e6264692fcf561a37f7Haru2-2/+2
Compatibility fix for older versions of Perl Signed-off-by: Haru <haru@dotalux.com>
2014-11-15Corrected an issue in the HPMHookGen when interfaces only have one memberHaru2-19/+18
- Fixed hooks/symbols generation for the inter_quest interface - Re-enabled strict mode Signed-off-by: Haru <haru@dotalux.com>
2014-11-15Fix HPM hook generation script for support new interfaces.Andrei Karas1-1/+6
2014-11-10Improve performance in validateinterfaces.py.Andrei Karas1-12/+14
2014-11-10Add support for return error code if any error found.Andrei Karas1-2/+3
2014-11-10Add command line option for silent checks.Andrei Karas1-11/+20
It will show anything only if error found. Command line option: silent
2014-11-10Check only dirs with servers sources and common dir.Andrei Karas1-2/+8
2014-11-10Add tool to validate interfaces usage.Andrei Karas1-0/+162
2014-11-02Fixed an error in the HPMHookGenHaru1-1/+1
Signed-off-by: Haru <haru@dotalux.com>
2014-10-28Added preliminary support for char and login server to HPMHookingHaru1-84/+91
- Special thanks to Ind Signed-off-by: Haru <haru@dotalux.com>
2014-10-28Added preliminary support for login and char server in the HPMDataCheckHaru1-2/+14
- Special thanks to Ind Signed-off-by: Haru <haru@dotalux.com>
2014-08-07Corrected several format-string errors through the codeHaru1-2/+2
- Functions that expect a printf-style format string are now marked as such, so that gcc/clang will emit a warning warn you if you mismatch format string and arguments. Signed-off-by: Haru <haru@dotalux.com>
2014-07-11Fixed reserved __identifier violationsHaru1-4/+4
- Complies with CERT DCL37-C - Fixes issue #293 (special thanks to elfring) Signed-off-by: Haru <haru@dotalux.com>
2014-05-31Fixes and optimizations to the item_merge.lua converter.Dastgir Pojee1-26/+21
- Special thanks to QQfoolsorellina Signed-off-by: Haru <haru@dotalux.com>
2014-05-31Added Dastgir's item_*.txt -> item_db.conf converterHaru1-0/+624
- To be used in a follow-up commit. Signed-off-by: Haru <haru@dotalux.com>
2014-05-30Removed 3rdparty/cmake and item_db.pl (Suggested by Haruna)Shido1-116/+0
2014-05-30HPMHookGen compatibility update for doxygen 1.8.7Haru1-2/+0
2014-05-25Improved CFLAGS/CPPFLAGS handlingHaru1-0/+2
- Language extensions, such as _GNU_SOURCE are now enabled through CPPFLAGS by the configure script, rather than within the source code. - Moved some configure-time CFLAGS to CPPFLAGS, where appropriate. - Fixes bugreport:8211, thanks to Neoth http://hercules.ws/board/tracker/issue-8211-compiling-warning-in-linux Signed-off-by: Haru <haru@dotalux.com>
2014-05-01Corrected an issue when calling hookStop() from a post-hookHaru1-0/+1
- Now hookStop() will do absolutely nothing if called from a post-hook, instead of causing unexpected effects on the next pre-hook execution. Signed-off-by: Haru <haru@dotalux.com>
2014-04-19Added support for enum bg_queue_types to the HPMHookGenHaru1-0/+2
- Fixes a HPM Hook generator warning in battlegrounds.c Signed-off-by: Haru <haru@dotalux.com>
2014-04-17Added sysinfo (System Information) functionalitiesHaru1-2/+4
- More informative messages are displayed during startup, to make it easier to identify what system and environment Hercules is running. - Git/SVN revision detection is improved, separating the source version (cached at compile time) from the runtime version, in case the user updated their working copy without recompiling the server. Git version detection is also more reliable, in case a non-default branch is used. - The get_revision script command has been removed (as it was useless to begin with, after the switch to git). An alternative will be provided later, for feature-probing purposes. - The patch was tested under Linux (Gentoo / gcc 4.7 on i686 and x86_64, Debian 6 / gcc 4.4 on i686, Raspbian / gcc 4.6 on armv6l, CentOS 5 / gcc 4.1 on i686, CentOS 6 / gcc 4.4 on x86_64, Linux Mint 15 / gcc 4.7 on x86_64, OS X Mountain Lion / clang 5.0 and gcc 4.8 on x86_64, Cygwin-NT-5.1/gcc 4.8 on i686, FreeBSD 8 / gcc 4.2 on i386, FreeBSD 9 / gcc 4.2 on amd64, FreeBSD 10 / clang 3.3 on amd64, NetBSD 5 / gcc 4.1 on i386, NetBSD 6 / gcc 4.5 on amd64, OpenBSD 5 / gcc 4.2 on amd64, Solaris 11 / gcc 4.5 on i86pc, Windows 7 / Visual Studio 2012 on x86, Windows 8 / Visual Studio 2010 on WOW64, Windows 8.1 / Visual Studio 2013 on WOW64. Signed-off-by: Haru <haru@dotalux.com>
2014-03-17Improved const pointer detection in the HPMHooking generatorHaru1-2/+2
- Fixes a HPMHooking compile error in d117462. Thanks to Potte. Signed-off-by: Haru <haru@dotalux.com>
2014-02-06Follow up d33469689ea8e671fa0d525d54bce6932dfe9107shennetsind1-2/+2
Fixed issue on windows that'd cause plugins to be rejected on loading. Thanks to Mhalicot Signed-off-by: shennetsind <ind@henn.et>
2014-02-03Updated HPMHookGen with a HPMDataCheck generatorHaru3-11/+93
- It will be used by an upcoming commit by Ind. - Added dummy HPMDataCheck.h, to test the API bot's capability to re-generate it. - Improved XML parser performance. Signed-off-by: Haru <haru@dotalux.com>
2013-11-20Added support for 'make plugin.pluginname' to compile only 'pluginname'Haru1-8/+8
- Various Makefile optimizations Signed-off-by: Haru <haru@dotalux.com>
2013-11-16Improved itemdb converter robustness in case of extra spacesHaru1-18/+18
- Thanks to GM.PiXeL for reporting the issue. Signed-off-by: Haru <haru@dotalux.com>
2013-11-15Added support for case-insensitive jobmasks to the itemdb converterHaru1-1/+1
- Fixes parsing failures due to lower- (or mixed-) case job masks. - Special thanks to ossi0110 for the report. Signed-off-by: Haru <haru@dotalux.com>
2013-11-15Added BindOnEquip to the item_db documentation and templatesHaru1-0/+1
- Special thanks to ossi0110, kyeme - Fixes bugreport:7821 http://hercules.ws/board/tracker/issue-7821-missing-item-dbconf-columne/ Signed-off-by: Haru <haru@dotalux.com>
2013-11-14Item DB overhaulHaru1-0/+194
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-05Follow-up to 97001710c06ed7053d18c8baaac602eb563b64b3Haru1-0/+151
- Added missing license note and error message to the script-checker bash script - Added Script-Checker.applescript. Open in Applescript Editor and save as .app bundle in order to use it. It's not pretty, but it works. Signed-off-by: Haru <haru@dotalux.com>
2013-11-04pc_groups interfacedshennetsind1-0/+3
The last file without a interface is now no more (date.h doesn't count :P). Modified the way permissions are stored in order to enable plugins to be able to create permissions ( pcg->add_permission("name") [returns permission key] ). Special Thanks to Haruna! Closes #121 Signed-off-by: shennetsind <ind@henn.et>
2013-10-16Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-35/+0