summaryrefslogtreecommitdiff
path: root/src/map/skill.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-31* Added names to the SC_ and SI_ enums, now they can be used to properly ↵ultramage1-3/+3
indicate where such values are to be used (replaces usage of 'int') * removed MIN_/MAX_PORTAL_MEMO, set MAX_MEMOPOINTS from 10 to 3 * removed support for @go-ing to your memo points * simplified the overly verbose @memo command; now re-uses pc_memo() * cleaned up pc_memo(), now uses semi-correct packet replies * Minor code cleaning/formatting git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11625 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-31- Fixed the pc_additem weight check breaking when your current weight is ↵skotlex1-1/+1
above your max. - Some minor cleanups. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11621 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-28- Corrected the firewall/kaensin knockback code to how it is supposed to be ↵skotlex1-2/+1
done (the element/race check was originally in battle.c, and it was moved to skill.c because of the firewall hits on undead setting, now that it is not needed the code can be changed to how it was back then). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11594 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-27Removed 'petid', a command from r284 to look up pet ids by name.ultramage1-6/+3
Cleaned up some pet-related code. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11586 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-27* Fixed TXT charserver doing periodic random-sized memory allocation ↵ultramage1-53/+31
(bugreport:312) * Set 'Create Converter's produce success rate to 100% (bugreport:302) * Added check that verifies weapon/ammo/state requirements also when casting finishes (might have unwanted side-effects tho'!) (bugreport:228) * Fixed Firewall knocking back undead/fire element mobs (bug in r11578) * Added dummy 'openmail' to txt server to fix a script error message git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11585 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-26- Removed the config setting firewall_hits_on_undead setting, Firewall and ↵skotlex1-18/+16
kaensin now automatically calculate the number of hits they should do per iteration based on the skill trigger frequency (you may want to raise that delay of 1ms in the db, though) - Cleaned a bit the loop for the Warmth skills. - Added a mising pc_class2idx invocation (fixes a very minor bug when you request max skill lv for a skill in your tree with different max than the skill_db max) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11578 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-24* Cleaned up some messy guild code (more to come)ultramage1-8/+9
* Cleaned up the mail code, no more pointless dynamic allocation * Added upgrade_svn11548.sql to convert the mail table to new format * Updated vs7 and vs6 project files * Increased the max. send buffer size to 5M since 1M is not enough * Please complain if something stops working ^^; git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11571 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-22* Heat isn't supposed to consume SP when used against playersPlaytester1-3/+3
- please report if it still consumes SP in pvp git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11544 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-21- Removed SC_INCAGIRATE/SC_INCDEXRATE as they are not used anymore (and ↵skotlex1-3/+4
where even incompletely coded) - Added SC_INCASPDRATE, SC_INCFLEE2, SC_INCCRI, SC_INCDEF, SC_INCBASEATK and SC_FASTCAST as these are required by the newer items. - Cleaned a bit the implementation of Suffragium git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11535 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-20* Some more updates to the skill unit codePlaytester1-6/+6
- renamed SKILLUNITTIMER_INVERVAL to SKILLUNITTIMER_INTERVAL - Heat now depends on the interval settings rather than firewall_hits_on_undead - if you want Heat to do more or less hits you can now change the interval value in the skill_unit_db.txt (official+default: 20ms) - Icewall doesn't break anymore when the SKILLUNITTIMER_INTERVAL gets changed git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11526 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-19- Added bonusautoscript and bonusautoscript2. These are used to attach a ↵skotlex1-0/+34
script to a player which gets executed on attack (or when attacked). Required for several of the more recent items. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11519 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18Fixed some gcc-specific stuff, silenced some more warningsultramage1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11515 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18Fixed numerous /W4 warnings (and created more :)ultramage1-11/+10
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11514 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18* Further optimization of the skill unit codePlaytester1-27/+16
- removed code for Crimson Fire Formation it now uses the same code as Fire Wall - added same knockback behavior as Fire Wall for Fire Formation - Heat now does 50 hits a second in pvp too - please let me know of any bugs that might appear git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11510 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18* Optimized the skill unit codePlaytester1-21/+37
- reverted the unit timer interval to 100ms to save CPU usage - rewrote the unit code of Fire Wall, Fire Formation and Heat so that they hit every 20ms if the target wasn't knocked back despite of the unit timer interval - Heat now does 15 SP damage to players instead of 60 per hit - optimized memory usage - TODO: Renaming or removing firewall_hits_on_undead config git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11509 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-18Some code cleaning...ultramage1-4/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11505 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-17* Ground skill now can trigger every 20msPlaytester1-1/+1
- Firewall, Fire Formation and Heat now can do 50 hits a second - this was proven to be official behavior, but it will raise CPU usage git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11500 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-16* Venom Splasher fixes according to bugreport:230ultramage1-5/+6
- added passive skillv*30% bonus from Poison React - added official splash damage calculation - damage gets split by the number of targets at range 1, then applied to all targets in range 2 - reverted some very old code - clif_calc_delay() - that was preventing skills from displaying properly, by erroneously assuming that if the target has ddelay 0, it has endure effect activated - TODO: the skill should not consume a gemstone when it fails git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11494 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-16* Fixed a copy-paste mistake in disguise code (from r5833)ultramage1-96/+88
* Commented out clif_skill_damage2() as it is not used anymore * Made Venom Splasher a splash attack that distributes damage * Fixed displaying of several splash skills (see bugreport:238) - added flag SD_PREAMBLE for skills that need the 'magic' packet (fixes Grimtooth / Cart Revolution displaying out of sync) - hacked together Venom Splasher's "no animation for central mob" - hacked in a custom packet to make Dragonfear display semi-correctly git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11491 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-16- Fixing TK Mission asigning non spawning mobs.zephyrus1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11485 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-15Implemented new skill "Enlarge Weight Limit R", and increased MAX_SKILL_TREE ↵L0ne_W0lf1-0/+1
by 1. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11476 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-13* Fixed up NPC_POWERUP and NPC_AGIUPPlaytester1-2/+2
- NPC_POWERUP: 3x ATK and 2x HIT for 10+5*level seconds - NPC_AGIUP: 2x MOVE and 2x FLEE for 10+5*level seconds git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11450 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-13* Some further changes to the delayfix functionPlaytester1-2/+3
- aftercast delay is at least amotion no matter what skill (this includes skills with cast time AND skills with skill delay!) - aftercast delay reductions can NEVER reduce the aftercast delay below amotion (this includes Bragi and Soul Links) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11448 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-13- Again modified the delayfix function to reflect the current skill delay ↵skotlex1-6/+3
knowledge. Skills with 0 delay use amotion always (regardless of cast times) - Renamed the config default_skill_delay to default_walk_delay as that is the only thing it does now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11446 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-13* Further updates to skill_delayfix functionPlaytester1-14/+14
- aftercast delay can never be lower than amotion - please report if this broke any skills git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11436 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-12* Fixed wrong index calculation in TXT char creation code (ref: r11410)ultramage1-1/+1
* Fixed SQL itemdb loading crash on NULL columns (ref: 11398) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11434 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-12- cleaned up homshuffle and fixed a possible crash in it.skotlex1-9/+9
- Updated the skill_delayfix function to behave as recently discovered by Tharis: Skills with no delay set will use amotion ONLY if the skill was instant-casted. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11433 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-12Fixed Bragi's aftercast delay reductionPlaytester1-3/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11425 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-11Removed the check that prevented Warp Portal from opening after you picked ↵ultramage1-33/+36
the destination, if there was someone blocking the cell. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11406 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-10Minor skill_dance_switch cleanupultramage1-36/+29
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11405 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-10* Implemented more official Warp Portal behaviorultramage1-4/+10
- the transition from active to waiting mode is now done as a simple appearance change instead of deleting one and creating the other - due to the above, an opening warp is now properly accompanied by the log-in like sound effect git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11404 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-10Re-enabled packet 0x1ac to be sent when something gets ankle-snaredultramage1-4/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11400 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-10* Partially removed the usage of 'flags' to direct the execution path in ↵ultramage1-70/+81
skill unit code (some people seem to really like flags >_>) - wiped out r8478 and its multiple levels of useless flag propagation - skill_unit_onlimit (expiration) no longer executes in skill_delunit - added skill_unit_ondelete for proper handling of this event git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11399 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-10* Removed 'into_abyss' effect on traps; tests show that it works ONLY for ↵ultramage1-33/+35
Gemstones (tho' iRO website claims otherwise) - bugreport:171 - corrected code that was exploiting the flag as an 'expired' trap flag (replaced it with a more jAthena-ish approach) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11397 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-10Fixed a messup in r11347 causing skill units to expire, trigger or not ↵ultramage1-1/+1
trigger, completely randomly (or at least it seems that way). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11396 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-09* Corrected string lengths according to bugreport:198ultramage1-2/+5
- CHATBOX_SIZE: 70 -> 70+1 - removed some too aggressive checks in clif_parse_globalmessage() - removed CHAT_SIZE define as it actually doesn't apply anywhere - added CHAT_SIZE_MAX to serve as a custom limit to input string lengths - added length/contents checks to /b and /lb (against fake names) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11386 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-08* Delayed the check for required items when a skill is cast to when they are ↵FlavioJS1-36/+46
consumed. Now skills only fail due to lack of items after being cast. - Please make a bug report if you know of any skill that doesn't work like this in official. * Fixed hp of other party members not being sent when you join a party. * Removed unused global array names_id and renamed some structures that are used with variables of the same name. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11384 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-05Fixed 'Wink of Charm' - shouldn't work on boss mobs (topic:166115)ultramage1-10/+11
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11362 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-05* Removed a broken remnant of code from old gospel code (r4349) that's ↵ultramage1-69/+64
_supposed_ to clear the gospel status (no item use?) when you step out of its zone - 1) the constant UNT_GOSPEL was used in a switch() instead of PA_GOSPEL (thus actually ending 'NPC_STUNATTACK' status), and - 2) this code path is never taken, because Gospel is not recorded in skill_unit_temp[] (it has a periodic timer and is not DUALMODE) * Now the first empty spot in the 'skill_unit_temp' array will be used when tracking movement between land skills; reduced its length to 20 * Fixed the skill unit mechanism that is supposed to track whether you're still standing in a certain land skill's AoE or not, which was not working correctly since the time it was added (r3133) - solves the nasty problem of Loki, Quagmire, ... status not ending even after stepping out of it in some cases, if there was another song overlapping the skill's area (fixes bugreport:34) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11361 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-05* Completed the code for SC_LIFEINSURANCE and it's status icon.zephyrus1-1/+2
- Added the summer_ignorepalette to client.conf. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11359 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-04* Added SC_EXPBOOST (Field Manual), SC_ITEMBOOST (Bubble Gum) to const.txt. ↵zephyrus1-1/+1
Allready working. - Added SC_LIFEINSURANCE and SC_BOSSMAPINFO to const.txt. (not implemented but i will work on it) - Updated Field Manual and Bubble Gum in the itemdb.txt file. - As L0ne Wolf reported to me and based on Doddler information, the Bubble Gum only do a second try of the item drop, and it don't increase the drop rates. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11356 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-04* Corrected Icewall skill to be closer to official behavior (part of ↵ultramage1-15/+22
bugreport:38) - now works on occupied squares (previously it disappeared) - now you can walk out of an icewall square (removed code that blocked pathfinding if the origin cell was of a nonwalkable type) - added back the hack where mapcell changes are broadcast to whole map (prevents client from leaving the cells non-walkable if you warp away) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11354 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-03* Added the code for Field Manual (SC_BONUSEXP) and Bubble Gum (SC_BONUSDROP)zephyrus1-2/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11351 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-03* Cleaned up parts of skill.c related to skill unitsultramage1-196/+187
- removed some nonsense code in skill_dance_switch() (from r8876) - removed 'security system to prevent forgetting timer removal' (r1213) - renamed some skill-related data structs (had same name as variables) - commented out custom Venom Splasher countdown messaging code git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11347 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-25- Modified a bit the hard/lazy ai triggers to match aegis:skotlex1-0/+1
- Mobs go into active AI when they are 2 cells from entering a player's view (ACTIVE_AI_RANGE) - Mobs in passive AI no longer use skills. - Mobs in passive AI do not random walk UNLESS they have entered active AI before (random walk frequency is not lost during passive AI). - Added an additional check to prevent support skills from being blocked if the target has an armor element that blocks it. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11294 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-24- Changed Greed Scroll's type to 11 (all itemskill items should use this)skotlex1-8/+8
- Ignore %MDef bonuses now only reduce target's base MDEF, not MDEF2. - Updated the 'skills that cause no damage are blocked now if the skill element is blocked by the target' to only apply if the skill has a status change associated (fixes Resurrection/Heal being blocked). - Reverted the opt_flag2 change in status_change_start (clif_changeoption2) since it never served its purpose. - Added a warning to prevent loading mobs with IDs that belong to the clone range. - Changed MAX_MOB_DB to 3000, updated the definitions of the clone range defines so they are updated automatically with the change of MAX_MOB_DB. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11287 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-23* map_addflooritem and struct item_drop_list using id's instead of struct ↵FlavioJS1-6/+6
map_session_data's (fixes bugreport:36). * Fixed buildin_escape_sql not properly escaping in sql servers. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11279 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-21* Corrected skill Charge Attack as described in bugreport:67ultramage1-8/+23
- cast time is between 100% and 300% (+ infinite waiting fixed) - damage is also between 100% and 300% (doesn't increase past range 9) - added knockback that's equal to the distance to target - no longer causes teleportation on WoE grounds - if target runs behind an obstacle, the skill will still teleport you, but will not perform the attack or do knockback - this should be official behavior, so enjoy the weirdness! git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11256 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-20* Merged the tmpsql branch:FlavioJS1-0/+1
- Abstraction for the sql code (sql.c/h). - New configure script and makefiles. - Restored txt zeny logging code. (r10814) - Rewrote mapserver's sql code - itemdb, mobdb, mapreg, logs. (r10814) - Fixed a precedence issue (&& and ) in char_sql/char.c. (r10833) - Improved db reading code a bit for consistency. (r11077) - Added separate atcommand for mail deletion. (r11077) - Corrected a few messages that said "new" instead of "unread". (r11077) - Broadcast (*) messages now use "*" as the target's name (not ""). (r11077) - Moved StringBuf code from utils.c/h to strlib.c/h. (r11084 r11117) - Some misc login server cleanups (reformatting etc). (r11136) - Corrected/modified some header entries. (r11141 r11147 11148) - Adjusted VS project files. (r11147) - Adjusted the way the sql charserver does item saving. (r11192) - Corrected usage of reserved keyword 'friend' in mmo.h. (r11192) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11245 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-17- Several skills with a splash area (except ground based ones) will now hit ↵skotlex1-12/+15
Ice-walls when casted by mobs. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11237 54d463be-8e91-2dee-dedb-b68131a5f0ec