Age | Commit message (Collapse) | Author | Files | Lines |
|
- 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>
|
|
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>
|
|
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>
|
|
Signed-off-by: shennetsind <ind@henn.et>
Conflicts:
src/map/pc.c
|
|
- 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.
|
|
Attempting to mimic the official as suggested in http://hercules.ws/board/topic/250-official-vip-system/
The variables can be read and modified thru scripting as well as sql, the patch introduces 3 new pc-arams 'ModExp','ModDrop' and 'ModDeath' for that purpose.
The OnLogin modifier display is not the real deal though -- wasn't able to get it to output properly (though that might have been my client files failt)
Up for review.
Signed-off-by: shennetsind <ind@henn.et>
|
|
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>
|
|
- 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>
|
|
Quest Bubbles (Actually Works Finally)
|
|
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>
|
|
- Introduced questinfo cache, memory & processing speed improvement
- Fixed mini-map marker support
Special Thanks to Haruna
Signed-off-by: shennetsind <ind@henn.et>
|
|
Attempting to hook to a unknown hooking point will now display a message.
Added support for item bonuses
Check https://github.com/HerculesWS/StaffPlugins/tree/master/shennetsind/bCoolDownRate for a demonstration.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Signed-off-by: shennetsind <ind@henn.et>
|
|
|
|
Adjusted missing #ifdef behavior to be friendly to the hooking.
http://hercules.ws/board/tracker/issue-7744-compiler-error-on-hpm-hooking-after-undefined-packetver-re/
Signed-off-by: shennetsind <ind@henn.et>
|
|
-Update pre-re/skill_db.txt
* Updated the const.txt to support the newest common status, as well as the latest NPC's.
* Fixed a issue where the Dark Collector's assigned MAPID was incorrect.
* Updated all Rebellion skills to have official ranges and SP requirements.
-Also updated the skill_db entrys for these skills to have near official settings.
|
|
Fully Interfaced.
Moved missing vars and declarations of interest into the interface, removed duplicate mentions of map within calls to shorten wherever it made sense to.
Ladies and Gentleman its my pleasure to announce that with this commit we've revised all of map-server, we've learned a hell lot from this, improved many things on the go and have a number of features to be released thanks to this. *cough* hpm hooking *cough*.
Signed-off-by: shennetsind <ind@henn.et>
|
|
This is necessary for the upcoming HPM hooking system
|
|
Added full support for the Rebellion.
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Credits to 3ceam2 for the base,Thanks to Rytech.
-The skill still needs to be completed, as well as support for higher base stats.
-Bonus stats are set to temporarily values until the official ones are known.
-Updated the item_db.txt file with information on the Rebellion's job equip mask.
-Added packets and packet keys for 2013-08-07Ragexe with the info provided by Shakto,Thanks to Shakto.
-A 2013-08-07Ragexe client or higher is required for this job to be properly playable.
|
|
Note to plugin developers: if you were importing the "map", you'll need
to change it to "maplist"
Signed-off-by: Haru <haru@dotalux.com>
|
|
(related: b9c8f57)
Most renames are trivial (just to avoid shadowing global variables, even
if they currently did no harm), but there were some cases of partly
renamed variables that caused some NULL checks to always pass and who
knows what could have been happened when they were too subtle to make
the application crash.
Also corrected some potentially unsafe macro definitions
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Fixes bugreport:7658 (thanks to purityz)
http://hercules.ws/board/tracker/issue-7658-instance-mapserver-crashing/
- The crash was caused by a pointer becoming invalid when reallocating
map[] (i.e. when adding maps), since 20bdc01f
Signed-off-by: Haru <haru@dotalux.com>
|
|
Fixed changing map zones/flag of a instance map crashing, also added IOT_ (Instance Owner Type) constants to db/const.txt
Special Thanks to purityz for all the help and test scenarios.
http://hercules.ws/board/tracker/issue-7646-bg-mapflag-instance-reloadscript-mapserver-crash/
Signed-off-by: shennetsind <ind@henn.et>
|
|
Removed a lot of duplicated code.
Added some documentation & comments.
|
|
- Fixes issue #7536 (thanks to jTynne for the report)
http://hercules.ws/board/tracker/issue-7536-map-crash-july-15th/
- Minor corrections to the other interfaces as well (reordered
initialization to follow the definitions, removed duplicate entry in
the skill interface initialization, commented out some unused entries)
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
|
|
Special Thanks to Shikazu, wouldn't have been able to identify this issue without his help!
http://hercules.ws/board/index.php?app=tracker&showissue=7216
Signed-off-by: shennetsind <ind@henn.et>
|
|
|
|
http://hercules.ws/board/topic/1244-official-item-grouppackagechain/
Also
Further implemented itemdb.c/storage.c interfaces, and a minor update to db2sql plugin.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Special Thanks to KeiKun~!
http://hercules.ws/board/tracker/issue-7319-db-name/
Signed-off-by: shennetsind <ind@henn.et>
|
|
Added iPc, iParty, iMap, iTimer to HPM exported interfaces
|
|
http://hercules.ws/board/topic/928-memory-slasher-may-30-patch/
Signed-off-by: shennetsind <ind@henn.et>
|
|
http://hercules.ws/board/topic/928-memory-slasher-may-30-patch/
Signed-off-by: shennetsind <ind@henn.et>
|
|
much more flexible, as per community suggestion in
http://hercules.ws/board/topic/320-motd-change-suggestion/
dropped motd_type config
new motd is at npc/MOTD.txt
dropped @motd, @gmotd commands
Signed-off-by: shennetsind <ind@henn.et>
|
|
Made SQL and strlib functions HPM-friendly, special thanks to Yommy for bringing the issue up.
Added partial map.c support, for the all-handy map[] array, beware that soon the whole map.c renewal design will be commit and when that happens your usage of map.c functions in plugins might require some updates.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Special Thanks to Yommy~! Thanks <3
Signed-off-by: shennetsind <ind@henn.et>
|
|
Special Thanks to Yommy <3~ Thanks!
Signed-off-by: shennetsind <ind@henn.et>
|
|
http://hercules.ws/board/topic/470-hercules-april-22-patch/
Signed-off-by: shennetsind <ind@henn.et>
|
|
http://hercules.ws/board/topic/302-introducing-hercules-map-zone-database/
Signed-off-by: shennetsind <ind@henn.et>
|
|
They're:
- weapon_damage_rate
- magic_damage_rate
- misc_damage_rate
- long_damage_rate
- short_damage_rate
Dropped 15 battle settings that became pointless with this upgrade.
Updated battleground zone damage reductions, skill damage from -30% to -20% and weapon damage from -40% to -30%.
Special Thanks to Muad_Dib.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Used officially in gvg and battleground maps (implemented under their respective zones)
Special Thanks to Muad_Dib!
Signed-off-by: shennetsind <ind@henn.et>
|
|
Used officially in gvg maps (Implemented under GvG zone)
Special Thanks to Muad_Dib!
Signed-off-by: shennetsind <ind@henn.et>
|
|
Introducing unit-type-based skill restrictions, details in the link
http://hercules.ws/board/topic/302-introducing-hercules-map-zone-database/?p=2227
Special Thanks to lighta and Muad_Dib
Signed-off-by: shennetsind <ind@henn.et>
|
|
Added the last missing functions into the interface, all functions in clif.c are now wired to the interface.
http://hercules.ws/board/topic/237-hercules-renewal/
Also shortened clif->displaymessage to clif->message, removed the old clif->message and merged its functionality with clif->disp_overhead (both use the same packet and do the same thing :P)
-
and a gazillion other stuff:
http://hercules.ws/board/topic/316-introducing-hercules-channel-system/
Signed-off-by: shennetsind <ind@henn.et>
|
|
Click the link for full info~!
http://hercules.ws/board/topic/302-introducing-hercules-map-zone-database/
Signed-off-by: shennetsind <ind@henn.et>
|
|
And adding missing ones.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Made as a improvement of the original ADJUST_SKILL_DAMAGE -- special thanks to Muad_Dib! .
This mapflag allows you to modify the damage of any skill in any map, for example
"prontera mapflag adjust_skill_damage MG_FIREBOLT 200"
doubles the damage of Firebolt in prontera
Another Example:
"prontera mapflag adjust_skill_damage MG_FIREBOLT 50"
Halves the damage of Firebolt in prontera.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Made as a improvement of the original ADJUST_TRAP_DURATION -- special thanks to Muad_Dib! .
This mapflag allows you to control the duration of unit skills in any map, for example.
"prontera mapflag adjust_unit_duration PR_SANCTUARY 50"
halves the duration of sanctuary in prontera
Another Example:
"prontera mapflag adjust_unit_duration WZ_QUAGMIRE 250"
Increases duration of quagmire by 2.5 times in prontera map.
Be aware that some skill units have their visual effect durations not controlled by the server (e.g. storm gust).
Signed-off-by: shennetsind <ind@henn.et>
|