summaryrefslogtreecommitdiff
path: root/src/map/party.c
AgeCommit message (Collapse)AuthorFilesLines
2006-12-23- Moved "#include <limits.h>" to cbasetypes.h to ensure it's included before ↵FlavioJS1-1/+1
checking if UINT_MAX has been defined. - Minor changes in pc_readdb related to max_level being unsigned. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9561 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-21- Added a 1-node cache to db. Removed party_cache and guild_cache since now ↵FlavioJS1-19/+13
the database has a cache. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9545 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-12-05- Massive EOL normalization & 'svn:eol-style native' flag setting for all ↵FlavioJS1-902/+902
txt/conf/h/c files. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9410 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-11-17- Corrected use of the party invitation reply packet, thanks to FlavioJS.skotlex1-5/+8
- Removed requirement of "Changelog-Trunk" in the common/Makefile, why was it even there?? - Minor cleanups git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9251 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-28- Fixed mob-skill event "skillused" not triggering at all.skotlex1-2/+2
- Summoned mobs will only be removed from a map if their master is also removed (dynamic mobs) - Minor cleanups git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9088 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-25- Made the exp bonus settings be adjustable:skotlex1-20/+32
- 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://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9067 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-19- Cleaned up the log.c file.skotlex1-1/+1
- Splitted log_pick into log_pick_pc and log_pick_mob to avoid ugly type-casting. - Fixed log_chat not recording anything if the server is compiled in SQL mode and sql_logs is turned off (it should then record to a plain txt file) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9017 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-19- Corrected a compilation error.skotlex1-9/+12
- Fixed SG_FRIEND, it should be triggering when Monks do Combo Finish (not triple blows), and the trigger rate increase should be based on your known level of SG_FRIEND, NOT TK_COUNTER. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9013 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-10-18- Added a overflow check when calculating party exp share.skotlex1-0/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9010 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-20- Cleaned up some more party_sub_count, so that idle_no_share will also ↵skotlex1-4/+5
disable people in a chat or vending from counting towards the total. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8827 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-09-20- Fixed party_sub_count (TK_POWER) failing when the idle_no_share setting ↵skotlex1-3/+7
was disabled. - Enabled Star Gladiators and Soul Linkers to do /doridori git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8824 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-27* Optional macro MEMSET_TURBO for faster low-level memory initializations.Lance1-6/+6
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8499 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-07- Hopefully fixed the party_even_share cast-overflow bug as reported by Adobe.skotlex1-1/+1
- Standarized the autosave interval setting to be always in seconds regardless of type. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8172 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-08-04- Enabled Mastery damage on Soul Breaker again, moved adv katar mastery out ↵skotlex1-1/+1
of the mastery function so that it may apply to all skills except Soul Breaker. - Changed name of the setting log_pick to log_filter since that's what it does now. - Modified enable_logs so that instead of a 0/1 setting, you can specify which kind of events to log (so you can use a combination), see log_athena for the bitmask configuration. - Cleaned a bit the contents of log_athena.conf git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8129 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-28- The picklog will now record negative values for items sold to npcs.skotlex1-0/+2
- Added inmediate position and hp-bar update when a character joins a party. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7934 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-27- Added config setting party_update_interval so you can specify how often ↵skotlex1-3/+1
the party-mate minidots should be updated (defaults to 1 sec). - Removed a bunch of broken comments in skill.c git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7929 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-27- Added config setting "party_hp_mode" (battle/party.conf) which determines ↵skotlex1-1/+2
method to use to update party-mate hp bars. Aegis style is to update HP bars whenever HP changes, while eAthena style is to update it together with the map party dots. Defaults to aegis style. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7920 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-27- Fixed packet 0x22a having the manner and opt3 packets in inverted offsets.skotlex1-0/+2
- Some other small cleanups on clif.c git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7919 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-27- Applied the necessary changes to make @partyoption reflect it's changes on ↵skotlex1-3/+8
the alt+p window. - Some code indentation cleanups. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7905 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-26- Modified party_item_share_type config setting so that using 1 disables ↵skotlex1-3/+4
item-sharing from non-mob loot (player dropped items or pet loot) and 2 enables round-robin instead of random sharing. Using 3 obviously is enabling both 1 and 2. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7898 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-18- Added atcommand @partyoption, lets you alter the party item-distribution ↵skotlex1-2/+2
type on the go. Usage is "@partyoption <pickup share> <item distribution>", where both arguments can be 0/1, yes/no, etc. - Updated @changeleader and @partyoption to use msg_Athena entries. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7737 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-06- Modified the party_data structure on the map server to remove some ↵skotlex1-16/+48
redundant data. Added a party_data structure on the char-server to hold a more complete set of information about parties. Added to the party_member structure the class of each member so that the map server can do the appropiate checks even if the character is on another mapserver/offline. Due to the format changes in the party structure, txt servers will have to wipe their party file... (sql save format has not been changed) - Added function char_family to check if there's a family state given the three character ids, instead of doing individual checks all the time. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7553 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-07-06- Fixed the auto-direction code which makes self-skills with ground units ↵skotlex1-3/+0
become a ground spell using the wrong function for said check. In short: fixed GrandCross and similar skills. - FogWall will now also affect the caster. - Some cleanup of map.h. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7548 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-13- Updated clif_disp_onlyself to not use dynamic memory and write directly to ↵skotlex1-3/+2
the player's buffer. - Updated @noask to also tell the rejected what he has just rejected (added msg_athena entries for each of the different requests) - Since noask already does a player lookup, updated the corresponding parsing functions to take the player rather than the player id (prevents double lookups) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7117 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-12- Made guild member exp an unsigned int.skotlex1-1/+1
- Modified npc_click to receive the bl that was clicked directly. Also cleaned it up so it isn't as easy to crash the server with invalid ids <.< - Moved npc_checknear to npc_checknear2 and added npc_checknear. The near version receives a bl, checks it's validity, and returns a TBL_NPC object, near2 does the same but doesn't checks for type NPC. The first returns a pointer, the second returns 1 on fail, 0 success. - Also uncommented various npc_checknear calls in the code, who's idea was to comment them out so you could exploit npcs from afar with custom packets? - Added overflow checks for bonus settings mdef_rate/def_rate. - Added missing update of INT after a buf. - Small cleanup of how SC_BLEEDING works. - Fixed party_foreach_samemap invoking the function on the CASTER instead of on the party members. - Added clif_parse_ActionRequest_sub to handle player commands, is used from npc_click or any other function that needs to "re-route" a player's request. - Modified clif_parse_NpcClicked to handle the different situations with different bl-objects (attack on players/mobs, click on npcs or mobs with npc attached) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7103 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-10- Added structure party_data and party_member_data to the map server to hold ↵skotlex1-231/+229
party-specific required information about parties including Monk/TK/SG/SN states and party member count. - party Hp updates are no longer done each time the Hp is modified, but together with the party xy timer. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7083 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-06-07- Added pc_calcexp to calculate individual exp bonuses acquired from exp's ↵skotlex1-3/+3
source (race bonus cards, SG Exp skills, pk-mode higher level exp) - pc_gain_exp now also receives the source of the exp, when said source exists, bonuses are applicated as needed. - Added status_kill when capturing a mob, should take care of the mob not respawning after caputed. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7037 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-24- Item sharing now shares the same rules as exp sharing (no sharing when ↵skotlex1-2/+9
dead, or idle, etc) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6737 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-22* Excluded idle and auto-trade party members from TK_POWER list.Lance1-1/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6688 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-15- Added SC_BLADESTOP to the switch listing in status_change_startskotlex1-1/+1
- Characters in vending are now always considered "idle" if the idle_no_share setting is active. - Corrected 10 Geminis spawning in Lhz1 rather than 2. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6595 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-08- ES magic will now put the caster on stun for 0.5 secs regardless of ↵skotlex1-13/+18
whether the skill-target is a mob or not. - Added function clif_party_join_info which sends packet 0x1e9 each time a party-member joins. This packet (as redundant info as it has) should also contain the field for "adoptability", but that needs to be coded in yet. - Added clif_ParseAdoptRequest which does the basic adoption handling. More checks and the reply packets still need to be coded in. - Happy State and TK stances won't dispel on death now. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6521 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-05-08- Fixed compilation error.skotlex1-1/+1
- idletime will now be updated on attack-request, not on sit/standup - Party members sitting will no longer be considered idle. - hide_gvg_damage will now send 1 instead of -1 as damage. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6517 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-08- Fixed item disappearing from the floor when you attempted to pick it up ↵skotlex1-1/+1
and there was no room in your inventory. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5517 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-04- The rate passed to status_change_start must now be in 0->10000 range.skotlex1-2/+2
- Added macros sc_start and sc_start4 to simplify invocation of status_change_start. - Cleaned the active guild skills, requirements moved to skill_check_require, should now be usable by non-players as well (pets/mobs). - Updated skill_cast_db time info. Magnum's time2 is skill-block time, St. Recovery/ Cure's time2 is the confuse/blind duration, added NPC_POWERUP/NPC_AGIUP durations, Napalm Vulcan's time2 is curse length, and most of Tarot Card's effects last time2 as well. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5454 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-03-01- Turn Undead and Offensive Resurrection should now work on undead players.skotlex1-3/+66
- Fixed the range checking of Repair weapon - Rude attacked is now also triggered when you hit a target that can't move out of their melee attack range. - Mob ai will attempt to do a long-range attacked condition skill before unlocking a target when it is attacked and said target is out of melee range of a non-walking mob. - Corrected mobskill event to set the target_id before triggering. - Moved MSC_SKILLUSED trigger to mobskill_event which is triggered in battle_calc_damage. It is also triggered on skill_castend_nodamage_id - Added party_share_loot for handling party-share loot. it should now work with autoloot as well. - Fixed skill_break_rate breaking stuff even if the rate is 0. - pc_stopwalking will not send a fixpos packet if you are sitting. - mob_can_reach rude-attacked condition now uses the mob's field of view. - SC_NOCHAT is automatically started on pc_authok if manner is negative. - Map server now refuses to start if you try to define a label with the same name as some const.txt defined character parameter. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5414 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-21- Modified party_send_movemap and guild_send_info_short to send the ↵skotlex1-1/+15
mini-dots to the player logging on. - Added functions clif_party/guild_xy_single to send the xy dots to a single fd. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5359 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-17- Added NK value 3: No damage + area of effect skill (NK_SPLASH_NO_DAMAGE)skotlex1-13/+12
- Removed the double-cast specific code and made it use skill_addtimerskill instead. - Modified party_foreachsamemap so that it returns to addition of the return value of the functions invoked. Type has been changed for "range", when 0, it scans all party members in the map. - Updated most skill/battle code to use map_foreachinrange rather than map_foreachinarea. - map_foreachinrange does not performs an exact range check anymore. However the relevant code is commented and anyone can enable it. - Updated most skills to use skill_get_splash instead of hardcoded ranges. - Added function skill_get_casttype which returns the type of function that should be invoked for that skill: skill_castend_pos, skill_castend_nodamage_id or skill_castend_damage_id. - self skills are sent to skill_castend_nodamage_id regardless of nk (nk should signal if the skill causes damage above everything, it is used on autospell/effects). - Due to the previous change, self skills where the target and src are different, and don't have an nk of no damage, they are sent to castend_damage_id (assumed target auto-selected skills) - Applied the relevant updates to db/skill_db.txt, db/skill_unit_db also got updated, as trap ranges should all be 1, the splash damage range is defined now in skill_db - Cleaned up the implementation of the code related to Gangster's paradise and TK_HP/SPtime git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5313 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-09- Code rewrites in mob_damage and party_exp_even_share for correctly ↵skotlex1-9/+16
handling overflow issues. Now uses UINT_MAX for range comparisons, as it should be. - Also modified the mob_db reading to use UINT_MAX for exp limits, changed their exp/job exp fields to unsigned int as well. - Modified multi_level_up behaviour to work as specified by Kyoki. - removed functions pc_next[base/job]after as they are no longer needed. - Modified the skill attack display of Meteor Assault and the Warm Skills (I think the caster should no longer do fancy animations now on each hit) - Added back water elemental targets being inmune to SC_FREEZE - Fixed the status_change_start line in charsave.c (I knew I was forgetting something) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5235 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-08- Cleaned up and reorganized status_change_start. Now it also receives the ↵skotlex1-2/+2
success % rate (0->100) - Added local function status_get_sc_tick which takes care of reducing the effect duration as need is be. - Modified status_get_sc_def to handle defense against all related statuses, now returns defense on a scale where 10000 is 100%. - Added time2 to pangvoice, it is the player effect's duration while time1 is for the mon's effect. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5227 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-02-03- Fixed a wrong check being done for AM_TWILIGHT3skotlex1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5176 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-01-29AS OF SVN REV. 5901, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES ↵Valaris1-0/+742
GO INTO TRUNK. IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. EVERYTHING ELSE GOES INTO TRUNK AND WILL BE MERGED INTO STABLE BY VALARIS AND WIZPUTER. -- VALARIS git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5094 54d463be-8e91-2dee-dedb-b68131a5f0ec
2006-01-29Clearing trunk.Valaris1-657/+0
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5091 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-30* Added base code for loading Ser's UPNP plugincelest1-13/+13
* Added 'idle_no_share' to battle_athena.conf * Added item_findingore.txt git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1343 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-30* updated map server to jA1137~1159celest1-2/+2
* Some tidying up in mob.c and skill.c git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1342 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-03-29More C/C++ Conformance fixesamber1-5/+5
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1334 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-02-25revised npc_event_dequeue; added a check to party share & devel update ↵shinomori1-2/+3
[Shinomori] git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1175 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-02-23* Added bAddItemHealRatecelest1-5/+7
* Fixed a crash if adding an offline player to a party * Fixed a crash with Warp git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1169 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-01-28* Added DUMP_ALL_PACKETS and moved dump packets code in clif_parse a bit to ↵(no author)1-2/+2
support it * Added base code for Party Item Sharing git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1009 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-01-23update(no author)1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@968 54d463be-8e91-2dee-dedb-b68131a5f0ec
2005-01-06updateamber1-1/+1
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@924 54d463be-8e91-2dee-dedb-b68131a5f0ec