272 Commits

Author SHA1 Message Date
skotlex
24e26035ff - Cleaned up somewhat the implementation of BladeStop.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6531 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-09 19:02:47 +00:00
skotlex
05667b0fa9 - Script commands sc_start, sc_start2 and sc_start4 will now start regardless of sc defense of the target player (that is, they cannot be avoided)
- Fixed a possible counter overflow in attacked_count, changed the var size to unsigned char since the code can handle the overflow now.
- Multiple targets again reduces armor defense, as reported by Tharis.
- Increased dex increase of NPC_POWERUP to +20 per level.
- Fog of Wall's -50 hit reduction is now only for ranged attacks.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6528 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-09 17:08:09 +00:00
skotlex
0ecb627a0d - Corrected the max level of NPC_DARKBREATH 10->5 (don't ask, I need these things right :P)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6497 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-06 00:32:18 +00:00
skotlex
35eebe9f32 - Fixed Kaupe always triggering when the one who was under Kaupe was a player rather than the one attacking...
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6492 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-05 20:14:13 +00:00
skotlex
266148ef5f - /doridori now won't double the HP/SP regen of TKs, it only activates their "happy" state.
- Added the -50 hit penalty when standing on Wall of Fog.
- Cleaned up status_calc_mdef2
- Uncommented the status_calc_mdef2 call in status_calc_pc.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6491 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-05 17:57:37 +00:00
skotlex
88722161e5 - Being in Enjoyable Rest state will now also trigger the HP/SP Time skills (even if there's no other TK around).
- Renamed SC_TKDORI to SC_TKREST (makes more sense if you ask me)
- Added battle config settings view_range_rate and chase_range_rate to adjust the view-range and chase-range (range2/range3) of the mob_db without having to manually change them.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6490 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-05 16:30:47 +00:00
skotlex
940831871e - Kaupe now will only block all skills of players, for non-players, only normal attacks can be missed.
- Moved the Kaite spell-reflect code after the damage calculation function, so the reflected damage is exactly the damage the original target would have received. Will only trigger if the damage to be reflected is above 0.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6489 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-05 15:03:53 +00:00
skotlex
391e5359ad - OnEquip scripts will be trigger on log-on now.
- Infinite Endure will no longer give mdef bonus.
- Removed bInfiniteEndure bonus, Eddga card now uses onequip/onunequip to start/end infinite endure.
- Hammer fall's stun duration is now 1+lv seconds.
- Fixed Kaahi's SP cost per heal.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6487 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-05 14:13:03 +00:00
skotlex
01340a866e - Kaite, Kaute will now show a skill effect when they trigger.
- Fusion's cast time reduced to 0.
- Knowledge will now only trigger if you logon to the memorized map, not walk into it.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6462 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-03 17:53:57 +00:00
skotlex
827f003768 - Fixed standing up not really standing you up.
- Moved battle_consume_ammo to the end of skill_castend_damage_id, skill_castend_nodamage_id and skill_castend_pos2 rather than battle_calc_weapon_attack. They will trigger when the player's arrow_atk state is active and a ground skill was not invoked. It should fix all issues with splash/ground skills consuming ammo per target rather than once per skill use.
- Added structure state to the ground skills, their fields are magic_power, into_abyss and ammo_consume to indicate the states that were previously stored in val3.
- Corrected Desperado ammo consumption (should be 10)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6455 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-03 04:02:17 +00:00
skotlex
1839d33ce7 - Kaite now works against all types of spells.
- Kaupe now works against all skills.
- Sanctuary now won't damage non-enemies.
- Blessing now will always give you bonus stats even if you are wearing undead armor.
- Linking skills now have their cast-time reduced by dex.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6447 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-02 16:32:37 +00:00
reddozen
29db2f4743 added support to regulate MVP drops [Reddozen]
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6439 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-02 00:20:17 +00:00
skotlex
f95ab0abbe - If someone is expulsed from a guild while the guild storage is open, it will be auto-closed now.
- Modified battle_consume_ammo to prevent consuming multiple arrows on AC_SHOWER.
- Readded script command skillpointcount. (who removed it? <.<)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6406 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-30 18:41:05 +00:00
skotlex
ffea9656f8 - Removed attack_type from sd->state structure (it's only use was for soul-drain!)
- Moved the soul-drain code to skill_counter_additionaleffect


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6392 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-30 06:01:16 +00:00
Lupus
cdffe16fba fixed STEAL. now working
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6378 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-29 16:40:04 +00:00
Lupus
687b2210a7 Updated STEAL skill (WIP), added a battle config option: 'skill_steal_max_tries' to set max number of stealing tries. It could help to fix stealing exploit on mobs with few drops
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6367 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-29 11:16:21 +00:00
skotlex
552bc8752c - Clones can't be class-changed now
- Readded the class == -1 distance check in npc_checknear
- Replaced check sd->trade_partner for sd->state.trading in clif.c


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6356 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-29 04:13:21 +00:00
skotlex
6469df410d - Removed the sending of the online guild list when you log-on, may fix the "getting stuck" problem.
- Added battle config default_skill_delay. Specifies the default skill delay for most skills, it is also applied as a walkdelay (total skill walkdelay is default_skill_delay + that skill's can't walk delay)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6344 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-28 13:58:59 +00:00
skotlex
1a3d6004c5 - Corrected the hit value of the TK kicks (from single hit "6" to multi-hit "8")
- All kicks do 3 hits now.
- Added battle config hide_woe_damage which hides damage on woe maps packet-wise.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6311 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-27 13:31:29 +00:00
skotlex
af55aa1e6e - Updated item_db.sql to current.
- Some small code-cleanups.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6298 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-26 23:01:55 +00:00
skotlex
d66d94cd80 - Item use interval is set to a default of 100ms now.
- Updated Full Buster so that the can't act delay carries on to the weapon attack delay and can't use item intervals.
- Added script command getbattleflag to retrieve the current value of a battle_config switch.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6296 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-26 21:12:08 +00:00
skotlex
d44188210b - Renamed skill_clear_element_field to skill_clear_group, it accepts a flag to determine what to erase. &1 for elemental fields, &2 for traps. Also rewrote how it works to prevent missing elements (since each time an element is erased, the array contents shift)
- Added battle config traps_setting to determine how traps should behave. With &1 traps are invisible if you didn't see them get set up. With &2 traps will be removed after changing maps. The default is 2.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6285 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-25 23:58:19 +00:00
skotlex
3f18944b8d - When battle_damage's flag is &2, the flag 3 is passed to mob_damage so that it won't give exp nor items. NPC_SUICIDE was updated to reflect this.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6282 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-25 20:47:26 +00:00
skotlex
72faf33f97 - Added new column to mob_db Sprite_Name to hold the mob's sprite name. Columns Name and JName now hold the mob's english and kro names respectively.
- Currently both Name and Jname have the KRO names, so someone will have to update them.
- Updated mob_db.sql and mob_db2.sql to latest.
- Added battle_config option override_mob_names to make the spawned mob names use the mob_db names instead of the specified names in the spawn files.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6246 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-24 03:53:29 +00:00
skotlex
47d5784da3 - SC_CLOAKING's val4 now holds whether cloaking ends or not on attack.
- Implemented NPC_INVISIBLE, it starts SC_CLOAKING with val4 set to 1, skill duration is 30 secs.
- Moved uncloaking on attack from attack_timer_sub to battle_calc_weapon_attack.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6223 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-21 19:55:35 +00:00
skotlex
3ffd7ebdb9 - Updated the HP/SP leech structures to have race-data attached to them.
- Merged all leeching code to battle_drain function.
- Added an enum for races (they match the RC entries in const.txt, except they are in all caps)
- Cleaned up atk_mods and aspd_base to be MAX_WEAPON_TYPE sized rather than MAX_WEAPON_TYPE+1
- Simplified a bit the code for Signum Crucis
- Added script bonuses: 
	bonus3 bHPDrainRateRace,<Race>,<Activation Rate>,<Drain %>
	bonus3 bSPDrainRateRace,<Race>,<Activation Rate>,<Drain %>
	bonus2 bHPDrainValueRace,<Race>,<Value>
	bonus2 bSPDrainValueRace,<Race>,<Value>


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6221 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-21 18:42:35 +00:00
skotlex
63eec80717 - Added support for n to specify minutes to @charban.
- Fixed a logic typo on the way dummy_npc_id was defined.
- Added state.trading to specify when a trading has started. Now you should be able to walk around until the trade is either rejected or started.
- Armor defense is no longer reduced by the amount of characters targetting you.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6192 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-20 16:04:47 +00:00
skotlex
6ec369963a - skill_clear_unitgroup is now invoked in unit_remove_map only on death if the applicable battle setting is set. It is now also invoked in unit_free.
- Changed setting clear_unit_ondeath to a type 4 (bl-based) which defaults to BL_ALL.
- Fixed Absorb spirit sphere not working on mobs, thanks to Vividd.
- Cleared the ud->target on pc_stop_attack to prevent attack resuming an other such oddities.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6145 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-17 23:54:49 +00:00
skotlex
9aa86f86e4 - Fixed crash when looking for SC_MIRACLE in battle_calc_weapon_attack
- Some more standard C code cleanups.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6038 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-13 15:56:22 +00:00
skotlex
d29c6d8a27 - Simplified the mob-drops structure by using a single timer with a linked list of drops instead of separate timers for each drop.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6014 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-12 16:32:34 +00:00
skotlex
df06ad84f3 - Fixed Landmine's level 1 duration.
- Cleaned up implementation of BlastMine and Claymore Trap.
- Added Freezing trap information to battle_calc_weapon attack.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5998 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-12 02:03:31 +00:00
skotlex
a489ed4364 - Changed clif_damage/clif_skill_damage to return the walk-delay based on the passed on damage-delay.
- Changed battle_damage to accept the walk-delay as well.
- Removed the walk-delay timers from unit.c, merged them to battle_delay_damage.
- Traps will not be displayed when you walk within their range.
- Added HT_DETECTING revealing traps.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5997 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-11 23:58:55 +00:00
skotlex
58be7c433b - You don't get critical'ed when in counter-attack stance anymore.
- Changed the default counter-type to "always critical".


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5992 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-11 19:55:48 +00:00
skotlex
0ef81c9d08 - Implemented use of ers for skill_unit_groups to reduce memory usage. NEEDS TESTING
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5991 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-11 18:45:43 +00:00
skotlex
5e1c234759 - Modified battle_check_range to do a path-check on distances less than 2 (rather than 3) to avoid being able to hit through walls.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5988 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-11 16:57:37 +00:00
skotlex
42c6f89d86 - Multiple optimizations to the unit_data auto-chase upgrade, also simplified the mob and pet ai routines.
- Simplified the walk routines to half the number of timers required for walking.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5982 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-11 04:10:41 +00:00
skotlex
3faa5d199f - Changed the default of multi_hit_delay from 230 to 80 which seems more official.
- Wedding recall skills are now blocked by the nomemo mapflag.
- Skill delay for weapon types is now based on adelay (ASPD) rather than amotion (ASPD/2)
- Removed ending Endure when casting Berserk, may fix the timer mismatch issues.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5963 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-09 05:50:43 +00:00
skotlex
3b5c9e1f78 - Moved the devotion damage reduction to the block that only executes if flag is zero in battle_damage.
- skill_castcancel won't trigger on battle_damage when the passed flag is 1
- The flag in battle_heal is now used to determine whether Berserk blocks the healing or not.
- Moved the Fusion HP penalty to battle_calc_weapon_attack
- Some cleaning to use battle_heal/damage rather than pc_heal/damage where appropiate.
- cleaned up the deadly-poison hp reduction code.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5949 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-07 20:23:52 +00:00
skotlex
bb95eb8e36 - Modified the ammo checks so that ammo is consumed at the end of battle_calc_weapon_attack (should fix element being lost on final arrow).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5914 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-05 21:07:42 +00:00
skotlex
f3d9444348 - Added a define list for weapon types in pc.h
- Cleaned up pc_checkallowskill and moved the Gatling fever check to it.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5912 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-05 19:27:00 +00:00
skotlex
cbb91afccf - SC_AUTOCOUNTER now only blocks all attacks/skills when the flag is 0 (attempt to use skill)
- Autocounter triggers are now checked against flag 1 (cast-end) rather than 0.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5893 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-03 20:52:31 +00:00
skotlex
a007ab9457 - Fixed a typo in battle.c (status_get_atk invoked instead of status_get_atk_) for dual wielders.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5891 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-03 19:20:03 +00:00
skotlex
8980b04387 - Modified Rude-Attacked behaviour so that such skills only triggers when the rude-attacked count is greater than 3.
- Added config setting slaves_inherit_mode to determine whether slaves take on their master's aggressive/passive status (defaults to yes)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5890 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-03 18:43:19 +00:00
skotlex
ac3277f2b2 - Moved skill_counter_additional_effect calls to trigger right after skill_additional_effect (which means they trigger at the end of the attack motion for physical attacks)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5888 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-04-03 16:26:38 +00:00
skotlex
ab0693cbcf - Changed the terminology from arrow to ammo for the last update.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5830 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-31 17:43:24 +00:00
skotlex
b1a0b58110 - Changed the look field of all arrows to 1.
- Added column "RequiredArrowType" to skill_require_db, set to 1 all arrow-based skills.
- Added support for ArrowType requirement on skills. It checks for having an item equipped on the arrow-slot who's view has to match with the required arrow-type (works the same way it does for weapons).
- Skills will automatically be ranged and arrow-types when they have a arrow-requirement.
- Skills will automatically consume arrows if used with a bow and the skill is an attack weapon-based skill even if the skill_require_db doesn't specifies arrow requirements (this is for stuff like backstab used with bows)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5829 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-31 17:22:06 +00:00
skotlex
248e4968c7 - Cleaned up battle_check_target to use the jA structure defines and get rid of the is_duel variable.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5826 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-31 14:44:51 +00:00
skotlex
a36dcfd0ac - Added a missing "return 0" that fixes a crash on failed lookups on status_change_timer
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5818 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-30 21:04:17 +00:00
skotlex
39d33a2f80 - the auth function in login.c won't jstrescapecpy passwords that were encrypted.
- Moved the Endure and Gravitation sc ends to battle_damage from pc_damage.
- Endure level 11 and above are now considered infinite-endure.
- Set the minimum pet hungry delay to 10
- modified function skill_delayfix to only receive skill/lv, actual time is now always acquired from skill_get_delay. It also now will never return a value below min_skill_delay_limit.
- Modified brandish spear so you won't see the skill-animation for every targetted mob. Also cleaned it up to use map_foreachincell calls.
- splitted skill_cast_fix into skill_cast_fix and skill_cast_fix_sc, the first does cast adjustments based on dex and server settings, the later only based on sc changes. Mobs use the later while everyone else use the former (which invokes the later when appropiate)
- Added the Steel Body icon to auto-berserk.
- Now you can't cast auto-counter while the previous one is active.
- For the duration of Berserk, infinite-endure is activated.
- Added Veider's suggestion to do a hack-report when players request the name of an invisible/cloaked character.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5813 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-30 15:50:54 +00:00
skotlex
edc99399f6 - Fixed Potion Pitcher sometimes crashing the server.
- Fixed a compile warning by adjusting the acid demonstration formula.
- Added flag 2 to the skill_castnodex_db file for skills that shouldn't be affected by delay/cast reducing skills/effects.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5714 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-23 13:56:45 +00:00