summaryrefslogtreecommitdiff
path: root/src/common
AgeCommit message (Collapse)AuthorFilesLines
2014-05-09Fixed order of includes in all source filesHaru39-335/+434
- Changed order according to the (upcoming) code style guidelines. - Fixes several issues caused by missing headers when their include order is changed or in plugins. Signed-off-by: Haru <haru@dotalux.com>
2014-05-09Removed some unused source filesHaru11-3266/+0
- I don't believe there's a need to keep them if we're not using them. If and when we will ever need them again, this commit can be easily reverted. Signed-off-by: Haru <haru@dotalux.com>
2014-05-09Added support to return a different exit status to the OS.Haru2-3/+4
- This can be easily used by plugins. - See an example at http://github.com/HerculesWS/StaffPlugins/Haru/script_mapquit Signed-off-by: Haru <haru@dotalux.com>
2014-05-06Bug fixes and other changespanikon3-2/+74
#Fixed issue where a corrupted map cache would lead to a crash *Moved Big-endian compatibility functions to common/utils.h #Fixed issue 8162 *http://hercules.ws/board/tracker/issue-8162-loadnpc-doesnt-trigger-oninit-of-duplicate-npcs/ *Added options to npc_parse_duplicate #Fixed issue 8169 *http://hercules.ws/board/tracker/issue-8169-script-command-guildskill-skill-idlevel-not-working-as-intended/ *Changed *guildskill behavior, now it behaves exactly as depicted in the documentation *Updated *guildskill documentation #Added missing GBI types to mapif_parse_GuildBasicInfoChange now it's possible to change guild exp, lv, skill point and skill information #GeoIP revamp *GeoIP module was partially rewritten *Added several data checks to prevent corruption and crashes *Updated GeoIP database *See https://github.com/maxmind/geoip-api-c/blob/master/libGeoIP/GeoIP.c for more information #Added packetver checks regarding NST_MARKET *Now *tradertype warns if user is trying to use this feature with older clients
2014-04-19Merge pull request #272 from hemagx/masterHaruna1-0/+2
Rewritten NSI_UNIQUE_ID system
2014-04-19Added sysinfo to the exported HPM symbolsHaru1-0/+3
Signed-off-by: Haru <haru@dotalux.com>
2014-04-18Rewritten NSI_UNIQUE_ID system to get rid of the cross-database interreg ↵Ibrahim Hossam1-0/+2
dependency - Removes the need for map-server to access the interreg table to store the last used ID. - Login, char and map databases can now be hosted separately. - Note: the unique_id structure has changed, and it now contains the generator character ID in its upper 32 bits. - Now NSI_UNIQUE_ID System is enabled always Special thanks to Haruna.
2014-04-18HPM Hooks UpdateHercules.ws1-0/+5
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2014-04-17Whitespace cleanupHaru9-82/+83
Replaced some tabs in the middle of the line with spaces. Thanks to KeiKun for pointing out #ifdef<tab>_COMMON_SYSINFO_H_ and making me realize how many of them were there. Signed-off-by: Haru <haru@dotalux.com>
2014-04-17Added sysinfo (System Information) functionalitiesHaru8-155/+1131
- 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-04-10Fixed issue: 7936panikon1-0/+26
http://hercules.ws/board/tracker/issue-7936-guildparty-item-bounded/
2014-04-04Fixed issue: 8131panikon1-1/+1
http://hercules.ws/board/tracker/issue-8131-sc-chat/ -Documented SC_NOCHAT -Corrected the way that pc_setparam was handling SP_MANNER -Added documentation on *sc_status regarding SC_NOCHAT, to mute a user via script you should set Manner
2014-03-31Updated documentation for pc_statusup2 and pc_statusuppanikon2-9/+86
(fixed issue: 7916 http://hercules.ws/board/tracker/issue-7916-wrong-comment-in-pc-statusup2/) Now pc_statusup2 returns stat increase amount as stated in previous documentation Updated *statusup documentation it was wrong Added last update in upgrade index @console.c/.h Documented partially Now two different parsing categories can have functions with same name e.g. - server exit - sql exit
2014-03-22Fixed issue 7338 (added new char configuration char_aegis_delete)panikon1-0/+2
http://hercules.ws/board/tracker/issue-7338-deleting-character/ As @jaBote requested in 26f2ada, renamed "rathena-logs-database-upgrade" to "rAthena-logs-upgrade.sql" and updated 'last revision'. Added a 'FIXME' in db_obj_put
2014-03-16Added --load-plugin commandline argumentHaru2-3/+8
Signed-off-by: Haru <haru@dotalux.com>
2014-03-16Improved ERS memory handlingshennetsind3-24/+21
On shutdown the ERS will loop thru leftover managers and clear them according to each manager's settings, while also printing errors according to each manager's settings. Will also help pinpoint the causes of http://hercules.ws/board/tracker/issue-8093-memory-leak-after-stop-server-cant-fix/ and similar issues. Signed-off-by: shennetsind <ind@henn.et>
2014-03-10Merge pull request #262 from Baalberith6/masterHaruna1-0/+0
MH_LIGHT_OF_REGENE resetting intimacy to 0.25% and checking for 0.75% when used (instead of 25% and 75%)
2014-03-09fixing permission from commit 7dd4dafMatej Pristak1-0/+0
2014-03-08Merge pull request #261 from Baalberith6/mastershennetsind1-1/+1
wrong HPM parsing of packets of variable length, when the size is not equal declared size.
2014-03-07Fixed some warnings on ARMHaru2-17/+16
Now Hercules is officially able to compile and run on a Raspberry Pi. Signed-off-by: Haru <haru@dotalux.com>
2014-03-07Tweaked a platform check to support ARMv6+Haru2-1/+15
Signed-off-by: Haru <haru@dotalux.com>
2014-03-06When working with packets with variable length (defined with -1 length) in HPM,Matej Pristak1-1/+1
we are leaving these in stack when the size of packet exceeds declared size due to this line. This was probably meant as if( packet_declared_size > packet_actual_size ) do_not_parse_it_yet, but was doing the opposite.
2014-03-06HPM Hooks UpdateHercules.ws1-0/+6
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2014-02-24Fixed console parse gm command crash on select commandsshennetsind1-2/+2
Also fixed an issue with socket flushing Signed-off-by: shennetsind <ind@henn.et>
2014-02-06HPM Hooks UpdateHercules.ws1-2/+2
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2014-02-03Wrap up on HPMDCshennetsind2-5/+5
http://hercules.ws/board/topic/4283-introducing-hpm-datacheck/ Signed-off-by: shennetsind <ind@henn.et>
2014-02-03Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-0/+130
2014-02-03HPM Hooks UpdateHercules.ws1-4/+117
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2014-02-03Updated HPMHookGen with a HPMDataCheck generatorHaru1-0/+17
- 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>
2014-02-03Fixed Bug 7333shennetsind1-5/+6
Zones are now able to merge during runtime. Special Thanks to Haru, kyeme. http://hercules.ws/board/tracker/issue-7333-map-zone-db/ Signed-off-by: shennetsind <ind@henn.et>
2014-02-02Introducing HPM Datacheckshennetsind26-77/+112
http://hercules.ws/board/topic/4283-introducing-hpm-datacheck/ Signed-off-by: shennetsind <ind@henn.et>
2014-01-23Compatibility fixes for NetBSD and SolarisHaru1-0/+5
- Fixed some warnings in NetBSD (5.x and 6.x) and Solaris (11) Signed-off-by: Haru <haru@dotalux.com>
2014-01-23Minor fixes to the strlib interfaceHaru2-10/+26
- Fixed a typo in the strnlen() macro (was strnln) - Initialized strlib->strnlen and strlib->strtoull to NULL on platforms that don't require them. Please note that those two functions are supposed to never be called directly but only through the strnlen() and strtoull() macros, which take care of the platform abstraction. - Removed localized versions of yes/no from config_switch (if you really want to be able to use "oui", "ja", "si", "non", "nein", feel free to add them back yourself following the example in strlib.c) Signed-off-by: Haru <haru@dotalux.com>
2014-01-21Fixed --disable-packetver-re / --enable-packetver-re in ./configureHaru1-3/+5
- Follow-up to c50e094dff1898badd4136d9cdeb7318c803cb61 Signed-off-by: Haru <haru@dotalux.com>
2014-01-19HPM Custom Data Struct Expansion: map/instance/party/guildshennetsind4-11/+39
As requested by the community in http://hercules.ws/board/topic/3832-hpm-custom-data-struct-for-instance-data-guild-data-and-party-data/ Signed-off-by: shennetsind <ind@henn.et>
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>