summaryrefslogtreecommitdiff
path: root/src/map/battle.h
AgeCommit message (Collapse)AuthorFilesLines
2013-11-19Sanitized and improved several macros through the codeHaru1-7/+7
- 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-17Added emblem blank pixels checkHaru1-0/+1
- Made possible thanks to (and using base code by) Ai4rei - eAthena r15263 and add-on patch http://hercules.ws/board/topic/2974-add-on-patch-for-ea-r15263-commit/ - Modified to allow checking for a percentage of transparent pixels rather than full image transparency. - Tweaked to accept some other bmp formats that are currently allowed by the client. - The performance hit from enabling this check is negligible (benchmarks show that scanning an emblem requires about half the time required to decompress it after it's received), but it does exist, as noted in the configuration file. - Special thanks to Ind. Signed-off-by: Haru <haru@dotalux.com>
2013-11-05Introducing the Hercules Standalone Script Syntax CheckerHaru1-1/+1
- 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-10-26Changed 'tick' variables to 64 bitHaru1-4/+4
- 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-24Added idletime optionsshennetsind1-1/+15
There have been requests for the extension of the feature, I was reluctant given more options would cause features relying on the feature to be easier to counter (less accurate), with the modification of the feature to employ options the feature is now configurable at the server owners discretion. Special Thanks to Haruna Signed-off-by: shennetsind <ind@henn.et>
2013-10-16Fixed Bug#7374malufett1-0/+2
-Hercules now fully support Monster Transformation. Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
2013-10-10Added code to disable auction for clients it is no longer stableshennetsind1-0/+1
Regarding http://hercules.ws/board/topic/414-auction-feature-all-screwed-up Signed-off-by: shennetsind <ind@henn.et>
2013-10-10Introducing Bank Supportshennetsind1-0/+1
http://hercules.ws/board/topic/2455-introducing-bank-support/ Thanks to Yommy, Haru! Signed-off-by: shennetsind <ind@henn.et>
2013-10-04HPM: Hooking!shennetsind1-8/+2
http://hercules.ws/board/topic/2399-hpm-hooking-now-available/ Signed-off-by: shennetsind <ind@henn.et>
2013-09-27HPM: Battle.c Completedshennetsind1-7/+19
Moved missing vars and declarations of interest into the interface Signed-off-by: shennetsind <ind@henn.et>
2013-09-25Renamed local variables that would conflict with a rename of iStatus to statusHaru1-1/+1
Signed-off-by: Haru <haru@dotalux.com>
2013-09-25Renamed more forgotten variables during interface conversionsHaru1-1/+1
(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>
2013-09-09Fixed Bug #7694shennetsind1-0/+1
Implemented official guild notice behavior of re-displaying upon teleport, added conf/battle/guild.conf setting to modify this. Special Thanks to kyeme, Frost. http://hercules.ws/board/tracker/issue-7694-guild-notice/ Signed-off-by: shennetsind <ind@henn.et>
2013-09-09Fixed Bug #6626shennetsind1-0/+1
Game client is currently broken on this feature, sending the request when the criteria doesn't match and not doing anything when it matches, I've restored the previous method to make the feature work once again, the message is configurable by conf/messages.conf and whether maxed characters can use it now a setting in conf/battle/player.conf http://hercules.ws/board/tracker/issue-6626-cant-prayer-guardian-angel-super-novice/ Signed-off-by: shennetsind <ind@henn.et>
2013-08-22Fixed MSVC warnings on 7f9f6e1b84061a7d393debf37395c8b4a2667db1shennetsind1-3/+3
Special Thanks to KeiKun for bringing them to me. Signed-off-by: shennetsind <ind@henn.et>
2013-08-22Fixed Bug #7308shennetsind1-12/+14
Special Thanks to Haruna for the fix, kyeme for the information http://hercules.ws/board/tracker/issue-7308-guild-aura-on-ally/ Closes #78 Signed-off-by: shennetsind <ind@henn.et>
2013-08-22Fixed Bug #7652shennetsind1-17/+19
damage storage has been changed from int32 to int64 within areas where it could otherwise modified beyond the limit and get screwed up, this solves all related problems within any skills, not only asura. http://hercules.ws/board/tracker/issue-7652-asura-strike-overdamage/ Signed-off-by: shennetsind <ind@henn.et>
2013-07-04Implemented official mute system. Thanks to:Matheus Macabu1-0/+2
Ai4rei/Mirei for the code; kyeme for suggesting it; Napster for updating the patch. Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
2013-07-01Fixed Bug #7216shennetsind1-1/+1
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>
2013-06-26Fixed Bug#7402malufett1-3/+1
-Added some missing calc in re atk. Fixed Bug#7378 -PA_GOSPEL should now clear buffs upon casting. Fixed Bug#7399 -Neutral skills should work properly with ghost type monsters. RENEWAL UPDATES: Updated some ninja & gunslinger skills to there renewal formula. Added exploit fix(RE fixed) with hunter stacking trap trick. Added some misc skills more to follow.
2013-06-25For Bug #7402shennetsind1-1/+3
Temporary measure until malufett is capable of adjusting it himself. Special Thanks to Xgear for going thru all the testing for this with me, Also Special Thanks to VyLow for making it possible for me to reproduce the issue, and Zopokx, mofo and malufett. http://hercules.ws/board/tracker/issue-7402-damage-with-reduction-cards/ Signed-off-by: shennetsind <ind@henn.et>
2013-06-23Official Item Group/Package/Chainshennetsind1-1/+0
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>
2013-06-14Hercules WPE Freeshennetsind1-0/+1
Official Packet Obfuscation Support http://hercules.ws/board/topic/1105-hercules-wpe-free-june-14th-patch/ Signed-off-by: shennetsind <ind@henn.et>
2013-06-13Fixed Bug #7346shennetsind1-0/+2
http://hercules.ws/board/tracker/issue-7346-battlec-error Signed-off-by: shennetsind <ind@henn.et>
2013-06-13Hercules Renewal Phase : Renewalmalufett1-3/+19
Rename SC names to eagis standard. Implement SC Configuration.(see db/sc_config.txt) Skill updates and fixes. Some code optimization. Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
2013-06-09Few adjustments to group search for 2012-04-1x and added new packets for ↵Matheus Macabu1-1/+1
2013-06-05 (thanks to Shakto). Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
2013-06-09Fixed Bug #7308shennetsind1-10/+13
Special Thanks to kyeme, mkbu95! http://hercules.ws/board/tracker/issue-7308-guild-aura-on-ally/ Signed-off-by: shennetsind <ind@henn.et>
2013-06-06HPM: Minor Updateshennetsind1-0/+2
Made 'guild' interface available to plugins, added 'bc' in battle interface to link to map-server's battle config (special thanks to Shikazu!) Signed-off-by: shennetsind <ind@henn.et>
2013-05-17MOTD redesignshennetsind1-1/+0
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>
2013-05-10* Implemented suggestion in topic:528, related to GMs being able to warp to ↵Matheus Macabu1-0/+2
non-walkable cells; also added configuration. * Few changes to gitignore and gitattributes. Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
2013-04-27Fixed Bug #7193 and ...shennetsind1-1/+1
http://hercules.ws/board/tracker/issue-7193-monsterhp/ -- Follow up 0f4a50d13538c3e5d3ca4d3822f92217c8da0479 re-introduced mob_max_skilllvl -- Updated some packet intro dates (special thanks to yommy! <33) Signed-off-by: shennetsind <ind@henn.et>
2013-04-27Skill ID Processing Overhaulshennetsind1-1/+0
http://hercules.ws/board/topic/512-skill-id-processing-overhaul/ Signed-off-by: shennetsind <ind@henn.et>
2013-04-24Hanbok & Costumes Updateshennetsind1-0/+1
http://hercules.ws/board/topic/485-hanbok-costumes-update/ Signed-off-by: shennetsind <ind@henn.et>
2013-04-17Fixed Bug #7060shennetsind1-2/+0
Magical Reflection behavior is finally 100% official (or so we hope) http://hercules.ws/board/tracker/issue-7060-bmagicdamagereturn/ Signed-off-by: shennetsind <ind@henn.et>
2013-04-16Fixed Bug #7060shennetsind1-0/+2
When using official magical reflection, the damage is no longer reduceable by mdef items or cards (elemental armors work), assumption doesnt reduce either when used in pre-re mode and energy coat is capable of reducing the damage. http://hercules.ws/board/tracker/issue-7060-bmagicdamagereturn/ Signed-off-by: shennetsind <ind@henn.et>
2013-04-11- Strongly improved the structure of status_get_sc_def so it's a lot easier ↵playtester1-2/+0
to apply official formulas and make sure the checks are applied in the correct order - In the process, fixed the effect of luk on status changes and removed the static 3% resistance that has been proven to not exist (97 vit, 1 luk can get stunned on officials) - As there is no general luk resistance as it depends on each status change, removed the luk_status_def configurations - Updated the success chance of Decrease Agi to the formula that was extracted from Aegis (blevel/5 + int/5 + skill_lv*3 + 50) Note: I tested all the status changes thoroughly, but as this is a quite large update, it would be nice if someone could cross-check it. Note2: Renewal status resistances (for pre-renewal status changes) are currently not implemented in rAthena at all. They need to be added in another update. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@17201 54d463be-8e91-2dee-dedb-b68131a5f0ec
2013-04-07PacketDB Overhaulshennetsind1-1/+0
Feature Design by GreenBox Special Thanks to mkbu95 for bringing this topic up! (packet db) http://hercules.ws/board/topic/353-packetdb-overhaul/ Signed-off-by: shennetsind <ind@henn.et>
2013-04-02Introducing 5 new/official mapflags.shennetsind1-15/+0
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>
2013-03-09Hercules Renewal: battle.c completeshennetsind1-0/+17
Added the last missing functions into the interface, all functions in battle.c are now wired to the interface. Signed-off-by: shennetsind <ind@henn.et>
2013-03-08Fixed Bug #7114malufett1-1/+1
-revised/added 'npc_isnear' where it checks if an NPC is nearby when making chat rooms or using vending. Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
2013-03-02Hercules Renewal: skill.cshennetsind1-2/+1
http://hercules.ws/board/topic/237-hercules-renewal/ Signed-off-by: shennetsind <ind@henn.et>
2013-03-01Hercules Renewal: battle.cshennetsind1-107/+138
http://hercules.ws/board/topic/237-hercules-renewal/ Signed-off-by: shennetsind <ind@henn.et>
2013-02-27Fixed Bug #6527malufett1-0/+1
-Where all NPC don't allow changing of equipments by default and now can be set in 'items.conf'.
2013-02-16Updating the Headers across source filesshennetsind1-1/+1
And adding missing ones. Signed-off-by: shennetsind <ind@henn.et>
2013-02-15Fixed Bug #7039shennetsind1-1/+1
Status effects no longer propagate with magical reflection (e.g. when frost diver is reflected there is no chance that target will be frozen) http://hercules.ws/board/tracker/issue-7039-frost-diver/ Signed-off-by: shennetsind <ind@henn.et>
2013-02-07Fixing mistake in modified source code headersshennetsind1-1/+1
Signed-off-by: shennetsind <ind@henn.et>
2013-02-05Updating Headers of modified filesshennetsind1-2/+6
Signed-off-by: shennetsind <ind@henn.et>
2013-02-05Fix Bug # 7049malufett1-0/+1
Added new item bonuses bFixedCast, bVariableCast & bFixedCastrate. (see 'doc/item_bonus.txt' for info) Added new conf for max walk path.(Bug Report # 7042) http://hercules.ws/board/tracker/issue-7049-do-we-need-new-bonus/?gopid=16578#entry16578
2013-02-03item_noequip overhaul / Fixed Bug #7048shennetsind1-0/+1
Items are no longer unequipped when disabled by item_noequip.txt, instead their effects are nullified -- however cards in them, unless also disabled, wont have its effect nullified. Consumables will be consumed even while disabled, unless you modify the new config item_restricted_consumption_type http://hercules.ws/board/tracker/issue-7048-requestreport-regarding-to-item-noequiptxt/ Signed-off-by: shennetsind <ind@henn.et>
2013-01-28New skill configshennetsind1-0/+1
After due consideration we thought it'd be in the best interest of the community to provide a switch to this official feature since it drastically change the way traps can be used Signed-off-by: shennetsind <ind@henn.et>