summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2013-11-05Introducing the Hercules Standalone Script Syntax CheckerHaru55-197/+364
- 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-05HPM Hooks UpdateHercules.ws5-3/+377
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-11-04Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind7-60/+171
2013-11-04pc_groups interfacedshennetsind6-129/+212
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-11-04Standardized the format of some NPC parse error messagesHaru2-39/+39
- For better machine-parsing of such messages (i.e. in IDEs) Signed-off-by: Haru <haru@dotalux.com>
2013-11-03Added some packetver-related flags to the UNIX build scriptHaru2-7/+11
- 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-03Allow warp duplicates without a 'facing' valueHaru1-2/+4
- Warps don't require a facing, so their duplicates shouldn't either. - Credits to jaBote. Signed-off-by: Haru <haru@dotalux.com>
2013-11-03Merged Pull Request #195 (@autoloottype)Haru3-12/+117
- Small tweaks to the command, fixed merge conflicts Signed-off-by: Haru <haru@dotalux.com>
2013-11-02Fixed Bug #7621shennetsind2-11/+11
Magicmushroom poison now properly cancels skills being cast upon activating one of its own, also modified unit_skillcastcancel's error message upon timer deletion failure so that it becomes easier to debug in the future. http://hercules.ws/board/tracker/issue-7621-erro-map-server-waraitake/ Thanks to Beret Signed-off-by: shennetsind <ind@henn.et>
2013-11-02Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind3-0/+62
2013-11-02Fixed Bug #7786shennetsind4-22/+28
@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-02Fixed Bug #7793shennetsind1-2/+5
package parser will now throw an error when using a invalid random: field, also fixed another error message (was missing a double %) http://hercules.ws/board/tracker/issue-7793-item-packages-crash/ Signed-off-by: shennetsind <ind@henn.et>
2013-11-02HPM Hooks UpdateHercules.ws3-0/+62
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-11-02Fixed Shadow System Bonusesshennetsind4-4/+4
Item in shadow slots are now able to give bonuses properly, thanks to rosfus for pointing it out! Also added the missing constants for script handling. Signed-off-by: shennetsind <ind@henn.et>
2013-11-01Removed type_id and some unused variables from @autoloottypeDastgir Pojee2-29/+17
2013-10-30Merge pull request #210 from kisuka/npc-constantsshennetsind2-13/+62
NPC Constants
2013-10-30Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind2-5/+5
2013-10-30Official Font Supportshennetsind8-22/+87
Fonts are now relog-persistent. Font items are now toggle-on/off, they no longer go away on use, they go away when their rental duration is over (and the font effect goes back to original). Special Thanks to Yommy for all the data! Signed-off-by: shennetsind <ind@henn.et>
2013-10-30Follow-up to 44c33fda3614d588e6bf6cee1cf884e98f1531f0Haru1-4/+4
Corrected some leftover 32bit typecasts. Special thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-10-31Several Changes to autoloottype command.Dastgir Pojee3-53/+43
2013-10-30Follow-up to baef78f7954fa4e6fa2449f2c7de92a901c7f5f3Haru1-1/+1
- Corrected an issue with ammunitions not being detected correctly, making all ammo-dependent skills fail. - Credits to Ind, special thanks to Yommy Signed-off-by: Haru <haru@dotalux.com>
2013-10-30Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-7/+7
2013-10-29Follow-up to baef78f7954fa4e6fa2449f2c7de92a901c7f5f3Haru1-7/+7
- Corrected an issue with items showing up as Unknown on certain systems due to structure size mismatch. - Special thanks to ossi0110. Signed-off-by: Haru <haru@dotalux.com>
2013-10-29Fixed Bug #7788shennetsind1-26/+35
Modified Storage packet so that the size of the packet is no longer a problem; splitting now in chunks of 500, made possible thanks to Yommy! http://hercules.ws/board/tracker/issue-7788-storage-problem/ Signed-off-by: shennetsind <ind@henn.et>
2013-10-28Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind3-0/+60
2013-10-28Fixed Bug #7788shennetsind1-3/+3
http://hercules.ws/board/tracker/issue-7788-storage-problem/ Credits to Haruna! Signed-off-by: shennetsind <ind@henn.et>
2013-10-28Clean up to view id parsing and small fixes thanks for Haruna and Ind.Kisuka1-30/+15
2013-10-28Added ability to use constants instead of sprite IDs for NPCs. Converted all ↵Kisuka2-6/+70
npcs to use this.
2013-10-27HPM Hooks UpdateHercules.ws3-0/+60
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-10-27Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind1-12/+12
2013-10-27Fixed Bug #7418shennetsind4-15/+38
Item rentals now take place after status changes arrive, guaranteeing that items that expired cancel their effects properly. Thanks to kyeme, malufett. http://hercules.ws/board/tracker/issue-7418-setmount-boarding-hatler/ Signed-off-by: shennetsind <ind@henn.et>
2013-10-27query_sql script command modificationshennetsind1-1/+1
query_sql will now halt the script execution when a invalid query is used. Signed-off-by: shennetsind <ind@henn.et>
2013-10-27Fixed Ancient Invisible Bugshennetsind2-8/+28
The movement of invisible units is no longer sent to the game clients of foes, therefore cheat tools that'd display hidden units, without requiring maya p, will no longer function. Special Thanks to hemagx, Haruna. Signed-off-by: shennetsind <ind@henn.et>
2013-10-27Performance Improvement: hpmetershennetsind4-2/+17
whenever a character's hp was modified (e.g. damage/heal), clif_hpmeter would look for nearby characters with the PC_PERM_VIEW_HPMETER permission (foreachinarea operation), and since most of the time there isn't such a char nearby it would needlessly consume processing power, now hpmeter is only triggered when there are actual need (when a character with such capabilities is within the map). as little as this may look like, its a mega boost for damage-intensive areas e.g. woe, whereas a single AoE damaging 10 people would, without this, trigger foreachinarea 10 times one very hit. Signed-off-by: shennetsind <ind@henn.et>
2013-10-27Fixed instance empty timershennetsind1-4/+4
counter val could go off making the empty timer not to be run. Signed-off-by: shennetsind <ind@henn.et>
2013-10-27HPM Hooks UpdateHercules.ws1-12/+12
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-10-27Merge branch 'master' of https://github.com/HerculesWS/Herculesshennetsind60-944/+1201
2013-10-27Shadows System Baseshennetsind8-416/+565
http://hercules.ws/board/topic/581-implement-the-shadows-system/ Special Thanks to Yommy for all the client data, Haru for making it possible to get it out and rosfus for the details on the feature. Shadows Feature requires packetver 20120925 or newer. ---------- Also: Updated all packets related to the shadows system, improved memory/processing of inventory/cart/storage/viewequip packets Signed-off-by: shennetsind <ind@henn.et>
2013-10-27Added full support on Moon Star and Super Star itemsJedzkie2-0/+10
Signed-off-by: Jedzkie <jedzkie13@rocketmail.com>
2013-10-27Follow-up to 44c33fda3614d588e6bf6cee1cf884e98f1531f0Haru1-6/+6
Corrected some 64 bit literal constants not declared as such, and causing compiler warnings and possible issues on some systems. Special thanks to Yommy. Signed-off-by: Haru <haru@dotalux.com>
2013-10-26HPM Hooks UpdateHercules.ws1-349/+349
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-10-26Changed 'tick' variables to 64 bitHaru57-584/+593
- This fixes an issue with timers that stop working after about 24-49 days when the tick overflows (note that this may happen much earlier than that, and at hard to predict times, on some systems) - Updated the RDTSC help message in the configure script to also warn users about issues with SpeedStep enabled systems. - On Windows, tick() still has a resolution of 10~15ms (or even as low as 100ms on some systems). A TODO comment (thanks, Ai4rei) was added for a follow-up patch, as I want this one to be as small as possible) - Note: on Windows versions earlier than 6.x (Vista, Server 2008), the tick overflow issue is NOT fixed, since they don't support the function used to retrieve a 64 bit tick. This isn't a big issue, since those platforms are already - or going soon to be - out of their extended support period, and it's already advisable to upgrade, for other reasons. If you're the unfortunate user of such a system, it is recommended that you reboot your machine at least once every 49 days for Hercules to work reliably. - Note: To clear some doubts, since I've already been asked, this has absolutely NOTHING to do with 32/64 bit CPUs or OSes. It's all about a variable's size, not the size of registers of your CPU, and your 32bit CPU will be able to handle this just fine. Signed-off-by: Haru <haru@dotalux.com>
2013-10-26HPM Hooks UpdateHercules.ws3-0/+61
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2013-10-25Merge pull request #202 from kisuka/mastershennetsind6-11/+188
Quest Bubbles (Actually Works Finally)
2013-10-25nocashshop mapflagshennetsind7-4/+32
As requested by the community in http://hercules.ws/board/topic/1477-mapflag-for-cash-shop/ and http://hercules.ws/board/topic/1476-disable-cashshop-in-pvp-woe/ 'nocashshop' mapflag disables the usage of the cashshop button as well as any attempts to purchase (in case the flag is turned on after someone gets the shop open). Signed-off-by: shennetsind <ind@henn.et>
2013-10-25Quest Bubbles Updateshennetsind7-56/+138
- Introduced questinfo cache, memory & processing speed improvement - Fixed mini-map marker support Special Thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>
2013-10-25Follow up e08c05a0f73d6e6ea4fe64a9b91291bc0a002251shennetsind1-1/+2
Fixed idletime from being updated on walk despite criteria, thanks to kyeme for pointing it out! Signed-off-by: shennetsind <ind@henn.et>
2013-10-24Quest Bubbles (Actually Works Finally)Kisuka3-9/+104
2013-10-24Fixed nullpo calls in script.c mismatching new macro return typeshennetsind1-8/+8
Thanks to Kisuka. Signed-off-by: shennetsind <ind@henn.et>
2013-10-24Merge pull request #189 from dastgirpojee/SkidConstshennetsind1-0/+1
During skill_db parse the skill names are now automatically turned into constants for use throughout any and all scripts, this improves processing speed during runtime and readability (as haruna demonstrates over #189). Thanks to dastgirpojee! Closes #188