216 Commits

Author SHA1 Message Date
skotlex
50e0a52c9b - Removed sg_miracle_skill_duration, replaced it with sg_miracle_skill_min_duration and sg_miracle_skill_max_duration, to specify a range for the duration of the skill.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8679 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-08 17:56:10 +00:00
skotlex
a64e58d5eb - Removed the Warmth "stacking" code.
- Added back the effect of /doridori to skill-SP regen
- Implemented a rough version of Angel of the Sun/Moon/Stars, it has a low chance of triggering on doridori-boosted SP-regen events.
- Added sg_angel_skill_ratio to specify rate at which the Angel skill triggers.
- Added unit_cancel_combo which takes care of ending a combo time and resuming normal attack 'inmediately'
- Cleaned up some the SG_HATE code, you can't change hate targets anymore.
- Increased duration of Miracle of the Sun/Moon/Stars to one hour.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8664 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-07 17:40:46 +00:00
skotlex
83deb9deec - SC_REGENERATION's val4 now holds the RGN flag of what is blocked rather than blocking all types of regen.
- LK_BERSERK will now only block natural regen on state-end.
- SC_EXTREMITYFIST/SC_DANCING/SC_EXPLOSIONSPIRITS will only block natural sp regen and not skill regen
- SC_REGENERATION blocking will be cancelled on logout now.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8600 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-02 23:24:11 +00:00
skotlex
da0c3867d8 - Added setting attack_walk_delay which specifies whether a character should (or not) be able to move inmediately after starting a normal attack (battle.conf). Defaults to 0 since that's what Aegis uses.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8561 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-31 14:46:56 +00:00
skotlex
87d78eb976 - Updated HLIF_CHANGE to work as explained by Tharis -> It now adds 30*lv vit and 20*lv int, is dispelled on warp, and can-act delay is 5+5*lv minutes. Hp/Sp is no longer set to 10 after a forced expiration.
- Added instant skill unblock in skill_[merc/pc]block_start when the duration passed is less than 1.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8547 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-30 14:11:23 +00:00
skotlex
7107181297 - Restructured CG_MOONLIT so that it is a ground effect like the other Encores.
- Modified SC_DANCING so that val1 can contain both skill id and skill lv, removed SC_MOONLIT


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8526 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-28 20:44:44 +00:00
Lance
26500644dd * Optional macro MEMSET_TURBO for faster low-level memory initializations.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8499 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-27 06:38:17 +00:00
skotlex
dbedc092e8 - Added setting clear_skills_on_warp to specify when a character's land-based skills are deleted when the caster changes maps. Defaults to all types.
- Should have fixed Brandish Spear not passing the flag to skill_attack, causing it to do miserable damage.
- Warp Portal will no longer be removed when caster steps through it (this is left to the new clear_skills_on_warp setting)
- Cleaned up status_percent_change to switch equations when the target has high hp to prevent overflows, also it will directly take hp/maxhp when a rate of 100 or higher is passed to prevent calculations.
- Traps and Land Elemental fields are no longer automatically removed on map change (handled now by clear_skills_on_warp)
- traps_setting &2 no longer does anything (handled now by blah blah)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8469 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-24 14:49:16 +00:00
skotlex
2fa44057cb - Cleaned up some more the regen_data structure, so that skill/sitting-skill related data is optional (since only players have it).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8410 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-21 19:36:13 +00:00
skotlex
68df921a84 - Gravitation now only blocks the caster from using potions.
- Corrected Madness Canceller not letting you walk while the effect lasts.
- Splitted yet again ASC_BREAKER into a two-part attack. This time the int-based damage is a MISC type attack, and gets reduced by skills as such.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8392 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-20 21:38:02 +00:00
toms
e67db33d16 - Added clif_skill_fail for homunc to skill_castend_id & skill_castend_pos ('skill has failed' will may be appear 2 times)
- Fixed homunc skill 8016 not considered as homunc skill


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8386 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-20 20:24:13 +00:00
toms
f4beef8924 Fixed a possible sigsegv when deleting lif under Mental Change
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8367 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-19 18:08:35 +00:00
toms
ae81bd6663 - Fixed HLIF_HEAL healing the homunc instead of the master
- Fixed HLIF_AVOID not increasing walk speed of master

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8355 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18 21:23:12 +00:00
skotlex
91b9fed6e3 - Made HLIF_HEAL a self skill that auto-selects target to caster's master.
- Implemented SC_BLOODLUST and SC_CHANGE, cleaned up HLIF_CHANGE
- Applied a correction to HVAN_EXPLOSION
- Fixed Homun ASPD calculation being able to underflow and give you min speed.
- Added monster_ai&128 to make aggressive mobs ignore that behaviour of always picking Homun targets above player targets regardless of who is closer.
- Fixed homun info packet being unable to display HP/SP correctly once the values are above 32k.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8349 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18 16:43:20 +00:00
skotlex
64b38ba4b7 - Added guild_aura (skill.conf) setting so you can specify when it works and if it works on the guild-master itself. Defaults to working all the time on everyone except GM.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8342 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18 14:26:26 +00:00
toms
70f4570b81 - Little code cleanup
- Cleaned merc_hom_evolution to avoid free'ing/realloc'ing
- Fixed "args of aFree is freed pointer" on Homunc deletion


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8341 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18 14:15:49 +00:00
skotlex
b5508efe38 - Changed unit_free so that it receives which cleartype should be used when the character is still on a map. Used this on status_damage so that mobs that do not respawn when killed will properly display the death animation.
- Should have fixed the signed/unsigned comparison warnings in the main regen function. 
- Fixed Energy Coat consuming 10x less SP per hit than it should.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8339 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18 13:49:24 +00:00
skotlex
d91a956aee - Applied use of structure regen_data for a unified regen module. Natural and skill-heal is handled by this structure, while sitting-skill-heal is still player dependant (mostly because the other object types can't sit)
- Added SCB_REGEN constant to identify status changes which alter regeneration
- Modified SC_REGENERATION so that if val4 is set, the status actually blocks regen rather than increase it, this is what now Frenzy uses instead of "canregen_tick"
- Cleaned up the status calc code for homun by moving it from status_calc_bl_sub_homun to status_calc_homun (where it should had always been)
- Moved the Fleet watk code to status_calc_watk where it belongs.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8334 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-18 01:57:08 +00:00
skotlex
04d969e781 - @produce now can make any kind of equipment
- Fixed a warning on the mob_ai
- Made HLIF_AVOID and HAMI_DEFENCE cause the status change on both caster and target.
- AM_REST shouldn't be checking for a range now (since it's a self skill)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8318 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-16 16:31:30 +00:00
skotlex
02c448cc45 - Moved the deletion of timers from unit_remove_map to the homun vaporize/dead routines since unit_remove_map is also invoked whenever you warp or change maps.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8309 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15 23:39:12 +00:00
toms
7110f02479 Homunc Timers should be disabled when the homunc is vaporized or dead an re-enabled on call/resu
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8305 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15 22:30:10 +00:00
skotlex
ee8298bb8a - Cleaned up some of the pet related @/# commands, same for some script commands.
- Moved s_pet structure from map_session_data to pet_data, this enabled the removal of a few redundant values in the pet_data structure (name, class, equip)
- Pet offensive skills who's inf value is self will be casted on the pet now (for stuff like Grand Cross)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8301 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15 21:12:45 +00:00
toms
92aca761ba Fixed SIGSEGV with homunc save
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8288 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-15 12:02:00 +00:00
skotlex
6e5a887656 - Sacrifice no longer shows damage to self.
- When Asura fails, the skill display will still come off.
- Cleaned up AM_CALLHOMUN so that the required item is specified on skill_require_db
- Cleaned up function merc_call_homun and added function merc_hom_vaporize to handle the respective cases.
- Cleaned up a bit unit_remove_map/unit_free on regards to homun. it will display the /sob emotion when the homun dies due to low intimacy. Moved removal of timers and all that to unit_free
- Cleaned up function merc_hom_dead
- Simplified lots of code around by using the new merc functions.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8279 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-14 19:48:16 +00:00
toms
d7e51241f8 Code cleanup on homunc, they stay in memory until player disconnect or homunc destruction
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8241 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-10 23:34:35 +00:00
skotlex
ee59874725 - Fixed yet again AS_SPLASHER doing full damage on all characters. Now you can use the NK split damage value in the skill_db if you want damage divided by the amount of targets rather than by 2.
- Fixed crash on the battle_drain functions.
- Cleaned up HAMI_CASTLE, HLIF_AVOID, HAMI_DEFENCE so that it's usable by other types of objects other than Homunculus. 
- Cleaned up the Asura Strike code so that the SP/Spheres/States is not consumed when the skill fails due to Fog of Wall.
- When a negative delay for a skill is specified, this delay is now added on top of the character's amotion rather than adelay
- Modified main.sql to make the guild table allow NULL on the emblem data.
- Added file conf-tmpl/Changelog.txt


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8185 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-08 15:07:29 +00:00
skotlex
e9bee91ea7 - Cleaned up the Asura code so that when the skill fails your SP/Spheres/Fury are all taken away always, as well as moving you next to the target (as long as the target still exists within a reachable path from your position)
- SC_GUILDAURA is now removed on logout.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8175 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-07 20:31:40 +00:00
skotlex
5ef4f71588 - Removed settings enemy_critical_rate, homun_critical_rate. Added settings enable_critical (defaults to specify only players), mob_critical_rate and critical_rate. The last applies to all non-mobs and non-players (battle/battle.conf)
- Removed settings mob_npc_warp, mob_warpportal. Replaced with setting mob_warp which specifies which types of warp can a mob step into (battle/monster.conf)
- Updated status_calc_misc so that it also handles the BL_PC case, removed redundant info from status_calc_pc, and moving the SNovice Max Hp bonus to status_base_pc_maxhp


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8135 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-04 19:30:15 +00:00
skotlex
5d9e6b4a71 - GAHH, I am sick tired of typing TBL_HOMUNCULUS/BL_HOMUNCULUS all over the place. The idea is that the TBL* versions are supposed to be easier to use than the standard structure definition, but using TBL_HOMUNCULUS as an alias to struct homun_data kinda beats the purpose! Renamed them all to TBL_HOM/BL_HOM.
- Fixed using the right-hand weapon's size modifiers regardless of which weapon was being used.
- Simplified the ignore-size check by making the Weapon Perfection check be done when specifying the flag, also moved the size-fix property of riding spear-knights to status_calc_pc.
- Removed variable hd from status_calc_bl as it's not needed.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8112 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-03 19:45:12 +00:00
skotlex
c02123e704 - Added a check in the walking code when triggering skills. NPC_SELFDESTRUCTION will no longer cancel walking, it will instead resend the walk packet, this effectively causes the mob to start walking (clientside) while the cast-bar is showing.
- Updated the mob skills so that the marine sphere casts self-destruction with 3 second cast after it starts walking.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8079 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-02 23:47:33 +00:00
skotlex
ed76d50157 - Rewrote pc_payzeny to not use doubles, it may more accurately prevent charging a player more zeny than they can withhold.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8072 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-02 21:14:38 +00:00
skotlex
19a4f0b31a - Recoded the GuildAura code to use val3 & val4, allowing much greater stat bonuses (in case someone wants to get Guild Skill level 20 or something crazy like that)
- Fixed compilation error...


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8053 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-02 14:55:14 +00:00
skotlex
7a082b02a8 - Updated battle_check_target so that all alchemist summoned mobs can be target by everyone.
- Cleaned up skill_check_condition_mob_master_sub, it will now count both total number of summoned mobs and amount that belong to the same type.
- Corrected AM_CANNIBALIZE so it will fail if you already have plants of another type out.
- Using NPC_SELFDESTRUCTION no longer will make the caster stop walking.
- Removed SI_GUILDAURA, and replaced it with SI_LANDENDOW, now Volcano/Deluge/V. Gale will get that funky icon instead.
- Changed clif_hominfo to receive both sd and hd as parameters
- Some redundancy cleaning in mercenary.c
- Moved updating of sd->mercenary.hp from merc_damage to pc_makesavestatus.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8048 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-02 14:27:17 +00:00
skotlex
6ef71063cb - Fixed NPC_SELFDESTRUCTION damaging yourself, causing the source to be knocked back, as well as making others in the splash damage not receive any damage if they are hurt after the caster.
- Fixed NPC_RUN not setting the mob's state to MSS_WALK (normally not set by the mob ai)
- unit_walktoxy flag&2 setting will now also ignore unit_can_move, for a forced walk. 
- Adjusted NPC_RUN level of Marine Spheres (5->7 cells)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8044 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-02 04:09:01 +00:00
skotlex
14b59636c7 - Made Deluge/volcano/v. gale be castable on top of each other again
- Modified unit_walktoxy and NPC_RUN to enable running even when the caster does not has the MD_CANMOVE bit on.
- PF_MINDBREAKER will now silently fail if you try to use it on someone who already has the status active.
- Cleaned up yet again skill_landprotector, now new cells of Deluge/Volcano/V.Gale will delete previous cells when they are recasted on top of each other.
- Summoned Marine Spheres no longer get the MD_CANMOVE bit.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8039 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-01 18:37:16 +00:00
skotlex
4550e45f33 - Modified Self Destruction, so that Marine Spheres in non-versus maps will hurt only enemies, while in all other situations this skill will hurt everyone around them.
- Expanded setting debuff_on_logout so that &1 removes negative buffs and &2 removes positive buffs.
- Food status boosts will no longer end on death, but they will end when you respawn or logout.
- Added battle config file status.conf, moved some settings from skill.conf and battle.conf to it since they are entirely Status-Change related.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8033 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-01 15:56:57 +00:00
toms
5e47973166 Merged mpeg's fix on ninja skills
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8012 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-31 20:19:56 +00:00
skotlex
2239037185 - Some small bug fixes discovered while merging.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7961 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-29 09:01:36 +00:00
skotlex
8da82e0a0a - Changed npc_click declaration to receive an npc structure rather than a generic block-list one.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7925 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-27 16:28:00 +00:00
skotlex
4289e1c98d - Corrected the @follow timer not being deleted on logout.
- Applied the homunculus code fixes provided by Toms.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7820 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-21 23:45:53 +00:00
skotlex
0f5a4717ef - Now when the char-txt server does not finds a requested party, it will clear out said party id of all characters (will help prevent massive spamming/overhead when for some reason the party file needs to be deleted).
- Combo skills (inf = self, inf2 = no target self) no longer check range if you use them while your attack-timer is still active.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7806 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-21 17:11:50 +00:00
skotlex
de6883c0bb - Corrected Cloaking level 1-2 not letting you move across walls.
- updated cloaking code so that when you set "enable cloaking without walls", the code will consider you as "always next to a wall", thus you get the wall-speed bonus always.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7778 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-20 20:34:06 +00:00
skotlex
f7535ef5a9 - Fixed a compile warning. Some minor format cleanups.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7733 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-18 16:14:44 +00:00
skotlex
67f1befafc - Corrected Venom splasher's splash damage
- You now can't move/attack/use-skills when using Cloaking of a level less than 3
- Fixed compilation of mercenary.c


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7729 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-18 14:33:52 +00:00
skotlex
97b00a11ad - Added a proper check to make aggressive mobs never override homun targets regardless of distance.
- Removed a bunch of homun-related variables that are not needed at all. The alive condition is removed, now the code checks for the hp value to know if the homun is alive or not.
- Cleaned up a bit the skill-id function, homun skill checks (such as delay and skill-lv learned) should be correct now.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7727 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-18 13:25:21 +00:00
DracoRPG
15dd140846 Orn's and Albator's Homunculus system, finally, YAY!!
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7706 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-17 00:15:33 +00:00
skotlex
16ee0110a2 - Resurrection will now silently fail when used on non-undead + not-dead characters.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7638 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-12 20:08:38 +00:00
skotlex
a56e8e9f64 - Added a clif_fixpos packet when a mob cancels walking due to using a idle/walk/chase skill.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7615 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-11 17:51:30 +00:00
skotlex
b782ed4f8e - Fixed the subele bonus (elemental reduction) being applied to the element of the attacker instead of the element of the attack.
- mob skills now won't trigger on unit_stopwalking calls.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7614 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-11 17:44:58 +00:00
skotlex
376004a4f4 - Corrected Frost Nova's splash range and Land Protector's cast range. Thanks to Haplo.
- Fixed Beast Strafing not having inf2 = 512 (to make it a target-auto-select skill)
- Fixed the duration of Land Protector, removed unusued time2 value from their entries in skill_cast_db. Thanks to Haplo.
- Corrected Warp Portal being unable to warp people who are standing on it on the moment it triggers.
- Fixed @follow stopping the moment you are warped.
- Fixed pc_additem messing with the equip field of the passed item data. Fixes the famous "equip stuff on your arrow slot" bug.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7607 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-11 02:49:44 +00:00