- Implemented NPC_DEFENDER. Reduces ranged Physical+Misc damage by 80%
- Improved the battle config reader so it accepts hexadecimal values. Updated the monster_ai description to make use of this.
- Added monster_ai&0x200. When set, mob skill delays are shared. That is, if the mob has several lines with the same skill, when the skill is used, the delay will be set to all of them, not just the one entry used.
- Cleaned mob.c to use hex values when refering mob_ai
- Corrected NPC_BARRIER so it grants 100 def/mdef (and not just mdef)
- Weapon ATK bonuses will now only apply to watk and NOT watk2 on players (on players watk2 is refine bonus)
- Corrected NPC_KEEPING. it should give 90 def, not 100
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9277 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Added mapflags partylock and guildlock, which lock the state of the parties/guilds on said maps. partylock blocks user party requests to create/invite/leave/kick, while guildlock blocks user guild requests to create/invite/leave/expel/make alliance/make opposition/delete alliance/delete opposition/break
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9216 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Added error reporting when the max number of ground unit cells has been reached (this may be the reason why sometimes it fails to recognize when you step out of a song/dance/encore)
- Added passing the Endure effect to other devoted people. Note that the "hit count" is individual for each character, and only when it ends on the Crusader himself will that force it to end on everyone else. It also will not transfer on gvg grounds, but it does transfer in pvp.
- Fixed Reflect-Shield triggering Auto-Guard instead on devoted chars.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9168 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Modified the player_cloak_check_type and monster_cloak_check_type settings. 1 makes it check for walls, 2 makes cloaking NOT end on normal attacks, and 4 makes cloaking NOT end when using skills. The default setting for players is still 1, but for mobs the default has been changed to 4.
- Non-players can now use all skills while hidden.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9109 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Implemented the property where the first attacker get's double exp-share than the others. Due to the way exp calculation is done, this bonus will not apply when you use exp_calc_type 1 (damage/max_hp) instead of the default (damage/total-damage). For now this bonus is done after calculating who is the MVP character instead of before.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9107 54d463be-8e91-2dee-dedb-b68131a5f0ec
- exp_bonus_attacker: Indicates how much additional exp a mob gives per additional attacker (eg: 10 -> +10%*attacker)
- exp_bonus_max_attacker: Indicates at which number of attackers the bonus is capped (eg: 5 -> 5 attackers, so a mob yield the same exp whether 5 or 10 people attack it)
- Changed the way the party_even_share_bonus setting works. It now uses a simple linear bonus increase (eg: 10 -> +10%*party member)
- The defaults are as explained by Tharis: +25%/attacker, capped at 12 attackers, no party bonus.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9067 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Cleaned up the pc_steal_item implementation (again). It now uses a more random, simple approach in each steal attempt.
- Changed the way the skill_steal_max_tries work. Now it actually MEANS the max number of steal tries, use 0 to disable (unlimited tries).
- Changed the default of skill_steal_max_tries to 0 as there's no proof anywhere that there should be such a limit.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9057 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Likely fixed pc_steal_item always failing to steal (it was attempting to steal random item IDs...)
- Cleaned up a bit the mob on-death event so that when the killer is a homunculus, it's master will be taken. Also, the variable killerrid will be set before running the script to specify who delivered the final blow. If the killerrid matches with the script attached player, you can be sure your player did the final blow to the mob, otherwise, the attached player is who did the most damage to the mob.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9026 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Added the actual skill delay of 1000ms to Triple Attack and Chain combo in skill_cast_db. Added Combo Finish and TigerFist as well with a delay of 700ms.
- Phantasmic arrow now knockbacks even if it misses.
- Adjusted the way Monk combo times work. The combo time is now always 300ms (adjusted by combo_delay_rate) which takes effect inmediately AFTER your current skill's canact-delay (which is why the particular skill delays were moved to skillcast_db)
- Modified skill_delayfix so it performs the can-act reduction from agi/dex for combos there.
- Modified pc_steal_item so that it behaves more closely to the way it does on Aegis.
- Commented out the monster_noteleport mapflag from the guild castles as this is the Aegis behaviour
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9012 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Fixed SC_NOCHAT printing the "skills are now available" message twice on natural expiration.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8953 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Updated Land Protector to block absolutely every land-based skills with the exception of Encores/Dances.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8948 54d463be-8e91-2dee-dedb-b68131a5f0ec
- The no_spawn_on_player setting will now also work for static mobs, but only if the setting is set to 100 or higher.
- Some small cleanups.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8887 54d463be-8e91-2dee-dedb-b68131a5f0ec
- The double continuation error will now display both scripts that triggered it.
- Loading the storage from the char-server will fail if player is already tagged in final save state.
- Removed setting ban_spoof_namer, sending invalid global-talk packets will now just kick the player out of the server.
- Added BL_NPC support to status_get_name
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8812 54d463be-8e91-2dee-dedb-b68131a5f0ec
- The new code includes support for two config settings (packet_athena.txt): frame_size, which can be used to alter the logic packet-size allowed by the code, and mode_neg, which when set to yes, sets TCP_NODELAY on all connections (defaults to yes).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8799 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Due to this, the max sc resistance settings (battle/status.conf) no longer apply to equipment/card-granted resistances.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8795 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Added constant map_flag_gvg2 which tags gvg maps independently of whether woe is on or off.
- battle_calc_gvg_damage will be invoked in gvg maps regardless of woe time.
- NPC_MENTALBREAKER now zaps matk*lv SP based on observations by Tharis.
- md->class_ will be changed on mob-class-change to fix all class-change related bugs. On respawn, the spawn data will be used to revert to the original class.
- Improved the pet skillbonus timer for "eternal bonuses" cases where the bonus delay is 0.
- Adjusted gvg long damage rate to 80%, magic damage rate to 60%
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8748 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Modified main.sql to add 4 missing indexes (thanks to ErkDog): char_id on the tables memo/friends, and online/name on the char table. Added upgrade_svn8728.sql to add these indexes to already existing tables.
- Changed back the default of case-sensitive to ON since it shouldn't be such a bad performance hog now.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8728 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Changed the default of enable_baseatk to 9 (player + homun)
- Changed the default of enable_perfect_flee to 1 (players only)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8708 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Modified SG_FEEL so that it works the same way that in Aegis (packet-wise)
- Added a comment to explain how to "remove" a string variable from the msg_athena entries.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8707 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Cleaned up the doridori parse clif function.
- Moved doridori_counter to state.doridori
- Merged some of mpeg's work on NJ skills
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8665 54d463be-8e91-2dee-dedb-b68131a5f0ec
- 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
- Added config setting "partial_name_scan", which specifies whether @ given names should use a partial string lookup or absolute name lookup. Defaults to no (gm.conf)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8578 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Cleaned up a bit the summon script command.
- Fixed the clone script command's delete-timer being screwed up.
- Corrected battle config name max_walk_rate, it should be named max_walk_speed.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8559 54d463be-8e91-2dee-dedb-b68131a5f0ec