summaryrefslogtreecommitdiff
path: root/src/map/battle.h
AgeCommit message (Collapse)AuthorFilesLines
2009-05-14* More logical modifications on skill_additional_effect thing. Thanks to ↵Inkfish1-1/+3
ultramage. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13771 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-05-13PNEUMA, BASILICA and SAFETYWALL no longer protect you from such negative ↵Inkfish1-0/+1
status changes as COMA, STUN, FREEZE and etc. (bugreport:1346) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13767 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-03-29- Implementing official battleground "emblem" crossed swords icon.zephyrus1-2/+0
- Removing the custom guild packets from Battleground as they are not needed anymore. - Scripts updated. - In this way, you get "battle cursor" over your same team, but that's how official does. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13635 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-03-24* Added support for new status change packet, uses new setting ↵Sara1-0/+1
display_status_timers in client.conf. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13613 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-03-04Small edits to battleground code (bugreport:2816)ultramage1-1/+0
- removed bg_idle_announce setting (could be considered later) - moved crystal protection code to battle_calc_bg_damage - removed mob state 'inmunity' in favor of a script-based solution - removed unneeded 'setmobdata' (fixes collision with mob controller) - added svn:eol-style native for battleground code git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13565 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-02-26- Fixed item Nemesis.zephyrus1-0/+12
- Fixed Tarot Card being used on Emperium. - First Part of BattleGround Implementation (please wait). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13550 54d463be-8e91-2dee-dedb-b68131a5f0ec
2009-01-25- Implemented new Pet Bonus System. Enjoy!! :Dzephyrus1-2/+6
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13491 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-15* Removed gm_cant_party_max_lv. It now uses gm_cant_party_min_lv as the ↵sketchyphoenix1-1/+1
threshold. (bugreport:2051) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13077 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-08-07* Added another GM trust config for party invitations (bugreport:2004)sketchyphoenix1-0/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13051 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-26Merged the /loginmerge branch (topic:192754)ultramage1-0/+1
* the login server storage, ipban and logging systems have been abstracted and now provide a common interface; the rest has been merged into a single login server core (no more login/login_sql duplicity) * storage systems are now added via compiler options (WITH_SQL / WITH_TXT) * multiple storage engines can be compiled in at the same time, and the config option account.engine defines which one will be used. * due to MySQL autoincrement limitations, accounts with id '0' will not be supported; account IDs from this point on should start from '1'. * login_log() functions now again record IP addresses in dotted format, not as 4-byte integers (undo from r6868). * removed config options that defined column names in the login table * removed `memo` and `error message` columns from login db/savefile * moved `loginlog` table to the logs database * added sql files upgrade_svn12975.sql and upgrade_svn12975_log.sql * due to changes to the login table layout, I added an !optional! sql file (upgrade_svn12975_view.sql) that will provide a certain degree of backwards compatibility with existing software; read the instructions inside carefully! * moved third-party includes/libs to a separate directory * updated project files / makefiles Changed the way GM levels are handled * removed conf/gm_account.txt * added the gm level column to the txt savefile (after 'email' column) * gm level information is now transferred along with account data For open problems see bugreport:1889. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13000 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-04* Homunculus will no longer auto-vaporize on master death.L0ne_W0lf1-0/+1
- Added config option to allow for this to be turned on or off. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12912 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-06-01Added Ai4rei's "gm can view all players' equips" feature (topic:186519).ultramage1-0/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12751 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-05-07- Added function battle_attr_ratio to handle just getting the attribute ↵skotlex1-0/+1
table data. Fixes Sense messing up with elemental based statuses. - Added Throw tomahawk to the list of items that do not trigger the equipment breaking code. - Moved a bit around the SC_ start of dancing skills to fix Moonlight petals pushing back the casters. - Modified status_damage to handle SC_KAZIEL. The return value of *_dead functions can pass 8 to specify that kaziel should not be triggered (ie: pvp/gvg) - Infinite Endure won't be passed on to devoted characters. - Infinite Endure is no longer saved on logout. - Added check to avoid gms opening vending shops if they don't have the required level. - Moved around the Steel Body S. Novice code, simplified it so it triggers before most of the penalties (death is cancelled). - Fixed the flee penalty not applying when you walk into a gvg map. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12688 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-04-18Implemented config setting 'vending_over_max', to let people configure the ↵ultramage1-0/+1
behavior of vending items over the MAX_ZENY limit. Default/official setting is 'yes', which makes players lose zeny that they cannot hold. Adjust as needed. This re-adds the behavior from before r11344 (see topic:180568). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12614 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-26Adjusted eAthena code to compile cleanly in C++ mode.ultramage1-3/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12436 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-09- Modified attack_walk_delay so it behaves on a 'per-object' basis, and ↵skotlex1-1/+1
changed the default to 15 (all types). - Modified battle_delay_damage so damage is not delayed more than one second for non-player attacks. - Modified party_member_added with a hack so that the clif functions will send the info of the new member since party_recv_info has not yet arrived. - Updated clif_calc_delay so the type sent to the client is based on the number of hits of the skill (as Aegis packets reveal) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12332 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-07- Added config settings mob_active_time and boss_active_time, what they do ↵skotlex1-0/+2
is specify a duration during which monsters will keep running their active AI after all players have left their vecinity. Their current defaults are set to 0 (disabled). - Script induced status changes can now be reduced by stats/cards (but only trigger rate is reduced, not duration) - Battle delay timers will now check if the target player has the invincible timer active or not. - Adjusted mob_ai_sub_hard to return a bool indicating whether the AI was executed or not. - Adjusted clif_damage and clif_skill_damage to set the endure type value based on dmotion and damage, rather than hardchecking for SC_ENDURE. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12315 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-03-05- Merged Auction Search and Register. It seen to work fine, so you can test ↵zephyrus1-0/+2
those. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12301 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-26- Added new settings for autotrade on battle/misc.conf (you can read ↵zephyrus1-0/+2
descriptions there). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12243 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-14- Added some new config settings: homunculus_autoloot, idle_no_autoloot, ↵zephyrus1-0/+4
max_guild_alliance. - Added a code to activate a Kill Steal protection and the required mapflags. * (I will explain this later on forums). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12203 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-29Implemented THE official Steal skill equation and game mechanics (basically ↵ultramage1-2/+0
version from /stable plus a few tweaks) (see topic:116540). Added missing bAddStealRate reference to doc/item_bonus.txt. Removed skill_steal_rate, as it was never used in the code (see r231). Removed skill_steal_type, it's just a one-liner source mod (see r231). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11992 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-12-22Path code cleaning...ultramage1-1/+1
* Added map/path.h, moved path-related function headers to path.h. * Removed the macroed _real() path functions. * Modified some functions to use boolean return values instead of 1/0 or 0/-1. * Modified path_search_long() to allow a NULL output pointer (in which case a temporary local buffer will be used instead). * Removed an unused ->path_half member variable from struct walkpath_data. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11958 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-17Removed battle_config.error_log as console_silent already handles thisultramage1-1/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11751 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-08- Added a new setting 'guild_skill_relog_delay' to activate the guild skills ↵zephyrus1-0/+1
delay on Guild Master relog. - The official setting is 'No', but this is an option for game masters. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11699 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-26- Removed the config setting firewall_hits_on_undead setting, Firewall and ↵skotlex1-1/+0
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-18Fixed some gcc-specific stuff, silenced some more warningsultramage1-0/+7
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-4/+3
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11514 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-10-16* Fixed a copy-paste mistake in disguise code (from r5833)ultramage1-1/+1
* 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-13- Again modified the delayfix function to reflect the current skill delay ↵skotlex1-1/+1
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-09-28* Implemented Summer Outfit care of Zephyrus_CR.L0ne_W0lf1-0/+1
- Increased MAX_GUILDCASTLE in mmo.h to 29 for future implementation of the 12.1 Guild Castles. * Added constants for Summer Outfit and updated the Summer_Event_Suit item script. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11321 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-14- Gravitional Field is now a MISC type of attack.skotlex1-1/+1
- battle_calc_return_damage now is only for BF_WEAPON attacks, added skill_magic_reflect to check whether a spell is bounced back or not. - Magic reflection now effectively switches the caster/target (after damage has been calculated) - Now when GTB completely blocks a spell, the spell animation will still come off, but with a single bolt and MISS damage. - Removed hom_setting&0x2 since Homunculus can be hit by land spells. - Monster Property now gives a Skill Failed message when attempted on players. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11203 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-10Added config option 'quest_exp_rate' to adjust exp gained by the 'getexp' ↵ultramage1-0/+1
script command (followup to r11165). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11171 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-29- Added bonus bSkillHeal to distinguish offensive skill damage increases ↵skotlex1-2/+0
from healing power boosts. - Moved battle_skillatk_bonus to pc.c, cleaned up the related skillatk bonus code to consider the skillheal bonus option. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11085 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-15* Some serious code cleanupsultramage1-311/+311
- adjusted @reloadbattleconf to not depend on variable ordering - changed all battle vars to 'int' (removes pointless duplicit coding) - added min, max and default columns to battle config data structure - added properly bounded values for these columns (or at least tried to) - battle-conf loading will now complain if it finds unknown settings, and will reject values that are outside of the allowed range - added CHATROOM_TITLE_SIZE and CHATROOM_PASS_SIZE - partially cleaned up chatroom manipulation code * Fixed 'Job_Professer' typo in mage jobchange quest git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11017 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-08-14- Modified map_foreachinrange so that you can also specify the max length of ↵skotlex1-1/+1
the path to use. The max_count field in the skill_db is used to specify this range for path-type skills (Sharpshooting, Kamaitachi and the NPC Breath skills. - Implemented the 'new' NPC skills described here: http://ro.doddlercon.com/wiki/index.php?title=Monster_Skills . It is mostly complete, but the new status changes (slow cast, critical wounds, etc) don't have any visual effects yet (icon or opt changes? I don't know if they should have). Also I could not find the unit_id for Evil Land, so it looks just like Sanctuary for now. Apart from those, the only skills which I couldn't get to display properly are the Breath skills (with the exception of Fire Breath). - skill_calc_heal now takes the target as argument to properly support Critical Wounds - battle_calc_return_damage now takes a flag to know if the attack was direct or not, needed since Magic Mirror also reflects indirect attacks. - cleaned up the 'description' field in skill.c, added skill_get_desc to it - Removed 'splash' support from Lex Divina as it is no longer needed. - Modified the way Sight/Sightblaster work so that the skill id is no longer guessed (needed to properly acquire the splash range for Wide Sight) - Corrected gtb_sc_immunity setting not taking effect if your block value was the same (that is, if the config said 30%, then you would only get status change immunity at 31%, nor 30%) - Uncommented the 'new' npc skills from mob_skill_db as they are implemented now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11000 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-07-19Added delay_dependon_agi since people actually use and need it...ultramage1-1/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10887 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-25Reformatting, warning fixes, unsigned char removalultramage1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10618 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-23- Added new flag to skill_castnodex.txt, to allow per-skill tweaking of cast ↵ultramage1-1/+1
time and delay reducibility by item scripts (cards and such) - Fixed Martyr's Reckoning never triggering for gms with all skills - Added MO_TRIPLEATTACK and RG_SNATCHER to @skillall's skill filter - Made gm_skill_unconditional bypass skill blocking (guild timer, etc) - Reverted the weird delay_dependon_agi thing (r8923, r9055, r9059) - Changed a few memsets to strncpy (reading past buffer is a bad idea) - Sped up some memset operations (multiples of 4 are faster) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10613 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-05-19Reformatting @_@ultramage1-1/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10581 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-04-07- Moved e_mail_check() and config_switch() to strlib.hultramage1-2/+0
- Synchronized the login servers a bit git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10174 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-27- Moved coma to skill_additional_effect, added special_state.bonus_coma to ↵skotlex1-1/+2
prevent doing comma calculations for every player attack. - Added config "vending_tax" to apply a tax to all vending requests, as it was in kRO Sakray some time ago (requested by Playtester) (items.conf). - Some cleaning of skill_additional_effect - Moved the starting of SC_DANCING from skill_initunitgroup to skill_unitsetting - Moved the checks for player_skill_partner_check and (gm_skilluncond for it) to skill_check_pc_partner - Negative aspd rate bonuses will be handled as aspd add rate since the default non-stackable bonus is useless on penalty bonuses. - Added check to prevent the client from using passive skills. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10082 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-19- Removed the last argument from skillitem, the skill name passed to the ↵skotlex1-0/+2
client should always be of the type "AL_HEAL" anyway. - Added skill ITEM_ENCHANTARMS, this is what weapon enchanting items should use. - Corrected itemskill calls in the item_db, also made the weapon enchanting items invoke the ITEM_ENCHANTARMS skill. Corrected Holy Egg not being type 11 (delay consume) - Updated item_db.sql with item_db information. - Added support for specifying different elements per skill level in the skill_db - Added bonus bNoKnockback - Corrected typo in bonus bSubRace2 (it was called bSPSubRace2 for some reason) - Corrected login sql server not resetting your account state to 0 when the banuntil duration expires. - Corrected use of UINT_MAX instead of INT_MAX in some jailing check. - Made the skillatk bonus it's own function, it can now be used to boost Heal/Sanctuary/Potion Pitcher and Slim Pitcher as well. - Cleaned up TK_WARMWIND to use the element acquired from the skill_db rather than hardcoded values. - Corrected Teleport's save map entry being sent without the .gat extension. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10031 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-03-09- Added info on packet 0x86 (simple move packet). Not usable until a clear ↵FlavioJS1-2/+2
separation between entering sight/leaving sight/walking in sight is done. - Propagating const char* from the script engine. - ".gat" is appended to the map name before sending the changemapserver packet to the client. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9979 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-21Applied a consistent look to all header files (copyright, ifdefs)ultramage1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9891 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-16- Modified the "guardian" spawn script command, it no longer receives a ↵skotlex1-2/+1
"amount" argument (since that only leads to trouble), if the class is negative, it'll pick a random class the same way the monster spawn script command does, and if you pass a spawn position with coordinates equal or less to 0, a random spot in the map will be taken. However you can't use "this" as a map name anymore since these script commands do not need an attached player. - Guardian spawning will now fail if you attempt to spawn a guardian that already exists on the same position. - Collapsed clif_party_main_info and clif_party_join_info into a single function: clif_party_member_info - Collapsed config settings "sg_miracle_skill_min_duration" and "sg_miracle_skill_max_duration" into "sg_miracle_skill_duration", which defaults to an hour. - Miracle of the Sun, Moon and Stars can now retrigger to lenghten it's effect, and it is cancelled on warp/map-change. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9871 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-02-01- Added support for mob skill target 'randomtarget', when specified, it will ↵skotlex1-0/+1
pick a random enemy from within the skill's cast range. - Updated the mob_db so that all skills from non-moving mobs that specified 'target' as enemy will use 'randomtarget' instead. - Amon Ra's meteors now use randomtarget instead of self. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9762 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-30- Corrected char deletion not working (column is called homun_id, not hom_id...)skotlex1-4/+0
- Collapsed config settings produce_item_name_input, produce_potion_name_input, making_arrow_name_input, holywater_name_input, cdp_name_input into a single config produce_item_name_input which uses bitmasks to determine what it affects. - Updated arrow_decrement to have 3 possible values: Disabled, Enabled, and Enabled as well as giving arrow requirements to skills that do not have them when used with ranged weapons (auto-guess for plagiarized/item-granted skills) - Minor cleanings git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9746 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-27Removed useless read-from-GRF featuresDracoRPG1-6/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9725 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-27- Moved the pet rename code from int_pet.c to inter.c and normalized it so ↵skotlex1-0/+1
it can be used for any object. - Made homunculus renaming go through the char-server so it can be validated against the allowed characters setting. - Added battle config hom_rename so you can enable renaming multiple times your homunc. - Updated the hardcoded defaults for gvg-damage to what they should be. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9720 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-01-22- Reverted the battle_calc_return_damage code as the previous one was ↵skotlex1-1/+1
correct, ninja self-targetted skills CAN be reflected. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9689 54d463be-8e91-2dee-dedb-b68131a5f0ec